[sylpheed-jp:10536] Re: 英語環境で送信すると差出人や宛先が文字化け
IWAMOTO Kouichi
sue @ iwmt.org
2007年 11月 27日 (火) 03:57:39 JST
岩本です。
On Mon, 26 Nov 2007 19:24:19 +0900
山本 博之 <hiro-y @ kcn.ne.jp> wrote:
> On Mon, 26 Nov 2007 19:02:19 +0900
> "KONDOU, Kazuhiro" <kazuhiro @ alib.jp> wrote:
>
> > ASCII というか、ざっくり言うと英数字以外です。
> > ASCII の範囲内でも , とかもダメです。
> >
> > これらの文字を使う場合には "" で括られる必要がありますが、日本語の文字
> > 列は MIME エンコードされる際に範囲外の文字が使われるので、まず 100% ""
> > で括る必要があります。
特殊な意味を持つ文字以外ならば記号も使えます(*1)。
そして、ISO-2022-JPには通常Bエンコーディング(Base64)が使われます。
Base64で使われる記号は + - = の3つだけで、MIMEエンコーディングを表す
為に使われる ? を含めてすべて "" で括る必要の無い文字です。
# Base64に使われる文字は、色々な条件を考慮して出来るだけ安全な文字を
# 使うという事で選ばれています
> そもそも MIME エンコードされた文字列は "" で括ってはいけないんでは
> なかったでしょうか。
RFC 2047には、
| + An 'encoded-word' MUST NOT appear within a 'quoted-string'.
とあるので、 "" で括ってはいけません。
# もし括られていたならば、それはMIMEエンコードされた文字列では無い
# という事になります。
*1: RFC 2822 では表示名(display-name)は以下のように定義されています。
display-name = phrase
phrase = 1*word / obs-phrase
word = atom / quoted-string
atom = [CFWS] 1*atext [CFWS]
atext = ALPHA / DIGIT / ; Any character except controls,
"!" / "#" / ; SP, and specials.
"$" / "%" / ; Used for atoms
"&" / "'" /
"*" / "+" /
"-" / "/" /
"=" / "?" /
"^" / "_" /
"`" / "{" /
"|" / "}" /
"~"
大雑把に言うと、display-nameは "" で括られた文字列(quoted-string)か
atextの集まりなので、atextに含まれる文字はすべて使えます。
--
いわもと こういち(sue @ iwmt.org/sue @ cds.ne.jp/sue @ postfix.jp)
# 「黒井さんちのプリンスメロンに払われた十円ちょうだいな」って何巻だったっけ?
Sylpheed-jp メーリングリストの案内