mutt:メッセージを特定のフォルダーに保存する


15

Muttにはいくつかのフォルダーが定義されています:

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

私が押すことにより、アーカイブにメッセージを(移動)を保存することができs、その後、?フォルダのリストを表示し、その後、私は選ぶことができarchive、リストから。

常に保存したいだけarchiveなので、マクロを持ちたいので、を押すsarchive、選択したメッセージが自動的にに保存されます。

誰か助けてもらえますか?

編集: メッセージを「アーカイブ」フォルダーに保存するために、次のマクロがあります。

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

問題は、メッセージが削除済みとしてマークされたインデックスにとどまることです。それらはすぐに「同期」されません。第二に、<enter>最後にとして機能する<display-message>ため、を押すSと、現在のメッセージのポケットベルに行き着きます。

同様に、私はtrashmuttにフォルダーを実装しようとしています。以下は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"'

しかし、これも機能しません。Insted muttからの質問:

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):

何を押しても何も起こりません(フォルダーtrash / {cur、new、tmp}は存在します)


<sync-mailbox>何もしないように思われるのは不可解です。通常の削除コマンド(d)を使用し、削除済みとしてマークされたインデックスにメッセージが残っている場合、$(のデフォルトのバインディングである<sync-mailbox>)を押すとどうなりますか?
ewhac

$mutt を押すと私に尋ねられますPurge 1 deleted message?。を押すYと、メッセージが削除されます。
user1968963

思考が発生します:<sync-mailbox>コマンドはユーザー入力(y)を予期していますが、:代わりに直後に表示されるため、パージは発生しません。私は、あなたが入れた場合に何が起こるか疑問に思うy...それ後
ewhac

回答:


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タグ付きメッセージが存在する場合はマクロを適用し、そうでない場合は現在選択されているメッセージに適用します。


私はあなたのマクロを追加し、雑種犬とPRESを起動したときS、Muttは言う:nothing to do
user1968963

あなたはやるtAG一部のメール?
アレックス

素晴らしい、それは動作します。どのようにして現在のメッセージでも(最初にタグ付けすることなく)機能させることができますか?
user1968963

1
@ user1968963は更新を参照してください。
アレックス

1
@ user1968963はおそらくtag-prefix-condを使用して別のコマンド/変数を設定します(タグ付けされたメールがある場合にのみ実行されます)
アレックス

3

muttのガイドは、例えば、マクロがあるユースケースのために:

マクロインデックス<tag-prefix-cond> <save-message> = foo <enter> "タグ付きメッセージ(存在する場合)を= fooに保存"

次のようにケースに実装できます。

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

叩くShiftaインデックスまたはポケットベルビューのいずれかにすると、アーカイブのmaildirにメッセージを保存します。


このソリューションには2つの小さな問題があります。1)一度に1つのメッセージしか「保存」できません。複数のメッセージにタグを付けて、それらをすべてアーカイブに保存することはできません。2)メッセージを「保存」しても、削除済みとしてマークされた受信トレイに表示されたままです。変更をすぐに適用することは可能ですか(受信ボックスからすぐに削除されるように)?
user1968963
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.