User-Agent な環境で (多分 Emacs 21 が影響しているんでしょうが) @w3m-dev/w3m-dev を読むと Summary モードで日本語の部分が化け化けになる ので、色々調べていたのですが、どうも、 (1)shimbun-retrieve-url → w3m-decode-buffer を経由してコールされる w3m-detect-coding-region で euc-japan が shift_jis として認識される ので化ける。 (2)shimbun-retrieve-url で NO-DECODE して sb-w3m-dev.el (or sb-fml.el) で自前で decode しようとしても、shimbun-retrieve-url の中で *w3m-work* を insert-buffer した時点で enable-multibyte-characters が t になっており、Emacs が euc-japan を UTF-8 (?) として誤認識して しまう。 という状況のようです。 shimbun-retrieve-url で NO-DECODE するようなときは、sb server 側で自前 で decode するのが前提だと思うので、NO-DECODE を指定したら (set-buffer-multibyte nil) しては駄目でしょうか? P.S. shimbun-w3m-dev-coding-system で 'euc-japan なんて入れたら Mule2 の人達は使えないんですね...。emacs-w3m のどこで互換性を維持するのか な? P.S.2 shimbun-retrieve-url で w3m-with-work-buffer を使うのは (unless no-decode の後が良いような気がしますが、素人がいじるとや やこしいので余計なことをしませんでした。 (unless (eq (current-buffer) (get-buffer w3m-work-buffer-name)) を (unless (eq (current-buffer) (w3m-get-buffer-create w3m-work-buffer-name)) にしなきゃならないかどうかも分かりませんでしたし...。
Attachment:
shimbun.el.diff
Description: Binary data
Attachment:
sb-fml.el.diff
Description: Binary data
Attachment:
sb-w3m-dev.el.diff
Description: Binary data
Attachment:
ChangeLog
Description: Binary data
-- 中島幹夫 <minakaji@osaka.email.ne.jp> <m-nakajima@descente.co.jp> http://www.asahi-net.or.jp/~gy2m-nkjm/