[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: emacs-w3m underlines everything and mixes up URLs (new w3m-0.5?)
>>>>> In [emacs-w3m : No.06579]
>>>>> Masatake YAMATO <jet@gyve.org> wrote:
> はい。現在markerで実装されているregisterをmarkerで実装すると便利であ
> るということをemacs-develでやっているうちにoverlayにバグあることに気
> 付きました。御指摘の通り overlay-startとoverlay-endが逆転する場合があ
> ります。直したつもりですが、まだ完全に直しきっていません。
ごめんなさい、まだ途中だったのですね。今のところ先端の emacs-w3m
では問題無いです。ただ、ぼくはまだ遭遇していないのですが、Gnus
と VM でも何か起きているようで、おそらく emacs-w3m と同様に無用
な overlay が残っているためなのでしょう。
> またそれに関連してRMSはoverlay-startとoverlay-endが逆転するような場合、
> overlay-startとoverlay-endを入れかえるのではなくて、overlayを空((eq
> overlay-end overlay-start) => t)にするよう直せという指示も私に出して
> ます。というのが背景でしょうか。
了解です。デフォルトが evaporate=t だったら良かった、いや、単に
問題が隠蔽されてしまうだけか...、よくわかりませんが。
> 今のところ私がバグを入れたのか、既存のelispが間違ったemacsのoverlayの
> 実装に依存していたのか不明です。とにかく、今後overlay-startと
> overlay-end が反転してしまうことがないようにemacs-develにて私は努力し
> ます。
よろしくお願いします。
> 従ってoverlay-startとoverlay-endが逆転することを想定して書いたコード
> は動かなくなる可能性があります。
それは心配しなくてよい気がしますね。:)
> 前のメールで書きましたevaporateの使いかたです。
> (overlay-put (widget-get w :button-overlay) 'evaporate t)
> としてやれば、長さ0のoverlayが自動的に消えます。
なるほど、それは widget button の側でやるべきかもしれませんね。
後日提案してみましょう。
> 明日、emacs-develとemacs-w3mのアーカイブを読んで、問題を理解したいと
> 思います。emacs, emacs-w3m、それぞれどっちをどうすべきか、調べたいと
> 思います。
emacs-w3m でぼくが行なったことは、バッファを空にして新たにテキス
トを挿入する前に、単に
(dolist (overlay (overlays-in (point-min) (point-max)))
(delete-overlay overlay))
ということを行なっただけです。そのときは忘れていたんですが、こん
なことをするよりは大和さんがおっしゃるようにあらかじめ evaporate
を指定しておいた方が賢いでしょう。
;; 実は w3m-momentary-overlay というのは不要なのか? 後で調べな
;; くちゃ。
--
山岡@やぼ用のため現在自宅