1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
|
# Paths ----------------------------------------------
set folder = ~/mail # mailbox location
#set alias_file = ~/.mutt/alias # where to store aliases
set header_cache = ~/.mutt/cache/headers # where to store headers
set message_cachedir = ~/.mutt/cache/bodies # where to store bodies
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/sig # my signature file
# Basic Options --------------------------------------
set wait_key = no # shut up, mutt
set mbox_type = Maildir # mailbox type
set timeout = 3 # idle time before scanning
set mail_check = 0 # minimum time between scans
unset move # gmail does that
set delete # don't ask, just do
unset confirmappend # don't ask, just do!
set quit # don't ask, just do!!
unset mark_old # read/new is good enough for me
unset askcc # don't prompt for cc's
set askbcc # don't prompt for cc's
set pipe_decode # strip headers and eval mimes when piping
set thorough_search # strip headers and eval mimes before searching
set meta_key=yes # since control-j/k don't work use meta
# Sidebar Patch --------------------------------------
#set sidebar_delim = ' │'
#set sidebar_visible = no
#set sidebar_width = 30
#color sidebar_new color221 color233
# Need trash patch for this to work -------------------
set trash = "+mxroute/Trash"
# Status Bar -----------------------------------------
set status_chars = " *%A"
set status_format = "───[ Folder: %f ]───[%r%m messages%?n? (%n new)?%?d? (%d to delete)?%?t? (%t tagged)? ]───%>─%?p?( %p postponed )?───"
# Header Options -------------------------------------
ignore * # ignore all headers
unignore from: to: cc: date: subject: # show only these
unhdr_order * # some distros order things by default
hdr_order from: to: cc: date: subject: # and in this order
# Account Settings -----------------------------------
# Default inbox.
set spoolfile = "+mxroute/INBOX"
# Alternate email addresses.
alternates "luxagraf@gmail.com|scott_gilbertson@condenast.com"
# Mailboxes to show
set folder = ~/mail/mxroute
mailboxes =INBOX \
+Archive \
+Trash \
+Bookmarks \
+Darktable \
+Sent \
+'Old Mail.2008' \
+'Old Mail.2009' \
+'Old Mail.2010' \
+'Old Mail.2011' \
+'Old Mail.2012' \
+'Old Mail.2013' \
+'Old Mail.2014' \
+'Old Mail.2015' \
+'Old Mail.2016' \
+'Old Mail.2017' \
+'Old Mail.2018' \
+'Old Mail.2019' \
+Drafts \
+temporary/search \
# Other special folders.
set mbox = "+mxroute/Archive"
set postponed = "+Drafts"
alias sng Scott Gilbertson <sng@luxagraf.net>
alias wired Scott Gilbertson <scott_gilbertson@wired.com>
macro compose v "<edit-from>^Uidentity_<tab>" "Select from"
# Index View Options ---------------------------------
set date_format = "%m/%d"
set index_format = "[%Z] %D %-20.20F %s"
set sort = threads # like gmail
set sort_aux = reverse-last-date-received # like gmail
set uncollapse_jump # don't collapse on an unread message
set sort_re # thread based on regex
set reply_regexp = "^(([Rr][Ee]?(\[[0-9]+\])?: *)?(\[[^]]+\] *)?)*"
# Index Key Bindings ---------------------------------
bind index gg first-entry
bind index G last-entry
bind index R group-reply
bind index <tab> sync-mailbox
bind index <space> collapse-thread
# Ctrl-R to mark all as read
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 i "<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"
macro index M "<save-message>?<toggle-mailboxes>" "move a message to a mailbox"
# Gmail style archiving and starring
macro index,pager a "<save-message>=Archive<enter><sync-mailbox>" "Archive"
macro index,pager s "<save-message>=starred<enter><sync-mailbox>" "Starred"
macro index,pager gi "<change-folder>=INBOX<enter>" "Go to inbox"
macro index,pager ga "<change-folder>=Archive<enter>" "Go to all mail"
macro index,pager gb "<change-folder>=bookmarks<enter>" "Go to Bookmarks"
#macro index,pager gs "<change-folder>=starred<enter>" "Go to starred messages"
macro index,pager gs "<change-folder>=Sent<enter>" "Go to starred messages"
#Save a message to my notes folder
macro index,pager N "<pipe-message>~/bin/mqq.sh "
# Pager View Options ---------------------------------
set pager_index_lines = 10 # number of index lines to show
set pager_context = 3 # number of context lines to show
set pager_stop # don't go to next message automatically
set menu_scroll # scroll in menus
set tilde # show tildes like in vim
unset markers # no ugly plus signs
set quote_regexp = "^( {0,4}[>|:#%]| {0,4}[a-z0-9]+[>|]+)+"
alternative_order text/plain text/enriched text/html
# Pager Key Bindings ---------------------------------
bind pager k previous-line
bind pager j next-line
bind pager gg top
bind pager G bottom
macro pager i '<exit>'
bind pager R group-reply
# View attachments properly.
bind attach <return> view-mailcap
macro pager \Cu "|urlview <enter>" "call urlview to open links"
macro index,pager \cb "<pipe-message> urlscan<Enter>" "call urlscan to extract URLs out of a message"
macro attach,compose \cb "<pipe-entry> urlscan<Enter>" "call urlscan to extract URLs out of a message"
#macro index,pager \cb "<pipe-message> urlscan<Enter>" "call urlscan to extract URLs out of a message"
#macro attach,compose \cb "<pipe-entry> urlscan<Enter>" "call urlscan to extract URLs out of a message"
# Compose View Options -------------------------------
set realname = "Scott Gilbertson" # who am i?
set envelope_from
set use_envelope_from=yes # which from?
set sig_dashes # dashes before sig
set edit_headers # show headers when composing
set fast_reply # skip to compose when replying
set fcc_attach # save attachments with the body
unset mime_forward # forward attachments as part of body
set forward_format = "Fwd: %s" # format of subject when forwarding
set forward_decode # decode when forwarding
set attribution = "On %d, %n wrote:" # format of quoting header
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 editor = "nvim" # Use terminal Vim to compose email.
set from = "sng@luxagraf.net"
set sendmail = "/usr/bin/msmtp"
set sendmail_wait = 0
#set record = "/home/lxf/mail/fastmail/sent"
set record = "=Sent"
#macro generic "<esc>1" ":set from=scott_gilbertson@wired.com"
#macro generic "<esc>2" ":set from=you@your-employer.example"
#macro generic "<esc>3" ":set from=you@some-other-provider.example"
#after the fact identity switching is less prone to me being an idiot, switching to a different account and then forgetting I did that.
alias identity_sng Scott Gilbertson <sng@luxagraf.net>
alias identity_wired Scott Gilbertson <scott_gilbertson@wired.com>
macro compose v "<edit-from>^Uidentity_<tab>" "Select from"
#source ~/.mutt/alias
bind compose p postpone-message
bind index p recall-message
#set query_command = "contacts -Sf '%eTOKEN%n' '%s' | sed -e 's/TOKEN/\t/g'"
set query_command = "abook --mutt-query '%s'"
bind editor <Tab> complete-query
bind editor ^T complete
#source ~/.mutt/mutt-colors-solarized-dark-256.muttrc
source ~/.mutt/mutt-colors-solarized-dark-16.muttrc
#source ~/.mutt/mutt-zenburn.muttrc
#make N do something useful/like Vim
#bind index N search-opposite
#bind pager N search-opposite
#undo limit searches
macro index c "<limit>all\n" "show all messages (undo limit)"
macro index S "<enter-command>unset wait_key<enter><shell-escape>notmuch-mutt --prompt search<enter><change-folder-readonly>`echo ${XDG_CACHE_HOME:-$HOME/.cache}/notmuch/mutt/results`<enter>" "notmuch: search mail"
macro index <F9> "<enter-command>unset wait_key<enter><pipe-message>notmuch-mutt thread<enter><change-folder-readonly>`echo ${XDG_CACHE_HOME:-$HOME/.cache}/notmuch/mutt/results`<enter><enter-command>set wait_key<enter>" "notmuch: reconstruct thread"
#macro generic,index,pager \ca "<shell-escape>abook<return>" "launch abook"
macro index,pager A "<pipe-message>abook --add-email<return>" "add the sender address to abook"
|