在muttrc中添加如下两句:
set header_cache="~/mail/.header_cache/"
set maildir_header_cache_verify=no
set maildir_header_cache_verify=no
第一句是设置邮件头缓存文件保存的位置,我指定的是一个目录,这样每个邮件目录都会在这个目录下建立一个缓存文件,也可以直接指定一个独立的文件;第二句是禁止对已缓存内容的校验,因为除了mutt我想我应该不会再用另外一个程序去修改mail目录下的内容。
现在,再次启动mutt,所有的邮件目录浏览一遍,第二次再打开的时候,就能够很快打开了,读取每一封邮件、解析邮件header信息的过程已经被缓存了,mutt只需要对邮件进行排序就可以了。除了缓存邮件header以外,针对imap、pop这些访问可能会比较慢的邮箱,还可以对邮件本身进行缓存,不过我没有测试过。
现在,结合目录层次的搭配,我想mutt管理几万封邮件还是非常轻松的。如果邮件再多些,应该就需要在目录划分等其他措施上进行优化了。
参考:
* The Mutt E-Mail Client - version 1.5.14 (2007-02-12)
* Speed up folder loading in mutt
* Using mutt's header_cache feature
* maildir / imap header caching for mutt
* 15.1. Header caching(还介绍了缓存文件的默认命名规则)