最近仔细读 Manual 的时候发现 WanderLust 已经内建支持用 notmuch 或者 mu (也就是mu4e的后端)作为邮件搜索引擎了,果然是最强的邮件客户端(我自己封的)。
确定不是和gnus 类似的老古董? notmuch emacs 看邮件。有tag 标记。还可以用afew 工具 和 基于文件夹的服务端同步。还特别快:joy:。 我觉得挺好。
确定不是和gnus 类似的老古董
这个项目最近一次 commit 是20天前,还算活跃,只是可能在国内有点小众。 mu4e 的作者参考了 notmuch 的后端和 WanderLust 的前端。现在 WanderLust 也反过来支持 mu 做后端了,很明显 WanderLust 还算与时俱进的。 当然没有后端也能正常使用,只是速度有点不够。这个原生也支持 Mark 的概念,和 tag 类似。而且同时支持 mutt 风格的 score。
我本来是用 mutt+msmtp+getmail+procmail+notmuch 收几个重要邮箱,但是别的邮箱因为没什么重要的邮件是直接用网页版。。notmuch 那个Emacs界面在 Spacemacs 上似乎有bug,按q直接退出整个界面而不是返回hello buffer,用起来很不爽,我还是更习惯直接用 Mutt 读信,用helm-nomuch作为检索界面。
鉴于 WanderLust 对 MailDir 的支持比 Gnus 和 Mew 都好上不知道多少,我才成功转到 Emacs 邮件界面上,之前用网页版的邮箱能用 IMAP 同步邮件。之前 Mutt 用的工具链也全都可以继续用。以及用 MailDir 的时候 WanderLust 也不比其他邮件客户端慢。
基于文件夹的服务端同步
是指offlineimap
?我还在用mutt的时候,对我来说用这个就表示不能用 procmail (这个的文档同样很稀缺)了,需要一个个邮箱设置过滤规则。WanderLust 本身就以内建 IMAP 速度快为特色,甚至不需要其它依赖就能收取 IMAP 到本地 MailDir。当然也支持收取 POP,不过getmail可以用launchd或者crontab之类定时取信。 offlineimap
当然也可以用。
正是因为不吝于发掘并整合其他邮件客户端的优秀特性,其它邮件客户端能做到 WandeLust 都能做(除了之前提到的,还支持Gnus的 RSS,NNTP,w3m新闻,Mew的自动邮件过滤分类,定期删除),而它有的功能却没有别的邮件客户端能全部实现。 当然,这样一个强力的邮件客户端带来的后果是稀缺的文档和复杂的功能。比如它专门搞了个包来处理MIME,结果加个附件还要指定附件类型和编码,害得我还要补一补MIME的知识,不像 notmuch 之类的,一个函数就能搞定。
所以无法否认这是一个极其优秀的重量级邮件客户端,然而这同样不是一个适合所有人的邮件客户端。我承认和Emacs一样,WanderLust 折腾的代价很高,但是折腾完了以后很值。
那么需要写点文档吗? 我在策划用 Sphinx 写它的使用文档。
可以给 Wanderlust 的主要组件 elmo
做个 index。
我也来贴一贴用 wanderlust 配置163邮箱
163Mail {
%/INBOX:mailaccount/[email protected]:993! "收件箱"
%/已发送:mailaccount/[email protected]:993! "已发送"
%/草稿箱:mailaccount/[email protected]:993! "草稿箱"
# %/订阅邮件:mailaccount/[email protected]:993! "订阅邮件"
%/已删除:mailaccount/[email protected]:993! "已删除"
}
有两个问题想问一下大佬。
- 在 inbox 里面删除邮件的时候想 refile 到
%/已删除:mailaccount/[email protected]:993!
这个文件夹,而不是~/Mail/trash
文件夹,大佬有什么思路吗?wl-dispose-folder-alist
这个变量研究了一下,没搞太明白。 - 怎么编辑已经存在的 draft 啊,然后发送啊?我用 emacs 直接打开草稿然后发送的话,提示
mime-edit-preview-message: Search failed: "--text follows this line--"
,但是在wl里面新建 draft 发送就可以。
wl-trash-folder
The initial setting is ‘+trash’. It is the wastebasket folder. If you changed this variable, you had better restart Wanderlust.
當然是要用 WL 打開啊。
第二个问题按E就可以了,读文档还是不够仔细啊。
第一个问题是我没有描述清楚,我的意思是多账号的情况下,删除时 refile 到 各自账号下的 transh,比如那个 %/已删除:mailaccount.....
文件夹,而不是统一单一的 trash folder
wl-dispose-folder-alist
This list determines disposition of messages with disposal marks. Each item in the list is a folder and destination; you can specify any one of the following in the place of destination:
remove
or null
: deletes the messages instantly.
string : moves the messages to the specific folder.
trash
or others : moves the messages to wl-trash-folder
.d
Put disposal mark on the message at the current cursor point. The result of disposal is controlled by wl-dispose-folder-alist
, refiled to wl-trash-folder
by default. ( wl-summary-dispose
) See Mark and Action.
就是这个,我试着写了几个,都没有用,大佬有空的时候帮忙看一下呗! 我写的是:
(setq wl-dispose-folder-alist '(("^@" . "%/已删除:mailaccount/[email protected]:993!")))
;; or
(setq wl-dispose-folder-alist '(("^@163.com" . "%/已删除:mailaccount/[email protected]:993!")))
;; or
(setq wl-dispose-folder-alist '(("[email protected]" . "%/已删除:mailaccount/[email protected]:993!")))
一直学不会 elisp 的正则表达式。
大佬太强了吧
叹号是啥意思
~/.folder
的格式。
大神,如果想加的签名档有各种格式怎么办,初步考虑html。
从 outlook 导出了一个html格式的签名档,然后
(setq wl-template-alist
'(("xxxxx"
(bottom-file . "~/signature.html")))
这种尝试当然是失败了,求指点一下啊
ps:rtf?
大神没有时间啊。
下班熬夜看了一下,简化了一下 mime-edit-insert-file
函数:
(defun my-insert-signature (file)
"Insert a message from a file."
(mime-edit-insert-tag "text" "html" (mime-edit-insert-file-parameters '(("charset" . "gb2312") ("name" . file)) file))
(mime-edit-insert-binary-file file "quoted-printable"))
(setq wl-template-alist
..... . ......
(bottom . (my-insert-signature "~/signature.html"))
..... . ......)
在电子邮件的签名档格式比较复杂的时候想怎么插入就怎么插入
试了一下, 配合davmail 能收 exchange 邮件了, 但是, 卡的懵逼. 一共也才 8000 多邮件.
很多企业内Exchange服务器也会同时开放IMAP和POP3接口,你可以试一下直接连接。Davmail的确慢。
应该不是收信的问题. 整个信件的 summary 已经下载了, 结果进入 summary, 光标移动什么的, 很卡.
八千多邮件连 refile 都不做也是心大。你也没说 SMTP 还是 POP。就当你是用 SMTP 吧,prefetch 估计没关。