# NOTE # Aliases give you a basic addressbook. Use "a" to add a message's # sender to the aliases file, so you don't have to remember their # address. # File to use for saving new aliases set alias_file=~/.mutt.aliases # File in which to search for aliases source ~/.mutt.aliases set folder=~/mail # directory with all mail folders source ~/.mutt.hooks # NOTE # Boolean Variables: # set foo # or unset foo # or toggle foo # or reset foo (reset to compile time default) # or set nofoo or set invfoo (inverts actual value) # {{{ # set pop_delete # set pop_host="mail.somewhere.net" # set pop_last # set pop_pass="0p3n5354m3" # set pop_user="you@somewhere.net" # }}} #unset allow_8bit # use QP or Base64 if unset. set arrow_cursor # "->" as cursor (faster on slow networks). unset ascii_chars # Use ASCII chars for threading arrows. #unset askbcc # ask to fill out Bcc on mesg-send? #unset askcc # ask to fill out CC on mesg-send? # set attach_split # handle every single attachment instead of concat # set autoedit # start editor without asking for to, subject,... # set auto_tag # if something is tagged, run commands on tagged msgs. # set beep # beep on certain user errors and other errors set beep_new # beep on new mail #unset bounce_delivered # unset => remove Delivered-To: when bouncing. # set check_new # search for new messages in maildir/MH folders. #unset collapse_unread # don't collapse threads with unread mails unset confirmappend # prompt for confirm when appending message to ex. mbox # set confirmcreate # prompt for confirm when saving to non existing mbox set copy # always keep a copy of my mails # set delete_untag # untag messages when marking them for deletion. # set edit_headers # put headers in editor when composing messages # set encode_from # use Quoted-Printable, if ^From in a mail. set envelope_from set fast_reply # do not ask for to, subject,... when replying. # set fcc_attach # store attachments too when doing a Fcc # set fcc_clear # FCCs will be stored unencrypted and unsigned # set followup_to # Add Mail-Followup-To header. unset force_name # outgoing mail to be saved in folder of "username" # set forward_decode # decode messages when forwarding without MIME #unset forward_decrypt # decrypt PGP message, when mime_forward and !mime_fw_d #unset forward_quote # quote forwarded message, if not $mime_forward # set from="schuyler@nocat.net" set from="schuyler@frot.org" # set hdrs # nohdrs implies not to write my_hdr into mail. #unset header # quote full header on reply set help # show help in first line of the display #unset hidden_host # when set, skip the host name part of hostname # set honor_followup_to # Mail-Followup-To header is honored? # set hostname="oreillynet.com" #unset ignore_list_reply_to # ignore Reply-To pointing back to mailinglist # set implicit_autoview # use autoview, if a "copiousoutput" is in mailcap. # set mailcap_sanitize # remove ugly chars from mailcap % expands. # set mark_old # mark new articles as old, when leaving mbox set markers # put a '+' at the beginning of wrapped lines. set menu_scroll # scroll on last line of menu (set) or do a nextpage? #unset meta_key # Don't interpret Alt-x as ESC x unset metoo # should we keep ourselves in group replies? # set mh_purge # remove messages marked as deleted from MH folders. #unset mime_forward_decode # decode messages when forwarding with MIME set pager_stop # Don't jump to next message at end of message. #unset pgp_autosign # set pgp_replysign # always sign reply to signed message # set pgp_replyencrypt # always encrypt reply to encrypted message # set pgp_replysignencrypted # yeah #unset pgp_verify_sig # always verify pgp signatures #unset pgp_show_unusable # Show non-usable keys on the PGP key selection menu? #unset pipe_decode # Weed headers and PGP-decode message before piping # set pipe_split # split tagged messages (or don't) when using "|" unset prompt_after # display prompt after exit from pager #unset read_only # folders not read only #unset reply_self # if unset, a reply to yourself implies reply to other set resolve # go to next undeleted message after modifying actual #unset reverse_alias # use realname from reverse alias lookup unset reverse_name # Set "From" to address, where replied mail was sent to #unset save_address # Use full mail address (with domain) as default folder. #unset save_empty # remove mailbox when last message is removed. set save_name # Fcc, if ~/Mail/ exists. #unset score # don't do scoring unset sig_dashes # Don't prepend "-- \n" to the signature set smart_wrap # wrap long lines at word boundary. # set sort_re # set: only put a child in a thread, if starts with Re: set status_on_top # status line at the top or button? set strict_threads # thread only by In-Reply-To/References or by Subject. #unset suspend # Ctrl-Z is able to suspend mutt. #unset thorough_search # MIME decode before searching. # set tilde # Internal Pager: ~~~~ at and of message? #unset uncollapse_jump # don't move pointer, when uncollapsing thread #unset use_8bitmime # run sendmail 8.8.x with -B8BITMIME to enable 8bit unset use_domain # add $domain to all addresses without @host #unset use_from # generate a "From:" header (unless my_hdr From:) # set user_agent # Create User-Agent: Mutt/ header. # set wait_key # Only "press a key" if return value non-zero set wrap_search # Wrap search to top/bottom. #unset write_bcc # send Bcc: line to $sendmail # Quadoptions # set foo=yes # or set foo=ask-yes # or set foo=no # or set foo=ask-no # or reset foo (reset to compile time default) #set abort_nosubject=no # Abort, if message has no subject. #set abort_unmodified=yes # Abort, if message wasn't edited. set delete=yes # ask for confirmation when deleting messages? #set honor_followup_to=yes # Ask whether to honor Mail-Followup-To header set include=yes # quote message, when replying #set mime_forward=ask-no # use MIME when forwarding mails. set move=no # Move mail-spool to $mbox? #set postpone=ask-yes # ask for postponing when doing an Abort. #set print=ask-yes # ask whether you really want to print. set quit=ask-yes # ask before quitting. #set recall=no # ask for using postponed message. #set reply_to=yes # Use or ignore Reply-To. #NOTE man strftime for the embeded date format. set attribution="* On %(%e-%b-%Y at %l:%M%p %Z), %F said:" #set charset="iso-8859-1" #set send_charset="us-ascii:iso-8859-1:utf8" set date_format="!%a, %b %1d/%1m, %Y at %I:%M:%S%p %Z" set default_hook="~f %s !~P | (~P ~C %s)" #"~f %s | ~t %s" #set editor="vim '+/^$'" #set editor="vim '+:5'" set editor="vim +':set textwidth=70' +':set wrap'" set history=50 # number of lines of history to remember #set indent_str="> " # change this and I'll kill you! ;-) #set ispell=/usr/lib/mutt/mailspell #set mail_check=5 set mark_old # set: make distinction between New mail and Old mail. #set markers #set mbox=~/mail/Inbox # Where is my main mailbox (where should read mail go) set pager_context=3 set pager_index_lines=9 # number of lines to see from the index #set pgp_timeout=1000 # number of seconds to cache passphrase set postponed=~/mail/postponed-msgs #set quote_regexp="^( {0,4}-?[>|:%]| {0,4}[a-z0-9]+[>|]+)+" set quote_regexp="^ *[a-zA-Z]*[]>|}()%:=-][]>|}():=-]*" # YESS!! #set read_inc=20 set read_inc=1 # '1': show count number with *every* mail. set realname="Schuyler Erle" #set record=+sent # Where to save sent mail? set reply_regexp="^((re|Re|RE):[ \t]*)*" #set simple_search="~f %s | ~C %s | ~s %s" # default pattern (Fr|To|Cc|Su) #set sort_alias=alias #set sort_browser=alpha #set spoolfile=/var/mail/gene #set status_chars="-*%A" # status of mbox (unchanged, changed, readonly, attach) set tmpdir="/tmp" #set to_chars=" +TCFL" # default (Not to me, To me, CC me, From me, mailing list) #set to_chars=" +TCF " # default (Not to me, To me, CC me, From me) #set write_inc=10 # number - display increment count for every n-th mail ## ====================================================================== ## Format Strings: ## ====================================================================== #set folder_format="%F %-8.8u %-8.8g %d %8s %N %f" set folder_format="%F %d %8s %N %f" set forward_format="Fwd: %s" # format the text used in the format attribution set hdr_format="%4C %Z %[!%m%d%y] %-17.17F (%3l) %s" #set index_format="%4C %Z %[!%d/%m] %-17.17F (%3l) %s" set index_format="%4C %Z %{%m/%d} %-16.16F (%5c) %s" # format of the index # default #set pager_format="%S [%C] %n (%l) %s" # more verbose: #set pager_format="%C of %m on %(%e-%b-%Y at %l:%M%p %Z) with %l lines (%c bytes) and status: %S%Z" set pager_format="%C of %m on %(%a, %b-%e-%Y at %l:%M%p %Z) with %l line(s)" #set status_format="-%r-Mutt: %f [Msgs:%?M?%M/?%m%?n? New:%n?%?o? Old:%o?%?d? Del:%d?%?F? Flag:%F?%?t? Tag:%t?%?p? Post:%p?%?b? Inc:%b? %?l? %l?]---(%s/%S)-%>-(%P)---" #set status_format="%v: %f (%s) [%M/%m] [N=%n,*=%t,post=%p,new=%b]" set status_format="%n new by %s in %f with %m message(s) of %l bytes total" ## ======================================================================== ## AUTO_VIEW - tell mutt which "content types" to view with ## the command given in the $HOME/.mailcap file. ## ======================================================================== auto_view text/html ## ======================================================================== ## BIND - bind commands to keys. ## ======================================================================== ## ======================== ## Bindings for attach menu ## ======================== #bind attach ' ' select-entry ## ============================ ## Bindings for index and pager ## ============================ #bind index \t next-new #bind pager \t next-new #bind index ' ' next-unread #bind pager ' ' next-unread #bind index V show-version #bind pager V show-version #bind index A create-alias #bind pager A create-alias ## ============= ## spam handlers ## ============= #macro index S "get_from.pl >> ~/.procmail/spammers"s="SPAM\n" #macro pager S "get_from.pl >> ~/.procmail/spammers"s="SPAM\n" #macro index X "get_from.pl --domain >> ~/.procmail/spammers"s="SPAM\n" #macro pager X "get_from.pl --domain >> ~/.procmail/spammers"s="SPAM\n" #macro index F "get_from.pl >> ~/.procmail/friends" #macro pager F "get_from.pl >> ~/.procmail/friends" #macro index \cb "spamprobe spam"s="SPAM\n" #macro pager \cb "spamprobe spam"s="SPAM\n" #macro index \cg "spamprobe good"s="Inbox\n" #macro pager \cg "spamprobe good"s="Inbox\n" macro index S "sa-learn --spam --no-rebuild\n" macro pager S "sa-learn --spam --no-rebuild\n" macro index H "sa-learn --ham --no-rebuild\n" macro pager H "sa-learn --ham --no-rebuild\n" ## ============================================== ## Bindings for editing and reloading the .muttrc ## ============================================== #macro generic ,ve "!Eterm -e vim ~/.muttrc &\r" #macro generic ,vu ":source ~/.muttrc\r" #macro generic ,va "!Eterm -e vim ~/.mutt.aliases &\r" ## These run fetchmail (or wake up the daemon) #macro pager G "!fetchmail\r" #macro index G "!fetchmail\r" ## ================== ## Bindings for index ## ================== #bind index P recall-message #bind index s save-message #bind browser x check-new #bind index next-page #bind index previous-page #bind index x sync-mailbox #bind index a tag-prefix #bind index \; tag-entry #bind index t tag-entry #macro index ,l "l~N ! ~p\n" #macro index ,n "l~N\n" # ====================================== # Quickly change to my favorite folders: # ====================================== #macro index "\\S" "c=sent\r" #macro pager "\\S" "c=sent\r" macro index ,i "c!\n" "Go to Inbox" macro pager ,i "c!\n" "Go to Inbox" # =========================== # Bindings for pager # =========================== #bind pager / search #bind pager L list-reply #bind pager b bounce-message #bind pager f forward-message #bind pager m mail #bind pager g group-reply #bind pager j next-line #bind pager k previous-line #bind pager : enter-command #bind pager p previous-undeleted #bind pager n next-undeleted #bind pager \n next-new #bind compose \n send-message #bind compose s send-message #bind pager ,p print-message macro pager J "!gpg --keyserver wwwkeys.us.pgp.net --recv-key " "Get PGP Key" #macro pager K "!gpg --lsign-key " "Sign PGP Key" # funky gimmick, but I never use it =) #macro pager ,s "|festival --tts\r" #macro pager "i" "?" #macro index "i" "?" #macro compose S "Fgpg --clearsign\ny" "clearsign message" ## ===================================== #bind pager previous-line #bind pager next-line #bind pager exit #bind pager view-attachments #bind attach exit #bind attach view-attach #bind index display-message # Pre mutt 1.3.x, you'll want this instead: #macro index "c?" # macro index "c?" #bind browser select-entry #bind browser exit # run the little brother database query binary #set query_command = "lbdbq %s" ## ================= ## Color definitions ## ================= color header white default "^from" color header cyan default "^from:" color header green default "^to:" color header green default "^cc:" color header yellow default "^subject:" color header white default "^date:" color header yellow default "^Delivery-date:" color header green default "^Envelope-to:" color header white default "^newsgroups:" color header green default "^message-id:" color header green default "^message-id: .*pine" color header yellow default "^Organization:" color header yellow default "^Organisation:" color header white default "^reply-to:" color header green default "^Return-path:" color header cyan default "^User-Agent:" color header yellow default "^X-Fnord:" color header cyan default "^x-mailer:" color header yellow default "^X-Message-Flag:" color header red default "^x-spam-rule:" color header red default "^X-Spam-Score:" color header red default "^X-Spam-Status:" color header red default "^X-SpamProbe:" color header red default "^X-SpamProbe: SPAM" #color header yellow default "^X-WebTV-Stationery:" # wtf? color indicator brightwhite blue color markers red default color message white blue ## ================================================== ## Colorizing the body of messages (ie in the pager) ## ================================================== color normal white default # pager body # Coloring quoted text - coloring the first 7 levels: color quoted cyan default color quoted1 yellow default color quoted2 red default color quoted3 green default color quoted4 cyan default color quoted5 yellow default color quoted6 red default color quoted7 green default color attachment brightgreen default color signature yellow default color status white blue color tilde black default color tree cyan default color underline green default color bold brightblue default color error red default color body yellow default "[;:]-[)/(|]" # colorise smileys color body yellow default "[;:][)/(|]" color body green default "(http|https|ftp|news|telnet|finger)://[^ ]*" color body green default "\\b[^ ]+://[^ ]*" color body green default "ftp://[^ ]*" color body green default "[[:alnum:]][-+.#_[:alnum:]]*@[-+.[:alnum:]]*[[:alnum:]]" color body green default "" color index brightwhite default ~N # New color index white default ~O # Old color index yellow default 'SPAM' color index cyan default '~p' # mail to myself color index green default '~P' # mail from myself color index magenta default ~F # Flagged color index magenta default ~T # Tagged color index blue default ~D # Deleted #color index brightwhite default 'nestrik@ology\.net' # Headers to ignore/see # Ignore everything but the really important lines: ignore * unignore from: to cc date subject # unignore organization organisation # unignore user-agent x-agent x-mailer x-newsreader # unignore X-Spam-Score # unignore newsgroups: posted-to: x-spam-rule: X-Spam-Status: X-SpamProbe: # unignore newsgroups: posted-to: x-spam-rule: X-Spam-Status: X-SpamProbe: # These can provide amusement #unignore X-Fnord: X-WebTV-Stationery: X-Message-Flag: # Darned Lotus identifies with "X-Lotus-FromDomain" :-( #unignore x-lotus #Specifying the order of header lines when viewed with the pager: # First, we shall remove all previous definitons of the header order # so the following definition will be the first and valid one: unhdr_order * # The default of "hdr_order" is: # hdr_order From Date: From: To: Cc: Subject: # hdr_order From Newsgroups: From: Reply-To: To: Cc: Subject: Date: Message-Id: X-Mailer: X-Newsreader: X-Agent: hdr_order Date: From: User-Agent: X-Mailer: X-Newsreader: X-Agent: To: Cc: Subject: X-Spam-Score: #hdr_order Date: From: To: Cc: X-Newsreader: X-Mailer: Organization: Organisation: User-Agent: X-Fnord: X-WebTV-Stationery: X-Message-Flag: Newsgroups: Reply-To: X-Spam-Status: x-spam-rule: x-SpamProbe: Subject: # this is cool, dual text/html mails have only the text part shown alternative_order text/plain # I like plaintext more than html. ## "alternates" tells mutt about your addresses. Mutt thus can show mails ## addresses to you in the folder index as "personal" using the flag '+'. #set alternates=((tom|gilbertt)@snowman.net|.*@linuxbrit.*|.*@offended.*|giblet@lunixbrat.com) set alternates=((schuyler|sderle)@(oreilly.com|oreillynet.com|tridity.org|nocat.net)) # Set the defaults for folders: folder-hook . set timeout=30 folder-hook . set sort=threads folder-hook . set sort_aux=date-sent # When I'm in the main index, check more often :) folder-hook "!" set timeout=5 # Mail in my inbox is more date than thread sensitive... folder-hook "!" set sort=date-received folder-hook "sent" set sort=reverse-date # fcc-save-hook justsomeguy +p-f-m # fcc-save-hook order +orders # fcc-save-hook pudge +use.perl fcc-hook . +fcc #save-hook .* =lists/%B #folder-hook . set signature=~/.signature #folder-hook . save-hook .* =lists/%B #folder-hook . unmy_hdr * #folder-hook . my_hdr From: Tom Gilbert #folder-hook . my_hdr X-Editor: Vim http://www.vim.org/ #folder-hook . my_hdr X-Info: http://www.linuxbrit.co.uk #send-hook . my_hdr X-Operating-System: Linux/`uname -r` (`uname -m`) #send-hook . my_hdr X-Uptime: \`uptime\` #folder-hook . set signature="~/.signature" #folder-hook crackmonkey my_hdr From: Tom Gilbert #folder-hook crackmonkey set signature="~/.signature.crackmonkey" #folder-hook . set pgp_create_traditional=no #folder-hook crackmonkey set pgp_create_traditional=yes ## "lists" adds a list of mailing lists addresses ## so mutt knows about these for showing them in the folder indes ## and to allow replying to them with the command "list-reply". ## The first part of the address (up to the @) should be used here. #unlists * # remove old entries first #lists `cd ~/mail/lists && echo *` #unsubscribe * #subscribe `cd ~/mail/lists && echo *` ## "mailboxes" defines the list of folders to be checked for new mail ## Mutt both can show the number of mailboxes with new mail in the index and ## you can cycle through these after giving the "change-folder" command. :-) #mailboxes ! #mailboxes +SPAM #mailboxes `for file in ~/mail/lists/*; do echo -n "+lists/$(basename $file) "; done` #mailboxes inbox `for file in ~/mail/*; do echo -n "+$(basename $file) "; done`