Mutt is surly Men’s best friend when it comes to managing huge amount of emails with Powers in hand.
Some updates which I made to my .muttrc
to make my Mutt
faster (on Max OSX):
set header_cache = /Volumes/ramdisk/headers set sleep_time = 0 set timeout = 15 # idle time before scanning set mail_check = 60 # minimum time between scans
As seen above, I am keeping the header cache on a ramdisk, it makes reading the same at least 50% faster. Create a RAM Disk of 100MB by running:
diskutil erasevolume HFS+ "ramdisk" `hdiutil attach -nomount ram://204800`
In the example above 204800
means 100*2048, will create a ramdisk of 100MB.
You can see my .muttrc
here, customized to my taste (or download from my github):
# 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 header_cache = /Volumes/ramdisk/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 unset maildir_header_cache_verify # don't verify cache folder-hook . 'set read_inc=10000' # don't update progress too fast set sleep_time = 0 bind index,pager f next-new-then-unread bind index,pager F forward-message bind index,pager b previous-new-then-unread bind index,pager B bounce-message bind index S sort-mailbox auto_view text/html set sendmail_wait=-1 set mime_forward=yes set mime_forward_rest=yes # Basic Options -------------------------------------- set wait_key = no # shut up, mutt set mbox_type = Maildir # mailbox type set timeout = 15 # idle time before scanning set mail_check = 60 # 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 beep_new # bell on new mails set pipe_decode # strip headers and eval mimes when piping set thorough_search # strip headers and eval mimes before searching # Sidebar Patch -------------------------------------- set sidebar_delim = ' ' set sidebar_visible = yes set sidebar_width = 26 color sidebar_new color221 color233 # Sidebar Navigation --------------------------------- bind index,pager sidebar-next bind index,pager sidebar-prev bind index,pager sidebar-open # 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: user-agent: # show only these unhdr_order * # some distros order things by default hdr_order from: to: cc: date: subject: user-agent: # and in this order # Index View Options --------------------------------- set date_format = "%D %r" #set index_format = "[%Z] %D (%4c) %-30.30F %s" set index_format="%4C %Z %D %-22.22F (%4c) %s" set sort = reverse-date #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 sync-mailbox bind index collapse-thread # 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 set editor="vim -c 'set spell spelllang=en'" bind pager R group-reply # View attachments properly. bind attach view-mailcap # Ctrl-R to mark all as read macro index \Cr "T~UN." "mark all messages as read" # URL View macro pager \Cu "|urlview" "call urlview to open links" # Saner copy/move dialogs macro index C "?" "copy a message to a mailbox" macro index M "?" "move a message to a mailbox" # Compose View Options ------------------------------- set realname = "Abhinav Gupta" # who am i? set envelope_from # which from? set sig_dashes # dashes before sig set edit_headers # show headers when composing set fast_reply # skip to compose when replying set askcc # ask for CC: set fcc_attach # save attachments with the body #set 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 bind compose p postpone-message # Contacts set query_command = "contacts -Sf '%eTOKEN%n' '%s' | sed -e 's/TOKEN/\t/g'" bind editor complete-query bind editor ^T complete
Biggest Reference: Steve Losh’s guide to Homely Mutt.