email - 使用带有 EMAIL 和 Message 包的 Emacs 的多个电子邮件帐户

标签 email emacs

我正在尝试准备 RMAIL 和 Emacs 以支持多个电子邮件帐户。我已经有了一个基于电子邮件的 From 字段(基于 EmacsWiki 中的信息)使用不同 SMTP 服务器的解决方案,但我目前必须设置 From em> 手动字段。

我想要的是在回复RMAIL中的某人时自动设置发件人字段(即回复发送给 [email protected] 的电子邮件时,设置>从撰写消息缓冲区中的 [email protected] )。我使用消息包作为 mail-user-agent 。 Gnus 有一个类似的功能,称为 gnus-posting-styles .

我真正需要的是如下所示:

  1. r 时或M-x rmail-reply在 RMAIL 摘要上,查找 [email protected] [email protected] 在字段 To , Cc , Envelope-To , X-Origintal-ToDelivered-To回复的消息并将找到的第一个消息存储在某个变量中;

  2. 已在消息缓冲区中撰写电子邮件,自动将“发件人”字段设置为之前存储的值。

有办法执行1吗?

谢谢!

最佳答案

是的,有一种方法可以做到这一点。

您需要建议函数rmail-reply

这是一个例子:


(defadvice rmail-reply (around rmail-grab-to-field)
  "Grab the To field and put in the reply as 'From'."
  (let ((origin-to (mail-fetch-field "to")))
    (progn
      ad-do-it)
    (save-excursion
      (goto-char (point-min))
      (perform-replace
       "^From: \\(.*\\)$"
       (concat "From: " origin-to)
       nil t nil 1 nil (point-min) (point-max)))))

(ad-activate 'rmail-reply)

您可以找到有关 advice 的所有信息在 EmacsLisp 手册中。

上述建议并不完全通用,它在一定程度上取决于您用于发送邮件的模式(我使用消息模式,并且上述代码有效)。

更好的版本还会限制perform-replace的范围,以便它只能更改邮件 header 中的某些内容。

关于email - 使用带有 EMAIL 和 Message 包的 Emacs 的多个电子邮件帐户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14989309/

相关文章:

java - 用于电子邮件搜索的库

javamail动态加载内容

C# mvc2 在代码中创建纯文本电子邮件

emacs - 如何确定emacs缩进一定量的原因?

emacs - 从模式行隐藏分支?

php - Laravel 使用 HTML 元素发送电子邮件

java - 自动接收邮箱中的邮件

php - 在 Emacs 中使用 SQL 查询编写 PHP

emacs - Emacs中有没有访问最近打开的文件的命令?

emacs - 如何在 Emacs 中检索框架的名称?