[Mew-dist 16621] Thread make slow (on XEmacs)

Hideyuki SHIRAI ( 白井秀行 ) shirai at example.com
2001年 2月 26日 (月) 21:10:57 JST


先ほどだした mew-summary-hl.el のチェックのために久しぶりに
XEmacs "21.2  (beta40) \"Persephone\" XEmacs Lucid" で Mew を動
かしたら、thread の作成にとても時間がかかるようになっていました。

ある程度の量(数千通)の folder で thread をつくると、めちゃくちゃ
かかります。

で、調べてみたら、私が mew-summary-thread-move-cursor() の高速化
のために thread-print 側に導入した

(put-text-property (point) (1+ (point)) 'mew-thread-indent t)

をすると、時間がかかることがわかりました。mew-thread.el の
put-text-property() をコメントアウトしたり、
(setq mew-use-thread-cursor nil) の状態で、


	 (and mew-use-thread-cursor
	      (put-text-property (point) (1+ (point)) 'mew-thread-indent t))

とすると、従来とまったく変わらない速度で、thread の display が終
了します。ただし、put-text-property 自体に時間がかかっているわけ
ではありませんでした。

後者の対策をして 6000通ほどの folder で試すと

○ mew-use-thread-cursor => nil
   pass1 1.803661, pass2 0.004212, visual 2.575731

○ mew-use-thread-cursor => t
   pass1 2.055644, pass2 0.004180, visual 59.112647

となります。(う〜〜〜、なんでだぁ)

# mew-summary-hl を使っても使わなくても、この現象は変わりません。
# また、FSF Emacs だと全然大丈夫です。

というわけで、XEmacs ユーザ/グルの方にお聞きしたいのですが、

○ この現象はぼくだけでしょうか? (ぼくだけならいいんですけど)
○ XEmacs の Version に関係するのかなぁ?
○ なんでこんな風になってしまうのでしょう?

-- 
白井秀行@ギブアップ ;_;



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