Emacs不要折腾收发邮件

Table of Contents

  先说结论, 不要在emacs中管理邮件,就用邮箱客户端。

概念

  • 收发邮件这个事情,实际上包含收(imap)、发(stmp)、管理3个事情
  • 在emacs中,简单配置一下邮箱信息:accout,pwd,imap,stmp就可以
    • 内置的rmail、compose-mail组件,可以用来发送邮件:很好用,可以写org模版的邮件,调用系统默认邮箱客户端;
    • 其中rmail也可以管理邮件,但是用法比较古老,不好用;
    • 没有内置收邮件的组件
  • 现在流行的emacs邮箱扩展组件是:mu4e(管理+发),offlineimap(收)

难点

  • 现在的邮箱运营商对登陆做了安全验证,而且非常严格。
  • 不允许使用明文密码,需要使用gpg加密登录信息。可以预见到,后续肯定还会加固验证的。
  • 所以,在emacs里面配置邮件的成本(时间,复杂度,稳定性,易用性)越来越大。
  • 最后,目前邮箱客户端已经集成了,收、发、管理三个功能,配置简单,界面美观,非常好用。

SMTP配置(发)

基础配置

(setq user-mail-address "your-email@gmail.com"
      user-full-name "Your Full Name"
      smtpmail-smtp-server "smtp.gmail.com"
      smtpmail-smtp-service 587
      smtpmail-starttls-enable t)  ; 使用 STARTTLS 提供额外的安全性

(require 'auth-source)
(setq auth-sources '("~/.authinfo"))

;; 设置 `message-send-mail-function` 为 `smtpmail-send-it`,这是 Emacs 的 SMTP 发送函数:
(setq message-send-mail-function 'smtpmail-send-it)

;;开启 SMTP 调试模式来获取更多信息:
(setq smtpmail-debug-info t)
(setq smtpmail-debug-verb t)

写邮件并发送

  • 使用 `M-x compose-mail` 命令开始撰写新邮件。
  • 填写收件人、主题等必要信息。
  • 撰写邮件正文。
  • 完成邮件撰写后,使用 `C-c C-c`(`message-send-and-exit` 命令)发送邮件并退出邮件编辑模式。

另一种方式

Date: 2024-08-08 Thu 14:21