Emacs Gnus:如何根据写邮件的帐户存档电子邮件?[gcc自身未按预期工作]

Emacs Gnus:如何根据写邮件的帐户存档电子邮件?[gcc自身未按预期工作],emacs,gnus,Emacs,Gnus,我有两个邮件帐户,foo。bar@uni.edu和foo。bar@gmail.com。我想将我从其中一个发送的邮件归档到相应的“已发送邮件”文件夹(nnimap+foo)。bar@uni.edu:已发送项目和foo。bar@gmail.com:[Google Mail]/Sent Mail) 我试着设置 (setq gnus-message-archive-group '(("uni" "nnimap+foo.bar@uni.edu:Sent Items") ("gmail" "nn

我有两个邮件帐户,
foo。bar@uni.edu
foo。bar@gmail.com
。我想将我从其中一个发送的邮件归档到相应的“已发送邮件”文件夹(
nnimap+foo)。bar@uni.edu:已发送项目
foo。bar@gmail.com:[Google Mail]/Sent Mail

我试着设置

(setq gnus-message-archive-group
  '(("uni" "nnimap+foo.bar@uni.edu:Sent Items")
    ("gmail" "nnimap+foo.bar@gmail.com:[Google Mail]/Sent Mail")
    ))
但这并没有设置Gcc(新消息没有Gcc;这里有解决方案吗?)。因此,我回到了
(setq
gnus消息存档组“nnimap+foo”。bar@uni.edu:Sent Items”)
其中设置了Gcc 正确(对于主帐户
foo。bar@uni.edu
)如果我通过
m
在*Group*中打开新邮件

然后我尝试通过
gnus参数
使用
gcc self
来正确归档发送的邮件:

(setq gnus-parameters
       `((,(rx "nnimap+foo.bar@uni.edu")
         (gcc-self . "nnimap+foo.bar@uni.edu:Sent Items"))
         (,(rx "nnimap+foo.bar@gmail.com")
         (gcc-self . "foo.bar@gmail.com:[Google Mail]/Sent Mail"))))
手册()说明如果
gcc self
是 一个字符串,它只是作为Gcc头插入。我做了以下几点 体验:无论我在哪里通过
C-u m
(使用
m
,Gcc)在*组*中开始新消息 是“地图+食物”。bar@uni.edu:已发送项目”如前所述),Gcc被视为 击中
m
之前,*组*中该点所在的名称。所以,如果关键是
nnimap+foo。bar@gmail.com:草稿
,通用条款将为Gcc: nnimap+foo。bar@gmail.com:草稿(代替
foo。bar@gmail.com:[谷歌
邮件]/已发送邮件
)。如果通过
C-u m
写入,如何修复此问题并将邮件归档到相应的“已发送邮件”文件夹中?换句话说,
Gcc
为什么设置不正确


[这是在Emacs 24.3.50.1,Gnus v5.13上]

我的问题与您的问题完全相同。尽管我在发送邮件时添加了一个gcc self参数为“INBOX.Sent”,但它最终会出现在“nnfolder+archive:Sent.yyy-MM”中

我的设置是,我有一个默认帐户(家庭)和一个辅助帐户(工作)都是imap(但不是Gmail,希望这个答案仍然适用)

通过多次尝试和错误,我成功地让它按我所希望的那样运行:工作电子邮件保存在“工作发送”文件夹中,家庭电子邮件保存在“家庭发送”文件夹中

在gnus参数中,我只需将我的
gcc self
param更改为gcc,它就工作了!但是,仅适用于辅助地址

对于我设置的默认地址
gnus消息存档组

我的~/.gnus文件的缩减

(setq gnus-select-method
      '(nnimap "home"
                (nnimap-address "mail.homeaddress.com")
                (nnimap-server-port 143)
                (nnimap-stream starttls)
                (nnimap-inbox "INBOX")
                 ))

(setq gnus-secondary-select-methods
      '((nnimap "work"
                (nnimap-address "mail.workaddress.com")
                (nnimap-server-port 143)
                (nnimap-stream starttls)
                (nnimap-inbox "INBOX"))))
(setq gnus-parameters
      '(
        ("work"
         (posting-style
          (address "me@workaddress.com")
          (gcc "nnimap+work:INBOX.Sent")))))

(setq gnus-message-archive-group "nnimap:INBOX.Sent")
请注意,我没有任何
主页发布样式

我希望这有帮助


Emacs版本24.3.1,Gnus v5.13

我在Gnus设置过程中遇到了相同的问题。我用Gmail处理个人事务,用Outlook处理工作。我的目标是使用我目前在Gnus中使用的相应帐户撰写/回复消息。根据来自的建议,我使用
gnus发布风格
实现了这个目标。下面是我使用的示例代码

;; Archive outgoing email in Sent folder on imap.gmail.com
(setq gnus-message-archive-method '(nnimap "imap.gmail.com")
      gnus-message-archive-group "[Gmail]/Sent Mail")

;; Set return email address based on incoming email address
(setq gnus-posting-styles
      `((".*"
        (address "foo.bar@gmail.com")
        (name "Foo Bar")
        ("X-Message-SMTP-Method" "smtp smtp.gmail.com 587 foo.bar@gmail.com")
       )
       ("^nnimap[+]outlook:.*"
       (address "foo.bar@outlook.com")
       (name "Foo Bar")
       ("X-Message-SMTP-Method" "smtp smtp-mail.outlook.com 587 foo.bar@outlook.com")
       (gcc "\"nnimap+outlook:Sent Items\"")
       )
      )
    )
gnus邮件存档方法
gnus邮件存档组
设置默认存档行为,将邮件存档到我的Gmail
Sent
文件夹。当我使用Outlook帐户时,
gnus posting styles
中的
gcc
标记指示gnus将邮件归档到我的Outlook
Sent
文件夹。我还可以根据使用
X-message-SMTP-Method
标记的电子邮件帐户自动选择发送邮件服务器。Outlook似乎会在邮件发送时自动将其归档到
发送的
文件夹,因此我在实际设置中使用了
(gcc nil)
,以避免重复。当然,您可以将outlook更改为您正在使用的任何邮件服务