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

Re: Shimbun Basics



>> On Sat, 31 May 2003 19:48:22 +0900
>> minakaji@namazu.org (NAKAJIMA Mikio) said as follows:

>> この変更を行っていて気が付いたのですが、shimbun-retrieve() がインデッ
>> クスや記事本体を取得するときに、以下のように文字コードを考慮してく
>> れると、かなり文字化けの可能性が減るのではないか、と思ったのですが。
>> 
>> shimbun-retrieve-url() の呼び出されている個所が多すぎて、ちょっと挫
>> 折しました。
>> 
>> (luna-define-method shimbun-retrieve-url
>>   ((shimbun shimbun) url &optional no-cache no-decode)
>>   (let (type)
>>     (when (and url (setq type (w3m-retrieve url no-decode no-cache)))
>>       (w3m-with-work-buffer
>>         (unless no-decode
>>           (let ((w3m-coding-system-priority-list
>>                  w3m-coding-system-priority-list))
>>             (when (shimbun-coding-system-internal shimbun)
>>               (push (shimbun-coding-system-internal shimbun)))
>>             (w3m-decode-buffer url))))
>>       (unless (eq (current-buffer)
>>                   (get-buffer w3m-work-buffer-name))
>>         (when no-decode
>>           (set-buffer-multibyte nil))
>>         (insert-buffer w3m-work-buffer-name)))
>>     type))

> (3) 何故「shimbun-retrieve-url() の呼び出されている個所」が多すぎる
>     と上記のメソッドが採用されなかったのか?

副作用の範囲が大きいので,各バックエンドのそれぞれについて確認しようと
したのですが,うまくいかないバックエンドが多かったので,途中で放り出し
てしまったのです.しかし,

> (1) push の第二引数がない。
>     (push (shimbun-coding-system-internal shimbun)
>           w3m-coding-system-priority-list)
> ですね、きっと。

おやまあ,これはとんでもないミスですね.ということは,
[emacs-w3m:01737] の変更について検討していた時は,まったく意味がない変
更について検討を行っていたことになりますから,まったく白紙から再検討す
る必要がでてきました.

> (2) shimbun-retrieve-url はメソッドでなくちゃ駄目なのか?  defun で宣
>     言するので足りるのでは?

ああ,これはですね,上記のように shimbun-XXX-coding-system を考慮する
ように変更する場合は,各バックエンド側で shimbun-retrieve-url() を再定
義して調節することが必要となる場合があるのではないかと思って,メソッド
にしようとしたのです(多分).

しかし,中島さんの指摘(1)から,私は *意味のない* 変更について検討して
いたことが明らかですから,このメソッド化の主張の根拠も崩れてしまってい
ます.もし,指摘(1)を反映した変更でうまくいくのであれば,中島さんのおっ
しゃる通り,defun で宣言するので足りるでしょう.

-- 
土屋 雅稔 ( TSUCHIYA Masatoshi )