2

我有几个与 mu4e 关联的帐户,我可以使用 smtpmail-multi 从所有这些帐户接收和发送,而不会出现问题。我没有使用上下文。我的配置中的相关部分如下所示:

(setq message-citation-line-function 'message-insert-formatted-citation-line)
(setq message-citation-line-format "On %a, %b %d %Y, %f wrote:\n")
(setq smtpmail-multi-accounts
      (quote
       ((yahoo . ("xxxx@yahoo.com"
                 "smtp.mail.yahoo.com"
                 587
                 "xxxxx@yahoo.com"
                 nil nil nil nil))
    (other . ("xxxxx@other.com"
                 "smtp.other.com"
                 465
         "xxxx@other.com"
                 ssl nil nil nil))
    (etc . ("xx@etc.com"
                 "smtp.etc.com"
                 465
         "xx@etc.com"
                 ssl nil nil nil))
     ;; ... 
    )))

(setq smtpmail-multi-associations
      (quote
       (("xxxx@yahoo.com" yahoo)
    ("xxx@other.com" other)
    ("xx@etc.com" etc)
     ;; ....
    )))

(setq smtpmail-multi-default-account (quote yahoo))
(setq message-send-mail-function 'smtpmail-multi-send-it)

(setq mu4e-compose-dont-reply-to-self t)
(setq mu4e-user-mail-address-list '("xxxx@yahoo.com"
                    "xxx@other.com"
                    "xx@etc.com"
                     ;; ...
                     ))

(setq user-full-name "XXXXXX")
(setq user-mail-address "xxx@other.com")

这样,我只需在FROM:字段中输入我的电子邮件地址,就可以从正确的帐户正确发送电子邮件。

回复时,我希望 mu4e 识别消息已发送到的帐户并FROM:相应地更新字段,这样我就不必自己一直输入正确的帐户。我正在寻找一种方法来做到这一点,而不必将我的整个配置升级为使用上下文。

4

2 回答 2

4

经过大量的调整,我想出了这个:

(defun my-mu4e-set-account ()
  "Set the account for composing a message."
  (if mu4e-compose-parent-message
      (let ((mail (cdr (car (mu4e-message-field mu4e-compose-parent-message :to)))))
    (if (member mail mu4e-user-mail-address-list)
        (setq user-mail-address mail)
      (setq user-mail-address "my@default.account")))
    (helm :sources
      `((name . "Select account: ")
        (candidates . mu4e-user-mail-address-list)
        (action . (lambda (candidate) (setq user-mail-address candidate)))))))

(add-hook 'mu4e-compose-pre-hook 'my-mu4e-set-account)

mu4e-user-mail-address-list显然,我的邮件帐户列表在哪里

这将使用正确的帐户进行回复,此外,还会打开一个 helm 迷你菜单,询问我每次撰写新消息时使用哪个帐户。

于 2018-01-01T20:59:34.453 回答
0

我知道这篇文有一个多帐户设置,可以自动选择 FROM 字段。可能想看看它。Mu4e 在我的待办事项清单上,所以我不能直接给你答案。

于 2017-12-30T12:09:36.683 回答