[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Disable status messages when minibuffer is used for user dialogue
>>>>> In [emacs-w3m : No.06134] 土屋さん wrote:
> 第3に,w3m-message() と w3m-display-message() って物凄く良く似た関数・
> マクロですよね.これらが2つバラバラに存在するのには,現在でも何らかの
> 理由はあるのでしょうか? 単に歴史的経緯だけが理由ならば,適当に合併して
> しまえば良いかと思ったのですが,どなたか反例を思いつく方はいらっしゃい
> ますか?
初めに w3m-message を作ったのは土屋さんで、その 11ヶ月後にぼくが
w3m-display-message を作っていますねえ。どうもぼくは w3m-message
の存在を無視してしまった感じがするなあ。^^;;
ぼくが w3m-display-message を作った目的は、*Message* バッファが
"Reading http:://hoge/image.jpg..."
"Reading http:://hoge/image.jpg...done"
のような、比較的どうでもいいもので埋まってしまって、もっと大事な
ものが追い出されて消えてしまわないように、表示はするけれどもそう
いった log を作らない `message' を提供することでした。
もう一つ必要な機能がありそうですね。表示はしないけれど log は残
すもの。
それと、表示しないときに format() と同じ動作をするのは、戻り値を
message() に合わせるためだと思うのですが、その際 log を残さない
のは問題かもしれません。
それらを統合するとしたら、いろんな機能を引数で切り換える十徳ナイ
フみたいな関数を作って、w3m-message や w3m-display-message とい
う macro で呼び出すことになるでしょうか。けっこう難しそう。
これに関連して、ぼくは一時やたらに macro を作っていましたが、表
示や通信に関わる処理が伴う場合には、funcall の overhead を無くし
たところで速度への貢献はあまり期待できないので、近ごろはやりすぎ
ない方が良いと思うようになりました。つまり、上に書いた十徳ナイフ
が macro である必然性は無いだろうということです。
--
Katsumi Yamaoka <yamaoka@jpl.org>