曾经有一堆使用 Gnus 的多个 SMTP 服务器的黑客技术,其中大部分都需要根据当前组添加特殊邮件头,然后使用自定义发送邮件功能解析出该信息。
自 Emacs 24 以来,大多数可用的解决方法都失效了,而 sendmail 现在更易于使用和通过单个服务器进行设置。
使用 Gnus 拥有多个 SMTP 服务器并使用属于我当前在 Emacs 24 中读取的组的最佳方法是什么?
答案1
我在用着邮件传输协议和这gnus-posting-styles
在 Emacs 24.1.1 上设置并成功完成。
(defun cg-feed-msmtp ()
(if (message-mail-p)
(save-excursion
(let* ((from
(save-restriction
(message-narrow-to-headers)
(message-fetch-field "from")))
(account
(cond
;; I use email address as account label in ~/.msmtprc
((string-match "[email protected]" from) "example1")
;; Add more string-match lines for your email accounts
((string-match "[email protected]" from) "example2"))))
(setq message-sendmail-extra-arguments (list '"-a" account))))))
(setq message-sendmail-envelope-from 'header)
(add-hook 'message-send-mail-hook 'cg-feed-msmtp)
(setq gnus-posting-styles
'(("nnimap\\+EXAMPLE2:INBOX"
(address "[email protected]"))))