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/