mutt:将邮件保存到特定文件夹


15

我在Mutt中定义了几个文件夹:

mailboxes           "~/Mail/inbox"
mailboxes           "~/Mail/sent"
mailboxes           "~/Mail/archive"

我可以保存(移动)要存档的消息,方法是按s,然后?查看文件夹列表,然后archive从列表中进行选择。

由于我一直只想保存到archive,因此我想要一个宏,因此按会s自动将选定的消息保存到archive,而无需询问我。

有人可以帮忙吗?

编辑: 我现在有以下宏,以将消息保存到我的“存档”文件夹:

macro index,pager S "<tag-prefix><save-message>=archive<enter>\
  :set delete=yes<enter><sync-mailbox>:set delete=no<enter>"

问题是,邮件保留在标记为已删除的索引中。它们不会立即“同步”。其次,<enter>末尾的充当<display-message>,因此,当我按时S,我将进入当前消息的寻呼机。

以类似的方式,我试图trash在mutt中实现该文件夹。以下摘自Mutt MacroSamples

set maildir_trash=yes
set wait_key=no
folder-hook . 'bind index q quit'
folder-hook inbox 'macro index q ":unset maildir_trash;push \"T~D\\n<tag-prefix-cond>m=trash\\n<end-cond><quit>\"\n"'

但这也不起作用。笨蛋问我:

Append messages to etmaildir_trash;push"T~D\n<tag-prefix-cond>m=trash\n<end-cond><quit>"/maildir_trash;push"T~D\n<tag-prefix-cond>m=trash\n<end-co ([yes]/no):

无论我按什么按钮,都不会发生任何事情(文件夹垃圾桶/ {cur,new,tmp}确实存在)


令人困惑的是<sync-mailbox>似乎什么也没做。当您使用普通的delete命令(d)并且消息保留在标记为已删除的索引中时,当您按$(这是的默认绑定<sync-mailbox>)时会发生什么?
ewhac 2013年

当我按$mutt问我Purge 1 deleted message?。我可以按Y删除该消息。
user1968963 2013年

发生了一个想法:该<sync-mailbox>命令期望用户输入(y),但是看到的是紧随其后的内容:,因此清除不会发生。我想知道如果您把y它放在后面会发生什么...
ewhac 2013年

Answers:


17

标记邮件:

macro index S ":set confirmappend=no delete=yes\n<tag-prefix-cond><save-message>=archive\n<sync-mailbox>:set confirmappend=yes delete=ask-yes\n"

仅当前:

macro index A ":set confirmappend=no delete=yes\n<save-message>=archive\n<sync-mailbox>:set confirmappend=yes delete=ask-yes\n"

编辑

macro index S ":set confirmappend=no delete=yes\n<tag-prefix><save-message>=archive\n<sync-mailbox>:set confirmappend=yes delete=ask-yes\n"

我的错,tag-prefix而不是使用tag-prefix-cond,会将宏应用于标记的消息(如果存在),否则应用于当前选定的消息。


当我添加您的宏并启动mutt和pres时S,mutt说:nothing to do
user1968963 2013年

你要t寄些邮件吗?
亚历克斯

很好,很有效。我如何使其也能在当前消息上运行(而不必先对其进行标记)?
user1968963 2013年

1
@ user1968963查看更新。
亚历克斯

1
@ user1968963可能使用tag-prefix-cond来设置不同的命令/变量(据我了解,仅当有带标签的邮件时才执行),我会尝试,但需要一些时间,会让您知道。
亚历克斯

3

傻子指南有一个示例宏为您的使用情况:

宏索引<tag-prefix-cond> <save-message> = foo <enter>“将已标记的消息(如果有)保存到= foo”

您可以像这样实现它:

macro index,pager A  "<save-message>=Mail/archive<enter>"  "mark message as Archived"

Shifta在索引或分页器视图中命中都会将邮件保存到存档maildir。


此解决方案有两个小问题:1)我一次只能“保存”一条消息。我无法标记多条消息并将其全部保存以存档。2)当我“保存”一条消息时,它仍然出现在收件箱中,标记为已删除。是否可以立即应用更改(以便将其立即从收件箱中删除)?
user1968963
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.