improving eword-decode.el
Tanaka Akira
akr @ m17n.org
2005年 10月 24日 (月) 14:07:41 JST
In article <htx1x2jqs00.fsf @ urania.kanji.zinbun.kyoto-u.ac.jp>,
tomo @ m17n.org (守岡知彦 / MORIOKA Tomohiko) writes:
>> FLIM のデコーダはどうしましょうか? 分割された encoded words の
>> 境界がテキストの文字単位になっていないものを他には見た記憶が無い
>> ので、現在のままでもたぶん問題は無いと思うのですが、いちおう書い
>> てみました。ただし、ご要望が無ければ CVS commit しないつもりです。
>
> ちょっと今とっても疲れてて、判断できません。
>
> また、できれば、小林さんと akr さんの見解を聞きたいです。
エンコードが間違っているという話についてはとくに付け加えるこ
とはありません。
デコード時に複数の encoded word 内の byte 列を連結してから
decode することの是非は興味深いところです。
それは、その結果が正しいかどうかは、原理的には charset に依
存するからです。つまり、stateful な encoding において、ひと
つめの encoded word の影響により、それ以降の encoded word の
解釈が変わるような charset を考えることは不可能ではありませ
ん。
ただ、現実にそういう charset が存在するかどうかは私は知りま
せん。
厳密には違いますが、それに近いものとして思い付くのは、
ISO-2022-JP な byte 列の終端において G0 が ASCII か JIS X
0201 かという違いが次の encoded word 内の 0x5c の解釈に影響
を与えるということが考えられます。(ただ、これは厳密にいうと、
規格では終端では G0 は ASCII になっていないといけないことに
なっているので encoder 側の問題であると解釈できます。)
まぁ、多くの charset ではそういう問題は起きないでしょうから、
デフォルトで連結してから decode するのは悪くないと思います。
また、仮にそういう問題が起きる charset が見つかったとしても、
そのときにその charset では連結しないようにすればいいことな
ので、現時点でそうしても大きな問題は起きないように思います。
--
[田中 哲][たなか あきら][Tanaka Akira]
More information about the Emacs-mime-ja
mailing list