A Man And His Mutt - Room With A View (
Page 4 of 11 )
Like most mail clients,
Mutt offers two "views" of your mail. First, there's the list of messages, which
Mutt's manual calls the "index". From this index, you can choose to read a
particular message, which launches the "pager".
Both index and pager
allow you to perform common mail operations - delete, forward, reply, save - and
use standard keys for navigation. Here's a quick list of the default navigation
keys (you can change these if they don't work for you, keep reading for
details):
Key What it does Where it does it
---------------------------------------------------------
j Move one line up Index
k Move one line down Index
z Move one page up Index
Z Move one page down Index
<enter> Open message Index
- Move one page up Pager
<space> Move one page down Pager
q Close message Pager
In addition to these navigation keys, Mutt also allows you to
perform commonly-used functions just by tapping the appropriate key. Here's what
you need to get started:
Key What it does Where it does it
---------------------------------------------------------
m Compose new message Index, pager
r Reply to current message Index, pager
f Forward current message Index, pager
d Delete current message Index, pager
b Bounce current message Index, pager
c View different mailbox Index, pager
v View attachment Index, pager
a Create alias Index, pager
q Quit Index, pager
You can obtain a complete list from the Mutt manual, or by
tapping the
?
key at any time for detailed help.
When it comes to
composing new messages or replying to existing ones, Mutt can use any text
editor you like. On my system, it defaults to vi; however, you can easily modify
it to use emacs, pico or any other editor that strikes your fancy. As soon as
you decide to edit a message, Mutt will launch your selected editor, either with
an empty document or with quoted message text, and allow you to edit it using
standard editor commands. And as soon as you save the file, Mutt will offer you
the option of sending it immediately, postponing it or trashing it.
If
this seems simple, it is - new users should have very little difficulty getting
their arms around Mutt's basic navigation and functions. But don't be fooled -
there's a lot more you can do with Mutt, if you're willing to futz around with
its default configuration. I'll be discussing this on the next page - try out
the functions above and then come back for that.{mospagebreak title=Under The
Hood} If you only check your mail occasionally, Mutt's default settings will
probably work fine for you, and you won't ever need to see a configuration file.
If, on the other hand, your mail client is your closest friend, you're probably
going to want to alter some of Mutt's factory settings.
Since Mutt
doesn't come with a preferences editor - who needs the overhead? - this is
accomplished by editing Mutt's configuration file, usually located in
/etc/muttrc (for system-wide configuration)
or in each user's home directory
~/.muttrc (for per-user configuration)
Mutt's configuration file is pretty easy to understand - it
consists of a bunch of variable-value pairs, which allow you to control
everything from where Mutt stores your mail to the colors and formatting of
email messages. A sample configuration file is included with the Mutt
distribution - you should take a look at this well-commented sample to
understand the configuration options available.
The variables you'll
encounter in this configuration file come in different flavours. Some are
Boolean (all you have to do is set them to true to activate them) while others
require a specific value (for example, the location of your mail folders or the
color to use for quoted text). Mutt has a default setting for every variable in
this configuration file; if you don't specify a value for a particular variable,
this default setting will be used instead.
The configuration file is read
by Mutt every time it starts up, and it's also possible to reconfigure Mutt's
behaviour "hot" - while it's running - by editing the variable-value pairs
through the client itself.
Let's see how this works in practice, with a
few extracts from my own configuration file.