Mutt (简体中文)
From ArchWiki
i18n |
---|
English |
Italiano |
正體中文 |
简体中文 |
- Mutt是一个基于文本的Email客戶端,因其具有強大的特性而声名赫赫。尽管Mutt已经是一个十多年前的老东西了,但对于相当多的高级用戶来说,仍然是Email客戶端之必选。不幸的是,Mutt会默认安装一套复杂的快捷键绑定(keybindings),令人头痛;说明文档又长篇大论,足令人心悸。本指南将帮助那些普通用戶来安装和运行Mutt,并帮助他(她)们按照自己的口味对Mutt进行配置。
Contents |
赶快开始吧
哪些是Mutt不会做的
Mutt是一个用戶级的Email代理(MUA),这个程式被写出来就是用来看Email用的。写它的是时候,并不是用来收、发和过滤Email的。它要依赖外部程式来做这些事。在此Wiki中,我们将在POP3/IMAP协议下,使用 offlineimap 或者 getmail 来收邮件,用 procmail 来过滤邮件,并用 msmtp 来发送邮件。
设置好IMAP
Mutt已经內建了IMAP功能,所以缺省是不会下载Email来离线使用。本小节讲述了如何用OfflineIMAP来将Email下载到本地文件夹中,然后用Mutt来处理这些邮件。
设置OfflineIMAP
首先要启用Community软件库,并通过一个简单的命令 pacman -Sy offlineimap
来安装 OfflineIMAP。
现在你要按自己的需要来设置好它。创建一个文件~/.offlineimaprc
并用你i喜爱的编辑器来编辑它。下面是一个配置文件的例子。可按自己的需要来编辑它。
[general] accounts = myaccount # change to whatever you want ui = Curses.Blinkenlights # Gives you a nice blinky output on the console so you know what's happening. # ui = Noninteractive.Quiet # If uncommented, this would show nothing at all. Great for cronjobs or background-processes [Account myaccount] localrepository = mylocal # Profile-Name for the local Mails for a given Account remoterepository = myremote # Profile-Name for the remote Mails for a given Account autorefresh = 5 # fetches your mails every 5 Minutes [Repository mylocal] type = Maildir # Way of storing Mails locally. Only Maildir is currently supported localfolders = ~/Mail # Place where the synced Mails should be [Repository myremote] type = IMAP # Type of remote Mailbox. Only IMAP is supported right now. remotehost = imap.myhost.com # Where to connect ssl = yes # Whether to use SSL or not # remoteport = 993 # Would specify a port if uncommented. That way, it just tries to use a default-port remoteuser = myremoteusername # Login-Name remotepass = myremotepassword # Login-Password. -- ACHTUNG! Of course, this is not too safe. Make sure that the file is readable only by you. Even better: use some of the suggestions in the OfflineIMAP-Manual to make it safer.
这是让你能运行起来的最小设置了。更多高级的特性,请参看OfflineIMAP的主页,再回头看一看annotated offlineimaprc.
现在就快准备好运行OfflineIMAP了。创建一个已经在offlineimaprc中定义好的目录,就f像这样: mkdir ~/Mail
。然后运行offlineimap
。你的Email就会同步到本地电脑上了。如果出了什么错,就仔细查看一下错误消息。通常OfflineIMAP对于问题的提示在文字上是比较详尽的。
为Mutt配置MailDir
MailDir的好处在于其格式的通用性和标准化.几乎每一个 MUA都能处理MailDirs,而Mutt当然也支持得很棒。要让Mutt能利用上MailDir还要再做点小事情。用你的编辑器打开 muttrc 并将下面这几行添加进入:
set mbox_type=Maildir set folder=$HOME/Mail set spoolfile=+/INBOX set header_cache=~/.hcache
这是一个最精简的配置文件,能让你访问你的 Maildir,并在收件箱(INBOX)中检查新Email。这个配置也对Email的邮件头作了暂存,从而加速邮件的列示过程。也许你的安装包沒有开启暂存功能,不过Arch的安装包一定是开启了的。注意这项功能真的对OfflineIMAP有相当影响。它总是在从邮件服务器同步Email。spoolfile
告诉Mutt从本地哪个目录来得到新Email。你可能还想添加更多的 Spoolfiles,例如邮件列表(Mailing List)所在的目录。或者你想添加其它什么东西,但这就超出了这份文档的范围了,还请自行参阅手冊 man mutt
。
就这样了。別忘了将每样设置都调整到你喜欢的样子。自己努力解決吧。
设置POP方式接收Email
从网络接收邮件
先安装getmail。它在[extra]
软件库中.
pacman -S getmail
现在创建目录: ~/.getmail/
。用编辑器打开~/.getmail/getmailrc
。
这里有一个例子 getmailrc
,用的是Gmail帐戶。
[retriever] type = SimplePOP3SSLRetriever server = pop.gmail.com username = username@gmail.com port = 995 password = password [destination] type = Maildir path = ~/mail/
你可以将它调整为你自己的POP3服务配置。
在本指南中,我们将把邮件以 maildir
的格式存放起来。两个主要的邮箱格式分別是 mbox
和maildir
。其差別主要在于: mbox
是储存着所有邮件及其邮件头的一个文件;而 maildir
是一个目录树,每个邮件都是一个单独的文件,这往往能提升运行速度。
maildir
只是一个文件夹,里面有 cur
, new
和 tmp
这三个文件夹。
mkdir -p ~/mail/{cur,new,tmp}
现在可以运行getmail了。如果它正常工作了,就可以为getmail创建一个计划任务(cronjob),让它每过几分钟/小时就运行一次。键入 crontab -e
命令来编辑cronjobs,输入以下內容:
*/30 * * * * /usr/bin/getmail
此设置可以每隔三十分钟,运行一次getmail
。
邮件排序
Procmail 是一个极其強大的排序工具。鉴于此篇Wiki的目地,我们将做一些基本排序设置,来拋砖引玉。
先安装procmail。它在 [extra]
软件库中。
pacman -S procmail
必须要编辑 getmailrc
使你收取到的邮件通过procmail来处理它。
[destination] type = MDA_external path = /usr/bin/procmail
现在用编辑器打开 .procmailrc
。下面将对来自happy-kangaroos 邮件列表,以及来自亲朋好友的所有Email作一个排序,每个人都有各自的Maildir。
MAILDIR=$HOME/mail DEFAULT=$MAILDIR/inbox/ LOGFILE=$MAILDIR/log :0: * ^To: happy-kangaroos@nicehost.com happy-kangaroos/ :0: * ^From: loveydovey@iheartyou.net lovey-dovey/
保存 .procmailrc
后,运行getmail,看看它是否在适当的目录中对你的邮件成功排序了。
设置SMTP
无论你是用 POP 还是 IMAP 来接收Email,都可能要用 SMTP来发送邮件。
发送邮件
Msmtp是一个很简单易用的SMTP客戶端。它在[extra]
软件库中。
pacman -S msmtp
用编辑器打开 ~/.msmtprc
。下面是一个使用Gmail帐戶的 .msmtprc
配置例子:
account default host smtp.gmail.com port 587 protocol smtp auth on from username@gmail.com user username@gmail.com password mypassword tls on tls_starttls on
仅用戶本人才能有此文件的读写权限:
chmod 600 ~/.msmtprc
用 1.4.11 版的 msmtp 时,必然要涉及到设定 TLS 。 msmtp, TLS, and ArchLinux 对于如何配置 msmtp 的认证作出了指导。
现在 mutt 一定已经为使用msmtp作好了配置工作。建一个目录: ~/.mutt/
,并打开了 ~/.mutt/muttrc
。下面的配置文件会让你开始查看和发送Email。
set realname='Disgruntled Kangaroo' set sendmail="/usr/bin/msmtp" set edit_headers=yes set folder=~/mail set mbox=+mbox set spoolfile=+inbox set record=+sent set postponed=+drafts set mbox_type=Maildir mailboxes +inbox +lovey-dovey +happy-kangaroos
现在,启动 mutt。你会在 ~/mail/inbox
看到所有的邮件。按下 m
键来撰写邮件, (它会使用 EDITOR
环境变量中定义好的编辑器。如果这个变量还沒有被设定,那么可键入 export EDITOR=/path/to/yourfavorite/editor
。想要测试一下,可以给自己发一封邮件。写好信后,在你的编辑器中保存它。再返回到Mutt中,它会显示出这封邮件的消息。按 y
来发送它。如果都正常,那么就恭喜了!你能用Mutt了!不过呢,要实现Mutt真正強大的能力,还要作一些进一步的定制才行啊。
一份关于使用与定制Mutt的指南:
- My first mutt (由Bruno Postle维护)
- The Woodnotes Guide to the Mutt Email Client (由Randall Wood维护)
xterminus 是mutt社区中相当活跃的人。可以从 Code and Configs Page 找到他的个人配置文件。如果你有什么特別的问题,请随意在 the irc channel 上提问。
邮件签名
在你的家目录($HOME)中创建一个 .signature
文件。你的签名会在附在邮件的后面。
用Firefox查看URL链接
你可以在$HOME创建一个 ./mutt
目录,如果沒有的话。 再创建一个名为 macros 的文件。 加入下面的內容:
macro pager \cb <pipe-entry>'urlview'<enter> 'Follow links with urlview'
然后安装 urlview :
pacman -S urlview
在$HOME创建一个 .urlview 文件,并加入下面的內容:
REGEXP (((http|https|ftp|gopher)|mailto)[.:][^ >"\t]*|www\.[-a-z0-9.]+)[^ .,;\t>">\):] COMMAND firefox %s
当用Mutt阅读邮件时,点击 ctrl+b ,将会列出邮件中所有的超级链接 urls 。用箭头按键上下翻动它们,然后在要访问的链接上点击 enter 。Firefox 将启动,并访问那个站点了。
Mutt 和 Vim
要将文本的宽度限制在 72 个字符, 可编辑你的 .vimrc 文件,并加入:
au BufRead /tmp/mutt-* set tw=72
这样,Vim 只有在你使用 Mutt 的时候,都会有上面的行为了。
要设置另外一个临时文件目录,如 ~/.tmp,可在你的 .muttrc 文件中加上一行,如下所示:
set tmpdir="~/.tmp"
要重新格式化一个调整过的文本,可参看 Vim 的帮助文件:
:h 10.7