diff options
author | Tom Ryder <tom@sanctum.geek.nz> | 2020-05-17 21:07:42 +1200 |
---|---|---|
committer | Tom Ryder <tom@sanctum.geek.nz> | 2020-05-17 21:07:42 +1200 |
commit | f1d624683a0bce72ec341ff16e702c7fca7476a0 (patch) | |
tree | 00a36ccd0cee2305b01edea6e3a415937b2743c0 /mutt/muttrc | |
parent | Merge branch 'release/v8.40.0' into develop (diff) | |
download | dotfiles-f1d624683a0bce72ec341ff16e702c7fca7476a0.tar.gz dotfiles-f1d624683a0bce72ec341ff16e702c7fca7476a0.zip |
Overhaul Mutt macros
Diffstat (limited to 'mutt/muttrc')
-rw-r--r-- | mutt/muttrc | 71 |
1 files changed, 26 insertions, 45 deletions
diff --git a/mutt/muttrc b/mutt/muttrc index b91c66cd..a16a0088 100644 --- a/mutt/muttrc +++ b/mutt/muttrc @@ -125,8 +125,28 @@ bind generic,index,browser,pager \Cb previous-page # Turn off annoying mailbox lock feature bind index '%' noop +# Shortcuts to jump to mailboxes; the format here is byzantine, but it copes correctly with changes to the variables +macro generic,index,browser,pager gi \ + '<change-folder>!<enter>' \ + 'Change to inbox' +macro generic,index,browser,pager gs \ + '<change-folder><<enter>' \ + 'Change to sent' +macro generic,index,browser,pager gb \ + '<change-folder>-<enter>' \ + 'Change to previous' +# The format here is pretty weird, but it copes correctly with changes to the +# variable that occur *after* the macro is defined, and there isn't +# a punctuation shortcut for it like there is for the previous three. I'd love +# to know if there's a better way to do this that I've missed in the manual. +macro generic,index,browser,pager gd '\ +<enter-command>push "<change-folder>$postponed"<enter><enter>' \ + 'Change to drafts' + # Blindly save message to whatever box is suggested -macro index,pager S 's<enter>' 'Save message blindly' +macro index,pager S \ + '<save-message><enter>' \ + 'Save message blindly' # Shortcut to add addresses to abook macro index,pager A \ @@ -134,50 +154,11 @@ macro index,pager A \ 'Add sender address to abook' # Shortcut to reload configuration -macro generic,index,browser,pager \\R \ - ':source ~/.config/mutt/muttrc<enter>:echo "Config reloaded!"<enter>' \ - 'Reload muttrc' - -# SpamAssassin spam tagging; Vim's muttrc syntax highlighting hates this, but -# it *is* valid -spam 'X-Spam-Flag: YES' 'SPAM' - -# Defaults for SpamAssassin training -set my_salearn = 'sa-learn' -set my_spam_folder = "$folder/spam" +macro generic,index,browser,pager \\R '\ +<enter-command>unhook *<enter>\ +<enter-command>source $alias_file<enter>\ +<enter-command>echo "Reloaded with $alias_file"<enter>' \ + "Clear hooks and reload" # Machine or account specific settings source ~/.config/mutt/muttrc.d/src| - -# These hooks and macros go *after* we're done loading user options, as they -# bake in variables like $folder. Only hooks and macros dependent on these -# paths should be set after this point. - -# Shortcuts to jump to mailboxes -macro generic,index,browser,pager gi \ - "<change-folder>$spoolfile<enter>" \ - "Change to inbox" -macro generic,index,browser,pager gs \ - "<change-folder>$record<enter>" \ - "Change to sent" -macro generic,index,browser,pager gd \ - "<change-folder>$postponed<enter>" \ - "Change to drafts" - -# SpamAssassin spam tagging -folder-hook . \ - 'macro index,pager \Cs \ - "<pipe-message>$my_salearn --spam<enter><save-message>$my_spam_folder<enter>" \ - "Train as spam, move to spam"' -folder-hook . \ - 'macro index,pager \Ch \ - "<pipe-message>$my_salearn --ham<enter>" \ - "Retrain as ham"' -folder-hook $my_spam_folder \ - 'macro index,pager \Ch \ - "<pipe-message>$my_salearn --ham<enter><save-message>!<enter>" \ - "Train as ham, move to inbox"' -folder-hook $my_spam_folder \ - 'macro index,pager \Cs \ - "<pipe-message>$my_salearn --spam<enter>" \ - "Retrain as spam"' |