summaryrefslogtreecommitdiffstats
path: root/muttrc
diff options
context:
space:
mode:
Diffstat (limited to 'muttrc')
-rw-r--r--muttrc140
1 files changed, 90 insertions, 50 deletions
diff --git a/muttrc b/muttrc
index f64dfdb..d8dbba1 100644
--- a/muttrc
+++ b/muttrc
@@ -4,6 +4,7 @@
# source the mutt-solarized colorscheme
#source ~/dotfiles/.mutt/mutt-colors-solarized-dark-256.muttrc - no because it doesn't really work ya radge
+#source ~/.mutt/mutt-colors-solarized-light-256.muttrc
set folder = ~/.mail/ # mailbox location
set alias_file = ~/.mutt/aliases # where to store aliases
@@ -13,6 +14,7 @@ set certificate_file = ~/.mutt/certificates # where to store certs
set mailcap_path = ~/.mutt/mailcap # entries for filetypes
set tmpdir = ~/.mutt/temp # where to keep temp files
set signature = ~/.mutt/signature # my signature file
+set attach_save_dir = ~/Downloads
# Allow forwarding of attachments with emails
set mime_forward
@@ -38,8 +40,8 @@ set text_flowed=yes
# Sidebar Patch --------------------------------------
#set sidebar_delim = '│'
set sidebar_visible = yes
-set sidebar_width = 20
-set sidebar_format = "%B%?F? [%F]?%* %?N?%N/?%S"
+set sidebar_width = 15
+#set sidebar_format = "%B%?F? [%F]?%* %?N?%N/?%S"
set mail_check_stats
#set sidebar_width = 24
## not working in xubuntu set sidebar_shortpath = yes
@@ -60,7 +62,7 @@ hdr_order from: to: cc: bcc: date: subject: # and in this order
# Account Settings -----------------------------------
# Default inbox.
-set spoolfile = "+matt-matthewlemon.com/INBOX"
+set spoolfile = "+purelymail/INBOX"
#set spoolfile = "+INBOX"
# Alternate email addresses.
@@ -70,24 +72,23 @@ set spoolfile = "+matt-matthewlemon.com/INBOX"
subscribe announce@openbsd.org
-named-mailboxes Inbox +matt-matthewlemon.com/INBOX \
- Sent\ Items +matt-matthewlemon.com/Sent\ Items \
- Archive +matt-matthewlemon.com/Archive \
- Archive\ 2019 +matt-matthewlemon.com/Archive.2019 \
- Drafts +matt-matthewlemon.com/Drafts \
- Gmail\ Old +matt-matthewlemon.com/Gmail\ Old\ Archive \
- Trash +matt-matthewlemon.com/Trash \
-
-# mailboxes +matt-matthewlemon.com/INBOX \
-# +matt-matthewlemon.com/INBOX.Archive \
-# +matt-matthewlemon.com/INBOX.Sent\ Items \
-# +matt-matthewlemon.com/INBOX.Drafts \
-# +matt-matthewlemon.com/INBOX.Trash \
+named-mailboxes Inbox +purelymail/INBOX \
+ Sent +purelymail/Sent \
+ Archive +purelymail/Archive \
+ Subscriptions +purelymail/Subscriptions \
+ Drafts +purelymail/Drafts \
+ Trash +purelymail/Trash
+
+# mailboxes purelymail/INBOX \
+# purelymail/INBOX.Archive \
+# purelymail/INBOX.Sent\ Items \
+# purelymail/INBOX.Drafts \
+# purelymail/INBOX.Trash \
#mailboxes +INBOX +INBOX.Archive +INBOX.Sent\ Items +INBOX.Drafts +INBOX.Trash
# Other special folders.
-set mbox = "+matt-matthewlemon.com/INBOX.Archive"
-set postponed = "+matt-matthewlemon.com/INBOX.Drafts"
+set mbox = "purelymail/INBOX.Archive"
+set postponed = "purelymail/INBOX.Drafts"
# Index View Options ---------------------------------
set date_format = "%d-%m-%Y"
@@ -113,9 +114,10 @@ macro index,pager \cb <pipe-entry>'urlview'<enter> 'Follow links with urlview'
macro attach,compose \cb <pipe-entry>'urlview'<enter> 'Follow links with urlview'
# Folder Shortcuts
-macro index Ei '<change-folder>+matt-matthewlemon.com/INBOX<enter>' 'Go to Inbox'
-macro index Ea '<change-folder>+matt-matthewlemon.com/Archive<enter>' 'Go to Archive'
-macro index Es '<change-folder>+matt-matthewlemon.com/Sent\ Items<enter>' 'Go to Sent Mail'
+macro index Ei '<change-folder>Inbox<enter>' 'Go to Inbox'
+macro index Ea '<change-folder>Archive<enter>' 'Go to Archive'
+macro index Es '<change-folder>Sent<enter>' 'Go to Sent Mail'
+macro index ES '<change-folder>Subscriptions<enter>' 'Go to Subscription'
# Navigate threads
bind index { previous-thread
@@ -131,8 +133,8 @@ bind index <space> collapse-thread
macro index \Cr "T~U<enter><tag-prefix><clear-flag>N<untag-pattern>.<enter>" "mark all messages as read"
# Sync email
-macro index O "<shell-escape>offlineimap<enter>" "run offlineimap to sync all mail"
-macro index o "<shell-escape>offlineimap -qf INBOX<enter>" "run offlineimap to sync inbox"
+macro index O "<shell-escape>clear && mbsync purelymailchannel<enter>" "run mbsync to sync all mail"
+#macro index o "<shell-escape>offlineimap -qf INBOX<enter>" "run offlineimap to sync inbox"
# Saner copy/move dialogs
macro index C "<copy-message>?<toggle-mailboxes>" "copy a message to a mailbox"
@@ -174,6 +176,7 @@ bind attach <return> view-mailcap
macro pager \Cu "|urlview<enter>" "call urlview to open links"
# Compose View Options -------------------------------
+unset reply_self # don't reply to me in a mailing list or group!
set realname = "Matthew Lemon" # who am i?
set envelope_from # which from?
set sig_dashes # dashes before sig
@@ -189,35 +192,49 @@ set reply_to # reply to Reply to: field
set reverse_name # reply as whomever it was to
set include # include message in replies
set forward_quote # include message in forwards
+set postpone=ask-no # default to know when asking to postpone
#set editor = "vim" # Use terminal Vim to compose email.
set editor = "vim %s"
set from = "matt@matthewlemon.com"
-set sendmail = "/usr/local/bin/msmtp -a matthewlemon"
+set sendmail = "/usr/bin/msmtp -a purelymail"
set sendmail_wait = 0
-set record = "+matt-matthewlemon.com/Sent\ Items"
+set record = "+purelymail/Sent"
+set recall=no # recall with Ctrl-r instead of asking all the time
-bind compose p postpone-message
-bind index p recall-message
+#bind compose p postpone-message
+#bind index p recall-message
# Get mutt to understand the contacts command line prog which reads Contacts
#set query_command = "contacts -Sf '%eTOKEN%n' '%s' | sed -e 's/TOKEN/\t/g'"
+# khard
+set query_command = "/home/lemon/src/virtualenvs/khal-venv/bin/khard email --parsable %s"
+
## Abook
-set query_command= "abook --mutt-query '%s'"
+#set query_command= "abook --mutt-query '%s'"
macro generic,index,pager \ca "<shell-escape>abook<return>" "launch abook"
macro index,pager A "<pipe-message>abook --add-email<return>" "Add this sender to Abook"
bind editor <Tab> complete-query
bind editor ^T complete
+#set query_command = "khard email --parsable %s"
+# bind editor <Tab> complete-query
+# bind editor ^T complete
+
+set query_command = "khard email --parsable %s"
+ bind editor <Tab> complete-query
+ bind editor ^T complete
+ macro index,pager A "<pipe-message>khard add-email<return>" "add the sender email address to khard"
+
# Better searching in mutt
bind index N search-opposite
bind pager N search-opposite
macro index a "<limit>all\n" "show all messages (undo limit)"
# get an email from mutt to taskwarrior
-macro index T "<pipe-message>mutt2task<enter> <move-message>+matt-matthewlemon.com/INBOX.Archive<enter>"
+macro index ,t "<pipe-message>mutt2task<enter> <move-message>purelymail/INBOX.Archive<enter>"
# Handle searching using notmuch (see Steve Losh article)
# this doesn't work on linux so using another macro index S "<enter-command>unset wait_key<enter><shell-escape>mutt-notmuch-py.py ~/.mail/temporary/search<enter><change-folder-readonly>+temporary/search<enter>" "search mail (using notmuch)"
@@ -225,32 +242,55 @@ macro index T "<pipe-message>mutt2task<enter> <move-message>+matt-matthewlemon.c
#new notmuch-mutt for linux
-macro index <F8> \
-"<enter-command>set my_old_pipe_decode=\$pipe_decode my_old_wait_key=\$wait_key nopipe_decode nowait_key<enter>\
-<shell-escape>notmuch-mutt -r --prompt search<enter>\
-<change-folder-readonly>`echo ${XDG_CACHE_HOME:-$HOME/.cache}/notmuch/mutt/results`<enter>\
-<enter-command>set pipe_decode=\$my_old_pipe_decode wait_key=\$my_old_wait_key<enter>" \
- "notmuch: search mail"
-
-macro index <F9> \
-"<enter-command>set my_old_pipe_decode=\$pipe_decode my_old_wait_key=\$wait_key nopipe_decode nowait_key<enter>\
-<pipe-message>notmuch-mutt -r thread<enter>\
-<change-folder-readonly>`echo ${XDG_CACHE_HOME:-$HOME/.cache}/notmuch/mutt/results`<enter>\
-<enter-command>set pipe_decode=\$my_old_pipe_decode wait_key=\$my_old_wait_key<enter>" \
- "notmuch: reconstruct thread"
-
-macro index <F6> \
-"<enter-command>set my_old_pipe_decode=\$pipe_decode my_old_wait_key=\$wait_key nopipe_decode nowait_key<enter>\
-<pipe-message>notmuch-mutt tag -- -inbox<enter>\
-<enter-command>set pipe_decode=\$my_old_pipe_decode wait_key=\$my_old_wait_key<enter>" \
- "notmuch: remove message from inbox"
+# Notmuch
+#set virtual_spoolfile=yes # uncomment this to have mutt open the first virtual-mailbox below when it launches
+macro index \\\\ "<vfolder-from-query>"
+virtual-mailboxes "Today" "notmuch://?query=date:today"
+virtual-mailboxes "Flagged" "notmuch://?query=tag:flagged"
+virtual-mailboxes "FromMe" "notmuch://?query=from:matt@matthewlemon.com"
+set nm_db_limit = 5000
+#set nm_default_url = ""
+set nm_open_timeout = 5
+set nm_query_window_enable=yes
+set nm_query_window_duration=2
+set nm_query_window_timebase="month" # or "hour", "day", "week", "month", "year"
+set nm_query_window_or_terms="tag:unread and tag:flagged"
+# read entire thread of the current message
+bind index,pager + entire-thread
+# generate virtual folder from query
+#bind index,pager \cf vfolder-from-query
+bind index < vfolder-window-backward
+bind index > vfolder-window-forward
+
+
+# neomutt does not require notmuch-mutt, so this lot is commented out
+
+# macro index <F8> \
+# "<enter-command>set my_old_pipe_decode=\$pipe_decode my_old_wait_key=\$wait_key nopipe_decode nowait_key<enter>\
+# <shell-escape>notmuch-mutt -r --prompt search<enter>\
+# <change-folder-readonly>`echo ${XDG_CACHE_HOME:-$HOME/.cache}/notmuch/mutt/results`<enter>\
+# <enter-command>set pipe_decode=\$my_old_pipe_decode wait_key=\$my_old_wait_key<enter>" \
+# "notmuch: search mail"
+
+# macro index <F9> \
+# "<enter-command>set my_old_pipe_decode=\$pipe_decode my_old_wait_key=\$wait_key nopipe_decode nowait_key<enter>\
+# <pipe-message>notmuch-mutt -r thread<enter>\
+# <change-folder-readonly>`echo ${XDG_CACHE_HOME:-$HOME/.cache}/notmuch/mutt/results`<enter>\
+# <enter-command>set pipe_decode=\$my_old_pipe_decode wait_key=\$my_old_wait_key<enter>" \
+# "notmuch: reconstruct thread"
+
+# macro index <F6> \
+# "<enter-command>set my_old_pipe_decode=\$pipe_decode my_old_wait_key=\$wait_key nopipe_decode nowait_key<enter>\
+# <pipe-message>notmuch-mutt tag -- -inbox<enter>\
+# <enter-command>set pipe_decode=\$my_old_pipe_decode wait_key=\$my_old_wait_key<enter>" \
+# "notmuch: remove message from inbox"
# old Losh OSX-based orientation
#macro index <F8> "<enter-command>unset wait_key<enter><shell-escape>/usr/bin/notmuch-mutt --prompt search<enter><change-folder-readonly>~/.cache/mutt_results<enter>" "search mail (using notmuch)"
#macro index <F9> "<enter-command>unset wait_key<enter><pipe-message>/usr/bin/notmuch-mutt thread<enter><change-folder-readonly>~/.cache/mutt_results<enter><enter-command>set wait_key<enter>" "search and reconstruct owning thread (using notmuch)"
#
-#source ~/.mutt/gpg.rc # Use GPG
+source ~/.mutt/gpg.rc # Use GPG
#source ~/.mutt/auto_views # Define auto_views.
source ~/.mutt/aliases # Load in my aliases.
source ~/.mutt/subscriptions # Define the list of subscribed mailing lists.
@@ -262,7 +302,7 @@ source ~/.mutt/subscriptions # Define the list of subscribed mailing
#source ~/.mutt/message-hooks # Define message hooks.
#source ~/.mutt/bindings # Define key bindings.
#source ~/.mutt/macros # Define macros.
-source ~/.mutt/colours # Define colours.
+#source ~/.mutt/colours # Define colours.
#source ~/.mutt/sidebar # Define sidebar support (requires sidebar patch)
#
# MAILCAP