# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
# Grog's personal .muttrc, derived from Michael Elkin's version
#
# The format of this file is one command per line.  Everything after a pound
# sign (#) is a comment, unless a backward slash (\) precedes it
#

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
# BOOLEAN vars
#

set allow_8bit		# never do Q-P encoding on legal 8-bit chars
# set arrow_cursor	# use -> instead of hiliting the whole line
#set askbcc
#set askcc
set autoedit		# go to the editor right away when composing
#set auto_tag		# always operate on tagged messages
set edit_hdrs		# let me edit the message header when composing
set fast_reply		# skip initial prompts when replying
set fcc_attach		# Include attachments in copies of sent messages?
set force_name		# save outgoing by recipient, create if mailbox doesn't exist
#set header		# include message header when replying
set help		# show the help lines
# set nohold		# move read message to ``mbox''
# set nomark_old	# i don't care about whether a message is old
#set metoo		# don't remove my address when replying
# set mime_fwd		# use message/rfc822 type to forward messages
set point_new		# jump to the first new message on startup
set noprompt_after	# ask me for a command after the external pager exits
set recall		# when there are postponed messages, ask me to resume
set resolve		# move to the next message when an action is performed
set reverse_alias	# attempt to look up my names for people
set nosave_empty	# remove files when no messages are left
set save_name		# save outgoing messages by recipient, if the
set noconfirmappend	# don't ask before appending to an existing mailbox
set status_on_top	# some people prefer the status bar on top
#set strict_threads	# don't thread by subject
set tilde		# use virtual lines to pad blank lines in the pager

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
# STRING vars
#

set attribution="On %d, %n wrote:"
set forw_format="Re: %s"	# subject to use when forwarding messages
set charset="iso-8859-1"	# character set for your terminal
set hdr_format="%4C %Z %{%d/%m} %-15.15L (%4l) %s" # format of the index
set indent_str="> "		# how to quote replied text
#set locale="C"			# locale to use for printing time
set quote_regexp="^ *[a-zA-Z]*[>:#}]"	# how to catch quoted text
#set to_chars=" +TCF"
set url_regexp="((ftp|http)://|mailto:)[^ ]*[^., \n\t>\"]"

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
# PATH vars
#

set alias_file=~/.mail_aliases	# where I keep my aliases
#set editor="emacs -f tidy-up-reply -nw"		# editor to use when composing messages
#set local_sig=~/.sig-local
#set mailcap_path="~/.mailcap:/usr/local/share/mailcap"
set mbox=+mbox			# where to store read messages
set postponed=+postponed	# mailbox to store postponed messages in
set print_cmd=lpr		# how to print things (I like to save trees)
set record=+outbox		# save copies of outgoing messages in +outbox
#set remote_sig=~/.signature
#set sendmail="/usr/lib/sendmail"	# where to find sendmail
#set signature="~/.signature"	# file which contains my signature
#set spoolfile="~/mailbox"	# where my new mail is located
#set shell="/bin/zsh"		# program to use for shell escapes
set tmpdir=~			# where to store temp files
set visual=vim			# editor invoked by ~v in the builtin editor
set web_browser=/usr/local/etc/browse_url	# program to use when viewing URLs

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
# QUADOPTION vars
#

#set abort_unmodified=yes	# automatically abort replies if I don't
				# change the message
set copy=yes			# always save a copy of outgoing messages
set delete=yes			# purge deleted messages without asking
# set edit_forward=ask-no		# prompt for edit when forwarding messages?
set include=yes			# always include the message in replies
# set move=yes			# don't ask about moving messages, just do it
#set reply_to=ask-yes		# ask me if I want to use the given reply-to address
set print=ask-yes		# ask me if I really want to print messages
set use_mailcap=yes		# always use a mailcap entry when found
# set verify_sig=yes		# don't automatically verify message signatures

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
# NUMBER vars
#

set history=50		# number of lines of history to remember
set read_inc=25		# show progress when reading a mailbox
#set timeout=0		# how long to wait before autochecking for new mail
set write_inc=25	# show progress while writing mailboxes

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
# internal-pager options (only used if $pager == "builtin")
#

#set pager=less			# some people prefer an external pager
set pager_context=3		# no. of lines of context to give when scrolling
# set pager_format="%C/%T %s  %-20.40f   (%S)"	# format of the pager status bar
set pager_format="%C/%T %Z %-15.15L (%S) %s" # format of the pager status bar
set pager_stop			# don't move to the next message on next-page

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
# I subscribe to a lot of mailing lists, so this is _very_ useful.  This
# groups messages on the same subject to make it easier to follow a
# discussion.  Mutt will draw a nice tree showing how the discussion flows.
#
set sort=threads
#set sort=reverse-mailbox-order
set sort_browser=reverse-date

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
# Header fields I don't normally want to see
#
ignore *		# this means "ignore all lines by default"

# I do want to see these fields, though!
unignore	from: subject to cc reply-to \
		date x-mailer x-url # this shows how nicely wrap long lines

set smart_wrap		# Wrap junk messages

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
# Color definitions
#

color hdrdefault brightcyan black
color quoted cyan black
color signature brightred black
color indicator brightyellow red
color error brightred black
color status brightyellow blue
color tree brightmagenta black	# the thread tree in the index menu
color tilde brightmagenta black
color message brightcyan black
#color normal brightwhite black
color attachment brightmagenta black
color search black green	# how to hilite search patterns in the pager
color header brightyellow black ^(From|Subject):
color body brightyellow black "(ftp|http)://[^ ]+"	# point out URLs
color body brightcyan black [-a-z_0-9.]+@[-a-z_0-9.]+	# e-mail addresses
color underline brightgreen black

# attributes when using a mono terminal
mono header underline ^(From|Subject):
mono quoted bold

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
# Key bindings
#

bind index "\e<" first-message	# emacs-like bindings for moving to top/bottom
bind index \e> last-message
bind index { top-page
bind index } bottom-page
bind index insert first-message
bind index delete last-message

bind pager G bottom	# just like vi and less
macro   pager   \Ck     "|pgp -kaf^M"   # a comment is valid here

macro index \# /bug^M	# search for bugs
macro index "\""        ":set realname=\"real hairy macro\"^M:set ?realname^M" # and a comment to boot!
#macro index f1 :woohoo!


# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
# User Defined Headers
#

#my_hdr X-Useless-Header: Look ma!  It's a \# sign!
#my_hdr X-Operating-System: `uname -a`

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
# Specify default filename when saving messages
#
#	save-hook <pattern> <mailbox>
#
# <mailbox> is provided as default when saving messages from <pattern>

#save-hook mutt- =mutt-mail
#save-hook aol\.com +spam

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
# Multiple spool mailboxes
#
#	mbox-hook <pattern> <mbox-mailbox>
#
# Read mail in <pattern> is moved to <mbox-mailbox> when <pattern> is
# closed.

#mbox-hook =mutt-users.in =mutt-users
#mbox-hook +TEST +inbox

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
# Change settings based upon message recipient
#
#	send-hook <pattern> <command>
#
# <command> is executed when sending mail to an address matching <pattern>

#send-hook mutt-users 'myhdr From: user@host'
#send-hook mutt-users set realname="Lord Mutt" attribution="Foo!:" # comment

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
# Change settings based on mailbox
#
#	folder-hook <pattern> <command>
#
# <command> is executed when opening a mailbox matching <pattern>

#folder-hook . invalid command
#folder-hook . 'set sort=date-sent'
#folder-hook mutt 'set hdr_format="%4C %Z %02m/%02N %-20.20F (%4l) %s"'
#folder-hook =mutt my_hdr Revolution: \#9 # real comment

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
# Aliases
#
#	alias <name> <address> [ , <address> ... ]

source ~/.mail_aliases

#alias exam "\# to annoy michael" <user@host>
#alias me Michael Elkins <michael> # me!

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
# I use Mutt on several different machines, so I put local config commands
# in a separate file so I can have the rest of the settings the same on all
# machines.
#

# source ~/.muttrc-local	# config commands local to this site
# EOF
