[Mew-dist 17710] Re: mew-fancy-summary.el

Shun-ichi TAHARA ( 田原 俊一 ) jado at example.com
2001年 6月 7日 (木) 13:51:04 JST


From: Hideyuki SHIRAI (白井秀行) <shirai at example.com>
Message-Id: <20010607.131728.123566071.shirai at example.com>

> > > ちょっと気が向いたので、mew-summary-hl に手を入れてみました。
> > > 
> > > 中身がまるっきり変わってしまいましたので、名前を mew-fancy-summary に
> > > 変えて流します。
> 
> 使ってみました。もう、mew-summary-hl.el は捨て去って、
> mew-fancy-summary.el に乗り換えましょう > 皆様方

ありゃ (^^;

> 若干改造したので、パッチをお送りします。

どもです。

> (1) defvar => defcustom に変えた。
> (2) defface は :group をつけるのが流儀の模様。

ついでなので、mew-theme.el への追加部分も作ることにしましょう。

> さて、一点要望なのですが、mew-scan-form に自分で作った関数を定義
> して、なおかつ、
> 
> [Mew-dist 17688] mew-fancy-summary.el || ちょっと  <20010606.134307.607963181.z1980163 at example.com> <>
>                                       ~~~~~~~~~~~ ここの色を変えたい
> 
> な風に body もつけている ^^; と現状では(私の)満足のいく色付けが
> 出来ないのです。

これ、subject な部分も (0 subject) なんですよね?
現状、len=0 の時は 行の最後の文字まで拾うようにしています。bodyを付け
ていると問題ですよね。

ただ、結局、scan-form の情報からだけだと、完全に境界を判定することがで
きないですので、本来は本体のscanに埋め込んで統合したときに考えた方が楽
なのだと思います。

> そのため、mew-fancy-summary-face-spec の alist の cdr に
> function も定義出来るように defcustom だけは書きました。
> mew-fancy-summary-face-spec が適当なのかどうかも、どうやるのが良
> いかも全然わかっていないのですが、とりあえず、
> 
> (defcustom mew-fancy-summary-face-spec
>  <<snip>>
>   :type '(repeat (cons (choice symbol string) (cons (choice face function)))))
> 
> はそういうのが欲しいなぁ、ということだと思ってくださいませ ^^;;;

face-spec の右辺は、mew-fancy-summary-get-face で拾ってきて、
mew-fancy-summary-get-spec で解析して、色付け範囲を決めるようになって
ますので、ここで 色付け範囲を返す関数を呼ぶようにしてやればいいのでしょ
うね。

> もう一点気になったのですが、special な人の判定を while + catch +
> throw でやっていますが、これ、special な人が多くなると結構時間が
> かからないでしょうか?
> 
> おそらく、mew-scan-form で各フォルダに (n from) と n が別々に設
> 定出来るから、その対処だと思うのですが、

そうです。確かにbuiltinなmemberよりは遅いかもしれないですね。

あらかじめソートしておいて、bsearch-regexp みたいなのを書けば速くなる
かも。

ただ、これもMewのscanと統合してしまえば解決だなと思ったので、かなりい
い加減な実装になっています。
_______________________________
田原 俊一   jado at example.com, shunichi_tahara at example.com
                                  http://flowernet.gr.jp/jado/
FingerPrint:  16 9E 70 3B 05 86 5D 08  B8 4C 47 3A E7 E9 8E D9
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄



Mew-dist メーリングリストの案内