1
1
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
2
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Chapter 6. Optional features</title><meta name="generator" content="DocBook XSL Stylesheets V1.71.1" /><link rel="start" href="index.html" title="The Mutt E-Mail Client" /><link rel="up" href="index.html" title="The Mutt E-Mail Client" /><link rel="prev" href="mimesupport.html" title="Chapter 5. Mutt's MIME Support" /><link rel="next" href="tuning.html" title="Chapter 7. Performance tuning" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 6. Optional features</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="mimesupport.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="tuning.html">Next</a></td></tr></table><hr /></div><div class="chapter" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title"><a id="optionalfeatures"></a>Chapter 6. Optional features</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="optionalfeatures.html#id475133">1. General notes</a></span></dt><dd><dl><dt><span class="sect2"><a href="optionalfeatures.html#id475138">1.1. Enabling/disabling features</a></span></dt><dt><span class="sect2"><a href="optionalfeatures.html#url-syntax">1.2. URL syntax</a></span></dt></dl></dd><dt><span class="sect1"><a href="optionalfeatures.html#ssl">2. SSL/TLS Support</a></span></dt><dt><span class="sect1"><a href="optionalfeatures.html#pop">3. POP3 Support</a></span></dt><dt><span class="sect1"><a href="optionalfeatures.html#imap">4. IMAP Support</a></span></dt><dd><dl><dt><span class="sect2"><a href="optionalfeatures.html#id475555">4.1. The Folder Browser</a></span></dt><dt><span class="sect2"><a href="optionalfeatures.html#id475675">4.2. Authentication</a></span></dt></dl></dd><dt><span class="sect1"><a href="optionalfeatures.html#smtp">5. SMTP Support</a></span></dt><dt><span class="sect1"><a href="optionalfeatures.html#account-hook">6. Managing multiple accounts</a></span></dt><dt><span class="sect1"><a href="optionalfeatures.html#caching">7. Local caching</a></span></dt><dd><dl><dt><span class="sect2"><a href="optionalfeatures.html#header-caching">7.1. Header caching</a></span></dt><dt><span class="sect2"><a href="optionalfeatures.html#body-caching">7.2. Body caching</a></span></dt><dt><span class="sect2"><a href="optionalfeatures.html#maint-cache">7.3. Maintenance</a></span></dt></dl></dd><dt><span class="sect1"><a href="optionalfeatures.html#exact-address">8. Exact address generation</a></span></dt></dl></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="id475133"></a>1. General notes</h2></div></div></div><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="id475138"></a>1.1. Enabling/disabling features</h3></div></div></div><p>
3
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Chapter 6. Optional features</title><meta name="generator" content="DocBook XSL Stylesheets V1.73.2" /><link rel="start" href="index.html" title="The Mutt E-Mail Client" /><link rel="up" href="index.html" title="The Mutt E-Mail Client" /><link rel="prev" href="mimesupport.html" title="Chapter 5. Mutt's MIME Support" /><link rel="next" href="tuning.html" title="Chapter 7. Performance tuning" /><style xmlns="" type="text/css">
4
body { margin-left:2%; margin-right:2%; font-family:serif; }
5
.toc, .list-of-tables, .list-of-examples { font-family:sans-serif; }
6
h1, h2, h3, h4, h5, h6 { font-family:sans-serif; }
7
em.replaceable code { font-family:sans-serif; }
8
p { text-align:justify; }
9
div.table p.title, div.example p.title { font-size:smaller; font-family:sans-serif; }
10
.email, .email a { font-family:monospace; }
11
div.table-contents table { border-collapse:collapse; border:1px solid #c0c0c0; }
12
div.table-contents table td, div.table-contents table th { padding:5px; text-align:left; }
13
div.table-contents table th {
14
font-family:sans-serif;
19
pre.screen, div.note { background:#f0f0f0; border:1px solid #c0c0c0; padding:5px; }
20
div.note h3 { font-size:small; font-style:italic; font-variant: small-caps; }
21
div.note h3:after { content: ":" }
22
div.note { margin-bottom: 5px; }
24
</style></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 6. Optional features</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="mimesupport.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="tuning.html">Next</a></td></tr></table><hr /></div><div class="chapter" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title"><a id="optionalfeatures"></a>Chapter 6. Optional features</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="optionalfeatures.html#optionalfeatures-notes">1. General notes</a></span></dt><dd><dl><dt><span class="sect2"><a href="optionalfeatures.html#compile-time-features">1.1. Enabling/disabling features</a></span></dt><dt><span class="sect2"><a href="optionalfeatures.html#url-syntax">1.2. URL syntax</a></span></dt></dl></dd><dt><span class="sect1"><a href="optionalfeatures.html#ssl">2. SSL/TLS Support</a></span></dt><dt><span class="sect1"><a href="optionalfeatures.html#pop">3. POP3 Support</a></span></dt><dt><span class="sect1"><a href="optionalfeatures.html#imap">4. IMAP Support</a></span></dt><dd><dl><dt><span class="sect2"><a href="optionalfeatures.html#imap-browser">4.1. The Folder Browser</a></span></dt><dt><span class="sect2"><a href="optionalfeatures.html#imap-authentication">4.2. Authentication</a></span></dt></dl></dd><dt><span class="sect1"><a href="optionalfeatures.html#smtp">5. SMTP Support</a></span></dt><dt><span class="sect1"><a href="optionalfeatures.html#account-hook">6. Managing multiple accounts</a></span></dt><dt><span class="sect1"><a href="optionalfeatures.html#caching">7. Local caching</a></span></dt><dd><dl><dt><span class="sect2"><a href="optionalfeatures.html#header-caching">7.1. Header caching</a></span></dt><dt><span class="sect2"><a href="optionalfeatures.html#body-caching">7.2. Body caching</a></span></dt><dt><span class="sect2"><a href="optionalfeatures.html#maint-cache">7.3. Maintenance</a></span></dt></dl></dd><dt><span class="sect1"><a href="optionalfeatures.html#exact-address">8. Exact address generation</a></span></dt></dl></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="optionalfeatures-notes"></a>1. General notes</h2></div></div></div><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="compile-time-features"></a>1.1. Enabling/disabling features</h3></div></div></div><p>
4
25
Mutt supports several of optional features which can be enabled or
5
26
disabled at compile-time by giving the <span class="emphasis"><em>configure</em></span> script
6
certain arguments. These are listed in the ``Optional features'' section of
27
certain arguments. These are listed in the “<span class="quote">Optional features</span>” section of
7
28
the <span class="emphasis"><em>configure --help</em></span> output.
9
30
Which features are enabled or disabled can later be determined from the
10
31
output of <code class="literal">mutt -v</code>. If a compile option starts with
11
``+'' it is enabled and disabled if prefixed with ``-''. For example, if
32
“<span class="quote">+</span>” it is enabled and disabled if prefixed with “<span class="quote">-</span>”. For example, if
12
33
mutt was compiled using GnuTLS for encrypted communication instead of
13
34
OpenSSL, <code class="literal">mutt -v</code> would contain:
14
35
</p><pre class="screen">
23
44
<code class="literal">proto</code> is the communication protocol:
24
45
<code class="literal">imap</code> for IMAP, <code class="literal">pop</code> for POP3 and
25
<code class="literal">smtp</code> for SMTP. If ``s'' for ``secure communication''
46
<code class="literal">smtp</code> for SMTP. If “<span class="quote">s</span>” for “<span class="quote">secure communication</span>”
26
47
is appended, mutt will attempt to establish an encrypted communication
27
48
using SSL or TLS. If no explicit port is given, mutt will use the
28
49
system's default for the given protocol.
30
51
Since all protocols by mutt support authentication, the username may be
31
52
given directly in the URL instead of using the <code class="literal">pop_user</code> or
32
<code class="literal">imap_user</code> variables. A password can be given, too but
33
is not recommended if the URL is specified in a configuration file on
53
<code class="literal">imap_user</code> variables. It may contain the “<span class="quote">@</span>” symbol
54
being used by many mail systems as part of the login name. A password can be
55
given, too but is not recommended if the URL is specified in a configuration
36
58
The optional path is only relevant for IMAP.
40
62
username for each folder: <code class="literal">imap://username@imapserver[:port]/INBOX</code>
41
63
or <code class="literal">imap://username2@imapserver[:port]/path/to/folder</code>.
42
64
Replacing <code class="literal">imap://</code> by <code class="literal">imaps://</code>
43
would make mutt attempt to conect using SSL or TLS on a different port
65
would make mutt attempt to connect using SSL or TLS on a different port
44
66
to encrypt the communication.
45
67
</p></div></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="ssl"></a>2. SSL/TLS Support</h2></div></div></div><p>
46
68
If mutt is compiled with IMAP, POP3 and/or SMTP support, it can also be
47
69
compiled with support for SSL or TLS using either OpenSSL or GnuTLS (
48
by running the <span class="emphasis"><em>configure</em></span> script with the
70
by running the <span class="emphasis"><em>configure</em></span> script with the
49
71
<span class="emphasis"><em>--enable-ssl=...</em></span> option for OpenSSL or
50
72
<span class="emphasis"><em>--enable-gnutls=...</em></span> for GnuTLS). Mutt can then
51
73
attempt to encrypt communication with remote servers if these protocols
52
are suffixed with ``s'' for ``secure communication''.
74
are suffixed with “<span class="quote">s</span>” for “<span class="quote">secure communication</span>”.
53
75
</p></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="pop"></a>3. POP3 Support</h2></div></div></div><p>
54
76
If Mutt was compiled with POP3 support (by running the <span class="emphasis"><em>configure</em></span>
55
77
script with the <span class="emphasis"><em>--enable-pop</em></span> flag), it has the ability to work
59
81
Remote POP3 servers can be accessed using URLs with the <code class="literal">pop</code> protocol
60
82
for unencrypted and <code class="literal">pops</code> for encrypted
61
communication, see <a href="optionalfeatures.html#url-syntax" title="1.2. URL syntax">Section 1.2, “URL syntax”</a> for details.
83
communication, see <a class="xref" href="optionalfeatures.html#url-syntax" title="1.2. URL syntax">Section 1.2, “URL syntax”</a> for details.
63
85
Polling for new mail is more expensive over POP3 than locally. For this
64
86
reason the frequency at which Mutt will check for mail remotely can be
66
<a href="reference.html#pop-checkinterval" title="3.215. pop_checkinterval">$pop_checkinterval</a>
88
<a class="link" href="reference.html#pop-checkinterval" title="3.216. pop_checkinterval">$pop_checkinterval</a>
67
89
variable, which defaults to every 60 seconds.
69
Another way to access your POP3 mail is the <span class="emphasis"><em>fetch-mail</em></span> function
70
(default: G). It allows to connect to <a href="reference.html#pop-host" title="3.217. pop_host">$pop_host</a>, fetch all your new mail and place it in the
71
local <a href="reference.html#spoolfile" title="3.276. spoolfile">$spoolfile</a>. After this
90
</p><a id="fetch-mail"></a><p>
91
Another way to access your POP3 mail is the <code class="literal"><fetch-mail$</code> function
92
(default: G). It allows to connect to <a class="link" href="reference.html#pop-host" title="3.218. pop_host">$pop_host</a>, fetch all your new mail and place it in the
93
local <a class="link" href="reference.html#spoolfile" title="3.277. spoolfile">$spoolfile</a>. After this
72
94
point, Mutt runs exactly as if the mail had always been local.
74
<span class="bold"><strong>Note:</strong></span> If you only need to fetch all messages to a
95
</p><div class="note"><h3 class="title">Note</h3><p>
96
If you only need to fetch all messages to a
75
97
local mailbox you should consider using a specialized program, such as
76
98
<code class="literal">fetchmail</code>, <code class="literal">getmail</code> or similar.
77
</p></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="imap"></a>4. IMAP Support</h2></div></div></div><p>
99
</p></div></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="imap"></a>4. IMAP Support</h2></div></div></div><p>
78
100
If Mutt was compiled with IMAP support (by running the <span class="emphasis"><em>configure</em></span>
79
101
script with the <span class="emphasis"><em>--enable-imap</em></span> flag), it has the ability to work
80
102
with folders located on a remote IMAP server.
82
104
You can access the remote inbox by selecting the folder by its URL
83
(see <a href="optionalfeatures.html#url-syntax" title="1.2. URL syntax">Section 1.2, “URL syntax”</a> for details) using the
105
(see <a class="xref" href="optionalfeatures.html#url-syntax" title="1.2. URL syntax">Section 1.2, “URL syntax”</a> for details) using the
84
106
<code class="literal">imap</code> or <code class="literal">imaps</code> protocol.
85
107
Alternatively, a pine-compatible notation is also supported, ie
86
108
<code class="literal">{[username@]imapserver[:port][/ssl]}path/to/folder</code>
88
Note that not all servers use ``/'' as the hierarchy separator. Mutt should
110
Note that not all servers use “<span class="quote">/</span>” as the hierarchy separator. Mutt should
89
111
correctly notice which separator is being used by the server and convert
90
112
paths accordingly.
92
114
When browsing folders on an IMAP server, you can toggle whether to look
93
115
at only the folders you are subscribed to, or all folders with the
94
<span class="emphasis"><em>toggle-subscribed</em></span> command. See also the
95
<a href="reference.html#imap-list-subscribed" title="3.89. imap_list_subscribed">$imap_list_subscribed</a> variable.
116
<span class="emphasis"><em>toggle-subscribed</em></span> command. See also the
117
<a class="link" href="reference.html#imap-list-subscribed" title="3.89. imap_list_subscribed">$imap_list_subscribed</a> variable.
97
119
Polling for new mail on an IMAP server can cause noticeable delays. So, you'll
98
120
want to carefully tune the
99
<a href="reference.html#mail-check" title="3.104. mail_check">$mail_check</a>
121
<a class="link" href="reference.html#mail-check" title="3.105. mail_check">$mail_check</a>
101
<a href="reference.html#timeout" title="3.287. timeout">$timeout</a>
123
<a class="link" href="reference.html#timeout" title="3.288. timeout">$timeout</a>
102
124
variables. Personally I use
104
125
</p><pre class="screen">
105
126
set mail_check=90
109
129
with relatively good results over my slow modem line.
130
</p><div class="note"><h3 class="title">Note</h3><p>
111
131
Note that if you are using mbox as the mail store on UW servers prior to
112
132
v12.250, the server has been reported to disconnect a client if another client
113
133
selects the same folder.
114
</p><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="id475555"></a>4.1. The Folder Browser</h3></div></div></div><p>
134
</p></div><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="imap-browser"></a>4.1. The Folder Browser</h3></div></div></div><p>
115
135
As of version 1.2, mutt supports browsing mailboxes on an IMAP
116
136
server. This is mostly the same as the local file browser, with the
117
137
following differences:
119
138
</p><div class="itemizedlist"><ul type="disc"><li><p>
120
139
In lieu of file permissions, mutt displays the string "IMAP",
121
140
possibly followed by the symbol "+", indicating
122
141
that the entry contains both messages and subfolders. On
123
142
Cyrus-like servers folders will often contain both messages and
126
145
For the case where an entry can contain both messages and
127
146
subfolders, the selection key (bound to <code class="literal">enter</code> by default)
157
174
Mutt will try whichever methods are compiled in and available on the server,
158
175
in the following order: SASL, ANONYMOUS, GSSAPI, CRAM-MD5, LOGIN.
160
There are a few variables which control authentication:
177
There are a few variables which control authentication:
162
178
</p><div class="itemizedlist"><ul type="disc"><li><p>
163
<a href="reference.html#imap-user" title="3.95. imap_user">$imap_user</a> - controls
179
<a class="link" href="reference.html#imap-user" title="3.96. imap_user">$imap_user</a> - controls
164
180
the username under which you request authentication on the IMAP server,
165
181
for all authenticators. This is overridden by an explicit username in
166
182
the mailbox path (ie by using a mailbox name of the form
167
183
<code class="literal">{user@host}</code>).
169
<a href="reference.html#imap-pass" title="3.91. imap_pass">$imap_pass</a> - a
185
<a class="link" href="reference.html#imap-pass" title="3.91. imap_pass">$imap_pass</a> - a
170
186
password which you may preset, used by all authentication methods where
171
187
a password is needed.
173
<a href="reference.html#imap-authenticators" title="3.83. imap_authenticators">$imap_authenticators</a> - a colon-delimited list of IMAP
189
<a class="link" href="reference.html#imap-authenticators" title="3.83. imap_authenticators">$imap_authenticators</a> - a colon-delimited list of IMAP
174
190
authentication methods to try, in the order you wish to try them. If
175
191
specified, this overrides mutt's default (attempt everything, in the order
177
</p></li></ul></div><p>
179
</p></div></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="smtp"></a>5. SMTP Support</h2></div></div></div><p>
193
</p></li></ul></div></div></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="smtp"></a>5. SMTP Support</h2></div></div></div><p>
180
194
Besides supporting traditional mail delivery through a
181
195
sendmail-compatible program, mutt supports delivery through SMTP if it
182
196
was configured and built with <code class="literal">--enable-smtp</code>.
184
If the configuration variable
185
<a href="reference.html#smtp-url" title="3.269. smtp_url">$smtp_url</a> is set, mutt
186
will contact the given SMTP server to deliver messages; if it is unset,
187
mutt will use the program specified by <a href="reference.html#sendmail" title="3.257. sendmail">$sendmail</a>.
198
If the configuration variable
199
<a class="link" href="reference.html#smtp-url" title="3.270. smtp_url">$smtp_url</a> is set, mutt
200
will contact the given SMTP server to deliver messages; if it is unset,
201
mutt will use the program specified by <a class="link" href="reference.html#sendmail" title="3.258. sendmail">$sendmail</a>.
189
For details on the URL syntax, please see <a href="optionalfeatures.html#url-syntax" title="1.2. URL syntax">Section 1.2, “URL syntax”</a>.
203
For details on the URL syntax, please see <a class="xref" href="optionalfeatures.html#url-syntax" title="1.2. URL syntax">Section 1.2, “URL syntax”</a>.
191
205
The built-in SMTP support supports encryption (the <code class="literal">smtps</code> protocol
192
206
using SSL or TLS) as well as SMTP authentication using SASL. The authentication mechanisms
193
for SASL are specified in <a href="reference.html#smtp-authenticators" title="3.267. smtp_authenticators">$smtp_authenticators</a>
207
for SASL are specified in <a class="link" href="reference.html#smtp-authenticators" title="3.268. smtp_authenticators">$smtp_authenticators</a>
194
208
defaulting to an empty list which makes mutt try all available methods
195
209
from most-secure to least-secure.
196
210
</p></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="account-hook"></a>6. Managing multiple accounts</h2></div></div></div><p>
199
213
error-prone. The account-hook command may help. This hook works like
200
214
folder-hook but is invoked whenever you access a remote mailbox
201
215
(including inside the folder browser), not just when you open the
216
mailbox which includes (for example) polling for new mail, storing Fcc
217
messages and saving messages to a folder. As a consequence,
218
account-hook should only be used to set connection-related settings such
219
as passwords or tunnel commands but not settings such as sender
220
address or name (because in general it should be considered unpredictable
221
which account-hook was last used).
207
224
</p><pre class="screen">
208
225
account-hook . 'unset imap_user; unset imap_pass; unset tunnel'
209
226
account-hook imap://host1/ 'set imap_user=me1 imap_pass=foo'
210
227
account-hook imap://host2/ 'set tunnel="ssh host2 /usr/libexec/imapd"'
211
228
account-hook smtp://user@host3/ 'set tunnel="ssh host3 /usr/libexec/smtpd"'
214
</p></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="caching"></a>7. Local caching</h2></div></div></div><p>
229
</pre></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="caching"></a>7. Local caching</h2></div></div></div><p>
215
230
Mutt contains two types of local caching: <span class="emphasis"><em>(1)</em></span>
216
the so-called ``header caching'' and <span class="emphasis"><em>(2)</em></span> the
217
so-called ``body caching'' which are both described in this section.
231
the so-called “<span class="quote">header caching</span>” and <span class="emphasis"><em>(2)</em></span> the
232
so-called “<span class="quote">body caching</span>” which are both described in this section.
219
234
Header caching is optional as it depends on external libraries, body
220
235
caching is always enabled if mutt is compiled with POP and/or IMAP
230
245
Header caching can be enabled via the configure script and the
231
246
<span class="emphasis"><em>--enable-hcache</em></span> option. It's not turned on
232
247
by default because external database libraries are required: one
233
of qdbm, gdbm or bdb must be present.
248
of tokyocabinet, qdbm, gdbm or bdb must be present.
235
If enabled, <a href="reference.html#header-cache" title="3.107. header_cache">$header_cache</a> can be
250
If enabled, <a class="link" href="reference.html#header-cache" title="3.108. header_cache">$header_cache</a> can be
236
251
used to either point to a file or a directory. If set to point to
237
252
a file, one database file for all folders will be used (which may
238
253
result in lower performance), but one file per folder if it points