[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[debian-users:00863] Re: Don't you like ISO-2022?
なんか変な話でもりあがりつつあるなぁ:-)
まとめ:
mew でも ISO-2022-JPのSubject:は読めます。
(mew-summary-toggle-analysis M-a する)
厳密にいうとMIMEな世界では header に許容されているのは
US-ASCII のみです(7bit char ではないので ESC なども不可) cf. RFC2045,2046
sendmailに限っていえば header内の ESC を落とすことはありません。
(C1 は落とされてしまいますが、問題になるのはShift_JISとかだけ:-)
ただ世の中 sendmail だけが MTA ではありませんから…
あとはこまごまとつっこんでみます:-)
From: Nobby Noboru Hirano <nobby@xxxxxxxxx>
Subject: [debian-users:00861] Re: Don't you like ISO-2022?
Date: Mon, 23 Jun 1997 23:57:24 +0900
> > 『日本語情報処理』という本からエスケープシーケンスをちょこっとひろって
> > くると、
> >
> > 日本語 : ^[$B
> > ASCII : ^[(B
> > 韓国 : ^[$(C
> > 中国 : ^[$A
ISO-2022的には、別にこうとは限らなくて
ESC の次の $ が (G0 に) 94x94文字集合を使うことをあらわす。
その次の ( が G0 に指示を意味する (ESC $ B なんかはこれを省略している)
そして終端文字がくる。これが文字セットをあわらす。
94 B が US-ASCII
94x94 A が GB2312-1980
94x94 B が JIS X0208-1983
94x94 C が KSC5601-1987
ですよね。
> が、しかし font を日本語 韓国語 中国語 全部INSTALLしている環境というのは
> あまり(いやほとんど?)無いでしょう。
ふつー インストールするのでわ(^^;
# xfntbig にはいってるし:-)
> 次に Headder 部分 (From や Subject 等 : のついている奴) はこれは、必ず
> 7bitコードだけという仕様になっているんです
厳密にはMIMEな世界では(RFC2045,2046,...) US-ASCIIだけ です。
RFC822 では そのあたりがあいまい(any ASCII character)なので
# 0-127 の 7bit data を any ASCII character としているように読める。
この立場によると ISO-2022-JP を Subject: で使うのはかまわないといっても
いいような気がします。
ちなみに From: や To: なんかは Subject: とは全然話が違ってきます。
> 理由は、メールの古い規格である RFC822(だったと思う)では JISコードすら
> 8bit コードということで使用できないことになっていました(古い7bit JISは
> この名残?)
ここでJISコードがさしているのがどういうコードなのかよくわからないんで
すが、ISO-2022-JPエンコーディングは ISO-2022のサブセットだし 7bit
なんですけど。
> したがって漢字はどう表現するかというと
> 新JIS に変換 -> Base64 でデコードし "=?ISO-2022-JP?B?"の後にくっつける
> という方法がとられています。
新JIS も謎だし、Base64でデコードというのも謎です??
"=?ISO-2022-JP?B?"というのは
ISO-2022-JPの文字列を B(ase64)でエンコードしたもの
という意味のヘッダです。
> さてここで気がつかれた人もいると思いますが、
> "そんな古い規格のサーバは日本語が 通らないのでは?"
> と考えるでしょう? それは、内部で 7bit化させてしまうのです。
古いsendmailの方が素通ししてくれます:-p
# 最近のsendmailの方がいろいろ変換しちゃいますよね。
それに 7bitな通信路で日本語を通すためのISO-2022-JPなんですけど。
quoted-printable は 7bit化というより US-ASCII化ですね。
--
鵜飼文敏