Re: MH-e, fast mh-list-folders with caching
>>>>> In <YAS.06Jun16142812@kirk.is.tsukuba.ac.jp> 新城さん wrote:
> MH-e で、昔、mh-list-folders を高速化するために、キャッシュ
> を使うものがありました。今は、どこかにないでしょうか。
十年近く前に Semi-gnus (その後 Gnus) に乗り換えて以来 MH-E には
ご無沙汰しています。いろんな時期の MH-E のソースや ChangeLog を
眺めただけなので間違っているかもしれませんが、もしかすると最近の
ものでは標準でその機能が実装されているんじゃないでしょうか。
最後にリリースされた Emacs 21.4 に付属している MH-E には、こんな
ものがあります:
`mh-auto-folder-collect'
========================
*Whether to start collecting MH folder names immediately in the background.
Non-nil means start a background process collecting the names of all
folders as soon as mh-e is loaded.
うーん、たぶんこれじゃないですかねえ。デフォルト値は t です。
また、そう遠くない将来にリリースされるであろう Emacs 22.1 では、
こんなフラグも無くなって、常に `folders -recurse' をバックグラウ
ンドで実行するようになっています。
> 今までは、MH のフォルダがローカルにあったので、
> mh-list-folders は結構速くて問題ありませんでした。今度、NFS
> 経由でアクセスしたい(その方がCPUが速い)ので、そうしたい所
> なのですが、NFS 経由だと mh-list-folders がだいぶ遅いです。
> もちろん、これをやめれば速くなるのでしょうけれど。
> (setq mh-recursive-folders t)
最近のものでは名前が mh-recursive-folders-flag に変わっています。
デフォルト値はやはり nil です。
> ちなみに、どのくらいメッセージが溜っているかというと、このく
> らいでした。
> トップレベル: TOTAL= 55907 messages in 171 folders.
> 再帰: TOTAL= 315741 messages in 507 folders.
> NFS サーバは、ちょっと古い Sun です。
> NFS クライアントは、新しい Sun です。
手元にあるちょっと古い Sun では、あまり Emacs 22 を日常的に使う
気にはなりませんが、新しいものだったら問題無いかもしれませんね。
ちなみに MH-E は単独でもリリースされていて、以下の場所から取得可
能です。
https://sourceforge.net/project/showfiles.php?group_id=13357
で、最後に大事なことを一つ。
最近の MH-E は MIME のエンコードやデコードのために Gnus の機能を
全面的に流用しています。ですから、古い Gnus がある環境で新しい
MH-E だけをインストールしても動かないでしょう[1]。一応 MH-E は
Emacs 21 で動作するとうたっていますが、本当に最新のものは、Emacs
21 に付属している Gnus とですら動作しないと思います。ですから、
一番楽なのは Emacs 22.1 がリリースされるのを待ってインストールし、
まずはデフォルトの状態から使ってみることのような気がします。
[1] ちょっと前にぼくは MH-E の人たちのために Gnus を改造する作業
を行なったので、これは確かです (実はそのとき MH-E が Gnus に
依存していることを知りました :-)。
--
山岡
Fnews-brouse 1.9(20180406) -- by Mizuno, MWE <mwe@ccsf.jp>
GnuPG Key ID = ECC8A735
GnuPG Key fingerprint = 9BE6 B9E9 55A5 A499 CD51 946E 9BDC 7870 ECC8 A735