在emacs下配置mew邮件客户端

 

话说, 今天豆瓣happyday, kejun等前端攻城湿们带着一堆人做题, 由于不太会写Js这些东西, 所以在参加完上午的讲座后就基本没做什么了, 然后就是各种等队友做, 最后干脆不等了, 就直接回去继续配emacs邮件客户端了, 整了好久也没配置成功,最后在求教@算法哥 的时候, 他推荐了mew这个好工具, 简直就是神器, 特别快, 我直接就停用evolution了, evolution太慢了, 不好用, 这个mew与emacs集成的很好, 因为好多人配置emacs 邮件都遇到了或多或少的挫折, 所以, 这里我就将我的能用的配置贴出来, 知识从互联网来, 自互联网去。

建议先看这篇牛人的文章, 我最先使用这里的方法, 在这个基础上增加ssl支持就行:

用Mew收发邮件

先不用跟着上面做, 一会我会贴出我能用的一个配置, 可以根据我的配。 使用的时候比较简单:

w 撰写新邮件
a 回复邮件,不带引用
A 回复邮件,带引用
f 转发邮件
r 重新发送邮件
SPC 阅读邮件
y 保存文件(可以保存信件全文、信件正文、附件)
C-c C-l 转换当前邮件的编码格式
C-c C-a 加入地址薄
C-u C-c C-a 比 C-c C-a 多加入昵称和名字
C-c C-q 不保存退出
C-c C-a 准备插入附件
mew-attach-copy 用复制方式加入附件
mew-attach-link 用链接方式加入附件
mew-attach-delete 删除附件
C-c C-c 发送邮件
C-c RET 保存邮件到发送队列
C 如果设置了多个邮箱,用 C 命令切换
Q 退出Mew

配置步骤:

首先,安装mew

$sudo apt-get install mew

复制下面代码到文件 mew_cfg.el 中, 并把这个文件放置在你的load-path 路径下。

(autoload 'mew "mew" nil t)
(autoload 'mew-send "mew" nil t)

;; Optional setup (Read Mail menu for Emacs 21):
(if (boundp 'read-mail-command)
    (setq read-mail-command 'mew))

;; Optional setup (e.g. C-xm for sending a message):
(autoload 'mew-user-agent-compose "mew" nil t)
(if (boundp 'mail-user-agent)
    (setq mail-user-agent 'mew-user-agent))
(if (fboundp 'define-mail-user-agent)
    (define-mail-user-agent
      'mew-user-agent
      'mew-user-agent-compose
      'mew-draft-send-message
      'mew-draft-kill
      'mew-send-hook))

(defvar mew-cite-fields '("From:" "Subject:" "Date:"))
(defvar mew-cite-format "From: %s\nSubject: %s\nDate: %s\n\n")
(defvar mew-cite-prefix "> ")

(setq mew-ssl-verify-level 0)
(setq mew-use-cached-passwd t)

;; Setting MailBox
(setq mew-config-alist
      '(
        ;; Default fetch mailbox is IMAP
        (default
         (mailbox-type          imap)
         (proto                 "%")
         (prog-ssl "/usr/bin/mewstunnel")
         (imap-server           "imap.gmail.com")
         (imap-user             "luoweifeng@douban.com")
         (name                  "luoweifeng")
         (user                  "luoweifeng")
         (mail-domain           "douban.com")
         (imap-ssl t)
         (imap-size             0)
         (imap-delete           t)
         (imap-queue-folder     "%queue")
         (imap-trash-folder     "%Trash")
         (imap-ssl-port "993")
         ;; This must be in concile with your IMAP box setup
         (smtp-ssl t)
         (smtp-auth-list        ("PLAIN" "LOGIN" "CRAM-MD5"))
         (smtp-user             "[yourname]@[yourdomain].com")
         (smtp-server           "smtp.gmail.com")
         (smtp-ssl-port "465")
        )

        (luoweifeng1989
         (mailbox-type          imap)
         (proto                 "%")
         (prog-ssl "/usr/bin/mewstunnel")
         (imap-server           "imap.gmail.com")
         (imap-user             "[yourname]@[yourdomain].com")
         (name                  "[yourname]")
         (user                  "[yourname]")
         (mail-domain           "[yourdomain].com")
         (imap-ssl t)
         (imap-size             0)
         (imap-delete           t)
         (imap-queue-folder     "%queue")
         (imap-trash-folder     "%Trash")
         (imap-ssl-port "993")
         ;; This must be in concile with your IMAP box setup
         (smtp-ssl t)
         (smtp-auth-list        ("PLAIN" "LOGIN" "CRAM-MD5"))
         (smtp-user             "[yourname]@[yourdomain].com")
         (smtp-server           "smtp.gmail.com")
         (smtp-ssl-port "465")
        )
))

(setq mew-signature-file "~/Mail/signature")
(setq mew-signature-as-lastpart t)
(setq mew-signature-insert-last t)
(add-hook 'mew-before-cite-hook 'mew-header-goto-body)
(add-hook 'mew-draft-mode-newdraft-hook 'mew-draft-insert-signature)

(setq mew-refile-guess-alist
      '(("To:"
         ("@octave.org"                       . "+math/octave")
         ("@freebsd.org"                      . "+unix/freebsd"))
        ("Cc:"
         ("@octave.org"                       . "+math/octave")
         ("@freebsd.org"                      . "+unix/freebsd"))
        (nil . "+inbox")))
(setq mew-refile-guess-control
      '(mew-refile-guess-by-folder
        mew-refile-guess-by-alist))

(setq mew-summary-form
      '(type (5 date) " " (14 from) " " t (0 subj)))
(setq mew-summary-form-extract-rule '(name))

然后, 更改其中的[yourname], [yourdomain]参数, 就可以使用了。 注意, 我上面配置了三个地址, 你可以任意配置, 不过需要有一个名字叫default的。
安, 北京!

后记:
添加几个操作的说明:
1. 平常的发送邮件: M-x mew 然后使用i从服务器拉数据, 这个默认是inbox里边的东西, 使用w写新邮件, 注意CC字段的使用。
2. 如果想查看发件箱, 使用g则提示你切换到哪儿文件夹, 比如已发邮件, 可以通过tab来补全看看需要去哪儿, 完成后回车, 可以看到状态栏里已经到了已发邮件了, 但是没有任何东西, 此时, 输入s,则会提示你获取的range, 就是你要从那个到那个之间的邮件, 可以直接回车, 就看到已发邮件列表了。

发表评论?

2 条评论。

  1. 上面只配置了两个地址是把?密码在哪里输入?

发表评论


注意 - 你可以用以下 HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>