[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
add supported coding-system for emacs21 w/o Mule-UCS (Re: Re:w3m-ucs-e21)
今回の変更により GNU Emacs21 と素の w3m の組合せで、Mule-UCS を利用せ
ずに以下の coding-system で記述されたページが閲覧できるようになったこ
とをお報せします。
・utf-8, utf-16 (mule-unicode で表現できる文字のみ)
・iso-8859-* (*1)
現在 GNU にて開発中の Emacs21.3.50 を利用した場合には、加えて以下の
coding-system で記述されたページが閲覧できます。(*2)
・utf-8, utf-16 (CJK を含む)
・GB2312
・Big5
・EUC-KR, ISO-2022-KR
もちろん、今まで利用できていた coding-sysmte のページもそのまま閲覧で
きます。
(*1) iso-8859-1 と iso-8859-2 以外は確認してませんが、多分(^^;
(*2) `utf-translate-cjk-mode' を有効にする必要があります。
>>>>> In [emacs-w3m : No.05508]
>>>>> TSUCHIYA Masatoshi <tsuchiya@pine.kuee.kyoto-u.ac.jp> wrote:
土> 作業完了しました.確認をお願いします.
どうもおつかれさまでした。
問題無いと思います。
気になった点としては、Emacs21.3 以前と Emacs21.3.50 とで w3m-e21.elc
を共有できないことがあります。
byte-compile 時に w3m-euc-japan-encoder が定義されちゃうので、
lookup-character の有無が実行時には反映されず、例えば Emacs21.3 で
byte-compile したものを Emacs21.3.50 で利用した場合に、CJK を含む
utf-8 なページを閲覧できません。
土> w3m-ucs-to-char() なんですが….これまた,一旦,w3m-ucs.el をロードす
土> るとその時点で Mule-UCS 由来の ucs-to-char() を使うことが決まってしま
土> うので,w3m-use-mule-ucs を動的に変更した場合に,Emacs21 本来の
土> decode-char() を用いた実装に戻すことができません.
気にはなっていましたが、w3m-use-mule-ucs を t から nil にした時だけの
問題ですので、致命的では無いとは思います。
土> emacs character ←→ Unicode の変換を行う encode / decoder が,同じ変
土> 換テーブルを使っていないと,変換が不可逆になってしまうのが,気になって
土> います.
土> さて,どうしたものでしょうね.
容易な手としては、w3m-input-coding-system に応じて、decode 時に呼ぶ関
数を変えることですかね。
--
有沢 明宏