[Date Prev][Date Next][Thread Prev][][Date Index][Thread Index]

Re: w3m-ucs-e21



>>>>> In [emacs-w3m : No.05447] 
>>>>>	TSUCHIYA Masatoshi <tsuchiya@pine.kuee.kyoto-u.ac.jp> wrote:

ari> Emacs21.3 以前での mule-unicode を使った w3m-euc-japan では日本語
ari> を表示できない(日本語では、従来通り iso-2022-7bit にエンコードし
ari> た方が良い)と勘違いしていました
土> Emacs21.[123] w/o Mule-UCS でも,Unicode で encode された CJK 文字が表
土> 示できるのですか? 手元で,

私の勘違いは「mule-unicode を使った w3m-euc-japan では、shift_jis,
euc-japan, iso-2022-jp でエンコードされた日本語すら取り扱えないので、
日本人向けには使いものにならない」というひどいものでして(^^;

実際には、その w3m-euc-japan を使った場合には、以下の coding-system
と character-set の組合せが利用できます。
  coding-system : Emacs がデコードできるもの
  character-set : ASCII, JIS X 0208, JIS X 0201, ISO8859-1, mule-unicode-*
(Emacs21.[123] w/o Mule-UCS では、CJK を含む utf-8 でエンコードされた
ページは、Emacs でデコードできないために表示できない。)

一方、w3m-imput-coding-system に iso-2022-7bit を使った場合は、
利用できるものは以下のようになっていると思います。
  coding-system : Emacs がデコードできるもの
  character-set : w3m が対応しているもの (ASCII, JIS X 0208, JIS X 0201)

ということで、w3m-euc-japan を使えば、対応する coding-system は
変わらないし、対応する charset は増えるはずです。


ari> ところで、define-ccl-program の定義をロード時等に切り替えるには、
ari> どうすればよいのでしょうか。

気が付いたのですが、custom で w3m-use-mule-ucs を設定した場合は、
値をセットする前に w3m-ucs を require しちゃうので、w3m-ucs の
ロード時に定義を切り替えるのではまずいですね。

土> ただ,これだと load 時に w3m-euc-japan の定義が決まってしまい,その後
土> で w3m-use-mule-ucs などをいくら変更しても反映されないので,いっそのこ
土> と,w3m-euc-japan, w3m-euc-japan-mule-ucs, w3m-euc-japan-unicode... と
土> 複数の coding system を作ってしまうという手もありかなあ,と思っていま
土> す.

w3m-e21.el で mule-unicode を利用した w3m-euc-japan-encode を
(定義されていなければ)定義しちゃうのが最も簡単かなと考えてます。
w3m-use-mule-ucs が t ならば w3m-ucs がロードされて、上書き
されますし。
ただほとんど同じコードが2箇所に書かれるのがイヤな所です。

あとは、複数の coding-system を作らないまでも、複数の encoder を
定義しちゃって、coding-system を作るところで切り替えるとか。

;; w3m-use-mule-ucs を w3m ロード後に変えた時は、各オプションを
;; 変更しなきゃならないことですし、あまり考えてません(^^;

-- 
有沢 明宏