|
> この辺はもっと正確に判定するようにし、2種類以上に判定可能な場合は
>charset=を付けないようにします。
それはまずいんじゃないでしょうか。
charsetの省略は、charset=US-ASCIIを指定するのと同じです。
そこで、例えばDatulaは、text/*なコンテンツに対して
charset=UNKNOWN-8BITと書いて送るようです。
charset=UNKNOWN-8BITは「charset不明」という意味で
RFC1428で規定されています。
ftp://ftp.isi.edu/in-notes/rfc1428.txt
IANAにも登録されています。
http://www.iana.org/assignments/character-sets
ただ、Datula方式にも問題があって、RFC1428をよく読むと、
The use of the "unknown-8bit" label is intended only by mail gateway
agents which cannot determine via out-of-band information the
intended character set.
charset=UNKNOWN-8BITを使用してよいのは、(使用者に
charsetを尋ねる手段を持たない)mail gateway agentだけである。
This character set is not intended to be used by mail composers. It
is assumed that the mail composer knows the character set in use and
will mark it with a character set value as specified in [1], as
amended by current Assigned Numbers documents [6].
(使用者にcharsetを尋ねる手段を持ち得る)mail composerは、
正確なcharsetを指定すると仮定される。
(注)底流にあるRFC作成者の意図を汲み取った訳です。
日本語だけでなく、charset=ISO-8859-1とかcharset=GBKの場合も
考慮すると、charsetを常に自動判定する、というやり方がまずいと
思います。
むしろ、自動判定の結果、有力候補と考えられるcharsetの一覧を
使用者に提示し、最終的には使用者がcharsetを決定できるように
したほうがいいと思います。
|
|