7 version 1.5.19 (2009-01-05)
11 "All mail clients suck. This one just sucks less." -me, circa 1995
13 ----------------------------------------------------------------------
23 3. Software Distribution Sites
25 4. Mutt online resources
27 5. Contributing to Mutt
29 6. Typograhical conventions
37 2. Moving Around in Menus
39 3. Editing Input Fields
45 4. Reading Mail - The Index and Pager
47 4.1. The Message Index
53 4.4. Miscellaneous Functions
59 5.2. Editing the message header
61 5.3. Sending cryptographically signed/encrypted
64 5.4. Sending anonymous messages via mixmaster
66 5.5. Sending format=flowed messages
68 6. Forwarding and Bouncing Mail
74 1. Location of initialization files
76 2. Syntax of Initialization Files
80 4. Defining/Using aliases
82 5. Changing the default key bindings
84 6. Defining aliases for character sets
86 7. Setting variables based upon mailbox
90 9. Using color and mono video attributes
92 10. Message header display
94 11. Alternative addresses
98 13. Using Multiple spool mailboxes
100 14. Monitoring incoming mail
102 15. User defined headers
104 16. Specify default save mailbox
106 17. Specify default Fcc: mailbox when composing
108 18. Specify default save filename and default Fcc: mailbox at
111 19. Change settings based upon message recipients
113 20. Change settings before formatting a message
115 21. Choosing the cryptographic key of the recipient
117 22. Adding key sequences to the keyboard buffer
119 23. Executing functions
125 26. Setting and Querying Variables
129 26.2. User-defined variables
131 27. Reading initialization commands from another file
133 28. Configuring features conditionnaly
145 1. Regular Expressions
147 2. Patterns: Searching, Limiting and Tagging
149 2.1. Pattern Modifier
153 2.3. Complex Patterns
155 2.4. Searching by Date
161 4.1. Message Matching in Hooks
163 5. External Address Queries
169 8. Handling Mailing Lists
171 9. Handling multiple folders
175 10.1. Linking threads
177 10.2. Breaking threads
179 11. Delivery Status Notification (DSN) Support
181 12. Start a WWW Browser on URLs
183 5. Mutt's MIME Support
185 1. Using MIME in Mutt
187 1.1. Viewing MIME messages in the pager
189 1.2. The Attachment Menu
191 1.3. The Compose Menu
193 2. MIME Type configuration with mime.types
195 3. MIME Viewer configuration with mailcap
197 3.1. The Basics of the mailcap file
199 3.2. Secure use of mailcap
201 3.3. Advanced mailcap Usage
203 3.4. Example mailcap files
207 5. MIME Multipart/Alternative
209 6. Attachment Searching and Counting
217 1.1. Enabling/disabling features
227 4.1. The Folder Browser
233 6. Managing multiple accounts
243 8. Exact address generation
245 7. Performance tuning
247 1. Reading and writing mailboxes
249 2. Reading messages from remote folders
251 3. Searching and limiting
255 1. Command line options
257 2. Configuration Commands
259 3. Configuration variables
263 3.2. abort_unmodified
281 3.11. assumed_charset
303 3.22. bounce_delivered
305 3.23. braille_friendly
307 3.24. check_mbox_size
313 3.27. collapse_unread
315 3.28. uncollapse_jump
325 3.33. connect_timeout
331 3.36. crypt_use_gpgme
337 3.39. crypt_autosmime
347 3.44. digest_collapse
351 3.46. dotlock_program
357 3.49. duplicate_threads
365 3.53. envelope_from_address
407 3.74. hide_thread_subject
409 3.75. hide_top_limited
411 3.76. hide_top_missing
417 3.79. honor_followup_to
421 3.81. ignore_linear_white_space
423 3.82. ignore_list_reply_to
425 3.83. imap_authenticators
427 3.84. imap_check_subscribed
429 3.85. imap_delim_chars
437 3.89. imap_list_subscribed
447 3.94. imap_pipeline_depth
449 3.95. imap_servernoise
453 3.97. implicit_autoview
457 3.99. include_onlyfirst
473 3.107. mailcap_sanitize
479 3.110. maildir_header_cache_verify
481 3.111. header_cache_pagesize
507 3.124. mh_seq_flagged
509 3.125. mh_seq_replied
515 3.128. mime_forward_decode
517 3.129. mime_forward_rest
519 3.130. mix_entry_format
525 3.133. message_cachedir
527 3.134. message_cache_clean
529 3.135. message_format
541 3.141. pager_index_lines
545 3.143. crypt_autosign
547 3.144. crypt_autoencrypt
549 3.145. pgp_ignore_subkeys
551 3.146. crypt_replyencrypt
553 3.147. crypt_replysign
555 3.148. crypt_replysignencrypted
557 3.149. crypt_timestamp
561 3.151. sidebar_visible
565 3.153. pgp_use_gpg_agent
567 3.154. crypt_verify_sig
569 3.155. smime_is_default
571 3.156. smime_ask_cert_label
573 3.157. smime_decrypt_use_default_key
575 3.158. pgp_entry_format
579 3.160. pgp_check_exit
583 3.162. pgp_retainable_sigs
585 3.163. pgp_autoinline
587 3.164. pgp_replyinline
589 3.165. pgp_show_unusable
593 3.167. pgp_strict_enc
601 3.171. pgp_auto_decode
603 3.172. pgp_mime_signature_filename
605 3.173. pgp_mime_signature_description
607 3.174. pgp_decode_command
609 3.175. pgp_getkeys_command
611 3.176. pgp_verify_command
613 3.177. pgp_decrypt_command
615 3.178. pgp_clearsign_command
617 3.179. pgp_sign_command
619 3.180. pgp_encrypt_sign_command
621 3.181. pgp_encrypt_only_command
623 3.182. pgp_import_command
625 3.183. pgp_export_command
627 3.184. pgp_verify_key_command
629 3.185. pgp_list_secring_command
631 3.186. pgp_list_pubring_command
633 3.187. forward_decrypt
637 3.189. smime_encrypt_with
641 3.191. smime_ca_location
643 3.192. smime_certificates
645 3.193. smime_decrypt_command
647 3.194. smime_verify_command
649 3.195. smime_verify_opaque_command
651 3.196. smime_sign_command
653 3.197. smime_sign_opaque_command
655 3.198. smime_encrypt_command
657 3.199. smime_pk7out_command
659 3.200. smime_get_cert_command
661 3.201. smime_get_signer_cert_command
663 3.202. smime_import_cert_command
665 3.203. smime_get_cert_email_command
667 3.204. smime_default_key
669 3.205. ssl_client_cert
675 3.208. certificate_file
681 3.211. ssl_min_dh_prime_bits
683 3.212. ssl_ca_certificates_file
691 3.216. pop_authenticators
693 3.217. pop_auth_try_all
695 3.218. pop_checkinterval
709 3.225. post_indent_string
757 3.249. reverse_realname
759 3.250. rfc2047_parameters
771 3.256. score_threshold_delete
773 3.257. score_threshold_flag
775 3.258. score_threshold_read
799 3.270. smtp_authenticators
815 3.278. spam_separator
825 3.283. strict_threads
831 3.286. thread_received
833 3.287. thorough_search
853 3.297. use_envelope_from
881 3.311. xterm_set_titles
917 2. About this document
921 1.1. Typographical conventions for special terms
923 2.1. Most common navigation keys
925 2.2. Most common line editor keys
927 2.3. Most common message index keys
929 2.4. Message status flags
931 2.5. Message recipient flags
933 2.6. Most common pager keys
935 2.7. ANSI escape sequences
939 2.9. Most common thread mode keys
941 2.10. Most common mail sending keys
943 2.11. Most common compose menu keys
945 2.12. PGP key menu flags
947 3.1. Symbolic key names
949 4.1. POSIX regular expression character classes
951 4.2. Regular expression repetition operators
953 4.3. GNU regular expression extensions
955 4.4. Pattern modifiers
957 4.5. Simple search keywords
961 8.1. Command line options
963 8.2. Default generic function bindings
965 8.3. Default index function bindings
967 8.4. Default pager function bindings
969 8.5. Default alias function bindings
971 8.6. Default query function bindings
973 8.7. Default attach function bindings
975 8.8. Default compose function bindings
977 8.9. Default postpone function bindings
979 8.10. Default browser function bindings
981 8.11. Default pgp function bindings
983 8.12. Default smime function bindings
985 8.13. Default mix function bindings
987 8.14. Default editor function bindings
991 3.1. Multiple configuration commands per line
993 3.2. Commenting configuration files
995 3.3. Escaping quotes in congfiguration files
997 3.4. Using external command's output in configuration files
999 3.5. Using environment variables in configuration files
1001 3.6. Configuring external alias files
1003 3.7. Setting sort method based on mailbox name
1007 3.9. Configuring header display order
1009 3.10. Defining custom headers
1011 3.11. Using %-expandos in save-hook
1013 3.12. Embedding push in folder-hook
1015 3.13. Configuring spam detection
1017 3.14. Using user-defined variables for config file readability
1019 3.15. Using user-defined variables for backing up other config option
1022 3.16. Deferring user-defined variable expansion to runtime
1024 3.17. Using external filters in format strings
1026 4.1. Using boolean operators in patterns
1028 4.2. Combining send-hook and my_hdr
1030 5.1. Attachment counting
1032 Chapter 1. Introduction
1040 3. Software Distribution Sites
1042 4. Mutt online resources
1044 5. Contributing to Mutt
1046 6. Typograhical conventions
1050 Mutt is a small but very powerful text-based MIME mail client. Mutt is
1051 highly configurable, and is well suited to the mail power user with
1052 advanced features like key bindings, keyboard macros, mail threading,
1053 regular expression searches and a powerful pattern matching language for
1054 selecting groups of messages.
1058 The official homepage can be found at http://www.mutt.org/.
1062 To subscribe to one of the following mailing lists, send a message with
1063 the word subscribe in the body to list-name-request@mutt.org.
1065 o <mutt-announce-request@mutt.org> -- low traffic list for announcements
1067 o <mutt-users-request@mutt.org> -- help, bug reports and feature
1070 o <mutt-dev-request@mutt.org> -- development mailing list
1074 All messages posted to mutt-announce are automatically forwarded to
1075 mutt-users, so you do not need to be subscribed to both lists.
1077 3. Software Distribution Sites
1079 Mutt releases can be downloaded from ftp://ftp.mutt.org/mutt/. For a list
1080 of mirror sites, please refer to http://www.mutt.org/download.html.
1082 4. Mutt online resources
1086 The official mutt bug tracking system can be found at
1087 http://dev.mutt.org/
1091 An (unofficial) wiki can be found at http://wiki.mutt.org/.
1095 For the IRC user community, visit channel #mutt on
1100 For USENET, see the newsgroup comp.mail.mutt.
1102 5. Contributing to Mutt
1104 There are various ways to contribute to the Mutt project.
1106 Especially for new users it may be helpful to meet other new and
1107 experienced users to chat about Mutt, talk about problems and share
1110 Since translations of Mutt into other languages are highly appreciated,
1111 the mutt developers always look for skilled translators that help improve
1112 and continue to maintain stale translations.
1114 For contributing code patches for new features and bug fixes, please refer
1115 to the developer pages at http://dev.mutt.org/ for more details.
1117 6. Typograhical conventions
1119 This section lists typographical conventions followed throughout this
1120 manual. See table Table 1.1, "Typographical conventions for special terms"
1121 for typographical conventions for special terms.
1123 Table 1.1. Typographical conventions for special terms
1125 +----------------------------------------------------------+
1126 | Item | Refers to... |
1127 |----------------+-----------------------------------------|
1128 | printf(3) | UNIX manual pages, execute man 3 printf |
1129 |----------------+-----------------------------------------|
1130 | <PageUp> | named keys |
1131 |----------------+-----------------------------------------|
1132 | <create-alias> | named Mutt function |
1133 |----------------+-----------------------------------------|
1134 | ^G | Control+G key combination |
1135 |----------------+-----------------------------------------|
1136 | $mail_check | Mutt configuration option |
1137 +----------------------------------------------------------+
1139 Examples are presented as:
1143 Within command synopsis, curly brackets ("{}") denote a set of options of
1144 which one is mandatory, square brackets ("[]") denote optional arguments,
1145 three dots denote that the argument may be repeated arbitrary times.
1149 Mutt is Copyright (C) 1996-2009 Michael R. Elkins <me@mutt.org> and
1152 This program is free software; you can redistribute it and/or modify it
1153 under the terms of the GNU General Public License as published by the Free
1154 Software Foundation; either version 2 of the License, or (at your option)
1157 This program is distributed in the hope that it will be useful, but
1158 WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
1159 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
1162 You should have received a copy of the GNU General Public License along
1163 with this program; if not, write to the Free Software Foundation, Inc., 51
1164 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
1166 Chapter 2. Getting Started
1172 2. Moving Around in Menus
1174 3. Editing Input Fields
1180 4. Reading Mail - The Index and Pager
1182 4.1. The Message Index
1188 4.4. Miscellaneous Functions
1194 5.2. Editing the message header
1196 5.3. Sending cryptographically signed/encrypted messages
1198 5.4. Sending anonymous messages via mixmaster
1200 5.5. Sending format=flowed messages
1202 6. Forwarding and Bouncing Mail
1206 This section is intended as a brief overview of how to use Mutt. There are
1207 many other features which are described elsewhere in the manual. There is
1208 even more information available in the Mutt FAQ and various web pages. See
1209 the Mutt homepage for more details.
1211 The keybindings described in this section are the defaults as distributed.
1212 Your local system administrator may have altered the defaults for your
1213 site. You can always type "?" in any menu to display the current bindings.
1215 The first thing you need to do is invoke mutt, simply by typing mutt at
1216 the command line. There are various command-line options, see either the
1217 mutt man page or the reference.
1221 Mutt is a text-based application which interacts with users through
1222 different menus which are mostly line-/entry-based or page-based. A
1223 line-based menu is the so-called "index" menu (listing all messages of the
1224 currently opened folder) or the "alias" menu (allowing you to select
1225 recipients from a list). Examples for page-based menus are the "pager"
1226 (showing one message at a time) or the "help" menu listing all available
1229 The user interface consists of a context sensitive help line at the top,
1230 the menu's contents followed by a context sensitive status line and
1231 finally the command line. The command line is used to display
1232 informational and error messages as well as for prompts and for entering
1233 interactive commands.
1235 Because Mutt allows for customizing almost all key bindings, there are
1236 so-called "functions" which can be executed manually (using the command
1237 line) or in macros. Macros allow the user to bind a sequence of commands
1238 to a single key or a short key sequence instead of repeating a sequence of
1239 actions over and over.
1241 Many commands (such as saving or copying a message to another folder) can
1242 be applied to a single message or a set of messages (so-called "tagged"
1243 messages). To help selecting messages, Mutt provides a rich set of message
1244 patterns (such as recipients, sender, body contents, date sent/received,
1245 etc.) which can be combined into complex expressions using the boolean and
1246 and or operations as well as negating. These patterns can also be used to
1247 (for example) search for messages or to limit the index to show only
1250 Mutt supports a "hook" concept which allows the user to execute arbitrary
1251 configuration commands and functions in certain situations such as
1252 entering a folder, starting a new message or replying to an existing one.
1253 These hooks can be used to highly customize Mutt's behaviour including
1254 managing multiple identities, customizing the display for a folder or even
1255 implementing auto-archiving based on a per-folder basis and much more.
1257 2. Moving Around in Menus
1259 The most important navigation keys common to all menus are shown in
1260 Table 2.1, "Most common navigation keys".
1262 Table 2.1. Most common navigation keys
1264 +------------------------------------------------------------------------+
1265 | Key | Function | Description |
1266 |---------------+------------------+-------------------------------------|
1267 | j or <Down> | <next-entry> | move to the next entry |
1268 |---------------+------------------+-------------------------------------|
1269 | k or <Up> | <previous-entry> | move to the previous entry |
1270 |---------------+------------------+-------------------------------------|
1271 | z or <PageDn> | <page-down> | go to the next page |
1272 |---------------+------------------+-------------------------------------|
1273 | Z or <PageUp> | <page-up> | go to the previous page |
1274 |---------------+------------------+-------------------------------------|
1275 | = or <Home> | <first-entry> | jump to the first entry |
1276 |---------------+------------------+-------------------------------------|
1277 | * or <End> | <last-entry> | jump to the last entry |
1278 |---------------+------------------+-------------------------------------|
1279 | q | <quit> | exit the current menu |
1280 |---------------+------------------+-------------------------------------|
1281 | ? | <help> | list all keybindings for the |
1282 | | | current menu |
1283 +------------------------------------------------------------------------+
1285 3. Editing Input Fields
1289 Mutt has a built-in line editor for inputting text, e.g. email addresses
1290 or filenames. The keys used to manipulate text input are very similar to
1291 those of Emacs. See Table 2.2, "Most common line editor keys" for a full
1292 reference of available functions, their default key bindings, and short
1295 Table 2.2. Most common line editor keys
1297 +------------------------------------------------------------------------+
1298 | Key | Function | Description |
1299 |----------------+-------------------+-----------------------------------|
1300 | ^A or <Home> | <bol> | move to the start of the line |
1301 |----------------+-------------------+-----------------------------------|
1302 | ^B or <Left> | <backward-char> | move back one char |
1303 |----------------+-------------------+-----------------------------------|
1304 | Esc B | <backward-word> | move back one word |
1305 |----------------+-------------------+-----------------------------------|
1306 | ^D or <Delete> | <delete-char> | delete the char under the cursor |
1307 |----------------+-------------------+-----------------------------------|
1308 | ^E or <End> | <eol> | move to the end of the line |
1309 |----------------+-------------------+-----------------------------------|
1310 | ^F or <Right> | <forward-char> | move forward one char |
1311 |----------------+-------------------+-----------------------------------|
1312 | Esc F | <forward-word> | move forward one word |
1313 |----------------+-------------------+-----------------------------------|
1314 | <Tab> | <complete> | complete filename or alias |
1315 |----------------+-------------------+-----------------------------------|
1316 | ^T | <complete-query> | complete address with query |
1317 |----------------+-------------------+-----------------------------------|
1318 | ^K | <kill-eol> | delete to the end of the line |
1319 |----------------+-------------------+-----------------------------------|
1320 | Esc d | <kill-eow> | delete to the end of the word |
1321 |----------------+-------------------+-----------------------------------|
1322 | ^W | <kill-word> | kill the word in front of the |
1324 |----------------+-------------------+-----------------------------------|
1325 | ^U | <kill-line> | delete entire line |
1326 |----------------+-------------------+-----------------------------------|
1327 | ^V | <quote-char> | quote the next typed key |
1328 |----------------+-------------------+-----------------------------------|
1329 | <Up> | <history-up> | recall previous string from |
1331 |----------------+-------------------+-----------------------------------|
1332 | <Down> | <history-down> | recall next string from history |
1333 |----------------+-------------------+-----------------------------------|
1334 | <BackSpace> | <backspace> | kill the char in front of the |
1336 |----------------+-------------------+-----------------------------------|
1337 | Esc u | <upcase-word> | convert word to upper case |
1338 |----------------+-------------------+-----------------------------------|
1339 | Esc l | <downcase-word> | convert word to lower case |
1340 |----------------+-------------------+-----------------------------------|
1341 | Esc c | <capitalize-word> | capitalize the word |
1342 |----------------+-------------------+-----------------------------------|
1343 | ^G | n/a | abort |
1344 |----------------+-------------------+-----------------------------------|
1345 | <Return> | n/a | finish editing |
1346 +------------------------------------------------------------------------+
1348 You can remap the editor functions using the bind command. For example, to
1349 make the <Delete> key delete the character in front of the cursor rather
1350 than under, you could use:
1352 bind editor <delete> backspace
1356 Mutt maintains a history for the built-in editor. The number of items is
1357 controlled by the $history variable and can be made persistent using an
1358 external file specified using $history_file. You may cycle through them at
1359 an editor prompt by using the <history-up> and/or <history-down> commands.
1361 Mutt maintains several distinct history lists, one for each of the
1362 following categories:
1366 o addresses and aliases
1376 Mutt automatically filters out repeated items from the history. It also
1377 mimics the behavior of some shells by ignoring items starting with a
1378 space. The latter feature can be useful in macros to not clobber the
1379 history's valuable entries with unwanted entries.
1381 4. Reading Mail - The Index and Pager
1383 Similar to many other mail clients, there are two modes in which mail is
1384 read in Mutt. The first is the index of messages in the mailbox, which is
1385 called the "index" in Mutt. The second mode is the display of the message
1386 contents. This is called the "pager."
1388 The next few sections describe the functions provided in each of these
1391 4.1. The Message Index
1393 Common keys used to navigate through and manage messages in the index are
1394 shown in Table 2.3, "Most common message index keys". How messages are
1395 presented in the index menu can be customized using the $index_format
1398 Table 2.3. Most common message index keys
1400 +--------------------------------------------------------+
1401 | Key | Description |
1402 |----------+---------------------------------------------|
1403 | c | change to a different mailbox |
1404 |----------+---------------------------------------------|
1405 | Esc c | change to a folder in read-only mode |
1406 |----------+---------------------------------------------|
1407 | C | copy the current message to another mailbox |
1408 |----------+---------------------------------------------|
1409 | Esc C | decode a message and copy it to a folder |
1410 |----------+---------------------------------------------|
1411 | Esc s | decode a message and save it to a folder |
1412 |----------+---------------------------------------------|
1413 | D | delete messages matching a pattern |
1414 |----------+---------------------------------------------|
1415 | d | delete the current message |
1416 |----------+---------------------------------------------|
1417 | F | mark as important |
1418 |----------+---------------------------------------------|
1419 | l | show messages matching a pattern |
1420 |----------+---------------------------------------------|
1421 | N | mark message as new |
1422 |----------+---------------------------------------------|
1423 | o | change the current sort method |
1424 |----------+---------------------------------------------|
1425 | O | reverse sort the mailbox |
1426 |----------+---------------------------------------------|
1427 | q | save changes and exit |
1428 |----------+---------------------------------------------|
1429 | s | save-message |
1430 |----------+---------------------------------------------|
1431 | T | tag messages matching a pattern |
1432 |----------+---------------------------------------------|
1433 | t | toggle the tag on a message |
1434 |----------+---------------------------------------------|
1435 | Esc t | toggle tag on entire message thread |
1436 |----------+---------------------------------------------|
1437 | U | undelete messages matching a pattern |
1438 |----------+---------------------------------------------|
1439 | u | undelete-message |
1440 |----------+---------------------------------------------|
1441 | v | view-attachments |
1442 |----------+---------------------------------------------|
1443 | x | abort changes and exit |
1444 |----------+---------------------------------------------|
1445 | <Return> | display-message |
1446 |----------+---------------------------------------------|
1447 | <Tab> | jump to the next new or unread message |
1448 |----------+---------------------------------------------|
1449 | @ | show the author's full e-mail address |
1450 |----------+---------------------------------------------|
1451 | $ | save changes to mailbox |
1452 |----------+---------------------------------------------|
1454 |----------+---------------------------------------------|
1455 | Esc / | search-reverse |
1456 |----------+---------------------------------------------|
1457 | ^L | clear and redraw the screen |
1458 |----------+---------------------------------------------|
1459 | ^T | untag messages matching a pattern |
1460 +--------------------------------------------------------+
1462 In addition to who sent the message and the subject, a short summary of
1463 the disposition of each message is printed beside the message number. Zero
1464 or more of the "flags" in Table 2.4, "Message status flags" may appear,
1465 some of which can be turned on or off using these functions: <set-flag>
1466 and <clear-flag> bound by default to "w" and "W" respectively.
1468 Furthermore, the flags in Table 2.5, "Message recipient flags" reflect who
1469 the message is addressed to. They can be customized with the $to_chars
1472 Table 2.4. Message status flags
1474 +----------------------------------------------------------------------+
1475 | Flag | Description |
1476 |------+---------------------------------------------------------------|
1477 | D | message is deleted (is marked for deletion) |
1478 |------+---------------------------------------------------------------|
1479 | d | message has attachments marked for deletion |
1480 |------+---------------------------------------------------------------|
1481 | K | contains a PGP public key |
1482 |------+---------------------------------------------------------------|
1483 | N | message is new |
1484 |------+---------------------------------------------------------------|
1485 | O | message is old |
1486 |------+---------------------------------------------------------------|
1487 | P | message is PGP encrypted |
1488 |------+---------------------------------------------------------------|
1489 | r | message has been replied to |
1490 |------+---------------------------------------------------------------|
1491 | S | message is signed, and the signature is successfully verified |
1492 |------+---------------------------------------------------------------|
1493 | s | message is signed |
1494 |------+---------------------------------------------------------------|
1495 | ! | message is flagged |
1496 |------+---------------------------------------------------------------|
1497 | * | message is tagged |
1498 +----------------------------------------------------------------------+
1500 Table 2.5. Message recipient flags
1502 +----------------------------------------------------------+
1503 | Flag | Description |
1504 |------+---------------------------------------------------|
1505 | + | message is to you and you only |
1506 |------+---------------------------------------------------|
1507 | T | message is to you, but also to or cc'ed to others |
1508 |------+---------------------------------------------------|
1509 | C | message is cc'ed to you |
1510 |------+---------------------------------------------------|
1511 | F | message is from you |
1512 |------+---------------------------------------------------|
1513 | L | message is sent to a subscribed mailing list |
1514 +----------------------------------------------------------+
1518 By default, Mutt uses its builtin pager to display the contents of
1519 messages. The pager is very similar to the Unix program less though not
1520 nearly as featureful.
1522 Table 2.6. Most common pager keys
1524 +------------------------------------------------------------------------+
1525 | Key | Description |
1526 |----------+-------------------------------------------------------------|
1527 | <Return> | go down one line |
1528 |----------+-------------------------------------------------------------|
1529 | <Space> | display the next page (or next message if at the end of a |
1531 |----------+-------------------------------------------------------------|
1532 | - | go back to the previous page |
1533 |----------+-------------------------------------------------------------|
1534 | n | search for next match |
1535 |----------+-------------------------------------------------------------|
1536 | S | skip beyond quoted text |
1537 |----------+-------------------------------------------------------------|
1538 | T | toggle display of quoted text |
1539 |----------+-------------------------------------------------------------|
1540 | ? | show keybindings |
1541 |----------+-------------------------------------------------------------|
1542 | / | regular expression search |
1543 |----------+-------------------------------------------------------------|
1544 | Esc / | backward regular expression search |
1545 |----------+-------------------------------------------------------------|
1546 | \ | toggle highlighting of search matches |
1547 |----------+-------------------------------------------------------------|
1548 | ^ | jump to the top of the message |
1549 +------------------------------------------------------------------------+
1551 In addition to key bindings in Table 2.6, "Most common pager keys", many
1552 of the functions from the index menu are also available in the pager, such
1553 as <delete-message> or <copy-message> (this is one advantage over using an
1554 external pager to view messages).
1556 Also, the internal pager supports a couple other advanced features. For
1557 one, it will accept and translate the "standard" nroff sequences for bold
1558 and underline. These sequences are a series of either the letter,
1559 backspace (^H), the letter again for bold or the letter, backspace, "_"
1560 for denoting underline. Mutt will attempt to display these in bold and
1561 underline respectively if your terminal supports them. If not, you can use
1562 the bold and underline color objects to specify a color or mono attribute
1565 Additionally, the internal pager supports the ANSI escape sequences for
1566 character attributes. Mutt translates them into the correct color and
1567 character settings. The sequences Mutt supports are:
1571 where Ps can be one of the codes shown in Table 2.7, "ANSI escape
1574 Table 2.7. ANSI escape sequences
1576 +------------------------------------------------------------------------+
1577 | Escape code | Description |
1578 |-------------+----------------------------------------------------------|
1579 | 0 | All attributes off |
1580 |-------------+----------------------------------------------------------|
1582 |-------------+----------------------------------------------------------|
1583 | 4 | Underline on |
1584 |-------------+----------------------------------------------------------|
1586 |-------------+----------------------------------------------------------|
1587 | 7 | Reverse video on |
1588 |-------------+----------------------------------------------------------|
1589 | 3<color> | Foreground color is <color> (see Table 2.8, "Color |
1591 |-------------+----------------------------------------------------------|
1592 | 4<color> | Background color is <color> (see Table 2.8, "Color |
1594 +------------------------------------------------------------------------+
1596 Table 2.8. Color sequences
1598 +----------------------+
1599 | Color code | Color |
1600 |------------+---------|
1602 |------------+---------|
1604 |------------+---------|
1606 |------------+---------|
1608 |------------+---------|
1610 |------------+---------|
1612 |------------+---------|
1614 |------------+---------|
1616 +----------------------+
1618 Mutt uses these attributes for handling text/enriched messages, and they
1619 can also be used by an external autoview script for highlighting purposes.
1623 If you change the colors for your display, for example by changing the
1624 color associated with color2 for your xterm, then that color will be used
1629 Note that the search commands in the pager take regular expressions, which
1630 are not quite the same as the more complex patterns used by the search
1631 command in the index. This is because the pager only performs simple text
1632 search, whereas the index provides boolean filtering on several aspects of
1637 When the mailbox is sorted by threads, there are a few additional
1638 functions available in the index and pager modes as shown in Table 2.9,
1639 "Most common thread mode keys".
1641 Table 2.9. Most common thread mode keys
1643 +------------------------------------------------------------------------+
1644 | Key | Function | Description |
1645 |-------+----------------------+-----------------------------------------|
1646 | ^D | <delete-thread> | delete all messages in the current |
1648 |-------+----------------------+-----------------------------------------|
1649 | ^U | <undelete-thread> | undelete all messages in the current |
1651 |-------+----------------------+-----------------------------------------|
1652 | ^N | <next-thread> | jump to the start of the next thread |
1653 |-------+----------------------+-----------------------------------------|
1654 | ^P | <previous-thread> | jump to the start of the previous |
1656 |-------+----------------------+-----------------------------------------|
1657 | ^R | <read-thread> | mark the current thread as read |
1658 |-------+----------------------+-----------------------------------------|
1659 | Esc d | <delete-subthread> | delete all messages in the current |
1661 |-------+----------------------+-----------------------------------------|
1662 | Esc u | <undelete-subthread> | undelete all messages in the current |
1664 |-------+----------------------+-----------------------------------------|
1665 | Esc n | <next-subthread> | jump to the start of the next subthread |
1666 |-------+----------------------+-----------------------------------------|
1667 | Esc p | <previous-subthread> | jump to the start of the previous |
1669 |-------+----------------------+-----------------------------------------|
1670 | Esc r | <read-subthread> | mark the current subthread as read |
1671 |-------+----------------------+-----------------------------------------|
1672 | Esc t | <tag-thread> | toggle the tag on the current thread |
1673 |-------+----------------------+-----------------------------------------|
1674 | Esc v | <collapse-thread> | toggle collapse for the current thread |
1675 |-------+----------------------+-----------------------------------------|
1676 | Esc V | <collapse-all> | toggle collapse for all threads |
1677 |-------+----------------------+-----------------------------------------|
1678 | P | <parent-message> | jump to parent message in thread |
1679 +------------------------------------------------------------------------+
1683 Collapsing a thread displays only the first message in the thread and
1684 hides the others. This is useful when threads contain so many messages
1685 that you can only see a handful of threads on the screen. See %M in
1686 $index_format. For example, you could use "%?M?(#%03M)&(%4l)?" in
1687 $index_format to optionally display the number of hidden messages if the
1688 thread is collapsed.
1690 See also: $strict_threads.
1692 4.4. Miscellaneous Functions
1694 In addition, the index and pager menus have these interesting functions:
1696 <create-alias> (default: a)
1698 Creates a new alias based upon the current message (or prompts for
1699 a new one). Once editing is complete, an alias command is added to
1700 the file specified by the $alias_file variable for future use
1704 Mutt does not read the $alias_file upon startup so you must
1705 explicitly source the file.
1707 <check-traditional-pgp> (default: Esc P)
1709 This function will search the current message for content signed
1710 or encrypted with PGP the "traditional" way, that is, without
1711 proper MIME tagging. Technically, this function will temporarily
1712 change the MIME content types of the body parts containing PGP
1713 data; this is similar to the <edit-type> function's effect.
1717 This command (available in the index and pager) allows you to edit
1718 the raw current message as it's present in the mail folder. After
1719 you have finished editing, the changed message will be appended to
1720 the current folder, and the original message will be marked for
1721 deletion; if the message is unchanged it won't be replaced.
1723 <edit-type> (default: ^E on the attachment menu, and in the pager and
1724 index menus; ^T on the compose menu)
1726 This command is used to temporarily edit an attachment's content
1727 type to fix, for instance, bogus character set parameters. When
1728 invoked from the index or from the pager, you'll have the
1729 opportunity to edit the top-level attachment's content type. On
1730 the attachment menu, you can change any attachment's content type.
1731 These changes are not persistent, and get lost upon changing
1734 Note that this command is also available on the compose menu.
1735 There, it's used to fine-tune the properties of attachments you
1738 <enter-command> (default: ":")
1740 This command is used to execute any command you would normally put
1741 in a configuration file. A common use is to check the settings of
1742 variables, or in conjunction with macros to change settings on the
1745 <extract-keys> (default: ^K)
1747 This command extracts PGP public keys from the current or tagged
1748 message(s) and adds them to your PGP public key ring.
1750 <forget-passphrase> (default: ^F)
1752 This command wipes the passphrase(s) from memory. It is useful, if
1753 you misspelled the passphrase.
1755 <list-reply> (default: L)
1757 Reply to the current or tagged message(s) by extracting any
1758 addresses which match the regular expressions given by the lists
1759 or subscribe commands, but also honor any Mail-Followup-To
1760 header(s) if the $honor_followup_to configuration variable is set.
1761 Using this when replying to messages posted to mailing lists helps
1762 avoid duplicate copies being sent to the author of the message you
1765 <pipe-message> (default: |)
1767 Asks for an external Unix command and pipes the current or tagged
1768 message(s) to it. The variables $pipe_decode, $pipe_split,
1769 $pipe_sep and $wait_key control the exact behavior of this
1772 <resend-message> (default: Esc e)
1774 Mutt takes the current message as a template for a new message.
1775 This function is best described as "recall from arbitrary
1776 folders". It can conveniently be used to forward MIME messages
1777 while preserving the original mail structure. Note that the amount
1778 of headers included here depends on the value of the $weed
1781 This function is also available from the attachment menu. You can
1782 use this to easily resend a message which was included with a
1783 bounce message as a message/rfc822 body part.
1785 <shell-escape> (default: !)
1787 Asks for an external Unix command and executes it. The $wait_key
1788 can be used to control whether Mutt will wait for a key to be
1789 pressed when the command returns (presumably to let the user read
1790 the output of the command), based on the return status of the
1791 named command. If no command is given, an interactive shell is
1794 <toggle-quoted> (default: T)
1796 The pager uses the $quote_regexp variable to detect quoted text
1797 when displaying the body of the message. This function toggles the
1798 display of the quoted material in the message. It is particularly
1799 useful when being interested in just the response and there is a
1800 large amount of quoted text in the way.
1802 <skip-quoted> (default: S)
1804 This function will go to the next line of non-quoted text which
1805 comes after a line of quoted text in the internal pager.
1811 The bindings shown in Table 2.10, "Most common mail sending keys" are
1812 available in the index and pager to start a new message.
1814 Table 2.10. Most common mail sending keys
1816 +----------------------------------------------------------+
1817 | Key | Function | Description |
1818 |-------+---------------+----------------------------------|
1819 | m | <compose> | compose a new message |
1820 |-------+---------------+----------------------------------|
1821 | r | <reply> | reply to sender |
1822 |-------+---------------+----------------------------------|
1823 | g | <group-reply> | reply to all recipients |
1824 |-------+---------------+----------------------------------|
1825 | L | <list-reply> | reply to mailing list address |
1826 |-------+---------------+----------------------------------|
1827 | f | <forward> | forward message |
1828 |-------+---------------+----------------------------------|
1829 | b | <bounce> | bounce (remail) message |
1830 |-------+---------------+----------------------------------|
1831 | Esc k | <mail-key> | mail a PGP public key to someone |
1832 +----------------------------------------------------------+
1834 Bouncing a message sends the message as-is to the recipient you specify.
1835 Forwarding a message allows you to add comments or modify the message you
1836 are forwarding. These items are discussed in greater detail in the next
1837 chapter "Forwarding and Bouncing Mail."
1839 Mutt will then enter the compose menu and prompt you for the recipients to
1840 place on the "To:" header field. Next, it will ask you for the "Subject:"
1841 field for the message, providing a default if you are replying to or
1842 forwarding a message. See also $askcc, $askbcc, $autoedit, $bounce,
1843 $fast_reply, and $include for changing how Mutt asks these questions.
1845 Mutt will then automatically start your $editor on the message body. If
1846 the $edit_headers variable is set, the headers will be at the top of the
1847 message in your editor. Any messages you are replying to will be added in
1848 sort order to the message, with appropriate $attribution, $indent_string
1849 and $post_indent_string. When forwarding a message, if the $mime_forward
1850 variable is unset, a copy of the forwarded message will be included. If
1851 you have specified a $signature, it will be appended to the message.
1853 Once you have finished editing the body of your mail message, you are
1854 returned to the compose menu providing the functions shown in Table 2.11,
1855 "Most common compose menu keys" to modify, send or postpone the message.
1857 Table 2.11. Most common compose menu keys
1859 +------------------------------------------------------------------------+
1860 | Key | Function | Description |
1861 |-------+---------------------+------------------------------------------|
1862 | a | <attach-file> | attach a file |
1863 |-------+---------------------+------------------------------------------|
1864 | A | <attach-message> | attach message(s) to the message |
1865 |-------+---------------------+------------------------------------------|
1866 | Esc k | <attach-key> | attach a PGP public key |
1867 |-------+---------------------+------------------------------------------|
1868 | d | <edit-description> | edit description on attachment |
1869 |-------+---------------------+------------------------------------------|
1870 | D | <detach-file> | detach a file |
1871 |-------+---------------------+------------------------------------------|
1872 | t | <edit-to> | edit the To field |
1873 |-------+---------------------+------------------------------------------|
1874 | Esc f | <edit-from> | edit the From field |
1875 |-------+---------------------+------------------------------------------|
1876 | r | <edit-reply-to> | edit the Reply-To field |
1877 |-------+---------------------+------------------------------------------|
1878 | c | <edit-cc> | edit the Cc field |
1879 |-------+---------------------+------------------------------------------|
1880 | b | <edit-bcc> | edit the Bcc field |
1881 |-------+---------------------+------------------------------------------|
1882 | y | <send-message> | send the message |
1883 |-------+---------------------+------------------------------------------|
1884 | s | <edit-subject> | edit the Subject |
1885 |-------+---------------------+------------------------------------------|
1886 | S | <smime-menu> | select S/MIME options |
1887 |-------+---------------------+------------------------------------------|
1888 | f | <edit-fcc> | specify an "Fcc" mailbox |
1889 |-------+---------------------+------------------------------------------|
1890 | p | <pgp-menu> | select PGP options |
1891 |-------+---------------------+------------------------------------------|
1892 | P | <postpone-message> | postpone this message until later |
1893 |-------+---------------------+------------------------------------------|
1894 | q | <quit> | quit (abort) sending the message |
1895 |-------+---------------------+------------------------------------------|
1896 | w | <write-fcc> | write the message to a folder |
1897 |-------+---------------------+------------------------------------------|
1898 | i | <ispell> | check spelling (if available on your |
1900 |-------+---------------------+------------------------------------------|
1901 | ^F | <forget-passphrase> | wipe passphrase(s) from memory |
1902 +------------------------------------------------------------------------+
1904 The compose menu is also used to edit the attachments for a message which
1905 can be either files or other messages. The <attach-message> function to
1906 will prompt you for a folder to attach messages from. You can now tag
1907 messages in that folder and they will be attached to the message you are
1912 Note that certain operations like composing a new mail, replying,
1913 forwarding, etc. are not permitted when you are in that folder. The %r in
1914 $status_format will change to a "A" to indicate that you are in
1915 attach-message mode.
1917 5.2. Editing the message header
1919 When editing the header because of $edit_headers being set, there are a
1920 several pseudo headers available which will not be included in sent
1923 5.2.1. Fcc: pseudo header
1925 If you specify Fcc: filename as a header, Mutt will pick up filename just
1926 as if you had used the <edit-fcc> function in the compose menu.
1928 5.2.2. Attach: pseudo header
1930 You can also attach files to your message by specifying Attach: filename [
1931 description ] where filename is the file to attach and description is an
1932 optional string to use as the description of the attached file.
1934 5.2.3. Pgp: pseudo header
1936 If you want to use PGP, you can specify
1938 Pgp: [ E | S | S<id> ]
1940 "E" selects encryption, "S" selects signing and "S<id>" selects signing
1941 with the given key, setting $pgp_sign_as permanently.
1943 5.2.4. In-Reply-To: header
1945 When replying to messages, the In-Reply-To: header contains the Message-Id
1946 of the message(s) you reply to. If you remove its value, Mutt will not
1947 generate a References: field, which allows you to create a new message
1948 thread, for example to create a new message to a mailing list without
1949 having to enter the mailing list's address.
1951 5.3. Sending cryptographically signed/encrypted messages
1953 If you have told mutt to PGP or S/MIME encrypt a message, it will guide
1954 you through a key selection process when you try to send the message. Mutt
1955 will not ask you any questions about keys which have a certified user ID
1956 matching one of the message recipients' mail addresses. However, there may
1957 be situations in which there are several keys, weakly certified user ID
1958 fields, or where no matching keys can be found.
1960 In these cases, you are dropped into a menu with a list of keys from which
1961 you can select one. When you quit this menu, or mutt can't find any
1962 matching keys, you are prompted for a user ID. You can, as usually, abort
1963 this prompt using ^G. When you do so, mutt will return to the compose
1966 Once you have successfully finished the key selection, the message will be
1967 encrypted using the selected public keys when sent out.
1969 Most fields of the entries in the key selection menu (see also
1970 $pgp_entry_format) have obvious meanings. But some explanations on the
1971 capabilities, flags, and validity fields are in order.
1973 The flags sequence (%f) will expand to one of the flags in Table 2.12,
1974 "PGP key menu flags".
1976 Table 2.12. PGP key menu flags
1978 +-----------------------------------------------------------+
1979 | Flag | Description |
1980 |------+----------------------------------------------------|
1981 | R | The key has been revoked and can't be used. |
1982 |------+----------------------------------------------------|
1983 | X | The key is expired and can't be used. |
1984 |------+----------------------------------------------------|
1985 | d | You have marked the key as disabled. |
1986 |------+----------------------------------------------------|
1987 | c | There are unknown critical self-signature packets. |
1988 +-----------------------------------------------------------+
1990 The capabilities field (%c) expands to a two-character sequence
1991 representing a key's capabilities. The first character gives the key's
1992 encryption capabilities: A minus sign ("-") means that the key cannot be
1993 used for encryption. A dot (".") means that it's marked as a signature key
1994 in one of the user IDs, but may also be used for encryption. The letter
1995 "e" indicates that this key can be used for encryption.
1997 The second character indicates the key's signing capabilities. Once again,
1998 a "-" implies "not for signing", "." implies that the key is marked as an
1999 encryption key in one of the user-ids, and "s" denotes a key which can be
2002 Finally, the validity field (%t) indicates how well-certified a user-id
2003 is. A question mark ("?") indicates undefined validity, a minus character
2004 ("-") marks an untrusted association, a space character means a partially
2005 trusted association, and a plus character ("+") indicates complete
2008 5.4. Sending anonymous messages via mixmaster
2010 You may also have compiled mutt to co-operate with Mixmaster, an anonymous
2011 remailer. Mixmaster permits you to send your messages anonymously using a
2012 chain of remailers. Mixmaster support in mutt is for mixmaster version
2013 2.04 (beta 45 appears to be the latest) and 2.03. It does not support
2014 earlier versions or the later so-called version 3 betas, of which the
2015 latest appears to be called 2.9b23.
2017 To use it, you'll have to obey certain restrictions. Most important, you
2018 cannot use the Cc and Bcc headers. To tell Mutt to use mixmaster, you have
2019 to select a remailer chain, using the mix function on the compose menu.
2021 The chain selection screen is divided into two parts. In the (larger)
2022 upper part, you get a list of remailers you may use. In the lower part,
2023 you see the currently selected chain of remailers.
2025 You can navigate in the chain using the <chain-prev> and <chain-next>
2026 functions, which are by default bound to the left and right arrows and to
2027 the h and l keys (think vi keyboard bindings). To insert a remailer at the
2028 current chain position, use the <insert> function. To append a remailer
2029 behind the current chain position, use <select-entry> or <append>. You can
2030 also delete entries from the chain, using the corresponding function.
2031 Finally, to abandon your changes, leave the menu, or <accept> them
2032 pressing (by default) the Return key.
2034 Note that different remailers do have different capabilities, indicated in
2035 the %c entry of the remailer menu lines (see $mix_entry_format). Most
2036 important is the "middleman" capability, indicated by a capital "M": This
2037 means that the remailer in question cannot be used as the final element of
2038 a chain, but will only forward messages to other mixmaster remailers. For
2039 details on the other capabilities, please have a look at the mixmaster
2042 5.5. Sending format=flowed messages
2046 format=flowed-style messages (or f=f for short) are text/plain messages
2047 that consist of paragraphs which a receiver's mail client may reformat to
2048 its own needs which mostly means to customize line lengths regardless of
2049 what the sender sent. Technically this is achieved by letting lines of a
2050 "flowable" paragraph end in spaces except for the last line.
2052 While for text-mode clients like mutt it's the best way to assume only a
2053 standard 80x25 character cell terminal, it may be desired to let the
2054 receiver decide completely how to view a message.
2058 Mutt only supports setting the required format=flowed MIME parameter on
2059 outgoing messages if the $text_flowed variable is set, specifically it
2060 does not add the trailing spaces.
2062 After editing the initial message text and before entering the compose
2063 menu, mutt properly space-stuffes the message. Space-stuffing is required
2064 by RfC3676 defining format=flowed and means to prepend a space to:
2066 o all lines starting with a space
2068 o lines starting with the word "From" followed by space
2070 o all lines starting with ">" which is not intended to be a quote
2075 Mutt only supports space-stuffing for the first two types of lines but not
2076 for the third: It is impossible to safely detect whether a leading >
2077 character starts a quote or not. Furthermore, Mutt only applies
2078 space-stuffing once after the initial edit is finished.
2080 All leading spaces are to be removed by receiving clients to restore the
2081 original message prior to further processing.
2083 5.5.3. Editor considerations
2085 As mutt provides no additional features to compose f=f messages, it's
2086 completely up to the user and his editor to produce proper messages.
2087 Please consider your editor's documentation if you intend to send f=f
2090 Please note that when editing messages from the compose menu several times
2091 before really sending a mail, it's up to the user to ensure that the
2092 message is properly space-stuffed.
2094 For example, vim provides the w flag for its formatoptions setting to
2095 assist in creating f=f messages, see :help fo-table for details.
2097 6. Forwarding and Bouncing Mail
2099 Bouncing and forwarding let you send an existing message to recipients
2100 that you specify. Bouncing a message sends a verbatim copy of a message to
2101 alternative addresses as if they were the message's original recipients
2102 specified in the Bcc header. Forwarding a message, on the other hand,
2103 allows you to modify the message before it is resent (for example, by
2104 adding your own comments). Bouncing is done using the <bounce> function
2105 and forwarding using the <forward> function bound to "b" and "f"
2108 Forwarding can be done by including the original message in the new
2109 message's body (surrounded by indicating lines) or including it as a MIME
2110 attachment, depending on the value of the $mime_forward variable. Decoding
2111 of attachments, like in the pager, can be controlled by the
2112 $forward_decode and $mime_forward_decode variables, respectively. The
2113 desired forwarding format may depend on the content, therefore
2114 $mime_forward is a quadoption which, for example, can be set to "ask-no".
2116 The inclusion of headers is controlled by the current setting of the $weed
2117 variable, unless $mime_forward is set.
2119 Editing the message to forward follows the same procedure as sending or
2120 replying to a message does.
2124 At times it is desirable to delay sending a message that you have already
2125 begun to compose. When the <postpone-message> function is used in the
2126 compose menu, the body of your message and attachments are stored in the
2127 mailbox specified by the $postponed variable. This means that you can
2128 recall the message even if you exit Mutt and then restart it at a later
2131 Once a message is postponed, there are several ways to resume it. From the
2132 command line you can use the "-p" option, or if you compose a new message
2133 from the index or pager you will be prompted if postponed messages exist.
2134 If multiple messages are currently postponed, the postponed menu will pop
2135 up and you can select which message you would like to resume.
2139 If you postpone a reply to a message, the reply setting of the message is
2140 only updated when you actually finish the message and send it. Also, you
2141 must be in the same folder with the message you replied to for the status
2142 of the message to be updated.
2144 See also the $postpone quad-option.
2146 Chapter 3. Configuration
2150 1. Location of initialization files
2152 2. Syntax of Initialization Files
2156 4. Defining/Using aliases
2158 5. Changing the default key bindings
2160 6. Defining aliases for character sets
2162 7. Setting variables based upon mailbox
2166 9. Using color and mono video attributes
2168 10. Message header display
2170 11. Alternative addresses
2174 13. Using Multiple spool mailboxes
2176 14. Monitoring incoming mail
2178 15. User defined headers
2180 16. Specify default save mailbox
2182 17. Specify default Fcc: mailbox when composing
2184 18. Specify default save filename and default Fcc: mailbox at once
2186 19. Change settings based upon message recipients
2188 20. Change settings before formatting a message
2190 21. Choosing the cryptographic key of the recipient
2192 22. Adding key sequences to the keyboard buffer
2194 23. Executing functions
2200 26. Setting and Querying Variables
2204 26.2. User-defined variables
2206 27. Reading initialization commands from another file
2208 28. Configuring features conditionnaly
2218 1. Location of initialization files
2220 While the default configuration (or "preferences") make Mutt usable right
2221 out of the box, it is often desirable to tailor Mutt to suit your own
2222 tastes. When Mutt is first invoked, it will attempt to read the "system"
2223 configuration file (defaults set by your local system administrator),
2224 unless the "-n" command line option is specified. This file is typically
2225 /usr/local/share/mutt/Muttrc or /etc/Muttrc. Mutt will next look for a
2226 file named .muttrc in your home directory. If this file does not exist and
2227 your home directory has a subdirectory named .mutt, mutt try to load a
2228 file named .mutt/muttrc.
2230 .muttrc is the file where you will usually place your commands to
2233 In addition, mutt supports version specific configuration files that are
2234 parsed instead of the default files as explained above. For instance, if
2235 your system has a Muttrc-0.88 file in the system configuration directory,
2236 and you are running version 0.88 of mutt, this file will be sourced
2237 instead of the Muttrc file. The same is true of the user configuration
2238 file, if you have a file .muttrc-0.88.6 in your home directory, when you
2239 run mutt version 0.88.6, it will source this file instead of the default
2240 .muttrc file. The version number is the same which is visible using the
2241 "-v" command line switch or using the show-version key (default: V) from
2244 2. Syntax of Initialization Files
2246 An initialization file consists of a series of commands. Each line of the
2247 file may contain one or more commands. When multiple commands are used,
2248 they must be separated by a semicolon (;).
2250 Example 3.1. Multiple configuration commands per line
2252 set realname='Mutt user' ; ignore x-
2254 The hash mark, or pound sign ("#"), is used as a "comment" character. You
2255 can use it to annotate your initialization file. All text after the
2256 comment character to the end of the line is ignored. For example,
2258 Example 3.2. Commenting configuration files
2260 my_hdr X-Disclaimer: Why are you listening to me? # This is a comment
2262 Single quotes (') and double quotes (") can be used to quote strings which
2263 contain spaces or other special characters. The difference between the two
2264 types of quotes is similar to that of many popular shell programs, namely
2265 that a single quote is used to specify a literal string (one that is not
2266 interpreted for shell variables or quoting with a backslash [see next
2267 paragraph]), while double quotes indicate a string for which should be
2268 evaluated. For example, backticks are evaluated inside of double quotes,
2269 but not for single quotes.
2271 \ quotes the next character, just as in shells such as bash and zsh. For
2272 example, if want to put quotes """ inside of a string, you can use "\" to
2273 force the next character to be a literal instead of interpreted character.
2275 Example 3.3. Escaping quotes in congfiguration files
2277 set realname="Michael \"MuttDude\" Elkins"
2279 "\\" means to insert a literal "\" into the line. "\n" and "\r" have their
2280 usual C meanings of linefeed and carriage-return, respectively.
2282 A \ at the end of a line can be used to split commands over multiple
2283 lines, provided that the split points don't appear in the middle of
2286 It is also possible to substitute the output of a Unix command in an
2287 initialization file. This is accomplished by enclosing the command in
2288 backticks (``). For example,
2290 Example 3.4. Using external command's output in configuration files
2292 my_hdr X-Operating-System: `uname -a`
2294 The output of the Unix command "uname -a" will be substituted before the
2299 Since initialization files are line oriented, only the first line of
2300 output from the Unix command will be substituted.
2302 Both environment variables and mutt variables can be accessed by
2303 prepending "$" to the name of the variable. For example,
2305 Example 3.5. Using environment variables in configuration files
2307 set record=+sent_on_$HOSTNAME
2309 will cause mutt to save outgoing messages to a folder named
2310 "sent_on_kremvax" if the environment variable HOSTNAME is set to
2311 "kremvax." (See $record for details.)
2313 Mutt expands the variable when it is assigned, not when it is used. If the
2314 value of a variable on the right-hand side of an assignment changes after
2315 the assignment, the variable on the left-hand side will not be affected.
2317 The commands understood by mutt are explained in the next paragraphs. For
2318 a complete list, see the command reference.
2320 All configuration files are expected to be in the current locale as
2321 specified by the $charset variable which doesn't have a default value
2322 since it's determined by Mutt at startup. If a configuration file is not
2323 encoded in the same character set the $config_charset variable should be
2324 used: all lines starting with the next are recoded from $config_charset to
2327 This mechanism should be avoided if possible as it has the following
2330 o These variables should be set early in a configuration file with
2331 $charset preceding $config_charset so Mutt know what character set to
2334 o If $config_charset is set, it should be set in each configuration file
2335 because the value is global and not per configuration file.
2337 o Because Mutt first recodes a line before it attempts to parse it, a
2338 conversion introducing question marks or other characters as part of
2339 errors (unconvertable characters, transliteration) may introduce
2340 syntax errors or silently change the meaning of certain tokens (e.g.
2341 inserting question marks into regular expressions).
2347 group [ -group name ...] { -rx expr ... | -addr expr ... }
2349 ungroup [ -group name ...] { * | -rx expr ... | -addr expr ... }
2351 group is used to directly add either addresses or regular expressions to
2352 the specified group or groups. The different categories of arguments to
2353 the group command can be in any order. The flags -rx and -addr specify
2354 what the following strings (that cannot begin with a hyphen) should be
2355 interpreted as: either a regular expression or an email address,
2358 These address groups can also be created implicitly by the alias, lists,
2359 subscribe and alternates commands by specifying the optional -group
2362 Once defined, these address groups can be used in patterns to search for
2363 and limit the display to messages matching a group.
2365 ungroup is used to remove addresses or regular expressions from the
2366 specified group or groups. The syntax is similar to the group command,
2367 however the special character * can be used to empty a group of all of its
2370 4. Defining/Using aliases
2374 alias [ -group name ...] key address [ address ...]
2376 It's usually very cumbersome to remember or type out the address of
2377 someone you are communicating with. Mutt allows you to create "aliases"
2378 which map a short string to a full address.
2382 If you want to create an alias for more than one address, you must
2383 separate the addresses with a comma (",").
2385 The optional -group argument to alias causes the aliased address(es) to be
2386 added to the named group.
2388 To remove an alias or aliases ("*" means all aliases):
2390 unalias [ -group name ...] { * | key ... }
2392 alias muttdude me@cs.hmc.edu (Michael Elkins)
2393 alias theguys manny, moe, jack
2395 Unlike other mailers, Mutt doesn't require aliases to be defined in a
2396 special file. The alias command can appear anywhere in a configuration
2397 file, as long as this file is sourced. Consequently, you can have multiple
2398 alias files, or you can have all aliases defined in your muttrc.
2400 On the other hand, the <create-alias> function can use only one file, the
2401 one pointed to by the $alias_file variable (which is ~/.muttrc by
2402 default). This file is not special either, in the sense that Mutt will
2403 happily append aliases to any file, but in order for the new aliases to
2404 take effect you need to explicitly source this file too.
2408 Example 3.6. Configuring external alias files
2410 source /usr/local/share/Mutt.aliases
2411 source ~/.mail_aliases
2412 set alias_file=~/.mail_aliases
2414 To use aliases, you merely use the alias at any place in mutt where mutt
2415 prompts for addresses, such as the To: or Cc: prompt. You can also enter
2416 aliases in your editor at the appropriate headers if you have the
2417 $edit_headers variable set.
2419 In addition, at the various address prompts, you can use the tab character
2420 to expand a partial alias to the full alias. If there are multiple
2421 matches, mutt will bring up a menu with the matching aliases. In order to
2422 be presented with the full list of aliases, you must hit tab with out a
2423 partial alias, such as at the beginning of the prompt or after a comma
2424 denoting multiple addresses.
2426 In the alias menu, you can select as many aliases as you want with the
2427 select-entry key (default: <Return>), and use the exit key (default: q) to
2428 return to the address prompt.
2430 5. Changing the default key bindings
2434 bind map key function
2436 This command allows you to change the default key bindings (operation
2437 invoked when pressing a key).
2439 map specifies in which menu the binding belongs. Multiple maps may be
2440 specified by separating them with commas (no additional whitespace is
2441 allowed). The currently defined maps are:
2445 This is not a real menu, but is used as a fallback for all of the
2446 other menus except for the pager and editor modes. If a key is not
2447 defined in another menu, Mutt will look for a binding to use in
2448 this menu. This allows you to bind a key to a certain function in
2449 multiple menus instead of having multiple bind statements to
2450 accomplish the same task.
2454 The alias menu is the list of your personal aliases as defined in
2455 your muttrc. It is the mapping from a short alias name to the full
2456 email address(es) of the recipient(s).
2460 The attachment menu is used to access the attachments on received
2465 The browser is used for both browsing the local directory
2466 structure, and for listing all of your incoming mailboxes.
2470 The editor is the line-based editor the user enters text data.
2474 The index is the list of messages contained in a mailbox.
2478 The compose menu is the screen used when sending a new message.
2482 The pager is the mode used to display message/attachment data, and
2487 The pgp menu is used to select the OpenPGP keys used to encrypt
2492 The smime menu is used to select the OpenSSL certificates used to
2493 encrypt outgoing messages.
2497 The postpone menu is similar to the index menu, except is used
2498 when recalling a message the user was composing, but saved until
2503 The query menu is the browser for results returned by
2508 The mixmaster screen is used to select remailer options for
2509 outgoing messages (if Mutt is compiled with Mixmaster support).
2511 key is the key (or key sequence) you wish to bind. To specify a control
2512 character, use the sequence \Cx, where x is the letter of the control
2513 character (for example, to specify control-A use "\Ca"). Note that the
2514 case of x as well as \C is ignored, so that \CA, \Ca, \cA and \ca are all
2515 equivalent. An alternative form is to specify the key as a three digit
2516 octal number prefixed with a "\" (for example \177 is equivalent to \c?).
2517 In addition, key may be a symbolic name as shown in Table 3.1, "Symbolic
2520 Table 3.1. Symbolic key names
2522 +-------------------------------------+
2523 | Symbolic name | Meaning |
2524 |---------------+---------------------|
2526 |---------------+---------------------|
2528 |---------------+---------------------|
2529 | <backtab> | backtab / shift-tab |
2530 |---------------+---------------------|
2531 | \r | carriage return |
2532 |---------------+---------------------|
2534 |---------------+---------------------|
2536 |---------------+---------------------|
2538 |---------------+---------------------|
2540 |---------------+---------------------|
2541 | <down> | down arrow |
2542 |---------------+---------------------|
2543 | <left> | left arrow |
2544 |---------------+---------------------|
2545 | <right> | right arrow |
2546 |---------------+---------------------|
2547 | <pageup> | Page Up |
2548 |---------------+---------------------|
2549 | <pagedown> | Page Down |
2550 |---------------+---------------------|
2551 | <backspace> | Backspace |
2552 |---------------+---------------------|
2553 | <delete> | Delete |
2554 |---------------+---------------------|
2555 | <insert> | Insert |
2556 |---------------+---------------------|
2558 |---------------+---------------------|
2559 | <return> | Return |
2560 |---------------+---------------------|
2562 |---------------+---------------------|
2564 |---------------+---------------------|
2565 | <space> | Space bar |
2566 |---------------+---------------------|
2567 | <f1> | function key 1 |
2568 |---------------+---------------------|
2569 | <f10> | function key 10 |
2570 +-------------------------------------+
2572 key does not need to be enclosed in quotes unless it contains a space ("
2573 ") or semi-colon (";").
2575 function specifies which action to take when key is pressed. For a
2576 complete list of functions, see the reference. The special function <noop>
2577 unbinds the specified key sequence.
2579 6. Defining aliases for character sets
2583 charset-hook alias charset
2585 iconv-hook charset local-charset
2587 The charset-hook command defines an alias for a character set. This is
2588 useful to properly display messages which are tagged with a character set
2589 name not known to mutt.
2591 The iconv-hook command defines a system-specific name for a character set.
2592 This is helpful when your systems character conversion library insists on
2593 using strange, system-specific names for character sets.
2595 7. Setting variables based upon mailbox
2599 folder-hook [!]regexp command
2601 It is often desirable to change settings based on which mailbox you are
2602 reading. The folder-hook command provides a method by which you can
2603 execute any configuration command. regexp is a regular expression
2604 specifying in which mailboxes to execute command before loading. If a
2605 mailbox matches multiple folder-hook's, they are executed in the order
2606 given in the muttrc.
2610 If you use the "!" shortcut for $spoolfile at the beginning of the
2611 pattern, you must place it inside of double or single quotes in order to
2612 distinguish it from the logical not operator for the expression.
2616 Settings are not restored when you leave the mailbox. For example, a
2617 command action to perform is to change the sorting method based upon the
2620 folder-hook mutt set sort=threads
2622 However, the sorting method is not restored to its previous value when
2623 reading a different mailbox. To specify a default command, use the pattern
2624 "." before other folder-hooks adjusting a value on a per-folder basis
2625 because folder-hooks are evaluated in the order given in the configuration
2626 file. The following example will set the sort variable to date-sent for
2627 all folders but to threads for all folders containing "mutt" in their
2630 Example 3.7. Setting sort method based on mailbox name
2632 folder-hook . set sort=date-sent
2633 folder-hook mutt set sort=threads
2639 macro menu key sequence [ description ]
2641 Macros are useful when you would like a single key to perform a series of
2642 actions. When you press key in menu menu, Mutt will behave as if you had
2643 typed sequence. So if you have a common sequence of commands you type, you
2644 can create a macro to execute those commands with a single key or fewer
2647 menu is the map which the macro will be bound in. Multiple maps may be
2648 specified by separating multiple menu arguments by commas. Whitespace may
2649 not be used in between the menu arguments and the commas separating them.
2651 key and sequence are expanded by the same rules as the key bindings with
2652 some additions. The first is that control characters in sequence can also
2653 be specified as ^x. In order to get a caret ("^") you need to use ^^.
2654 Secondly, to specify a certain key such as up or to invoke a function
2655 directly, you can use the format <key name> and <function name>. For a
2656 listing of key names see the section on key bindings. Functions are listed
2659 The advantage with using function names directly is that the macros will
2660 work regardless of the current key bindings, so they are not dependent on
2661 the user having particular key definitions. This makes them more robust
2662 and portable, and also facilitates defining of macros in files used by
2663 more than one user (e.g., the system Muttrc).
2665 Optionally you can specify a descriptive text after sequence, which is
2666 shown in the help screens.
2670 Macro definitions (if any) listed in the help screen(s), are silently
2671 truncated at the screen width, and are not wrapped.
2673 9. Using color and mono video attributes
2677 color object foreground background
2679 color { header | body } foreground background regexp
2681 color index foreground background pattern
2683 uncolor index { * | pattern ... }
2685 If your terminal supports color, you can spice up Mutt by creating your
2686 own color scheme. To define the color of an object (type of information),
2687 you must specify both a foreground color and a background color (it is not
2688 possible to only specify one or the other).
2690 header and body match regexp in the header/body of a message, index
2691 matches pattern (see Section 2, "Patterns: Searching, Limiting and
2692 Tagging") in the message index.
2694 object can be one of:
2698 o bold (hiliting bold patterns in the body of messages)
2700 o error (error messages printed by Mutt)
2702 o hdrdefault (default color of the message header in the pager)
2704 o indicator (arrow or bar used to indicate the current item in a menu)
2706 o markers (the "+" markers at the beginning of wrapped lines in the
2709 o message (informational messages)
2713 o quoted (text matching $quote_regexp in the body of a message)
2715 o quoted1, quoted2, ..., quotedN (higher levels of quoting)
2717 o search (hiliting of words in the pager)
2721 o status (mode lines used to display info about the mailbox or message)
2723 o tilde (the "~" used to pad blank lines in the pager)
2725 o tree (thread tree drawn in the message index and attachment menu)
2727 o underline (hiliting underlined patterns in the body of messages)
2729 foreground and background can be one of the following:
2751 foreground can optionally be prefixed with the keyword bright to make the
2752 foreground color boldfaced (e.g., brightred).
2754 If your terminal supports it, the special keyword default can be used as a
2755 transparent color. The value brightdefault is also valid. If Mutt is
2756 linked against the S-Lang library, you also need to set the COLORFGBG
2757 environment variable to the default colors of your terminal for this to
2758 work; for example (for Bourne-like shells):
2760 set COLORFGBG="green;black"
2765 The S-Lang library requires you to use the lightgray and brown keywords
2766 instead of white and yellow when setting this variable.
2770 The uncolor command can be applied to the index object only. It removes
2771 entries from the list. You must specify the same pattern specified in the
2772 color command for it to be removed. The pattern "*" is a special token
2773 which means to clear the color index list of all entries.
2775 Mutt also recognizes the keywords color0, color1, ..., colorN-1 (N being
2776 the number of colors supported by your terminal). This is useful when you
2777 remap the colors for your display (for example by changing the color
2778 associated with color2 for your xterm), since color names may then lose
2779 their normal meaning.
2781 If your terminal does not support color, it is still possible change the
2782 video attributes through the use of the "mono" command:
2786 mono object attribute
2788 mono { header | body } attribute regexp
2790 mono index attribute pattern
2792 unmono index { * | pattern ... }
2794 For object, see the color command. attribute can be one of the following:
2806 10. Message header display
2810 ignore pattern [ pattern ...]
2812 unignore { * | pattern ... }
2814 Messages often have many header fields added by automatic processing
2815 systems, or which may not seem useful to display on the screen. This
2816 command allows you to specify header fields which you don't normally want
2817 to see in the pager.
2819 You do not need to specify the full header field name. For example,
2820 "ignore content-" will ignore all header fields that begin with the
2821 pattern "content-". "ignore *" will ignore all headers.
2823 To remove a previously added token from the list, use the "unignore"
2824 command. The "unignore" command will make Mutt display headers with the
2825 given pattern. For example, if you do "ignore x-" it is possible to
2826 "unignore x-mailer".
2828 "unignore *" will remove all tokens from the ignore list.
2832 Example 3.8. Header weeding
2834 # Sven's draconian header weeding
2836 unignore from date subject to cc
2837 unignore organization organisation x-mailer: x-newsreader: x-mailing-list:
2842 hdr_order header [ header ...]
2844 unhdr_order { * | header ... }
2846 With the hdr_order command you can specify an order in which mutt will
2847 attempt to present these headers to you when viewing messages.
2849 "unhdr_order *" will clear all previous headers from the order list, thus
2850 removing the header order effects set by the system-wide startup file.
2852 Example 3.9. Configuring header display order
2854 hdr_order From Date: From: To: Cc: Subject:
2856 11. Alternative addresses
2860 alternates [ -group name ...] regexp [ regexp ...]
2862 unalternates [ -group name ...] { * | regexp ... }
2864 With various functions, mutt will treat messages differently, depending on
2865 whether you sent them or whether you received them from someone else. For
2866 instance, when replying to a message that you sent to a different party,
2867 mutt will automatically suggest to send the response to the original
2868 message's recipients -- responding to yourself won't make much sense in
2869 many cases. (See $reply_to.)
2871 Many users receive e-mail under a number of different addresses. To fully
2872 use mutt's features here, the program must be able to recognize what
2873 e-mail addresses you receive mail under. That's the purpose of the
2874 alternates command: It takes a list of regular expressions, each of which
2875 can identify an address under which you receive e-mail.
2877 As addresses are matched using regular expressions and not exact strict
2878 comparisons, you should make sure you specify your addresses as precise as
2879 possible to avoid mismatches. For example, if you specify:
2881 alternates user@example
2883 mutt will consider "some-user@example" as being your address, too which
2884 may not be desired. As a solution, in such cases addresses should be
2887 alternates '^user@example$'
2889 The -group flag causes all of the subsequent regular expressions to be
2890 added to the named group.
2892 The unalternates command can be used to write exceptions to alternates
2893 patterns. If an address matches something in an alternates command, but
2894 you nonetheless do not think it is from you, you can list a more precise
2895 pattern under an unalternates command.
2897 To remove a regular expression from the alternates list, use the
2898 unalternates command with exactly the same regexp. Likewise, if the regexp
2899 for an alternates command matches an entry on the unalternates list, that
2900 unalternates entry will be removed. If the regexp for unalternates is "*",
2901 all entries on alternates will be removed.
2907 lists [ -group name ...] regexp [ regexp ...]
2909 unlists [ -group name ...] { * | regexp ... }
2911 subscribe [ -group name ...] regexp [ regexp ...]
2913 unsubscribe [ -group name ...] { * | regexp ... }
2915 Mutt has a few nice features for handling mailing lists. In order to take
2916 advantage of them, you must specify which addresses belong to mailing
2917 lists, and which mailing lists you are subscribed to. Once you have done
2918 this, the <list-reply> function will work for all known lists.
2919 Additionally, when you send a message to a subscribed list, mutt will add
2920 a Mail-Followup-To header to tell other users' mail user agents not to
2921 send copies of replies to your personal address.
2925 The Mail-Followup-To header is a non-standard extension which is not
2926 supported by all mail user agents. Adding it is not bullet-proof against
2927 receiving personal CCs of list messages. Also note that the generation of
2928 the Mail-Followup-To header is controlled by the $followup_to
2929 configuration variable.
2931 More precisely, Mutt maintains lists of patterns for the addresses of
2932 known and subscribed mailing lists. Every subscribed mailing list is
2933 known. To mark a mailing list as known, use the "lists" command. To mark
2934 it as subscribed, use "subscribe".
2936 You can use regular expressions with both commands. To mark all messages
2937 sent to a specific bug report's address on mutt's bug tracking system as
2938 list mail, for instance, you could say "subscribe [0-9]*@bugs.guug.de".
2939 Often, it's sufficient to just give a portion of the list's e-mail
2942 Specify as much of the address as you need to to remove ambiguity. For
2943 example, if you've subscribed to the Mutt mailing list, you will receive
2944 mail addressed to mutt-users@mutt.org. So, to tell Mutt that this is a
2945 mailing list, you could add "lists mutt-users@" to your initialization
2946 file. To tell mutt that you are subscribed to it, add "subscribe
2947 mutt-users" to your initialization file instead. If you also happen to get
2948 mail from someone whose address is mutt-users@example.com, you could use
2949 "lists ^mutt-users@mutt\\.org$" or "subscribe ^mutt-users@mutt\\.org$" to
2950 match only mail from the actual list.
2952 The -group flag adds all of the subsequent regular expressions to the
2955 The "unlists" command is used to remove a token from the list of known and
2956 subscribed mailing-lists. Use "unlists *" to remove all tokens.
2958 To remove a mailing list from the list of subscribed mailing lists, but
2959 keep it on the list of known mailing lists, use "unsubscribe".
2961 13. Using Multiple spool mailboxes
2965 mbox-hook [!]pattern mailbox
2967 This command is used to move read messages from a specified mailbox to a
2968 different mailbox automatically when you quit or change folders. pattern
2969 is a regular expression specifying the mailbox to treat as a "spool"
2970 mailbox and mailbox specifies where mail should be saved when read.
2972 Unlike some of the other hook commands, only the first matching pattern is
2973 used (it is not possible to save read mail in more than a single mailbox).
2975 14. Monitoring incoming mail
2979 mailboxes mailbox [ mailbox ...]
2981 unmailboxes { * | mailbox ... }
2983 This command specifies folders which can receive mail and which will be
2984 checked for new messages periodically.
2986 folder can either be a local file or directory (Mbox/Mmdf or Maildir/Mh).
2987 If Mutt was built with POP and/or IMAP support, folder can also be a
2988 POP/IMAP folder URL. The URL syntax is described in Section 1.2, "URL
2989 syntax", POP and IMAP are described in Section 3, "POP3 Support" and
2990 Section 4, "IMAP Support" respectively.
2992 Mutt provides a number of advanced features for handling (possibly many)
2993 folders and new mail within them, please refer to Section 9, "Handling
2994 multiple folders" for details (including in what situations and how often
2995 Mutt checks for new mail).
2997 The "unmailboxes" command is used to remove a token from the list of
2998 folders which receive mail. Use "unmailboxes *" to remove all tokens.
3002 The folders in the mailboxes command are resolved when the command is
3003 executed, so if these names contain shortcut characters (such as "=" and
3004 "!"), any variable definition that affects these characters (like $folder
3005 and $spoolfile) should be set before the mailboxes command. If none of
3006 these shorcuts are used, a local path should be absolute as otherwise mutt
3007 tries to find it relative to the directory from where mutt was started
3008 which may not always be desired.
3010 For Mbox and Mmdf folders, new mail is detected by comparing access and/or
3011 modification times of files: Mutt assumes a folder has new mail if it
3012 wasn't accessed after it was last modified. Utilities like biff or frm or
3013 any other program which accesses the mailbox might cause Mutt to never
3014 detect new mail for that mailbox if they do not properly reset the access
3015 time. Other possible causes of Mutt not detecting new mail in these
3016 folders are backup tools (updating access times) or filesystems mounted
3017 without access time update support.
3019 In cases where new mail detection for Mbox or Mmdf folders appears to be
3020 unreliable, the $check_mbox_size option can be used to make Mutt track and
3021 consult file sizes for new mail detection instead.
3023 15. User defined headers
3029 unmy_hdr { * | field ... }
3031 The my_hdr command allows you to create your own header fields which will
3032 be added to every message you send.
3034 For example, if you would like to add an "Organization:" header field to
3035 all of your outgoing messages, you can put the command
3037 Example 3.10. Defining custom headers
3039 my_hdr Organization: A Really Big Company, Anytown, USA
3045 Space characters are not allowed between the keyword and the colon (":").
3046 The standard for electronic mail (RFC2822) says that space is illegal
3047 there, so Mutt enforces the rule.
3049 If you would like to add a header field to a single message, you should
3050 either set the $edit_headers variable, or use the <edit-headers> function
3051 (default: "E") in the compose menu so that you can edit the header of your
3052 message along with the body.
3054 To remove user defined header fields, use the unmy_hdr command. You may
3055 specify an asterisk ("*") to remove all header fields, or the fields to
3056 remove. For example, to remove all "To" and "Cc" header fields, you could
3061 16. Specify default save mailbox
3065 save-hook [!]pattern mailbox
3067 This command is used to override the default mailbox used when saving
3068 messages. mailbox will be used as the default if the message matches
3069 pattern, see Message Matching in Hooks for information on the exact
3072 To provide more flexibility and good defaults, Mutt applies the expandos
3073 of $index_format to mailbox after it was expanded.
3077 Example 3.11. Using %-expandos in save-hook
3079 # default: save all to ~/Mail/<author name>
3080 save-hook . ~/Mail/%F
3082 # save from me@turing.cs.hmc.edu and me@cs.hmc.edu to $folder/elkins
3083 save-hook me@(turing\\.)?cs\\.hmc\\.edu$ +elkins
3085 # save from aol.com to $folder/spam
3086 save-hook aol\\.com$ +spam
3088 Also see the fcc-save-hook command.
3090 17. Specify default Fcc: mailbox when composing
3094 fcc-hook [!]pattern mailbox
3096 This command is used to save outgoing mail in a mailbox other than
3097 $record. Mutt searches the initial list of message recipients for the
3098 first matching regexp and uses mailbox as the default Fcc: mailbox. If no
3099 match is found the message will be saved to $record mailbox.
3101 To provide more flexibility and good defaults, Mutt applies the expandos
3102 of $index_format to mailbox after it was expanded.
3104 See Message Matching in Hooks for information on the exact format of
3107 Example: fcc-hook [@.]aol\\.com$ +spammers
3109 The above will save a copy of all messages going to the aol.com domain to
3110 the `+spammers' mailbox by default. Also see the fcc-save-hook command.
3112 18. Specify default save filename and default Fcc: mailbox at once
3116 fcc-save-hook [!]pattern mailbox
3118 This command is a shortcut, equivalent to doing both a fcc-hook and a
3119 save-hook with its arguments, including %-expansion on mailbox according
3122 19. Change settings based upon message recipients
3126 reply-hook [!]pattern command
3128 send-hook [!]pattern command
3130 send2-hook [!]pattern command
3132 These commands can be used to execute arbitrary configuration commands
3133 based upon recipients of the message. pattern is used to match the
3134 message, see Message Matching in Hooks for details. command is executed
3135 when pattern matches.
3137 reply-hook is matched against the message you are replying to, instead of
3138 the message you are sending. send-hook is matched against all messages,
3139 both new and replies.
3143 reply-hooks are matched before the send-hook, regardless of the order
3144 specified in the user's configuration file.
3146 send2-hook is matched every time a message is changed, either by editing
3147 it, or by using the compose menu to change its recipients or subject.
3148 send2-hook is executed after send-hook, and can, e.g., be used to set
3149 parameters such as the $sendmail variable depending on the message's
3152 For each type of send-hook or reply-hook, when multiple matches occur,
3153 commands are executed in the order they are specified in the muttrc (for
3156 Example: send-hook mutt "set mime_forward signature=''"
3158 Another typical use for this command is to change the values of the
3159 $attribution, $signature and $locale variables in order to change the
3160 language of the attributions and signatures based upon the recipients.
3164 send-hook's are only executed once after getting the initial list of
3165 recipients. Adding a recipient after replying or editing the message will
3166 not cause any send-hook to be executed. Also note that my_hdr commands
3167 which modify recipient headers, or the message's subject, don't have any
3168 effect on the current message when executed from a send-hook.
3170 20. Change settings before formatting a message
3174 message-hook [!]pattern command
3176 This command can be used to execute arbitrary configuration commands
3177 before viewing or formatting a message based upon information about the
3178 message. command is executed if the pattern matches the message to be
3179 displayed. When multiple matches occur, commands are executed in the order
3180 they are specified in the muttrc.
3182 See Message Matching in Hooks for information on the exact format of
3187 message-hook ~A 'set pager=builtin'
3188 message-hook '~f freshmeat-news' 'set pager="less \"+/^ subject: .*\""'
3190 21. Choosing the cryptographic key of the recipient
3194 crypt-hook pattern keyid
3196 When encrypting messages with PGP/GnuPG or OpenSSL, you may want to
3197 associate a certain key with a given e-mail address automatically, either
3198 because the recipient's public key can't be deduced from the destination
3199 address, or because, for some reasons, you need to override the key Mutt
3200 would normally use. The crypt-hook command provides a method by which you
3201 can specify the ID of the public key to be used when encrypting messages
3202 to a certain recipient.
3204 The meaning of keyid is to be taken broadly in this context: You can
3205 either put a numerical key ID here, an e-mail address, or even just a real
3208 22. Adding key sequences to the keyboard buffer
3214 This command adds the named string to the keyboard buffer. The string may
3215 contain control characters, key names and function names like the sequence
3216 string in the macro command. You may use it to automatically run a
3217 sequence of commands at startup, or when entering certain folders. For
3218 example, the following command will automatically collapse all threads
3219 when entering a folder:
3221 Example 3.12. Embedding push in folder-hook
3223 folder-hook . 'push <collapse-all>'
3225 23. Executing functions
3229 exec function [ function ...]
3231 This command can be used to execute any function. Functions are listed in
3232 the function reference. "exec function" is equivalent to "push
3241 unscore { * | pattern ... }
3243 The score commands adds value to a message's score if pattern matches it.
3244 pattern is a string in the format described in the patterns section (note:
3245 For efficiency reasons, patterns which scan information not available in
3246 the index, such as ~b, ~B or ~h, may not be used). value is a positive or
3247 negative integer. A message's final score is the sum total of all matching
3248 score entries. However, you may optionally prefix value with an equal sign
3249 (=) to cause evaluation to stop at a particular entry if there is a match.
3250 Negative final scores are rounded up to 0.
3252 The unscore command removes score entries from the list. You must specify
3253 the same pattern specified in the score command for it to be removed. The
3254 pattern "*" is a special token which means to clear the list of all score
3263 nospam { * | pattern }
3265 Mutt has generalized support for external spam-scoring filters. By
3266 defining your spam patterns with the spam and nospam commands, you can
3267 limit, search, and sort your mail based on its spam attributes, as
3268 determined by the external filter. You also can display the spam
3269 attributes in your index display using the %H selector in the
3270 $index_format variable. (Tip: try %?H?[%H] ? to display spam tags only
3271 when they are defined for a given message.)
3273 Your first step is to define your external filter's spam patterns using
3274 the spam command. pattern should be a regular expression that matches a
3275 header in a mail message. If any message in the mailbox matches this
3276 regular expression, it will receive a "spam tag" or "spam attribute"
3277 (unless it also matches a nospam pattern -- see below.) The appearance of
3278 this attribute is entirely up to you, and is governed by the format
3279 parameter. format can be any static text, but it also can include
3280 back-references from the pattern expression. (A regular expression
3281 "back-reference" refers to a sub-expression contained within parentheses.)
3282 %1 is replaced with the first back-reference in the regex, %2 with the
3285 If you're using multiple spam filters, a message can have more than one
3286 spam-related header. You can define spam patterns for each filter you use.
3287 If a message matches two or more of these patterns, and the
3288 $spam_separator variable is set to a string, then the message's spam tag
3289 will consist of all the format strings joined together, with the value of
3290 $spam_separator separating them.
3292 For example, suppose I use DCC, SpamAssassin, and PureMessage. I might
3293 define these spam settings:
3295 Example 3.13. Configuring spam detection
3297 spam "X-DCC-.*-Metrics:.*(....)=many" "90+/DCC-%1"
3298 spam "X-Spam-Status: Yes" "90+/SA"
3299 spam "X-PerlMX-Spam: .*Probability=([0-9]+)%" "%1/PM"
3300 set spam_separator=", "
3302 If I then received a message that DCC registered with "many" hits under
3303 the "Fuz2" checksum, and that PureMessage registered with a 97%
3304 probability of being spam, that message's spam tag would read
3305 90+/DCC-Fuz2, 97/PM. (The four characters before "=many" in a DCC report
3306 indicate the checksum used -- in this case, "Fuz2".)
3308 If the $spam_separator variable is unset, then each spam pattern match
3309 supersedes the previous one. Instead of getting joined format strings,
3310 you'll get only the last one to match.
3312 The spam tag is what will be displayed in the index when you use %H in the
3313 $index_format variable. It's also the string that the ~H pattern-matching
3314 expression matches against for <search> and <limit> functions. And it's
3315 what sorting by spam attribute will use as a sort key.
3317 That's a pretty complicated example, and most people's actual environments
3318 will have only one spam filter. The simpler your configuration, the more
3319 effective mutt can be, especially when it comes to sorting.
3321 Generally, when you sort by spam tag, mutt will sort lexically -- that is,
3322 by ordering strings alphanumerically. However, if a spam tag begins with a
3323 number, mutt will sort numerically first, and lexically only when two
3324 numbers are equal in value. (This is like UNIX's sort -n.) A message with
3325 no spam attributes at all -- that is, one that didn't match any of your
3326 spam patterns -- is sorted at lowest priority. Numbers are sorted next,
3327 beginning with 0 and ranging upward. Finally, non-numeric strings are
3328 sorted, with "a" taking lower priority than "z". Clearly, in general,
3329 sorting by spam tags is most effective when you can coerce your filter to
3330 give you a raw number. But in case you can't, mutt can still do something
3333 The nospam command can be used to write exceptions to spam patterns. If a
3334 header pattern matches something in a spam command, but you nonetheless do
3335 not want it to receive a spam tag, you can list a more precise pattern
3336 under a nospam command.
3338 If the pattern given to nospam is exactly the same as the pattern on an
3339 existing spam list entry, the effect will be to remove the entry from the
3340 spam list, instead of adding an exception. Likewise, if the pattern for a
3341 spam command matches an entry on the nospam list, that nospam entry will
3342 be removed. If the pattern for nospam is "*", all entries on both lists
3343 will be removed. This might be the default action if you use spam and
3344 nospam in conjunction with a folder-hook.
3346 You can have as many spam or nospam commands as you like. You can even do
3347 your own primitive spam detection within mutt -- for example, if you
3348 consider all mail from MAILER-DAEMON to be spam, you can use a spam
3351 spam "^From: .*MAILER-DAEMON" "999"
3353 26. Setting and Querying Variables
3357 The following commands are available to manipulate and query variables:
3361 set { [ no | inv ] variable | variable=value } [...]
3363 toggle variable [ variable ...]
3365 unset variable [ variable ...]
3367 reset variable [ variable ...]
3369 This command is used to set (and unset) configuration variables. There are
3370 four basic types of variables: boolean, number, string and quadoption.
3371 boolean variables can be set (true) or unset (false). number variables can
3372 be assigned a positive integer value. string variables consist of any
3373 number of printable characters and must be enclosed in quotes if they
3374 contain spaces or tabs. You may also use the escape sequences "\n" and
3375 "\t" for newline and tab, respectively. quadoption variables are used to
3376 control whether or not to be prompted for certain actions, or to specify a
3377 default action. A value of yes will cause the action to be carried out
3378 automatically as if you had answered yes to the question. Similarly, a
3379 value of no will cause the action to be carried out as if you had answered
3380 "no." A value of ask-yes will cause a prompt with a default answer of
3381 "yes" and ask-no will provide a default answer of "no."
3383 Prefixing a variable with "no" will unset it. Example: set noaskbcc.
3385 For boolean variables, you may optionally prefix the variable name with
3386 inv to toggle the value (on or off). This is useful when writing macros.
3387 Example: set invsmart_wrap.
3389 The toggle command automatically prepends the inv prefix to all specified
3392 The unset command automatically prepends the no prefix to all specified
3395 Using the <enter-command> function in the index menu, you can query the
3396 value of a variable by prefixing the name of the variable with a question
3401 The question mark is actually only required for boolean and quadoption
3404 The reset command resets all given variables to the compile time defaults
3405 (hopefully mentioned in this manual). If you use the command set and
3406 prefix the variable with "&" this has the same behavior as the reset
3409 With the reset command there exists the special variable "all", which
3410 allows you to reset all variables to their system defaults.
3412 26.2. User-defined variables
3414 26.2.1. Introduction
3416 Along with the variables listed in the Configuration variables section,
3417 mutt supports user-defined variables with names starting with my_ as in,
3418 for example, my_cfgdir.
3420 The set command either creates a custom my_ variable or changes its value
3421 if it does exist already. The unset and reset commands remove the variable
3424 Since user-defined variables are expanded in the same way that environment
3425 variables are (except for the shell-escape command and backtick
3426 expansion), this feature can be used to make configuration files more
3431 The following example defines and uses the variable my_cfgdir to
3432 abbreviate the calls of the source command:
3434 Example 3.14. Using user-defined variables for config file readability
3436 set my_cfgdir = $HOME/mutt/config
3438 source $my_cfgdir/hooks
3439 source $my_cfgdir/macros
3440 # more source commands...
3442 A custom variable can also be used in macros to backup the current value
3443 of another variable. In the following example, the value of the $delete is
3444 changed temporarily while its original value is saved as my_delete. After
3445 the macro has executed all commands, the original value of $delete is
3448 Example 3.15. Using user-defined variables for backing up other config
3452 <enter-command>set my_delete=$delete<enter>\
3453 <enter-command>set delete=yes<enter>\
3455 <enter-command>set delete=$my_delete<enter>'
3457 Since mutt expands such values already when parsing the configuration
3458 file(s), the value of $my_delete in the last example would be the value of
3459 $delete exactly as it was at that point during parsing the configuration
3460 file. If another statement would change the value for $delete later in the
3461 same or another file, it would have no effect on $my_delete. However, the
3462 expansion can be deferred to runtime, as shown in the next example, when
3463 escaping the dollar sign.
3465 Example 3.16. Deferring user-defined variable expansion to runtime
3467 macro pager <PageDown> "\
3468 <enter-command> set my_old_pager_stop=\$pager_stop pager_stop<Enter>\
3470 <enter-command> set pager_stop=\$my_old_pager_stop<Enter>\
3471 <enter-command> unset my_old_pager_stop<Enter>"
3473 Note that there is a space between <enter-command> and the set
3474 configuration command, preventing mutt from recording the macro's commands
3477 27. Reading initialization commands from another file
3483 This command allows the inclusion of initialization commands from other
3484 files. For example, I place all of my aliases in ~/.mail_aliases so that I
3485 can make my ~/.muttrc readable and keep my aliases private.
3487 If the filename begins with a tilde ("~"), it will be expanded to the path
3488 of your home directory.
3490 If the filename ends with a vertical bar (|), then filename is considered
3491 to be an executable program from which to read input (eg. source
3494 28. Configuring features conditionnaly
3496 Usage: ifdef item command
3498 This command allows to test if a feature has been compiled in, before
3499 actually executing the command. Item can be either the name of a function,
3500 variable, or command. Example:
3502 ifdef imap_keepalive 'source ~/.mutt/imap_setup'
3508 unhook { * | hook-type }
3510 This command permits you to flush hooks you have previously defined. You
3511 can either remove all hooks by giving the "*" character as an argument, or
3512 you can remove all hooks of a specific type by saying something like
3519 Format strings are a general concept you'll find in several locations
3520 through the mutt configuration, especially in the $index_format,
3521 $pager_format, $status_format, and other "*_format" variables. These can
3522 be very straightforward, and it's quite possible you already know how to
3525 The most basic format string element is a percent symbol followed by
3526 another character. For example, %s represents a message's Subject: header
3527 in the $index_format variable. The "expandos" available are documented
3528 with each format variable, but there are general modifiers available with
3529 all formatting expandos, too. Those are our concern here.
3531 Some of the modifiers are borrowed right out of C (though you might know
3532 them from Perl, Python, shell, or another language). These are the [-]m.n
3533 modifiers, as in %-12.12s. As with such programming languages, these
3534 modifiers allow you to specify the minimum and maximum size of the
3535 resulting string, as well as its justification. If the "-" sign follows
3536 the percent, the string will be left-justified instead of right-justified.
3537 If there's a number immediately following that, it's the minimum amount of
3538 space the formatted string will occupy -- if it's naturally smaller than
3539 that, it will be padded out with spaces. If a decimal point and another
3540 number follow, that's the maximum space allowable -- the string will not
3541 be permitted to exceed that width, no matter its natural size. Each of
3542 these three elements is optional, so that all these are legal format
3543 strings: %-12s %4c %.15F %-12.15L
3545 Mutt adds some other modifiers to format strings. If you use an equals
3546 symbol (=) as a numeric prefix (like the minus above), it will force the
3547 string to be centered within its minimum space range. For example, %=14y
3548 will reserve 14 characters for the %y expansion -- that's the X-Label:
3549 header, in $index_format. If the expansion results in a string less than
3550 14 characters, it will be centered in a 14-character space. If the X-Label
3551 for a message were "test", that expansion would look like " test ".
3553 There are two very little-known modifiers that affect the way that an
3554 expando is replaced. If there is an underline ("_") character between any
3555 format modifiers (as above) and the expando letter, it will expands in all
3556 lower case. And if you use a colon (":"), it will replace all decimal
3557 points with underlines.
3561 Any format string ending in a vertical bar ("|") will be expanded and
3562 piped through the first word in the string, using spaces as separator. The
3563 string returned will be used for display. If the returned string ends in
3564 %, it will be passed through the formatter a second time. This allows the
3565 filter to generate a replacement format string including % expandos.
3567 All % expandos in a format string are expanded before the script is called
3570 Example 3.17. Using external filters in format strings
3572 set status_format="script.sh '%r %f (%L)'|"
3574 will make mutt expand %r, %f and %L before calling the script. The example
3575 also shows that arguments can be quoted: the script will receive the
3576 expanded string between the single quotes as the only argument.
3578 A practical example is the mutt_xtitle script installed in the samples
3579 subdirectory of the mutt documentation: it can be used as filter for
3580 $status_format to set the current terminal's title, if supported.
3582 Chapter 4. Advanced Usage
3586 1. Regular Expressions
3588 2. Patterns: Searching, Limiting and Tagging
3590 2.1. Pattern Modifier
3592 2.2. Simple Patterns
3594 2.3. Complex Patterns
3596 2.4. Searching by Date
3602 4.1. Message Matching in Hooks
3604 5. External Address Queries
3608 7. Mailbox Shortcuts
3610 8. Handling Mailing Lists
3612 9. Handling multiple folders
3616 10.1. Linking threads
3618 10.2. Breaking threads
3620 11. Delivery Status Notification (DSN) Support
3622 12. Start a WWW Browser on URLs
3624 1. Regular Expressions
3626 All string patterns in Mutt including those in more complex patterns must
3627 be specified using regular expressions (regexp) in the "POSIX extended"
3628 syntax (which is more or less the syntax used by egrep and GNU awk). For
3629 your convenience, we have included below a brief description of this
3632 The search is case sensitive if the pattern contains at least one upper
3633 case letter, and case insensitive otherwise.
3637 Note that "\" must be quoted if used for a regular expression in an
3638 initialization command: "\\".
3640 A regular expression is a pattern that describes a set of strings. Regular
3641 expressions are constructed analogously to arithmetic expressions, by
3642 using various operators to combine smaller expressions.
3646 Note that the regular expression can be enclosed/delimited by either " or
3647 ' which is useful if the regular expression includes a white-space
3648 character. See Syntax of Initialization Files for more information on "
3649 and ' delimiter processing. To match a literal " or ' you must preface it
3652 The fundamental building blocks are the regular expressions that match a
3653 single character. Most characters, including all letters and digits, are
3654 regular expressions that match themselves. Any metacharacter with special
3655 meaning may be quoted by preceding it with a backslash.
3657 The period "." matches any single character. The caret "^" and the dollar
3658 sign "$" are metacharacters that respectively match the empty string at
3659 the beginning and end of a line.
3661 A list of characters enclosed by "[" and "]" matches any single character
3662 in that list; if the first character of the list is a caret "^" then it
3663 matches any character not in the list. For example, the regular expression
3664 [0123456789] matches any single digit. A range of ASCII characters may be
3665 specified by giving the first and last characters, separated by a hyphen
3666 "-". Most metacharacters lose their special meaning inside lists. To
3667 include a literal "]" place it first in the list. Similarly, to include a
3668 literal "^" place it anywhere but first. Finally, to include a literal
3669 hyphen "-" place it last.
3671 Certain named classes of characters are predefined. Character classes
3672 consist of "[:", a keyword denoting the class, and ":]". The following
3673 classes are defined by the POSIX standard in Table 4.1, "POSIX regular
3674 expression character classes"
3676 Table 4.1. POSIX regular expression character classes
3678 +------------------------------------------------------------------------+
3679 | Character class | Description |
3680 |-----------------+------------------------------------------------------|
3681 | [:alnum:] | Alphanumeric characters |
3682 |-----------------+------------------------------------------------------|
3683 | [:alpha:] | Alphabetic characters |
3684 |-----------------+------------------------------------------------------|
3685 | [:blank:] | Space or tab characters |
3686 |-----------------+------------------------------------------------------|
3687 | [:cntrl:] | Control characters |
3688 |-----------------+------------------------------------------------------|
3689 | [:digit:] | Numeric characters |
3690 |-----------------+------------------------------------------------------|
3691 | | Characters that are both printable and visible. (A |
3692 | [:graph:] | space is printable, but not visible, while an "a" is |
3694 |-----------------+------------------------------------------------------|
3695 | [:lower:] | Lower-case alphabetic characters |
3696 |-----------------+------------------------------------------------------|
3697 | [:print:] | Printable characters (characters that are not |
3698 | | control characters) |
3699 |-----------------+------------------------------------------------------|
3700 | | Punctuation characters (characters that are not |
3701 | [:punct:] | letter, digits, control characters, or space |
3703 |-----------------+------------------------------------------------------|
3704 | [:space:] | Space characters (such as space, tab and formfeed, |
3705 | | to name a few) |
3706 |-----------------+------------------------------------------------------|
3707 | [:upper:] | Upper-case alphabetic characters |
3708 |-----------------+------------------------------------------------------|
3709 | [:xdigit:] | Characters that are hexadecimal digits |
3710 +------------------------------------------------------------------------+
3712 A character class is only valid in a regular expression inside the
3713 brackets of a character list.
3717 Note that the brackets in these class names are part of the symbolic
3718 names, and must be included in addition to the brackets delimiting the
3719 bracket list. For example, [[:digit:]] is equivalent to [0-9].
3721 Two additional special sequences can appear in character lists. These
3722 apply to non-ASCII character sets, which can have single symbols (called
3723 collating elements) that are represented with more than one character, as
3724 well as several characters that are equivalent for collating or sorting
3729 A collating symbol is a multi-character collating element enclosed
3730 in "[." and ".]". For example, if "ch" is a collating element,
3731 then [[.ch.]] is a regexp that matches this collating element,
3732 while [ch] is a regexp that matches either "c" or "h".
3736 An equivalence class is a locale-specific name for a list of
3737 characters that are equivalent. The name is enclosed in "[=" and
3738 "=]". For example, the name "e" might be used to represent all of
3739 "e" "e" and "e". In this case, [[=e=]] is a regexp that matches
3740 any of "e", "e" and "e".
3742 A regular expression matching a single character may be followed by one of
3743 several repetition operators described in Table 4.2, "Regular expression
3744 repetition operators".
3746 Table 4.2. Regular expression repetition operators
3748 +------------------------------------------------------------------------+
3749 | Operator | Description |
3750 |----------+-------------------------------------------------------------|
3751 | ? | The preceding item is optional and matched at most once |
3752 |----------+-------------------------------------------------------------|
3753 | * | The preceding item will be matched zero or more times |
3754 |----------+-------------------------------------------------------------|
3755 | + | The preceding item will be matched one or more times |
3756 |----------+-------------------------------------------------------------|
3757 | {n} | The preceding item is matched exactly n times |
3758 |----------+-------------------------------------------------------------|
3759 | {n,} | The preceding item is matched n or more times |
3760 |----------+-------------------------------------------------------------|
3761 | {,m} | The preceding item is matched at most m times |
3762 |----------+-------------------------------------------------------------|
3763 | {n,m} | The preceding item is matched at least n times, but no more |
3765 +------------------------------------------------------------------------+
3767 Two regular expressions may be concatenated; the resulting regular
3768 expression matches any string formed by concatenating two substrings that
3769 respectively match the concatenated subexpressions.
3771 Two regular expressions may be joined by the infix operator "|"; the
3772 resulting regular expression matches any string matching either
3775 Repetition takes precedence over concatenation, which in turn takes
3776 precedence over alternation. A whole subexpression may be enclosed in
3777 parentheses to override these precedence rules.
3781 If you compile Mutt with the GNU rx package, the following operators may
3782 also be used in regular expressions as described in Table 4.3, "GNU
3783 regular expression extensions".
3785 Table 4.3. GNU regular expression extensions
3787 +------------------------------------------------------------------------+
3788 | Expression | Description |
3789 |------------+-----------------------------------------------------------|
3790 | \\y | Matches the empty string at either the beginning or the |
3792 |------------+-----------------------------------------------------------|
3793 | \\B | Matches the empty string within a word |
3794 |------------+-----------------------------------------------------------|
3795 | \\< | Matches the empty string at the beginning of a word |
3796 |------------+-----------------------------------------------------------|
3797 | \\> | Matches the empty string at the end of a word |
3798 |------------+-----------------------------------------------------------|
3799 | \\w | Matches any word-constituent character (letter, digit, or |
3801 |------------+-----------------------------------------------------------|
3802 | \\W | Matches any character that is not word-constituent |
3803 |------------+-----------------------------------------------------------|
3804 | \\` | Matches the empty string at the beginning of a buffer |
3806 |------------+-----------------------------------------------------------|
3807 | \\' | Matches the empty string at the end of a buffer |
3808 +------------------------------------------------------------------------+
3810 Please note however that these operators are not defined by POSIX, so they
3811 may or may not be available in stock libraries on various systems.
3813 2. Patterns: Searching, Limiting and Tagging
3815 Many of Mutt's commands allow you to specify a pattern to match (limit,
3816 tag-pattern, delete-pattern, etc.). Table 4.4, "Pattern modifiers" shows
3817 several ways to select messages.
3819 Table 4.4. Pattern modifiers
3821 +------------------------------------------------------------------------+
3822 | Pattern modifier | Description |
3823 |------------------+-----------------------------------------------------|
3824 | ~A | all messages |
3825 |------------------+-----------------------------------------------------|
3826 | ~b EXPR | messages which contain EXPR in the message body |
3827 |------------------+-----------------------------------------------------|
3828 | | messages which contain STRING in the message body. |
3829 | =b STRING | If IMAP is enabled, searches for STRING on the |
3830 | | server, rather than downloading each message and |
3831 | | searching it locally. |
3832 |------------------+-----------------------------------------------------|
3833 | ~B EXPR | messages which contain EXPR in the whole message |
3834 |------------------+-----------------------------------------------------|
3835 | ~c EXPR | messages carbon-copied to EXPR |
3836 |------------------+-----------------------------------------------------|
3837 | %c GROUP | messages carbon-copied to any member of GROUP |
3838 |------------------+-----------------------------------------------------|
3839 | ~C EXPR | messages either to: or cc: EXPR |
3840 |------------------+-----------------------------------------------------|
3841 | %C GROUP | messages either to: or cc: to any member of GROUP |
3842 |------------------+-----------------------------------------------------|
3843 | ~d [MIN]-[MAX] | messages with "date-sent" in a Date range |
3844 |------------------+-----------------------------------------------------|
3845 | ~D | deleted messages |
3846 |------------------+-----------------------------------------------------|
3847 | ~e EXPR | messages which contains EXPR in the "Sender" field |
3848 |------------------+-----------------------------------------------------|
3849 | %e GROUP | messages which contain a member of GROUP in the |
3850 | | "Sender" field |
3851 |------------------+-----------------------------------------------------|
3852 | ~E | expired messages |
3853 |------------------+-----------------------------------------------------|
3854 | ~F | flagged messages |
3855 |------------------+-----------------------------------------------------|
3856 | ~f EXPR | messages originating from EXPR |
3857 |------------------+-----------------------------------------------------|
3858 | %f GROUP | messages originating from any member of GROUP |
3859 |------------------+-----------------------------------------------------|
3860 | ~g | cryptographically signed messages |
3861 |------------------+-----------------------------------------------------|
3862 | ~G | cryptographically encrypted messages |
3863 |------------------+-----------------------------------------------------|
3864 | ~h EXPR | messages which contain EXPR in the message header |
3865 |------------------+-----------------------------------------------------|
3866 | ~H EXPR | messages with a spam attribute matching EXPR |
3867 |------------------+-----------------------------------------------------|
3868 | ~i EXPR | messages which match EXPR in the "Message-ID" field |
3869 |------------------+-----------------------------------------------------|
3870 | ~k | messages which contain PGP key material |
3871 |------------------+-----------------------------------------------------|
3872 | ~L EXPR | messages either originated or received by EXPR |
3873 |------------------+-----------------------------------------------------|
3874 | %L GROUP | message either originated or received by any member |
3876 |------------------+-----------------------------------------------------|
3877 | ~l | messages addressed to a known mailing list |
3878 |------------------+-----------------------------------------------------|
3879 | ~m [MIN]-[MAX] | messages in the range MIN to MAX *) |
3880 |------------------+-----------------------------------------------------|
3881 | ~n [MIN]-[MAX] | messages with a score in the range MIN to MAX *) |
3882 |------------------+-----------------------------------------------------|
3883 | ~N | new messages |
3884 |------------------+-----------------------------------------------------|
3885 | ~O | old messages |
3886 |------------------+-----------------------------------------------------|
3887 | ~p | messages addressed to you (consults alternates) |
3888 |------------------+-----------------------------------------------------|
3889 | ~P | messages from you (consults alternates) |
3890 |------------------+-----------------------------------------------------|
3891 | ~Q | messages which have been replied to |
3892 |------------------+-----------------------------------------------------|
3893 | ~r [MIN]-[MAX] | messages with "date-received" in a Date range |
3894 |------------------+-----------------------------------------------------|
3895 | ~R | read messages |
3896 |------------------+-----------------------------------------------------|
3897 | ~s EXPR | messages having EXPR in the "Subject" field. |
3898 |------------------+-----------------------------------------------------|
3899 | ~S | superseded messages |
3900 |------------------+-----------------------------------------------------|
3901 | ~t EXPR | messages addressed to EXPR |
3902 |------------------+-----------------------------------------------------|
3903 | ~T | tagged messages |
3904 |------------------+-----------------------------------------------------|
3905 | ~u | messages addressed to a subscribed mailing list |
3906 |------------------+-----------------------------------------------------|
3907 | ~U | unread messages |
3908 |------------------+-----------------------------------------------------|
3909 | ~v | messages part of a collapsed thread. |
3910 |------------------+-----------------------------------------------------|
3911 | ~V | cryptographically verified messages |
3912 |------------------+-----------------------------------------------------|
3913 | ~x EXPR | messages which contain EXPR in the "References" |
3915 |------------------+-----------------------------------------------------|
3916 | ~X [MIN]-[MAX] | messages with MIN to MAX attachments *) |
3917 |------------------+-----------------------------------------------------|
3918 | ~y EXPR | messages which contain EXPR in the "X-Label" field |
3919 |------------------+-----------------------------------------------------|
3920 | ~z [MIN]-[MAX] | messages with a size in the range MIN to MAX *) |
3921 |------------------+-----------------------------------------------------|
3922 | ~= | duplicated messages (see $duplicate_threads) |
3923 |------------------+-----------------------------------------------------|
3924 | ~$ | unreferenced messages (requires threaded view) |
3925 |------------------+-----------------------------------------------------|
3926 | | messages in threads containing messages matching |
3927 | ~(PATTERN) | PATTERN, e.g. all threads containing messages from |
3929 +------------------------------------------------------------------------+
3931 Where EXPR is a regular expression. Special attention has to be made when
3932 using regular expressions inside of patterns. Specifically, Mutt's parser
3933 for these patterns will strip one level of backslash ("\"), which is
3934 normally used for quoting. If it is your intention to use a backslash in
3935 the regular expression, you will need to use two backslashes instead
3936 ("\\"). You can force mutt to treat EXPR as a simple string instead of a
3937 regular expression by using = instead of ~ in the pattern name. For
3938 example, =b *.* will find all messages that contain the literal string
3939 "*.*". Simple string matches are less powerful than regular expressions
3940 but can be considerably faster. This is especially true for IMAP folders,
3941 because string matches can be performed on the server instead of by
3942 fetching every message. IMAP treats =h specially: it must be of the form
3943 "header: substring" and will not partially match header names. The
3944 substring part may be omitted if you simply wish to find messages
3945 containing a particular header without regard to its value.
3947 *) The forms "<[MAX]", ">[MIN]", "[MIN]-" and "-[MAX]" are allowed, too.
3949 2.1. Pattern Modifier
3953 Note that patterns matching 'lists' of addresses (notably c, C, p, P and
3954 t) match if there is at least one match in the whole list. If you want to
3955 make sure that all elements of that list match, you need to prefix your
3956 pattern with "^". This example matches all mails which only has recipients
3961 2.2. Simple Patterns
3963 Mutt supports two versions of so called "simple searches" which are issued
3964 if the query entered for searching, limiting and similar operations does
3965 not seem to be a valid pattern (i.e. it does not contain one of these
3966 characters: "~", "=" or "%"). If the query is supposed to contain one of
3967 these special characters, they must be escaped by prepending a backslash
3970 The first type is by checking whether the query string equals a keyword
3971 case-insensitively from Table 4.5, "Simple search keywords": If that is
3972 the case, Mutt will use the shown pattern modifier instead. If a keyword
3973 would conflict with your search keyword, you need to turn it into a
3974 regular expression to avoid matching the keyword table. For example, if
3975 you want to find all messages matching "flag" (using $simple_search) but
3976 don't want to match flagged messages, simply search for "[f]lag".
3978 Table 4.5. Simple search keywords
3980 +----------------------------+
3981 | Keyword | Pattern modifier |
3982 |---------+------------------|
3984 |---------+------------------|
3986 |---------+------------------|
3988 |---------+------------------|
3990 |---------+------------------|
3992 |---------+------------------|
3994 |---------+------------------|
3996 |---------+------------------|
3998 |---------+------------------|
4000 |---------+------------------|
4002 |---------+------------------|
4004 +----------------------------+
4006 The second type of simple search is to build a complex search pattern
4007 using $simple_search as a template. Mutt will insert your query properly
4008 quoted and search for the composed complex query.
4010 2.3. Complex Patterns
4012 Logical AND is performed by specifying more than one criterion. For
4017 would select messages which contain the word "mutt" in the list of
4018 recipients and that have the word "elkins" in the "From" header field.
4020 Mutt also recognizes the following operators to create more complex search
4023 o ! -- logical NOT operator
4025 o | -- logical OR operator
4027 o () -- logical grouping operator
4029 Here is an example illustrating a complex search pattern. This pattern
4030 will select all messages which do not contain "mutt" in the "To" or "Cc"
4031 field and which are from "elkins".
4033 Example 4.1. Using boolean operators in patterns
4035 !(~t mutt|~c mutt) ~f elkins
4037 Here is an example using white space in the regular expression (note the '
4038 and " delimiters). For this to match, the mail's subject must match the
4039 "^Junk +From +Me$" and it must be from either "Jim +Somebody" or "Ed
4042 '~s "^Junk +From +Me$" ~f ("Jim +Somebody"|"Ed +SomeoneElse")'
4046 If a regular expression contains parenthesis, or a vertical bar ("|"), you
4047 must enclose the expression in double or single quotes since those
4048 characters are also used to separate different parts of Mutt's pattern
4049 language. For example: ~f "me@(mutt\.org|cs\.hmc\.edu)"
4051 Without the quotes, the parenthesis wouldn't end. This would be separated
4052 to two OR'd patterns: ~f me@(mutt\.org and cs\.hmc\.edu). They are never
4055 2.4. Searching by Date
4057 Mutt supports two types of dates, absolute and relative.
4059 Absolute. Dates must be in DD/MM/YY format (month and year are optional,
4060 defaulting to the current month and year). An example of a valid range of
4063 Limit to messages matching: ~d 20/1/95-31/10
4065 If you omit the minimum (first) date, and just specify "-DD/MM/YY", all
4066 messages before the given date will be selected. If you omit the maximum
4067 (second) date, and specify "DD/MM/YY-", all messages after the given date
4068 will be selected. If you specify a single date with no dash ("-"), only
4069 messages sent on the given date will be selected.
4071 Error Margins. You can add error margins to absolute dates. An error
4072 margin is a sign (+ or -), followed by a digit, followed by one of the
4073 units in Table 4.6, "Date units". As a special case, you can replace the
4074 sign by a "*" character, which is equivalent to giving identical plus and
4075 minus error margins.
4077 Table 4.6. Date units
4079 +--------------------+
4080 | Unit | Description |
4081 |------+-------------|
4083 |------+-------------|
4085 |------+-------------|
4087 |------+-------------|
4089 +--------------------+
4091 Example: To select any messages two weeks around January 15, 2001, you'd
4092 use the following pattern:
4094 Limit to messages matching: ~d 15/1/2001*2w
4096 Relative. This type of date is relative to the current date, and may be
4099 o >offset (messages older than offset units)
4101 o <offset (messages newer than offset units)
4103 o =offset (messages exactly offset units old)
4105 offset is specified as a positive number with one of the units from
4106 Table 4.6, "Date units".
4108 Example: to select messages less than 1 month old, you would use
4110 Limit to messages matching: ~d <1m
4114 All dates used when searching are relative to the local time zone, so
4115 unless you change the setting of your $index_format to include a %[...]
4116 format, these are not the dates shown in the main index.
4120 Sometimes it is desirable to perform an operation on a group of messages
4121 all at once rather than one at a time. An example might be to save
4122 messages to a mailing list to a separate folder, or to delete all messages
4123 with a given subject. To tag all messages matching a pattern, use the
4124 <tag-pattern> function, which is bound to "shift-T" by default. Or you can
4125 select individual messages by hand using the <tag-message> function, which
4126 is bound to "t" by default. See patterns for Mutt's pattern matching
4129 Once you have tagged the desired messages, you can use the "tag-prefix"
4130 operator, which is the ";" (semicolon) key by default. When the
4131 "tag-prefix" operator is used, the next operation will be applied to all
4132 tagged messages if that operation can be used in that manner. If the
4133 $auto_tag variable is set, the next operation applies to the tagged
4134 messages automatically, without requiring the "tag-prefix".
4136 In macros or push commands, you can use the "tag-prefix-cond" operator. If
4137 there are no tagged messages, mutt will "eat" the rest of the macro to
4138 abort it's execution. Mutt will stop "eating" the macro when it encounters
4139 the "end-cond" operator; after this operator the rest of the macro will be
4144 A hook is a concept found in many other programs which allows you to
4145 execute arbitrary commands before performing some operation. For example,
4146 you may wish to tailor your configuration based upon which mailbox you are
4147 reading, or to whom you are sending mail. In the Mutt world, a hook
4148 consists of a regular expression or pattern along with a configuration
4165 for specific details on each type of hook available.
4169 If a hook changes configuration settings, these changes remain effective
4170 until the end of the current mutt session. As this is generally not
4171 desired, a default hook needs to be added before all other hooks to
4172 restore configuration defaults. Here is an example with send-hook and the
4175 Example 4.2. Combining send-hook and my_hdr
4177 send-hook . 'unmy_hdr From:'
4178 send-hook ~C'^b@b\.b$' my_hdr from: c@c.c
4180 4.1. Message Matching in Hooks
4182 Hooks that act upon messages (message-hook, reply-hook, send-hook,
4183 send2-hook, save-hook, fcc-hook) are evaluated in a slightly different
4184 manner. For the other types of hooks, a regular expression is sufficient.
4185 But in dealing with messages a finer grain of control is needed for
4186 matching since for different purposes you want to match different
4189 Mutt allows the use of the search pattern language for matching messages
4190 in hook commands. This works in exactly the same way as it would when
4191 limiting or searching the mailbox, except that you are restricted to those
4192 operators which match information mutt extracts from the header of the
4193 message (i.e., from, to, cc, date, subject, etc.).
4195 For example, if you wanted to set your return address based upon sending
4196 mail to a specific address, you could do something like:
4198 send-hook '~t ^me@cs\.hmc\.edu$' 'my_hdr From: Mutt User <user@host>'
4200 which would execute the given command when sending mail to me@cs.hmc.edu.
4202 However, it is not required that you write the pattern to match using the
4203 full searching language. You can still specify a simple regular expression
4204 like the other hooks, in which case Mutt will translate your pattern into
4205 the full language, using the translation specified by the $default_hook
4206 variable. The pattern is translated at the time the hook is declared, so
4207 the value of $default_hook that is in effect at that time will be used.
4209 5. External Address Queries
4211 Mutt supports connecting to external directory databases such as LDAP,
4212 ph/qi, bbdb, or NIS through a wrapper script which connects to mutt using
4213 a simple interface. Using the $query_command variable, you specify the
4214 wrapper command to use. For example:
4216 set query_command = "mutt_ldap_query.pl '%s'"
4218 The wrapper script should accept the query on the command-line. It should
4219 return a one line message, then each matching response on a single line,
4220 each line containing a tab separated address then name then some other
4221 optional information. On error, or if there are no matching addresses,
4222 return a non-zero exit code and a one line error message.
4224 An example multiple response output:
4226 Searching database ... 20 entries ... 3 matching:
4227 me@cs.hmc.edu Michael Elkins mutt dude
4228 blong@fiction.net Brandon Long mutt and more
4229 roessler@does-not-exist.org Thomas Roessler mutt pgp
4231 There are two mechanisms for accessing the query function of mutt. One is
4232 to do a query from the index menu using the <query> function (default: Q).
4233 This will prompt for a query, then bring up the query menu which will list
4234 the matching responses. From the query menu, you can select addresses to
4235 create aliases, or to mail. You can tag multiple addresses to mail, start
4236 a new query, or have a new query appended to the current responses.
4238 The other mechanism for accessing the query function is for address
4239 completion, similar to the alias completion. In any prompt for address
4240 entry, you can use the <complete-query> function (default: ^T) to run a
4241 query based on the current address you have typed. Like aliases, mutt will
4242 look for what you have typed back to the last space or comma. If there is
4243 a single response for that query, mutt will expand the address in place.
4244 If there are multiple responses, mutt will activate the query menu. At the
4245 query menu, you can select one or more addresses to be added to the
4250 Mutt supports reading and writing of four different mailbox formats: mbox,
4251 MMDF, MH and Maildir. The mailbox type is autodetected, so there is no
4252 need to use a flag for different mailbox types. When creating new
4253 mailboxes, Mutt uses the default specified with the $mbox_type variable.
4255 mbox. This is the most widely used mailbox format for UNIX. All messages
4256 are stored in a single file. Each message has a line of the form:
4258 From me@cs.hmc.edu Fri, 11 Apr 1997 11:44:56 PST
4260 to denote the start of a new message (this is often referred to as the
4263 MMDF. This is a variant of the mbox format. Each message is surrounded by
4264 lines containing "^A^A^A^A" (four control-A's).
4266 MH. A radical departure from mbox and MMDF, a mailbox consists of a
4267 directory and each message is stored in a separate file. The filename
4268 indicates the message number (however, this is may not correspond to the
4269 message number Mutt displays). Deleted messages are renamed with a comma
4270 (,) prepended to the filename. Mutt detects this type of mailbox by
4271 looking for either .mh_sequences or .xmhcache (needed to distinguish
4272 normal directories from MH mailboxes).
4274 Maildir. The newest of the mailbox formats, used by the Qmail MTA (a
4275 replacement for sendmail). Similar to MH, except that it adds three
4276 subdirectories of the mailbox: tmp, new and cur. Filenames for the
4277 messages are chosen in such a way they are unique, even when two programs
4278 are writing the mailbox over NFS, which means that no file locking is
4281 7. Mailbox Shortcuts
4283 There are a number of built in shortcuts which refer to specific
4284 mailboxes. These shortcuts can be used anywhere you are prompted for a
4285 file or mailbox path.
4287 o ! -- refers to your $spoolfile (incoming) mailbox
4289 o > -- refers to your $mbox file
4291 o < -- refers to your $record file
4293 o ^ -- refers to the current mailbox
4295 o - or !! -- refers to the file you've last visited
4297 o ~ -- refers to your home directory
4299 o = or + -- refers to your $folder directory
4301 o @alias -- refers to the default save folder as determined by the
4302 address of the alias
4304 8. Handling Mailing Lists
4306 Mutt has a few configuration options that make dealing with large amounts
4307 of mail easier. The first thing you must do is to let Mutt know what
4308 addresses you consider to be mailing lists (technically this does not have
4309 to be a mailing list, but that is what it is most often used for), and
4310 what lists you are subscribed to. This is accomplished through the use of
4311 the lists and subscribe commands in your muttrc.
4313 Now that Mutt knows what your mailing lists are, it can do several things,
4314 the first of which is the ability to show the name of a list through which
4315 you received a message (i.e., of a subscribed list) in the index menu
4316 display. This is useful to distinguish between personal and list mail in
4317 the same mailbox. In the $index_format variable, the escape "%L" will
4318 return the string "To <list>" when "list" appears in the "To" field, and
4319 "Cc <list>" when it appears in the "Cc" field (otherwise it returns the
4320 name of the author).
4322 Often times the "To" and "Cc" fields in mailing list messages tend to get
4323 quite large. Most people do not bother to remove the author of the message
4324 they reply to from the list, resulting in two or more copies being sent to
4325 that person. The <list-reply> function, which by default is bound to "L"
4326 in the index menu and pager, helps reduce the clutter by only replying to
4327 the known mailing list addresses instead of all recipients (except as
4328 specified by Mail-Followup-To, see below).
4330 Mutt also supports the Mail-Followup-To header. When you send a message to
4331 a list of recipients which includes one or several subscribed mailing
4332 lists, and if the $followup_to option is set, mutt will generate a
4333 Mail-Followup-To header which contains all the recipients to whom you send
4334 this message, but not your address. This indicates that group-replies or
4335 list-replies (also known as "followups") to this message should only be
4336 sent to the original recipients of the message, and not separately to you
4337 - you'll receive your copy through one of the mailing lists you are
4340 Conversely, when group-replying or list-replying to a message which has a
4341 Mail-Followup-To header, mutt will respect this header if the
4342 $honor_followup_to configuration variable is set. Using list-reply will in
4343 this case also make sure that the reply goes to the mailing list, even if
4344 it's not specified in the list of recipients in the Mail-Followup-To.
4348 When header editing is enabled, you can create a Mail-Followup-To header
4349 manually. Mutt will only auto-generate this header if it doesn't exist
4350 when you send the message.
4352 The other method some mailing list admins use is to generate a "Reply-To"
4353 field which points back to the mailing list address rather than the author
4354 of the message. This can create problems when trying to reply directly to
4355 the author in private, since most mail clients will automatically reply to
4356 the address given in the "Reply-To" field. Mutt uses the $reply_to
4357 variable to help decide which address to use. If set to ask-yes or ask-no,
4358 you will be prompted as to whether or not you would like to use the
4359 address given in the "Reply-To" field, or reply directly to the address
4360 given in the "From" field. When set to yes, the "Reply-To" field will be
4363 The "X-Label:" header field can be used to further identify mailing lists
4364 or list subject matter (or just to annotate messages individually). The
4365 $index_format variable's "%y" and "%Y" escapes can be used to expand
4366 "X-Label:" fields in the index, and Mutt's pattern-matcher can match
4367 regular expressions to "X-Label:" fields with the "~y" selector.
4368 "X-Label:" is not a standard message header field, but it can easily be
4369 inserted by procmail and other mail filtering agents.
4371 Lastly, Mutt has the ability to sort the mailbox into threads. A thread is
4372 a group of messages which all relate to the same subject. This is usually
4373 organized into a tree-like structure where a message and all of its
4374 replies are represented graphically. If you've ever used a threaded news
4375 client, this is the same concept. It makes dealing with large volume
4376 mailing lists easier because you can easily delete uninteresting threads
4377 and quickly find topics of value.
4379 9. Handling multiple folders
4381 Mutt supports setups with multiple folders, allowing all of them to be
4382 monitored for new mail (see Section 14, "Monitoring incoming mail" for
4385 When in the index menu and being idle (also see $timeout), Mutt
4386 periodically checks for new mail in all folders which have been configured
4387 via the mailboxes command. The interval depends on the folder type: for
4388 local/IMAP folders it consults $mail_check and $pop_checkinterval for POP
4391 Outside the index menu the directory browser supports checking for new
4392 mail using the <check-new> function which is unbound by default. Pressing
4393 TAB will bring up a menu showing the files specified by the mailboxes
4394 command, and indicate which contain new messages. Mutt will automatically
4395 enter this mode when invoked from the command line with the -y option.
4397 For the pager, index and directory browser menus, Mutt contains the
4398 <buffy-list> function (bound to "." by default) which will print a list of
4399 folders with new mail in the command line at the bottom of the screen.
4401 For the index, by default Mutt displays the number of mailboxes with new
4402 mail in the status bar, please refer to the $index_format variable for
4405 When changing folders, Mutt fills the prompt with the first folder from
4406 the mailboxes list containing new mail (if any), pressing space will cycle
4407 through folders with new mail.
4411 Mutt has the ability to dynamically restructure threads that are broken
4412 either by misconfigured software or bad behavior from some correspondents.
4413 This allows to clean your mailboxes formats) from these annoyances which
4414 make it hard to follow a discussion.
4416 10.1. Linking threads
4418 Some mailers tend to "forget" to correctly set the "In-Reply-To:" and
4419 "References:" headers when replying to a message. This results in broken
4420 discussions because Mutt has not enough information to guess the correct
4421 threading. You can fix this by tagging the reply, then moving to the
4422 parent message and using the <link-threads> function (bound to & by
4423 default). The reply will then be connected to this "parent" message.
4425 You can also connect multiple children at once, tagging them and using the
4426 tag-prefix command (';') or the auto_tag option.
4428 10.2. Breaking threads
4430 On mailing lists, some people are in the bad habit of starting a new
4431 discussion by hitting "reply" to any message from the list and changing
4432 the subject to a totally unrelated one. You can fix such threads by using
4433 the <break-thread> function (bound by default to #), which will turn the
4434 subthread starting from the current message into a whole different thread.
4436 11. Delivery Status Notification (DSN) Support
4438 RFC1894 defines a set of MIME content types for relaying information about
4439 the status of electronic mail messages. These can be thought of as "return
4442 To support DSN, there are two variables. $dsn_notify is used to request
4443 receipts for different results (such as failed message, message delivered,
4444 etc.). $dsn_return requests how much of your message should be returned
4445 with the receipt (headers or full message).
4447 When using $sendmail for mail delivery, you need to use either Berkeley
4448 sendmail 8.8.x (or greater) a MTA supporting DSN command line options
4449 compatible to Sendmail: The -N and -R options can be used by the mail
4450 client to make requests as to what type of status messages should be
4451 returned. Please consider your MTA documentation whether DSN is supported.
4453 For SMTP delivery using $smtp_url, it depends on the capabilities
4454 announced by the server whether mutt will attempt to request DSN or not.
4456 12. Start a WWW Browser on URLs
4458 If a message contains URLs, it is efficient to get a menu with all the
4459 URLs and start a WWW browser on one of them. This functionality is
4460 provided by the external urlview program which can be retrieved at
4461 ftp://ftp.mutt.org/mutt/contrib/ and the configuration commands:
4463 macro index \cb |urlview\n
4464 macro pager \cb |urlview\n
4466 1. Compressed folders Support (OPTIONAL)
4468 If Mutt was compiled with compressed folders support (by running the
4469 configure script with the --enable-compressed flag), Mutt can open folders
4470 stored in an arbitrary format, provided that the user has a script to
4471 convert from/to this format to one of the accepted. The most common use is
4472 to open compressed archived folders e.g. with gzip. In addition, the user
4473 can provide a script that gets a folder in an accepted format and appends
4474 its context to the folder in the user-defined format, which may be faster
4475 than converting the entire folder to the accepted format, appending to it
4476 and converting back to the user-defined format. There are three hooks
4477 defined (open-hook, close-hook and append-hook) which define commands to
4478 uncompress and compress a folder and to append messages to an existing
4479 compressed folder respectively. For example:
4481 open-hook \\.gz$ "gzip -cd %f > %t"
4482 close-hook \\.gz$ "gzip -c %t > %f"
4483 append-hook \\.gz$ "gzip -c %t >> %f"
4485 You do not have to specify all of the commands. If you omit append-hook,
4486 the folder will be open and closed again each time you will add to it. If
4487 you omit close-hook (or give empty command) , the folder will be open in
4488 the mode. If you specify append-hook though you'll be able to append to
4489 the folder. Note that Mutt will only try to use hooks if the file is not
4490 in one of the accepted formats. In particular, if the file is empty, mutt
4491 supposes it is not compressed. This is important because it allows the use
4492 of programs that do not have well defined extensions. Just use "." as a
4493 regexp. But this may be surprising if your compressing script produces
4494 empty files. In this situation, unset $save_empty, so that the compressed
4495 file will be removed if you delete all of the messages.
4497 1.1. Open a compressed mailbox for reading
4499 Usage: open-hook regexp "command" The command is the command that can be
4500 used for opening the folders whose names match regexp. The command string
4501 is the printf-like format string, and it should accept two parameters: %f,
4502 which is replaced with the (compressed) folder name, and %t which is
4503 replaced with the name of the temporary folder to which to write. %f and
4504 %t can be repeated any number of times in the command string, and all of
4505 the entries are replaced with the appropriate folder name. In addition, %%
4506 is replaced by %, as in printf, and any other %anything is left as is. The
4507 command should not remove the original compressed file. The command should
4508 return non-zero exit status if it fails, so mutt knows something's wrong.
4511 open-hook \\.gz$ "gzip -cd %f > %t"
4513 If the command is empty, this operation is disabled for this file type.
4515 1.2. Write a compressed mailbox
4517 Usage: close-hook regexp "command" This is used to close the folder that
4518 was open with the open-hook command after some changes were made to it.
4519 The command string is the command that can be used for closing the folders
4520 whose names match regexp. It has the same format as in the open-hook
4521 command. Temporary folder in this case is the folder previously produced
4522 by the open-hook command. The command should not remove the decompressed
4523 file. The command should return non-zero exit status if it fails, so mutt
4524 knows something's wrong. Example:
4526 close-hook \\.gz$ "gzip -c %t > %f"
4528 If the command is empty, this operation is disabled for this file type,
4529 and the file can only be open in the read-only mode. close-hook is not
4530 called when you exit from the folder if the folder was not changed.
4532 1.3. Append a message to a compressed mailbox
4534 Usage: append-hook regexp "command" This command is used for saving to an
4535 existing compressed folder. The command is the command that can be used
4536 for appending to the folders whose names match regexp. It has the same
4537 format as in the open-hook command. The temporary folder in this case
4538 contains the messages that are being appended. The command should not
4539 remove the decompressed file. The command should return non-zero exit
4540 status if it fails, so mutt knows something's wrong. Example:
4542 append-hook \\.gz$ "gzip -c %t >> %f"
4544 When append-hook is used, the folder is not opened, which saves time, but
4545 this means that we can not find out what the folder type is. Thus the
4546 default ($mbox_type) type is always supposed (i.e. this is the format used
4547 for the temporary folder). If the file does not exist when you save to it,
4548 close-hook is called, and not append-hook. append-hook is only for
4549 appending to existing folders. If the command is empty, this operation is
4550 disabled for this file type. In this case, the folder will be open and
4551 closed again (using open-hook and close-hookrespectively) each time you
4554 1.4. Encrypted folders
4556 The compressed folders support can also be used to handle encrypted
4557 folders. If you want to encrypt a folder with PGP, you may want to use the
4560 open-hook \\.pgp$ "pgp -f < %f > %t"
4561 close-hook \\.pgp$ "pgp -fe YourPgpUserIdOrKeyId < %t > %f"
4563 Please note, that PGP does not support appending to an encrypted folder,
4564 so there is no append-hook defined. If you are using GnuPG instead of PGP,
4565 you may use the following hooks instead:
4567 open-hook \\.gpg$ "gpg --decrypt < %f > %t"
4568 close-hook \\.gpg$ "gpg --encrypt --recipient YourGpgUserIdOrKeyId < %t > %f"
4570 Note: the folder is temporary stored decrypted in the /tmp directory,
4571 where it can be read by your system administrator. So think about the
4572 security aspects of this.
4574 Chapter 5. Mutt's MIME Support
4578 1. Using MIME in Mutt
4580 1.1. Viewing MIME messages in the pager
4582 1.2. The Attachment Menu
4584 1.3. The Compose Menu
4586 2. MIME Type configuration with mime.types
4588 3. MIME Viewer configuration with mailcap
4590 3.1. The Basics of the mailcap file
4592 3.2. Secure use of mailcap
4594 3.3. Advanced mailcap Usage
4596 3.4. Example mailcap files
4600 5. MIME Multipart/Alternative
4602 6. Attachment Searching and Counting
4606 Quite a bit of effort has been made to make Mutt the premier text-mode
4607 MIME MUA. Every effort has been made to provide the functionality that the
4608 discerning MIME user requires, and the conformance to the standards
4609 wherever possible. When configuring Mutt for MIME, there are two extra
4610 types of configuration files which Mutt uses. One is the mime.types file,
4611 which contains the mapping of file extensions to IANA MIME types. The
4612 other is the mailcap file, which specifies the external commands to use
4613 for handling specific MIME types.
4615 1. Using MIME in Mutt
4617 There are three areas/menus in Mutt which deal with MIME, they are the
4618 pager (while viewing a message), the attachment menu and the compose menu.
4620 1.1. Viewing MIME messages in the pager
4622 When you select a message from the index and view it in the pager, Mutt
4623 decodes the message to a text representation. Mutt internally supports a
4624 number of MIME types, including text/plain, text/enriched, message/rfc822,
4625 and message/news. In addition, the export controlled version of Mutt
4626 recognizes a variety of PGP MIME types, including PGP/MIME and
4629 Mutt will denote attachments with a couple lines describing them. These
4630 lines are of the form:
4632 [-- Attachment #1: Description --]
4633 [-- Type: text/plain, Encoding: 7bit, Size: 10000 --]
4635 Where the Description is the description or filename given for the
4636 attachment, and the Encoding is one of
4637 7bit/8bit/quoted-printable/base64/binary.
4639 If Mutt cannot deal with a MIME type, it will display a message like:
4641 [-- image/gif is unsupported (use 'v' to view this part) --]
4643 1.2. The Attachment Menu
4645 The default binding for view-attachments is `v', which displays the
4646 attachment menu for a message. The attachment menu displays a list of the
4647 attachments in a message. From the attachment menu, you can save, print,
4648 pipe, delete, and view attachments. You can apply these operations to a
4649 group of attachments at once, by tagging the attachments and by using the
4650 "tag-prefix" operator. You can also reply to the current message from this
4651 menu, and only the current attachment (or the attachments tagged) will be
4652 quoted in your reply. You can view attachments as text, or view them using
4653 the mailcap viewer definition.
4655 Finally, you can apply the usual message-related functions (like
4656 <resend-message>, and the <reply> and <forward> functions) to attachments
4657 of type message/rfc822.
4659 See the help on the attachment menu for more information.
4661 1.3. The Compose Menu
4663 The compose menu is the menu you see before you send a message. It allows
4664 you to edit the recipient list, the subject, and other aspects of your
4665 message. It also contains a list of the attachments of your message,
4666 including the main body. From this menu, you can print, copy, filter,
4667 pipe, edit, compose, review, and rename an attachment or a list of tagged
4668 attachments. You can also modifying the attachment information, notably
4669 the type, encoding and description.
4671 Attachments appear as follows:
4673 - 1 [text/plain, 7bit, 1K] /tmp/mutt-euler-8082-0 <no description>
4674 2 [applica/x-gunzip, base64, 422K] ~/src/mutt-0.85.tar.gz <no description>
4676 The '-' denotes that Mutt will delete the file after sending (or
4677 postponing, or canceling) the message. It can be toggled with the
4678 toggle-unlink command (default: u). The next field is the MIME
4679 content-type, and can be changed with the edit-type command (default: ^T).
4680 The next field is the encoding for the attachment, which allows a binary
4681 message to be encoded for transmission on 7bit links. It can be changed
4682 with the edit-encoding command (default: ^E). The next field is the size
4683 of the attachment, rounded to kilobytes or megabytes. The next field is
4684 the filename, which can be changed with the rename-file command (default:
4685 R). The final field is the description of the attachment, and can be
4686 changed with the edit-description command (default: d).
4688 2. MIME Type configuration with mime.types
4690 When you add an attachment to your mail message, Mutt searches your
4691 personal mime.types file at ${HOME}/.mime.types, and then the system
4692 mime.types file at /usr/local/share/mutt/mime.types or /etc/mime.types
4694 The mime.types file consist of lines containing a MIME type and a space
4695 separated list of extensions. For example:
4697 application/postscript ps eps
4699 audio/x-aiff aif aifc aiff
4701 A sample mime.types file comes with the Mutt distribution, and should
4702 contain most of the MIME types you are likely to use.
4704 If Mutt can not determine the mime type by the extension of the file you
4705 attach, it will look at the file. If the file is free of binary
4706 information, Mutt will assume that the file is plain text, and mark it as
4707 text/plain. If the file contains binary information, then Mutt will mark
4708 it as application/octet-stream. You can change the MIME type that Mutt
4709 assigns to an attachment by using the edit-type command from the compose
4710 menu (default: ^T). The MIME type is actually a major mime type followed
4711 by the sub-type, separated by a '/'. 6 major types: application, text,
4712 image, video, audio, and model have been approved after various internet
4713 discussions. Mutt recognizes all of these if the appropriate entry is
4714 found in the mime.types file. It also recognizes other major mime types,
4715 such as the chemical type that is widely used in the molecular modeling
4716 community to pass molecular data in various forms to various molecular
4717 viewers. Non-recognized mime types should only be used if the recipient of
4718 the message is likely to be expecting such attachments.
4720 3. MIME Viewer configuration with mailcap
4722 Mutt supports RFC 1524 MIME Configuration, in particular the Unix specific
4723 format specified in Appendix A of RFC 1524. This file format is commonly
4724 referred to as the mailcap format. Many MIME compliant programs utilize
4725 the mailcap format, allowing you to specify handling for all MIME types in
4726 one place for all programs. Programs known to use this format include
4727 Netscape, XMosaic, lynx and metamail.
4729 In order to handle various MIME types that Mutt can not handle internally,
4730 Mutt parses a series of external configuration files to find an external
4731 handler. The default search string for these files is a colon delimited
4732 list containing the following files:
4736 2. $PKGDATADIR/mailcap
4738 3. $SYSCONFDIR/mailcap
4744 6. /usr/local/etc/mailcap
4746 where $HOME is your home directory. The $PKGDATADIR and the $SYSCONFDIR
4747 directories depend on where mutt is installed: the former is the default
4748 for shared data, the latter for system configuration files.
4750 The default search path can be obtained by running the following command:
4752 mutt -nF /dev/null -Q mailcap_path
4754 In particular, the metamail distribution will install a mailcap file,
4755 usually as /usr/local/etc/mailcap, which contains some baseline entries.
4757 3.1. The Basics of the mailcap file
4759 A mailcap file consists of a series of lines which are comments, blank, or
4762 A comment line consists of a # character followed by anything you want.
4764 A blank line is blank.
4766 A definition line consists of a content type, a view command, and any
4767 number of optional fields. Each field of a definition line is divided by a
4768 semicolon ';' character.
4770 The content type is specified in the MIME standard type/subtype method.
4771 For example, text/plain, text/html, image/gif, etc. In addition, the
4772 mailcap format includes two formats for wildcards, one using the special
4773 '*' subtype, the other is the implicit wild, where you only include the
4774 major type. For example, image/*, or video, will match all image types and
4775 video types, respectively.
4777 The view command is a Unix command for viewing the type specified. There
4778 are two different types of commands supported. The default is to send the
4779 body of the MIME message to the command on stdin. You can change this
4780 behavior by using %s as a parameter to your view command. This will cause
4781 Mutt to save the body of the MIME message to a temporary file, and then
4782 call the view command with the %s replaced by the name of the temporary
4783 file. In both cases, Mutt will turn over the terminal to the view program
4784 until the program quits, at which time Mutt will remove the temporary file
4787 So, in the simplest form, you can send a text/plain message to the
4788 external pager more on stdin:
4792 Or, you could send the message as a file:
4796 Perhaps you would like to use lynx to interactively view a text/html
4801 In this case, lynx does not support viewing a file from stdin, so you must
4806 Some older versions of lynx contain a bug where they will check the
4807 mailcap file for a viewer for text/html. They will find the line which
4808 calls lynx, and run it. This causes lynx to continuously spawn itself to
4811 On the other hand, maybe you don't want to use lynx interactively, you
4812 just want to have it convert the text/html to text/plain, then you can
4815 text/html; lynx -dump %s | more
4817 Perhaps you wish to use lynx to view text/html files, and a pager on all
4818 other text formats, then you would use the following:
4823 This is the simplest form of a mailcap file.
4825 3.2. Secure use of mailcap
4827 The interpretation of shell meta-characters embedded in MIME parameters
4828 can lead to security problems in general. Mutt tries to quote parameters
4829 in expansion of %s syntaxes properly, and avoids risky characters by
4830 substituting them, see the $mailcap_sanitize variable.
4832 Although mutt's procedures to invoke programs with mailcap seem to be
4833 safe, there are other applications parsing mailcap, maybe taking less care
4834 of it. Therefore you should pay attention to the following rules:
4836 Keep the %-expandos away from shell quoting. Don't quote them with single
4837 or double quotes. Mutt does this for you, the right way, as should any
4838 other program which interprets mailcap. Don't put them into backtick
4839 expansions. Be highly careful with eval statements, and avoid them if
4840 possible at all. Trying to fix broken behavior with quotes introduces new
4841 leaks - there is no alternative to correct quoting in the first place.
4843 If you have to use the %-expandos' values in context where you need
4844 quoting or backtick expansions, put that value into a shell variable and
4845 reference the shell variable where necessary, as in the following example
4846 (using $charset inside the backtick expansion is safe, since it is not
4847 itself subject to any further expansion):
4849 text/test-mailcap-bug; cat %s; copiousoutput; test=charset=%{charset} \
4850 && test "`echo $charset | tr '[A-Z]' '[a-z]'`" != iso-8859-1
4852 3.3. Advanced mailcap Usage
4854 3.3.1. Optional Fields
4856 In addition to the required content-type and view command fields, you can
4857 add semi-colon ';' separated fields to set flags and other options. Mutt
4858 recognizes the following optional fields:
4862 This flag tells Mutt that the command passes possibly large
4863 amounts of text on stdout. This causes Mutt to invoke a pager
4864 (either the internal pager or the external pager defined by the
4865 pager variable) on the output of the view command. Without this
4866 flag, Mutt assumes that the command is interactive. One could use
4867 this to replace the pipe to more in the lynx -dump example in the
4870 text/html; lynx -dump %s ; copiousoutput
4872 This will cause lynx to format the text/html output as text/plain
4873 and Mutt will use your standard pager to display the results.
4877 Mutt uses this flag when viewing attachments with auto_view, in
4878 order to decide whether it should honor the setting of the
4879 $wait_key variable or not. When an attachment is viewed using an
4880 interactive program, and the corresponding mailcap entry has a
4881 needsterminal flag, Mutt will use $wait_key and the exit status of
4882 the program to decide if it will ask you to press a key after the
4883 external program has exited. In all other situations it will not
4884 prompt you for a key.
4888 This flag specifies the command to use to create a new attachment
4889 of a specific MIME type. Mutt supports this from the compose menu.
4891 composetyped=<command>
4893 This flag specifies the command to use to create a new attachment
4894 of a specific MIME type. This command differs from the compose
4895 command in that mutt will expect standard MIME headers on the
4896 data. This can be used to specify parameters, filename,
4897 description, etc. for a new attachment. Mutt supports this from
4902 This flag specifies the command to use to print a specific MIME
4903 type. Mutt supports this from the attachment and compose menus.
4907 This flag specifies the command to use to edit a specific MIME
4908 type. Mutt supports this from the compose menu, and also uses it
4909 to compose new attachments. Mutt will default to the defined
4910 editor for text attachments.
4912 nametemplate=<template>
4914 This field specifies the format for the file denoted by %s in the
4915 command fields. Certain programs will require a certain file
4916 extension, for instance, to correctly view a file. For instance,
4917 lynx will only interpret a file as text/html if the file ends in
4918 .html. So, you would specify lynx as a text/html viewer with a
4919 line in the mailcap file like:
4921 text/html; lynx %s; nametemplate=%s.html
4925 This field specifies a command to run to test whether this mailcap
4926 entry should be used. The command is defined with the command
4927 expansion rules defined in the next section. If the command
4928 returns 0, then the test passed, and Mutt uses this entry. If the
4929 command returns non-zero, then the test failed, and Mutt continues
4930 searching for the right entry. Note that the content-type must
4931 match before Mutt performs the test. For example:
4933 text/html; netscape -remote 'openURL(%s)' ; test=RunningX
4936 In this example, Mutt will run the program RunningX which will
4937 return 0 if the X Window manager is running, and non-zero if it
4938 isn't. If RunningX returns 0, then Mutt will call netscape to
4939 display the text/html object. If RunningX doesn't return 0, then
4940 Mutt will go on to the next entry and use lynx to display the
4945 When searching for an entry in the mailcap file, Mutt will search for the
4946 most useful entry for its purpose. For instance, if you are attempting to
4947 print an image/gif, and you have the following entries in your mailcap
4948 file, Mutt will search for an entry with the print command:
4951 image/gif; ; print= anytopnm %s | pnmtops | lpr; \
4954 Mutt will skip the image/* entry and use the image/gif entry with the
4957 In addition, you can use this with auto_view to denote two commands for
4958 viewing an attachment, one to be viewed automatically, the other to be
4959 viewed interactively from the attachment menu. In addition, you can then
4960 use the test feature to determine which viewer to use interactively
4961 depending on your environment.
4963 text/html; netscape -remote 'openURL(%s)' ; test=RunningX
4964 text/html; lynx %s; nametemplate=%s.html
4965 text/html; lynx -dump %s; nametemplate=%s.html; copiousoutput
4967 For auto_view, Mutt will choose the third entry because of the
4968 copiousoutput tag. For interactive viewing, Mutt will run the program
4969 RunningX to determine if it should use the first entry. If the program
4970 returns non-zero, Mutt will use the second entry for interactive viewing.
4972 3.3.3. Command Expansion
4974 The various commands defined in the mailcap files are passed to the
4975 /bin/sh shell using the system() function. Before the command is passed to
4976 /bin/sh -c, it is parsed to expand various special parameters with
4977 information from Mutt. The keywords Mutt expands are:
4981 As seen in the basic mailcap section, this variable is expanded to
4982 a filename specified by the calling program. This file contains
4983 the body of the message to view/print/edit or where the composing
4984 program should place the results of composition. In addition, the
4985 use of this keyword causes Mutt to not pass the body of the
4986 message to the view/print/edit program on stdin.
4990 Mutt will expand %t to the text representation of the content type
4991 of the message in the same form as the first parameter of the
4992 mailcap definition line, ie text/html or image/gif.
4996 Mutt will expand this to the value of the specified parameter from
4997 the Content-Type: line of the mail message. For instance, if Your
4998 mail message contains:
5000 Content-Type: text/plain; charset=iso-8859-1
5002 then Mutt will expand %{charset} to iso-8859-1. The default
5003 metamail mailcap file uses this feature to test the charset to
5004 spawn an xterm using the right charset to view the message.
5008 This will be replaced by a %
5010 Mutt does not currently support the %F and %n keywords specified in RFC
5011 1524. The main purpose of these parameters is for multipart messages,
5012 which is handled internally by Mutt.
5014 3.4. Example mailcap files
5016 This mailcap file is fairly simple and standard:
5018 # I'm always running X :)
5019 video/*; xanim %s > /dev/null
5020 image/*; xv %s > /dev/null
5022 # I'm always running netscape (if my computer had more memory, maybe)
5023 text/html; netscape -remote 'openURL(%s)'
5025 This mailcap file shows quite a number of examples:
5027 # Use xanim to view all videos Xanim produces a header on startup,
5028 # send that to /dev/null so I don't see it
5029 video/*; xanim %s > /dev/null
5031 # Send html to a running netscape by remote
5032 text/html; netscape -remote 'openURL(%s)'; test=RunningNetscape
5034 # If I'm not running netscape but I am running X, start netscape on the
5036 text/html; netscape %s; test=RunningX
5038 # Else use lynx to view it as text
5041 # This version would convert the text/html to text/plain
5042 text/html; lynx -dump %s; copiousoutput
5044 # I use enscript to print text in two columns to a page
5045 text/*; more %s; print=enscript -2Gr %s
5047 # Netscape adds a flag to tell itself to view jpegs internally
5048 image/jpeg;xv %s; x-mozilla-flags=internal
5050 # Use xv to view images if I'm running X
5051 # In addition, this uses the \ to extend the line and set my editor
5053 image/*;xv %s; test=RunningX; \
5056 # Convert images to text using the netpbm tools
5057 image/*; (anytopnm %s | pnmscale -xysize 80 46 | ppmtopgm | pgmtopbm |
5058 pbmtoascii -1x2 ) 2>&1 ; copiousoutput
5060 # Send excel spreadsheets to my NT box
5061 application/ms-excel; open.pl %s
5065 In addition to explicitly telling Mutt to view an attachment with the MIME
5066 viewer defined in the mailcap file, Mutt has support for automatically
5067 viewing MIME attachments while in the pager.
5069 To work, you must define a viewer in the mailcap file which uses the
5070 copiousoutput option to denote that it is non-interactive. Usually, you
5071 also use the entry to convert the attachment to a text representation
5072 which you can view in the pager.
5074 You then use the auto_view muttrc command to list the content-types that
5075 you wish to view automatically.
5077 For instance, if you set auto_view to:
5079 auto_view text/html application/x-gunzip \
5080 application/postscript image/gif application/x-tar-gz
5082 Mutt could use the following mailcap entries to automatically view
5083 attachments of these types.
5085 text/html; lynx -dump %s; copiousoutput; nametemplate=%s.html
5086 image/*; anytopnm %s | pnmscale -xsize 80 -ysize 50 | ppmtopgm | \
5087 pgmtopbm | pbmtoascii ; copiousoutput
5088 application/x-gunzip; gzcat; copiousoutput
5089 application/x-tar-gz; gunzip -c %s | tar -tf - ; copiousoutput
5090 application/postscript; ps2ascii %s; copiousoutput
5092 "unauto_view" can be used to remove previous entries from the autoview
5093 list. This can be used with message-hook to autoview messages based on
5094 size, etc. "unauto_view *" will remove all previous entries.
5096 5. MIME Multipart/Alternative
5098 Mutt has some heuristics for determining which attachment of a
5099 multipart/alternative type to display. First, mutt will check the
5100 alternative_order list to determine if one of the available types is
5101 preferred. The alternative_order list consists of a number of mimetypes in
5102 order, including support for implicit and explicit wildcards, for example:
5104 alternative_order text/enriched text/plain text application/postscript image/*
5106 Next, mutt will check if any of the types have a defined auto_view, and
5107 use that. Failing that, Mutt will look for any text type. As a last
5108 attempt, mutt will look for any type it knows how to handle.
5110 To remove a MIME type from the alternative_order list, use the
5111 unalternative_order command.
5113 6. Attachment Searching and Counting
5115 If you ever lose track of attachments in your mailboxes, Mutt's
5116 attachment-counting and -searching support might be for you. You can make
5117 your message index display the number of qualifying attachments in each
5118 message, or search for messages by attachment count. You also can
5119 configure what kinds of attachments qualify for this feature with the
5120 attachments and unattachments commands.
5122 In order to provide this information, mutt needs to fully MIME-parse all
5123 messages affected first. This can slow down operation especially for
5124 remote mail folders such as IMAP because all messages have to be
5125 downloaded first regardless whether the user really wants to view them or
5130 attachments {+|-}disposition mime-type
5131 unattachments {+|-}disposition mime-type
5134 Disposition is the attachment's Content-disposition type -- either inline
5135 or attachment. You can abbreviate this to I or A.
5137 Disposition is prefixed by either a + symbol or a - symbol. If it's a +,
5138 you're saying that you want to allow this disposition and MIME type to
5139 qualify. If it's a -, you're saying that this disposition and MIME type is
5140 an exception to previous + rules. There are examples below of how this is
5143 Mime-type is, unsurprisingly, the MIME type of the attachment you want to
5144 affect. A MIME type is always of the format major/minor, where major
5145 describes the broad category of document you're looking at, and minor
5146 describes the specific type within that category. The major part of
5147 mime-type must be literal text (or the special token "*"), but the minor
5148 part may be a regular expression. (Therefore, "*/.*" matches any MIME
5151 The MIME types you give to the attachments directive are a kind of
5152 pattern. When you use the attachments directive, the patterns you specify
5153 are added to a list. When you use unattachments, the pattern is removed
5154 from the list. The patterns are not expanded and matched to specific MIME
5155 types at this time -- they're just text in a list. They're only matched
5156 when actually evaluating a message.
5158 Some examples might help to illustrate. The examples that are not
5159 commented out define the default configuration of the lists.
5161 Example 5.1. Attachment counting
5163 ## Removing a pattern from a list removes that pattern literally. It
5164 ## does not remove any type matching the pattern.
5166 ## attachments +A */.*
5167 ## attachments +A image/jpeg
5168 ## unattachments +A */.*
5170 ## This leaves "attached" image/jpeg files on the allowed attachments
5171 ## list. It does not remove all items, as you might expect, because the
5172 ## second */.* is not a matching expression at this time.
5174 ## Remember: "unattachments" only undoes what "attachments" has done!
5175 ## It does not trigger any matching on actual messages.
5178 ## Qualify any MIME part with an "attachment" disposition, EXCEPT for
5179 ## text/x-vcard and application/pgp parts. (PGP parts are already known
5180 ## to mutt, and can be searched for with ~g, ~G, and ~k.)
5182 ## I've added x-pkcs7 to this, since it functions (for S/MIME)
5183 ## analogously to PGP signature attachments. S/MIME isn't supported
5184 ## in a stock mutt build, but we can still treat it specially here.
5187 attachments -A text/x-vcard application/pgp.*
5188 attachments -A application/x-pkcs7-.*
5190 ## Discount all MIME parts with an "inline" disposition, unless they're
5191 ## text/plain. (Why inline a text/plain part unless it's external to the
5194 attachments +I text/plain
5196 ## These two lines make Mutt qualify MIME containers. (So, for example,
5197 ## a message/rfc822 forward will count as an attachment.) The first
5198 ## line is unnecessary if you already have "attach-allow */.*", of
5199 ## course. These are off by default! The MIME elements contained
5200 ## within a message/* or multipart/* are still examined, even if the
5201 ## containers themseves don't qualify.
5203 #attachments +A message/.* multipart/.*
5204 #attachments +I message/.* multipart/.*
5206 ## You probably don't really care to know about deleted attachments.
5207 attachments -A message/external-body
5208 attachments -I message/external-body
5210 Entering the command "attachments ?" as a command will list your current
5211 settings in Muttrc format, so that it can be pasted elsewhere.
5215 Mutt's mime_lookup list specifies a list of mime-types that should not be
5216 treated according to their mailcap entry. This option is designed to deal
5217 with binary types such as application/octet-stream. When an attachment's
5218 mime-type is listed in mime_lookup, then the extension of the filename
5219 will be compared to the list of extensions in the mime.types file. The
5220 mime-type associated with this extension will then be used to process the
5221 attachment according to the rules in the mailcap file and according to any
5222 other configuration options (such as auto_view) specified. Common usage
5225 mime_lookup application/octet-stream application/X-Lotus-Manuscript
5227 In addition, the unmime_lookup command may be used to disable this feature
5228 for any particular mime-type if it had been set, for example, in a global
5231 Chapter 6. Optional features
5237 1.1. Enabling/disabling features
5247 4.1. The Folder Browser
5253 6. Managing multiple accounts
5263 8. Exact address generation
5267 1.1. Enabling/disabling features
5269 Mutt supports several of optional features which can be enabled or
5270 disabled at compile-time by giving the configure script certain arguments.
5271 These are listed in the "Optional features" section of the configure
5274 Which features are enabled or disabled can later be determined from the
5275 output of mutt -v. If a compile option starts with "+" it is enabled and
5276 disabled if prefixed with "-". For example, if mutt was compiled using
5277 GnuTLS for encrypted communication instead of OpenSSL, mutt -v would
5280 -USE_SSL_OPENSSL +USE_SSL_GNUTLS
5284 Mutt optionally supports the IMAP, POP3 and SMTP protocols which require
5285 to access servers using URLs. The canonical syntax for specifying URLs in
5286 mutt is (an item enclosed in [] means it is optional and may be omitted):
5288 proto[s]://[username[:password]@]server[:port]/[path]
5290 proto is the communication protocol: imap for IMAP, pop for POP3 and smtp
5291 for SMTP. If "s" for "secure communication" is appended, mutt will attempt
5292 to establish an encrypted communication using SSL or TLS. If no explicit
5293 port is given, mutt will use the system's default for the given protocol.
5295 Since all protocols by mutt support authentication, the username may be
5296 given directly in the URL instead of using the pop_user or imap_user
5297 variables. It may contain the "@" symbol being used by many mail systems
5298 as part of the login name. A password can be given, too but is not
5299 recommended if the URL is specified in a configuration file on disk.
5301 The optional path is only relevant for IMAP.
5303 For IMAP for example, you can select an alternative port by specifying it
5304 with the server: imap://imapserver:port/INBOX. You can also specify
5305 different username for each folder:
5306 imap://username@imapserver[:port]/INBOX or
5307 imap://username2@imapserver[:port]/path/to/folder. Replacing imap:// by
5308 imaps:// would make mutt attempt to connect using SSL or TLS on a
5309 different port to encrypt the communication.
5313 If mutt is compiled with IMAP, POP3 and/or SMTP support, it can also be
5314 compiled with support for SSL or TLS using either OpenSSL or GnuTLS ( by
5315 running the configure script with the --enable-ssl=... option for OpenSSL
5316 or --enable-gnutls=... for GnuTLS). Mutt can then attempt to encrypt
5317 communication with remote servers if these protocols are suffixed with "s"
5318 for "secure communication".
5322 If Mutt was compiled with POP3 support (by running the configure script
5323 with the --enable-pop flag), it has the ability to work with mailboxes
5324 located on a remote POP3 server and fetch mail for local browsing.
5326 Remote POP3 servers can be accessed using URLs with the pop protocol for
5327 unencrypted and pops for encrypted communication, see Section 1.2, "URL
5328 syntax" for details.
5330 Polling for new mail is more expensive over POP3 than locally. For this
5331 reason the frequency at which Mutt will check for mail remotely can be
5332 controlled by the $pop_checkinterval variable, which defaults to every 60
5335 Another way to access your POP3 mail is the <fetch-mail$ function
5336 (default: G). It allows to connect to $pop_host, fetch all your new mail
5337 and place it in the local $spoolfile. After this point, Mutt runs exactly
5338 as if the mail had always been local.
5342 If you only need to fetch all messages to a local mailbox you should
5343 consider using a specialized program, such as fetchmail, getmail or
5348 If Mutt was compiled with IMAP support (by running the configure script
5349 with the --enable-imap flag), it has the ability to work with folders
5350 located on a remote IMAP server.
5352 You can access the remote inbox by selecting the folder by its URL (see
5353 Section 1.2, "URL syntax" for details) using the imap or imaps protocol.
5354 Alternatively, a pine-compatible notation is also supported, ie
5355 {[username@]imapserver[:port][/ssl]}path/to/folder
5357 Note that not all servers use "/" as the hierarchy separator. Mutt should
5358 correctly notice which separator is being used by the server and convert
5361 When browsing folders on an IMAP server, you can toggle whether to look at
5362 only the folders you are subscribed to, or all folders with the
5363 toggle-subscribed command. See also the $imap_list_subscribed variable.
5365 Polling for new mail on an IMAP server can cause noticeable delays. So,
5366 you'll want to carefully tune the $mail_check and $timeout variables.
5372 with relatively good results over my slow modem line.
5376 Note that if you are using mbox as the mail store on UW servers prior to
5377 v12.250, the server has been reported to disconnect a client if another
5378 client selects the same folder.
5380 4.1. The Folder Browser
5382 As of version 1.2, mutt supports browsing mailboxes on an IMAP server.
5383 This is mostly the same as the local file browser, with the following
5386 o In lieu of file permissions, mutt displays the string "IMAP", possibly
5387 followed by the symbol "+", indicating that the entry contains both
5388 messages and subfolders. On Cyrus-like servers folders will often
5389 contain both messages and subfolders.
5391 o For the case where an entry can contain both messages and subfolders,
5392 the selection key (bound to enter by default) will choose to descend
5393 into the subfolder view. If you wish to view the messages in that
5394 folder, you must use view-file instead (bound to space by default).
5396 o You can create, delete and rename mailboxes with the create-mailbox,
5397 delete-mailbox, and rename-mailbox commands (default bindings: C, d
5398 and r, respectively). You may also subscribe and unsubscribe to
5399 mailboxes (normally these are bound to s and u, respectively).
5403 Mutt supports four authentication methods with IMAP servers: SASL, GSSAPI,
5404 CRAM-MD5, and LOGIN (there is a patch by Grant Edwards to add NTLM
5405 authentication for you poor exchange users out there, but it has yet to be
5406 integrated into the main tree). There is also support for the
5407 pseudo-protocol ANONYMOUS, which allows you to log in to a public IMAP
5408 server without having an account. To use ANONYMOUS, simply make your
5409 username blank or "anonymous".
5411 SASL is a special super-authenticator, which selects among several
5412 protocols (including GSSAPI, CRAM-MD5, ANONYMOUS, and DIGEST-MD5) the most
5413 secure method available on your host and the server. Using some of these
5414 methods (including DIGEST-MD5 and possibly GSSAPI), your entire session
5415 will be encrypted and invisible to those teeming network snoops. It is the
5416 best option if you have it. To use it, you must have the Cyrus SASL
5417 library installed on your system and compile mutt with the --with-sasl
5420 Mutt will try whichever methods are compiled in and available on the
5421 server, in the following order: SASL, ANONYMOUS, GSSAPI, CRAM-MD5, LOGIN.
5423 There are a few variables which control authentication:
5425 o $imap_user - controls the username under which you request
5426 authentication on the IMAP server, for all authenticators. This is
5427 overridden by an explicit username in the mailbox path (ie by using a
5428 mailbox name of the form {user@host}).
5430 o $imap_pass - a password which you may preset, used by all
5431 authentication methods where a password is needed.
5433 o $imap_authenticators - a colon-delimited list of IMAP authentication
5434 methods to try, in the order you wish to try them. If specified, this
5435 overrides mutt's default (attempt everything, in the order listed
5440 Besides supporting traditional mail delivery through a sendmail-compatible
5441 program, mutt supports delivery through SMTP if it was configured and
5442 built with --enable-smtp.
5444 If the configuration variable $smtp_url is set, mutt will contact the
5445 given SMTP server to deliver messages; if it is unset, mutt will use the
5446 program specified by $sendmail.
5448 For details on the URL syntax, please see Section 1.2, "URL syntax".
5450 The built-in SMTP support supports encryption (the smtps protocol using
5451 SSL or TLS) as well as SMTP authentication using SASL. The authentication
5452 mechanisms for SASL are specified in $smtp_authenticators defaulting to an
5453 empty list which makes mutt try all available methods from most-secure to
5456 6. Managing multiple accounts
5458 If you happen to have accounts on multiple IMAP, POP and/or SMTP servers,
5459 you may find managing all the authentication settings inconvenient and
5460 error-prone. The account-hook command may help. This hook works like
5461 folder-hook but is invoked whenever you access a remote mailbox (including
5462 inside the folder browser), not just when you open the mailbox which
5463 includes (for example) polling for new mail, storing Fcc messages and
5464 saving messages to a folder. As a consequence, account-hook should only be
5465 used to set connection-related settings such as passwords or tunnel
5466 commands but not settings such as sender address or name (because in
5467 general it should be considered unpredictable which account-hook was last
5472 account-hook . 'unset imap_user; unset imap_pass; unset tunnel'
5473 account-hook imap://host1/ 'set imap_user=me1 imap_pass=foo'
5474 account-hook imap://host2/ 'set tunnel="ssh host2 /usr/libexec/imapd"'
5475 account-hook smtp://user@host3/ 'set tunnel="ssh host3 /usr/libexec/smtpd"'
5479 Mutt contains two types of local caching: (1) the so-called "header
5480 caching" and (2) the so-called "body caching" which are both described in
5483 Header caching is optional as it depends on external libraries, body
5484 caching is always enabled if mutt is compiled with POP and/or IMAP support
5485 as these use it (body caching requires no external library).
5489 Mutt provides optional support for caching message headers for the
5490 following types of folders: IMAP, POP, Maildir and MH. Header caching
5491 greatly improves speed because for remote folders, headers usually only
5492 need to be downloaded once. For Maildir and MH, reading the headers from a
5493 single file is much faster than looking at possibly thousands of single
5494 files (since Maildir and MH use one file per message.)
5496 Header caching can be enabled via the configure script and the
5497 --enable-hcache option. It's not turned on by default because external
5498 database libraries are required: one of tokyocabinet, qdbm, gdbm or bdb
5501 If enabled, $header_cache can be used to either point to a file or a
5502 directory. If set to point to a file, one database file for all folders
5503 will be used (which may result in lower performance), but one file per
5504 folder if it points to a directory.
5506 For the one-file-per-folder case, database files for remote folders will
5507 be named according to their URL while database files for local folders
5508 will be named by the MD5 checksums of their path. These database files may
5509 be safely removed if a system is short on space. You can compute the name
5510 of the header cache file for a particular local folder through a command
5513 $ printf '%s' '/path/to/folder' | md5sum
5515 The md5sum command may also be named md5, depending on your operating
5520 Both cache methods can be combined using the same directory for storage
5521 (and for IMAP/POP even provide meaningful file names) which simplifies
5522 manual maintenance tasks.
5524 In addition to caching message headers only, mutt can also cache whole
5525 message bodies. This results in faster display of messages for POP and
5526 IMAP folders because messages usually have to be downloaded only once.
5528 For configuration, the variable $message_cachedir must point to a
5529 directory. There, mutt will create a hierarchy of subdirectories named
5530 like: proto:user@hostname where proto is either "pop" or "imap." Within
5531 there for each folder, mutt stores messages in single files (just like
5532 Maildir) so that with manual symlink creation these cache directories can
5533 be examined with mutt as read-only Maildir folders.
5535 All files can be removed as needed if the consumed disk space becomes an
5536 issue as mutt will silently fetch missing items again.
5540 Mutt does not (yet) support maintenance features for header cache database
5541 files so that files have to be removed in case they grow too big. It
5542 depends on the database library used for header caching whether disk space
5543 freed by removing messages is re-used.
5545 For body caches, mutt can keep the local cache in sync with the remote
5546 mailbox if the $message_cache_clean variable is set. Cleaning means to
5547 remove messages from the cache which are no longer present in the mailbox
5548 which only happens when other mail clients or instances of mutt using a
5549 different body cache location delete messages (Mutt itself removes deleted
5550 messages from the cache when syncing a mailbox). As cleaning can take a
5551 noticeable amount of time, it should not be set in general but only
5554 8. Exact address generation
5556 Mutt supports the "Name <user@host>" address syntax for reading and
5557 writing messages, the older "user@host (Name)" syntax is only supported
5558 when reading messages. The --enable-exact-address switch can be given to
5559 configure to build it with write-support for the latter syntax.
5560 EXACT_ADDRESS in the output of mutt -v indicates whether it's supported.
5562 Chapter 7. Performance tuning
5566 1. Reading and writing mailboxes
5568 2. Reading messages from remote folders
5570 3. Searching and limiting
5572 1. Reading and writing mailboxes
5574 Mutt's performance when reading mailboxes can be improved in two ways:
5576 1. For remote folders (IMAP and POP) as well as folders using
5577 one-file-per message storage (Maildir and MH), mutt's performance can
5578 be greatly improved using header caching. Using a single database per
5579 folder may further increase performance.
5581 2. Mutt provides the $read_inc and $write_inc variables to specify at
5582 which rate to update progress counters. If these values are too low,
5583 mutt may spend more time on updating the progress counter than it
5584 spends on actually reading/writing folders.
5586 For example, when opening a maildir folder with a few thousand
5587 messages, the default value for $read_inc may be too low. It can be
5588 tuned on on a folder-basis using folder-hooks:
5590 # use very high $read_inc to speed up reading hcache'd maildirs
5591 folder-hook . 'set read_inc=1000'
5592 # use lower value for reading slower remote IMAP folders
5593 folder-hook ^imap 'set read_inc=100'
5594 # use even lower value for reading even slower remote POP folders
5595 folder-hook ^pop 'set read_inc=1'
5597 These settings work on a per-message basis. However, as messages may
5598 greatly differ in size and certain operations are much faster than others,
5599 even per-folder settings of the increment variables may not be desirable
5600 as they produce either too few or too much progress updates. Thus, Mutt
5601 allows to limit the number of progress updates per second it'll actually
5602 send to the terminal using the $time_inc variable.
5604 2. Reading messages from remote folders
5606 Reading messages from remote folders such as IMAP an POP can be slow
5607 especially for large mailboxes since mutt only caches a very limited
5608 number of recently viewed messages (usually 10) per session (so that it
5609 will be gone for the next session.)
5611 To improve performance and permanently cache whole messages, please refer
5612 to mutt's so-called body caching for details.
5614 3. Searching and limiting
5616 When searching mailboxes either via a search or a limit action, for some
5617 patterns mutt distinguishes between regular expression and string
5618 searches. For regular expressions, patterns are prefixed with "~" and with
5619 "=" for string searches.
5621 Even though a regular expression search is fast, it's several times slower
5622 than a pure string search which is noticeable especially on large folders.
5623 As a consequence, a string search should be used instead of a regular
5624 expression search if the user already knows enough about the search
5627 For example, when limiting a large folder to all messages sent to or by an
5628 author, it's much faster to search for the initial part of an e-mail
5629 address via =Luser@ instead of ~Luser@. This is especially true for
5630 searching message bodies since a larger amount of input has to be
5633 Please note that string search is an exact case-sensitive search while a
5634 regular expression search with only lower-case letters performs a
5635 case-insensitive search.
5637 Chapter 8. Reference
5641 1. Command line options
5643 2. Configuration Commands
5645 3. Configuration variables
5647 3.1. abort_nosubject
5649 3.2. abort_unmodified
5667 3.11. assumed_charset
5669 3.12. attach_charset
5689 3.22. bounce_delivered
5691 3.23. braille_friendly
5693 3.24. check_mbox_size
5699 3.27. collapse_unread
5701 3.28. uncollapse_jump
5703 3.29. compose_format
5705 3.30. config_charset
5711 3.33. connect_timeout
5717 3.36. crypt_use_gpgme
5723 3.39. crypt_autosmime
5733 3.44. digest_collapse
5735 3.45. display_filter
5737 3.46. dotlock_program
5743 3.49. duplicate_threads
5751 3.53. envelope_from_address
5769 3.62. forward_decode
5773 3.64. forward_format
5793 3.74. hide_thread_subject
5795 3.75. hide_top_limited
5797 3.76. hide_top_missing
5803 3.79. honor_followup_to
5807 3.81. ignore_linear_white_space
5809 3.82. ignore_list_reply_to
5811 3.83. imap_authenticators
5813 3.84. imap_check_subscribed
5815 3.85. imap_delim_chars
5821 3.88. imap_keepalive
5823 3.89. imap_list_subscribed
5833 3.94. imap_pipeline_depth
5835 3.95. imap_servernoise
5839 3.97. implicit_autoview
5843 3.99. include_onlyfirst
5845 3.100. indent_string
5859 3.107. mailcap_sanitize
5861 3.108. maildir_mtime
5865 3.110. maildir_header_cache_verify
5867 3.111. header_cache_pagesize
5869 3.112. maildir_trash
5885 3.120. menu_move_off
5893 3.124. mh_seq_flagged
5895 3.125. mh_seq_replied
5897 3.126. mh_seq_unseen
5901 3.128. mime_forward_decode
5903 3.129. mime_forward_rest
5905 3.130. mix_entry_format
5911 3.133. message_cachedir
5913 3.134. message_cache_clean
5915 3.135. message_format
5923 3.139. pager_context
5927 3.141. pager_index_lines
5931 3.143. crypt_autosign
5933 3.144. crypt_autoencrypt
5935 3.145. pgp_ignore_subkeys
5937 3.146. crypt_replyencrypt
5939 3.147. crypt_replysign
5941 3.148. crypt_replysignencrypted
5943 3.149. crypt_timestamp
5945 3.150. sidebar_delim
5947 3.151. sidebar_visible
5949 3.152. sidebar_width
5951 3.153. pgp_use_gpg_agent
5953 3.154. crypt_verify_sig
5955 3.155. smime_is_default
5957 3.156. smime_ask_cert_label
5959 3.157. smime_decrypt_use_default_key
5961 3.158. pgp_entry_format
5963 3.159. pgp_good_sign
5965 3.160. pgp_check_exit
5969 3.162. pgp_retainable_sigs
5971 3.163. pgp_autoinline
5973 3.164. pgp_replyinline
5975 3.165. pgp_show_unusable
5979 3.167. pgp_strict_enc
5983 3.169. pgp_sort_keys
5985 3.170. pgp_mime_auto
5987 3.171. pgp_auto_decode
5989 3.172. pgp_mime_signature_filename
5991 3.173. pgp_mime_signature_description
5993 3.174. pgp_decode_command
5995 3.175. pgp_getkeys_command
5997 3.176. pgp_verify_command
5999 3.177. pgp_decrypt_command
6001 3.178. pgp_clearsign_command
6003 3.179. pgp_sign_command
6005 3.180. pgp_encrypt_sign_command
6007 3.181. pgp_encrypt_only_command
6009 3.182. pgp_import_command
6011 3.183. pgp_export_command
6013 3.184. pgp_verify_key_command
6015 3.185. pgp_list_secring_command
6017 3.186. pgp_list_pubring_command
6019 3.187. forward_decrypt
6021 3.188. smime_timeout
6023 3.189. smime_encrypt_with
6027 3.191. smime_ca_location
6029 3.192. smime_certificates
6031 3.193. smime_decrypt_command
6033 3.194. smime_verify_command
6035 3.195. smime_verify_opaque_command
6037 3.196. smime_sign_command
6039 3.197. smime_sign_opaque_command
6041 3.198. smime_encrypt_command
6043 3.199. smime_pk7out_command
6045 3.200. smime_get_cert_command
6047 3.201. smime_get_signer_cert_command
6049 3.202. smime_import_cert_command
6051 3.203. smime_get_cert_email_command
6053 3.204. smime_default_key
6055 3.205. ssl_client_cert
6057 3.206. ssl_force_tls
6061 3.208. certificate_file
6063 3.209. ssl_use_sslv3
6065 3.210. ssl_use_tlsv1
6067 3.211. ssl_min_dh_prime_bits
6069 3.212. ssl_ca_certificates_file
6077 3.216. pop_authenticators
6079 3.217. pop_auth_try_all
6081 3.218. pop_checkinterval
6089 3.222. pop_reconnect
6095 3.225. post_indent_string
6105 3.230. print_command
6113 3.234. query_command
6139 3.247. reverse_alias
6143 3.249. reverse_realname
6145 3.250. rfc2047_parameters
6157 3.256. score_threshold_delete
6159 3.257. score_threshold_flag
6161 3.258. score_threshold_read
6167 3.261. sendmail_wait
6177 3.266. simple_search
6185 3.270. smtp_authenticators
6201 3.278. spam_separator
6207 3.281. status_format
6209 3.282. status_on_top
6211 3.283. strict_threads
6217 3.286. thread_received
6219 3.287. thorough_search
6239 3.297. use_envelope_from
6267 3.311. xterm_set_titles
6299 1. Command line options
6301 Running mutt with no arguments will make Mutt attempt to read your spool
6302 mailbox. However, it is possible to read other mailboxes and to send
6303 messages from the command line as well.
6305 Table 8.1. Command line options
6307 +------------------------------------------------------------------------+
6308 | Option | Description |
6309 |--------+---------------------------------------------------------------|
6310 | -A | expand an alias |
6311 |--------+---------------------------------------------------------------|
6312 | -a | attach a file to a message |
6313 |--------+---------------------------------------------------------------|
6314 | -b | specify a blind carbon-copy (BCC) address |
6315 |--------+---------------------------------------------------------------|
6316 | -c | specify a carbon-copy (Cc) address |
6317 |--------+---------------------------------------------------------------|
6318 | -D | print the value of all mutt variables to stdout |
6319 |--------+---------------------------------------------------------------|
6320 | -e | specify a config command to be run after initialization files |
6322 |--------+---------------------------------------------------------------|
6323 | -f | specify a mailbox to load |
6324 |--------+---------------------------------------------------------------|
6325 | -F | specify an alternate file to read initialization commands |
6326 |--------+---------------------------------------------------------------|
6327 | -h | print help on command line options |
6328 |--------+---------------------------------------------------------------|
6329 | -H | specify a draft file from which to read a header and body |
6330 |--------+---------------------------------------------------------------|
6331 | -i | specify a file to include in a message composition |
6332 |--------+---------------------------------------------------------------|
6333 | -m | specify a default mailbox type |
6334 |--------+---------------------------------------------------------------|
6335 | -n | do not read the system Muttrc |
6336 |--------+---------------------------------------------------------------|
6337 | -p | recall a postponed message |
6338 |--------+---------------------------------------------------------------|
6339 | -Q | query a configuration variable |
6340 |--------+---------------------------------------------------------------|
6341 | -R | open mailbox in read-only mode |
6342 |--------+---------------------------------------------------------------|
6343 | -s | specify a subject (enclose in quotes if it contains spaces) |
6344 |--------+---------------------------------------------------------------|
6345 | -v | show version number and compile-time definitions |
6346 |--------+---------------------------------------------------------------|
6347 | -x | simulate the mailx(1) compose mode |
6348 |--------+---------------------------------------------------------------|
6349 | -y | show a menu containing the files specified by the mailboxes |
6351 |--------+---------------------------------------------------------------|
6352 | -z | exit immediately if there are no messages in the mailbox |
6353 |--------+---------------------------------------------------------------|
6354 | -Z | open the first folder with new message,exit immediately if |
6356 +------------------------------------------------------------------------+
6358 To read messages in a mailbox
6360 mutt [-nz] [-F muttrc ] [-m type ] [-f mailbox ]
6362 To compose a new message
6364 mutt [-n] [-F muttrc ] [-c address ] [-i filename ] [-s subject ] [ -a
6365 file [...] -- ] address ...
6367 Mutt also supports a "batch" mode to send prepared messages. Simply
6368 redirect input from the file you wish to send. For example,
6370 mutt -s "data set for run #2" professor@bigschool.edu < ~/run2.dat
6372 This command will send a message to "professor@bigschool.edu" with a
6373 subject of "data set for run #2". In the body of the message will be the
6374 contents of the file "~/run2.dat".
6376 All files passed with -a file will be attached as a MIME part to the
6377 message. To attach several files, use "--" to separate files and recipient
6378 addresses: mutt -a *.png -- some@one.org
6380 2. Configuration Commands
6382 The following are the commands understood by mutt.
6384 o account-hook pattern command
6386 o alias [ -group name ...] key address [ address ...]
6388 o unalias [ -group name ...] { * | key ... }
6390 o alternates [ -group name ...] regexp [ regexp ...]
6392 o unalternates [ -group name ...] { * | regexp ... }
6394 o alternative-order mimetype [ mimetype ...]
6396 o unalternative-order { * | mimetype ... }
6398 o auto-view mimetype [ mimetype ...]
6400 o unauto-view { * | mimetype ... }
6402 o bind map key function
6404 o charset-hook alias charset
6406 o iconv-hook charset local-charset
6408 o color object foreground background
6410 color { header | body } foreground background regexp
6412 color index foreground background pattern
6414 o uncolor index pattern ...
6416 o exec function [ function ...]
6418 o fcc-hook [!]pattern mailbox
6420 o fcc-save-hook [!]pattern mailbox
6422 o folder-hook [!]regexp command
6424 o group [ -group name ...] { -rx expr ... | -addr expr ... }
6426 o ungroup [ -group name ...] { * | -rx expr ... | -addr expr ... }
6428 o hdr_order header [ header ...]
6430 o unhdr_order { * | header ... }
6432 o ignore pattern [ pattern ...]
6434 o unignore { * | pattern ... }
6436 o lists [ -group name ] regexp [ regexp ...]
6438 o unlists [ -group name ...] { * | regexp ... }
6440 o macro menu key sequence [ description ]
6442 o mailboxes mailbox [ mailbox ...]
6444 o unmailboxes { * | mailbox ... }
6446 o mbox-hook [!]pattern mailbox
6448 o message-hook [!]pattern command
6450 o mime-lookup mimetype [ mimetype ...]
6452 o unmime-lookup { * | mimetype ... }
6454 o mono object attribute
6456 mono { header | body } attribute regexp
6458 mono index attribute pattern
6460 o unmono index { * | pattern ... }
6464 o unmy_hdr { * | field ... }
6466 o crypt-hook pattern keyid
6470 o reset variable [ variable ...]
6472 o save-hook [!]pattern mailbox
6474 o score pattern value
6476 o unscore { * | pattern ... }
6478 o reply-hook [!]pattern command
6480 o send-hook [!]pattern command
6482 o send2-hook [!]pattern command
6484 o set { [ no | inv ] variable | variable=value } [...]
6486 o unset variable [ variable ...]
6490 o spam pattern format
6492 o nospam { * | pattern }
6494 o subscribe [ -group name ...] regexp [ regexp ...]
6496 o unsubscribe [ -group name ...] { * | regexp ... }
6498 o toggle variable [ variable ...]
6500 o unhook { * | hook-type }
6502 3. Configuration variables
6504 3.1. abort_nosubject
6509 If set to yes, when composing messages and no subject is given at the
6510 subject prompt, composition will be aborted. If set to no, composing
6511 messages with no subject given at the subject prompt will never be
6514 3.2. abort_unmodified
6519 If set to yes, composition will automatically abort after editing the
6520 message body if no changes are made to the file (this check only happens
6521 after the first edit of the file). When set to no, composition will never
6527 Default: "~/.muttrc"
6529 The default file in which to save aliases created by the <create-alias>
6530 function. Entries added to this file are encoded in the character set
6531 specified by $config_charset if it is set or the current character set
6534 Note: Mutt will not automatically source this file; you must explicitly
6535 use the "source" command for it to be executed in case this option points
6536 to a dedicated alias file.
6538 The default for this option is the currently used muttrc file, or
6539 "~/.muttrc" if no user muttrc was found.
6544 Default: "%4n %2f %t %-10a %r"
6546 Specifies the format of the data displayed for the "alias" menu. The
6547 following printf(3)-style sequences are available:
6555 flags - currently, a "d" for an alias marked for deletion
6563 address which alias expands to
6567 character which indicates if the alias is tagged for inclusion
6574 Controls whether 8-bit data is converted to 7-bit using either Quoted-
6575 Printable or Base64 encoding when sending mail.
6582 Controls whether ANSI color codes in messages (and color tags in rich text
6583 messages) are to be interpreted. Messages containing these codes are rare,
6584 but if this option is set, their text will be colored accordingly. Note
6585 that this may override your color choices, and even present a security
6586 problem, since a message could include a line like
6588 [-- PGP output follows ...
6591 and give it the same color as your attachment color (see also
6599 When set, an arrow ("->") will be used to indicate the current entry in
6600 menus instead of highlighting the whole line. On slow network or modem
6601 links this will make response faster because there is less that has to be
6602 redrawn on the screen when moving to the next or previous entries in the
6610 If set, Mutt will use plain ASCII characters when displaying thread and
6611 attachment trees, instead of the default ACS characters.
6618 If set, Mutt will prompt you for blind-carbon-copy (Bcc) recipients before
6619 editing an outgoing message.
6626 If set, Mutt will prompt you for carbon-copy (Cc) recipients before
6627 editing the body of an outgoing message.
6629 3.11. assumed_charset
6634 This variable is a colon-separated list of character encoding schemes for
6635 messages without character encoding indication. Header field values and
6636 message body content without character encoding indication would be
6637 assumed that they are written in one of this list. By default, all the
6638 header fields and message body without any charset indication are assumed
6639 to be in "us-ascii".
6641 For example, Japanese users might prefer this:
6643 set assumed_charset="iso-2022-jp:euc-jp:shift_jis:utf-8"
6646 However, only the first content is valid for the message body.
6648 3.12. attach_charset
6653 This variable is a colon-separated list of character encoding schemes for
6654 text file attachments. Mutt uses this setting to guess which encoding
6655 files being attached are encoded in to convert them to a proper character
6656 set given in $send_charset.
6658 If unset, the value of $charset will be used instead. For example, the
6659 following configuration would work for Japanese text handling:
6661 set attach_charset="iso-2022-jp:euc-jp:shift_jis:utf-8"
6664 Note: for Japanese users, "iso-2022-*" must be put at the head of the
6665 value as shown above if included.
6670 Default: "%u%D%I %t%4n %T%.40d%> [%.7m/%.10M, %.6e%?C?, %C?, %s] "
6672 This variable describes the format of the "attachment" menu. The following
6673 printf(3)-style sequences are understood:
6681 requires charset conversion ("n" or "c")
6693 MIME content-transfer-encoding
6701 disposition ("I" for inline, "A" for attachment)
6717 "Q", if MIME part qualifies for attachment counting
6729 graphic tree characters
6733 unlink (=to delete) flag
6737 number of qualifying MIME parts in this part and its children
6738 (please see the "attachments" section for possible speed effects)
6742 right justify the rest of the string and pad with character "X"
6746 pad to the end of the line with character "X"
6750 soft-fill with character "X" as pad
6752 For an explanation of "soft-fill", see the $index_format documentation.
6759 The separator to add between attachments when operating (saving, printing,
6760 piping, etc) on a list of tagged attachments.
6767 If this variable is unset, when operating (saving, printing, piping, etc)
6768 on a list of tagged attachments, Mutt will concatenate the attachments and
6769 will operate on them as a single attachment. The $attach_sep separator is
6770 added after each attachment. When set, Mutt will operate on the
6771 attachments one by one.
6776 Default: "On %d, %n wrote:"
6778 This is the string that will precede a message which has been included in
6779 a reply. For a full listing of defined printf(3)-like sequences see the
6780 section on $index_format.
6787 When set along with $edit_headers, Mutt will skip the initial send-menu
6788 (prompting for subject and recipients) and allow you to immediately begin
6789 editing the body of your message. The send-menu may still be accessed once
6790 you have finished editing the body of your message.
6792 Also see $fast_reply.
6799 When set, functions in the index menu which affect a message will be
6800 applied to all tagged messages (if there are any). When unset, you must
6801 first use the <tag-prefix> function (bound to ";" by default) to make the
6802 next function apply to all tagged messages.
6809 When this variable is set, mutt will beep when an error occurs.
6816 When this variable is set, mutt will beep whenever it prints a message
6817 notifying you of new mail. This is independent of the setting of the $beep
6825 Controls whether you will be asked to confirm bouncing messages. If set to
6826 yes you don't get asked if you want to bounce a message. Setting this
6827 variable to no is not generally useful, and thus not recommended, because
6828 you are unable to bounce messages.
6830 3.22. bounce_delivered
6835 When this variable is set, mutt will include Delivered-To headers when
6836 bouncing messages. Postfix users may wish to unset this variable.
6838 Note: On Debian systems, this option is unset by default in /etc/Muttrc.
6840 3.23. braille_friendly
6845 When this variable is set, mutt will place the cursor at the beginning of
6846 the current line in menus, even when the $arrow_cursor variable is unset,
6847 making it easier for blind persons using Braille displays to follow these
6848 menus. The option is unset by default because many visual terminals don't
6849 permit making the cursor invisible.
6851 3.24. check_mbox_size
6856 When this variable is set, mutt will use file size attribute instead of
6857 access time when checking for new mail in mbox and mmdf folders.
6859 This variable is unset by default and should only be enabled when new mail
6860 detection for these folder types is unreliable or doesn't work.
6862 Note that enabling this variable should happen before any "mailboxes"
6863 directives occur in configuration files regarding mbox or mmdf folders
6864 because mutt needs to determine the initial new mail status of such a
6865 mailbox by performing a fast mailbox scan when it is defined. Afterwards
6866 the new mail status is tracked by file size changes.
6873 Character set your terminal uses to display and enter textual data. It is
6874 also the fallback for $send_charset.
6876 Upon startup Mutt tries to derive this value from environment variables
6877 such as $LC_CTYPE or $LANG.
6879 Note: It should only be set in case Mutt isn't abled to determine the
6880 character set used correctly.
6887 Note: this option only affects maildir and MH style mailboxes.
6889 When set, Mutt will check for new mail delivered while the mailbox is
6890 open. Especially with MH mailboxes, this operation can take quite some
6891 time since it involves scanning the directory and checking each file to
6892 see if it has already been looked at. If this variable is unset, no check
6893 for new mail is performed while the mailbox is open.
6895 3.27. collapse_unread
6900 When unset, Mutt will not collapse a thread if it contains any unread
6903 3.28. uncollapse_jump
6908 When set, Mutt will jump to the next unread message, if any, when the
6909 current thread is uncollapsed.
6911 3.29. compose_format
6914 Default: "-- Mutt: Compose [Approx. msg size: %l Atts: %a]%>-"
6916 Controls the format of the status line displayed in the "compose" menu.
6917 This string is similar to $status_format, but has its own set of
6918 printf(3)-like sequences:
6922 total number of attachments
6930 approximate size (in bytes) of the current message
6936 See the text describing the $status_format option for more information on
6937 how to set $compose_format.
6939 3.30. config_charset
6944 When defined, Mutt will recode commands in rc files from this encoding to
6945 the current character set as specified by $charset and aliases written to
6946 $alias_file from the current character set.
6948 Please note that if setting $charset it must be done before setting
6951 Recoding should be avoided as it may render unconvertable characters as
6952 question marks which can lead to undesired side effects (for example in
6953 regular expressions).
6960 When set, Mutt will prompt for confirmation when appending messages to an
6968 When set, Mutt will prompt for confirmation when saving messages to a
6969 mailbox which does not yet exist before creating it.
6971 3.33. connect_timeout
6976 Causes Mutt to timeout a network connection (for IMAP, POP or SMTP) after
6977 this many seconds if the connection is not able to be established. A
6978 negative value causes Mutt to wait indefinitely for the connection attempt
6984 Default: "text/plain"
6986 Sets the default Content-Type for the body of newly composed messages.
6993 This variable controls whether or not copies of your outgoing messages
6994 will be saved for later references. Also see $record, $save_name,
6995 $force_name and "fcc-hook".
6997 3.36. crypt_use_gpgme
7002 This variable controls the use of the GPGME-enabled crypto backends. If it
7003 is set and Mutt was built with gpgme support, the gpgme code for S/MIME
7004 and PGP will be used instead of the classic code. Note that you need to
7005 set this option in .muttrc; it won't have any effect when used
7013 Controls whether mutt uses PKA (see
7014 http://www.g10code.de/docs/pka-intro.de.pdf) during signature verification
7015 (only supported by the GPGME backend).
7022 This variable controls whether or not mutt may automatically enable PGP
7023 encryption/signing for messages. See also $crypt_autoencrypt,
7024 $crypt_replyencrypt, $crypt_autosign, $crypt_replysign and
7027 3.39. crypt_autosmime
7032 This variable controls whether or not mutt may automatically enable S/MIME
7033 encryption/signing for messages. See also $crypt_autoencrypt,
7034 $crypt_replyencrypt, $crypt_autosign, $crypt_replysign and
7040 Default: "!%a, %b %d, %Y at %I:%M:%S%p %Z"
7042 This variable controls the format of the date printed by the "%d" sequence
7043 in $index_format. This is passed to the strftime(3) function to process
7044 the date, see the man page for the proper syntax.
7046 Unless the first character in the string is a bang ("!"), the month and
7047 week day names are expanded according to the locale specified in the
7048 variable $locale. If the first character in the string is a bang, the bang
7049 is discarded, and the month and week day names in the rest of the string
7050 are expanded in the C locale (that is in US English).
7055 Default: "~f %s !~P | (~P ~C %s)"
7057 This variable controls how "message-hook", "reply-hook", "send-hook",
7058 "send2-hook", "save-hook", and "fcc-hook" will be interpreted if they are
7059 specified with only a simple regexp, instead of a matching pattern. The
7060 hooks are expanded when they are declared, so a hook will be interpreted
7061 according to the value of this variable at the time the hook is declared.
7063 The default value matches if the message is either from a user matching
7064 the regular expression given, or if it is from you (if the from address
7065 matches "alternates") and is to or cc'ed to a user matching the given
7073 Controls whether or not messages are really deleted when closing or
7074 synchronizing a mailbox. If set to yes, messages marked for deleting will
7075 automatically be purged without prompting. If set to no, messages marked
7076 for deletion will be kept in the mailbox.
7083 If this option is set, mutt will untag messages when marking them for
7084 deletion. This applies when you either explicitly delete a message, or
7085 when you save it to another folder.
7087 3.44. digest_collapse
7092 If this option is set, mutt's received-attachments menu will not show the
7093 subparts of individual messages in a multipart/digest. To see these
7094 subparts, press "v" on that menu.
7096 3.45. display_filter
7101 When set, specifies a command used to filter messages. When a message is
7102 viewed it is passed as standard input to $display_filter, and the filtered
7103 message is read from the standard output.
7105 3.46. dotlock_program
7108 Default: "/usr/bin/mutt_dotlock"
7110 Contains the path of the mutt_dotlock(8) binary to be used by mutt.
7117 This variable sets the request for when notification is returned. The
7118 string consists of a comma separated list (no spaces!) of one or more of
7119 the following: never, to never request notification, failure, to request
7120 notification on transmission failure, delay, to be notified of message
7121 delays, success, to be notified of successful transmission.
7125 set dsn_notify="failure,delay"
7128 Note: when using $sendmail for delivery, you should not enable this unless
7129 you are either using Sendmail 8.8.x or greater or a MTA providing a
7130 sendmail(1)-compatible interface supporting the -N option for DSN. For
7131 SMTP delivery, DSN support is autodetected so that it depends on the
7132 server whether DSN will be used or not.
7139 This variable controls how much of your message is returned in DSN
7140 messages. It may be set to either hdrs to return just the message header,
7141 or full to return the full message.
7148 Note: when using $sendmail for delivery, you should not enable this unless
7149 you are either using Sendmail 8.8.x or greater or a MTA providing a
7150 sendmail(1)-compatible interface supporting the -R option for DSN. For
7151 SMTP delivery, DSN support is autodetected so that it depends on the
7152 server whether DSN will be used or not.
7154 3.49. duplicate_threads
7159 This variable controls whether mutt, when $sort is set to threads, threads
7160 messages with the same Message-Id together. If it is set, it will indicate
7161 that it thinks they are duplicates of each other with an equals sign in
7169 This option allows you to edit the header of your outgoing messages along
7170 with the body of your message.
7172 Note that changes made to the References: and Date: headers are ignored
7173 for interoperability reasons.
7180 This variable specifies which editor is used by mutt. It defaults to the
7181 value of the $VISUAL, or $EDITOR, environment variable, or to the string
7182 "/usr/bin/editor" if neither of those are set.
7189 When set, mutt will quoted-printable encode messages when they contain the
7190 string "From " (note the trailing space) in the beginning of a line. This
7191 is useful to avoid the tampering certain mail delivery and transport
7192 agents tend to do with messages (in order to prevent tools from
7193 misinterpreting the line as a mbox message separator).
7195 3.53. envelope_from_address
7197 Type: e-mail address
7200 Manually sets the envelope sender for outgoing messages. This value is
7201 ignored if $use_envelope_from is unset.
7208 Escape character to use for functions in the builtin editor.
7215 When set, the initial prompt for recipients and subject are skipped when
7216 replying to messages, and the initial prompt for subject is skipped when
7217 forwarding messages.
7219 Note: this variable has no effect when the $autoedit variable is set.
7226 This variable controls whether or not attachments on outgoing messages are
7227 saved along with the main body of your message.
7234 When this variable is set, FCCs will be stored unencrypted and unsigned,
7235 even when the actual message is encrypted and/or signed. (PGP only)
7242 Specifies the default location of your mailboxes. A "+" or "=" at the
7243 beginning of a pathname will be expanded to the value of this variable.
7244 Note that if you change this variable (from the default) value you need to
7245 make sure that the assignment occurs before you use "+" or "=" for any
7246 other variables since expansion takes place when handling the "mailboxes"
7252 Default: "%2C %t %N %F %2l %-8.8u %-8.8g %8s %d %f"
7254 This variable allows you to customize the file browser display to your
7255 personal taste. This string is similar to $index_format, but has its own
7256 set of printf(3)-like sequences:
7264 date/time folder was last modified
7276 group name (or numeric gid, if missing)
7280 number of hard links
7284 N if folder has new mail, blank otherwise
7292 "*" if the file is tagged, blank otherwise
7296 owner name (or numeric uid, if missing)
7300 right justify the rest of the string and pad with character "X"
7304 pad to the end of the line with character "X"
7308 soft-fill with character "X" as pad
7310 For an explanation of "soft-fill", see the $index_format documentation.
7317 Controls whether or not the "Mail-Followup-To:" header field is generated
7318 when sending mail. When set, Mutt will generate this field when you are
7319 replying to a known mailing list, specified with the "subscribe" or
7322 This field has two purposes. First, preventing you from receiving
7323 duplicate copies of replies to messages which you send to mailing lists,
7324 and second, ensuring that you do get a reply separately for any messages
7325 sent to known lists to which you are not subscribed.
7327 The header will contain only the list's address for subscribed lists, and
7328 both the list address and your own email address for unsubscribed lists.
7329 Without this header, a group reply to your message sent to a subscribed
7330 list will be sent to both the list and your address, resulting in two
7331 copies of the same email for you.
7338 This variable is similar to $save_name, except that Mutt will store a copy
7339 of your outgoing message by the username of the address you are sending to
7340 even if that mailbox does not exist.
7342 Also see the $record variable.
7344 3.62. forward_decode
7349 Controls the decoding of complex MIME messages into text/plain when
7350 forwarding a message. The message header is also RFC2047 decoded. This
7351 variable is only used, if $mime_forward is unset, otherwise
7352 $mime_forward_decode is used instead.
7359 This quadoption controls whether or not the user is automatically placed
7360 in the editor when forwarding messages. For those who always want to
7361 forward with no modification, use a setting of "no".
7363 3.64. forward_format
7368 This variable controls the default subject when forwarding a message. It
7369 uses the same format sequences as the $index_format variable.
7376 When set, forwarded messages included in the main body of the message
7377 (when $mime_forward is unset) will be quoted using $indent_string.
7381 Type: e-mail address
7384 When set, this variable contains a default from address. It can be
7385 overridden using "my_hdr" (including from a "send-hook") and
7386 $reverse_name. This variable is ignored if $use_from is unset.
7388 This setting defaults to the contents of the environment variable $EMAIL.
7392 Type: regular expression
7395 A regular expression used by mutt to parse the GECOS field of a password
7396 entry when expanding the alias. The default value will return the string
7397 up to the first "," encountered. If the GECOS field contains a string like
7398 "lastname, firstname" then you should set it to ".*".
7400 This can be useful if you see the following behavior: you address an
7401 e-mail to user ID "stevef" whose full name is "Steve Franklin". If mutt
7402 expands "stevef" to ""Franklin" stevef@foo.bar" then you should set the
7403 $gecos_mask to a regular expression that will match the whole name so mutt
7404 will expand "Franklin" to "Franklin, Steve".
7411 When unset, the header fields normally added by the "my_hdr" command are
7412 not created. This variable must be unset before composing a new message or
7413 replying in order to take effect. If set, the user defined header fields
7414 are added to every new message.
7421 When set, this variable causes Mutt to include the header of the message
7422 you are replying to into the edit buffer. The $weed setting applies.
7429 When set, help lines describing the bindings for the major functions
7430 provided by each menu are displayed on the first line of the screen.
7432 Note: The binding will not be displayed correctly if the function is bound
7433 to a sequence rather than a single keystroke. Also, the help line may not
7434 be updated if a binding is changed while Mutt is running. Since this
7435 variable is primarily aimed at new users, neither of these should present
7443 When set, mutt will skip the host name part of $hostname variable when
7444 adding the domain part to addresses. This variable does not affect the
7445 generation of Message-IDs, and it will not lead to the cut-off of
7446 first-level domains.
7453 When set, mutt will not show the presence of messages that are hidden by
7454 limiting, in the thread tree.
7461 When set, mutt will not show the presence of missing messages in the
7464 3.74. hide_thread_subject
7469 When set, mutt will not show the subject of messages in the thread tree
7470 that have the same subject as their parent or closest previously displayed
7473 3.75. hide_top_limited
7478 When set, mutt will not show the presence of messages that are hidden by
7479 limiting, at the top of threads in the thread tree. Note that when
7480 $hide_limited is set, this option will have no effect.
7482 3.76. hide_top_missing
7487 When set, mutt will not show the presence of missing messages at the top
7488 of threads in the thread tree. Note that when $hide_missing is set, this
7489 option will have no effect.
7496 This variable controls the size (in number of strings remembered) of the
7497 string history buffer per category. The buffer is cleared each time the
7503 Default: "~/.mutthistory"
7505 The file in which Mutt will save its history.
7507 3.79. honor_followup_to
7512 This variable controls whether or not a Mail-Followup-To header is honored
7513 when group-replying to a message.
7520 Specifies the fully-qualified hostname of the system mutt is running on
7521 containing the host's name and the DNS domain it belongs to. It is used as
7522 the domain part (after "@") for local email addresses as well as
7525 Its value is determined at startup as follows: If the node's name as
7526 returned by the uname(3) function contains the hostname and the domain,
7527 these are used to construct $hostname. If there is no domain part
7528 returned, Mutt will look for a "domain" or "search" line in
7529 /etc/resolv.conf to determine the domain. Optionally, Mutt can be compiled
7530 with a fixed domain name in which case a detected one is not used.
7532 Also see $use_domain and $hidden_host.
7534 Note: On Debian systems, the default for this variable is obtained from
7535 /etc/mailname when Mutt starts.
7537 3.81. ignore_linear_white_space
7542 This option replaces linear-white-space between encoded-word and text to a
7543 single space to prevent the display of MIME-encoded "Subject:" field from
7544 being divided into multiple lines.
7546 3.82. ignore_list_reply_to
7551 Affects the behaviour of the <reply> function when replying to messages
7552 from mailing lists (as defined by the "subscribe" or "lists" commands).
7553 When set, if the "Reply-To:" field is set to the same value as the "To:"
7554 field, Mutt assumes that the "Reply-To:" field was set by the mailing list
7555 to automate responses to the list, and will ignore this field. To direct a
7556 response to the mailing list when this option is set, use the <list-reply>
7557 function; <group-reply> will reply to both the sender and the list.
7559 3.83. imap_authenticators
7564 This is a colon-delimited list of authentication methods mutt may attempt
7565 to use to log in to an IMAP server, in the order mutt should try them.
7566 Authentication methods are either "login" or the right side of an IMAP
7567 "AUTH=xxx" capability string, eg "digest-md5", "gssapi" or "cram-md5".
7568 This option is case-insensitive. If it's unset (the default) mutt will try
7569 all available methods, in order from most-secure to least-secure.
7573 set imap_authenticators="gssapi:cram-md5:login"
7576 Note: Mutt will only fall back to other authentication methods if the
7577 previous methods are unavailable. If a method is available but
7578 authentication fails, mutt will not connect to the IMAP server.
7580 3.84. imap_check_subscribed
7585 When set, mutt will fetch the set of subscribed folders from your server
7586 on connection, and add them to the set of mailboxes it polls for new mail
7587 just as if you had issued individual "mailboxes" commands.
7589 3.85. imap_delim_chars
7594 This contains the list of characters which you would like to treat as
7595 folder separators for displaying IMAP paths. In particular it helps in
7596 using the "=" shortcut for your folder variable.
7603 Mutt requests these header fields in addition to the default headers
7604 ("Date:", "From:", "Subject:", "To:", "Cc:", "Message-Id:", "References:",
7605 "Content-Type:", "Content-Description:", "In-Reply-To:", "Reply-To:",
7606 "Lines:", "List-Post:", "X-Label:") from IMAP servers before displaying
7607 the index menu. You may want to add more headers for spam detection.
7609 Note: This is a space separated list, items should be uppercase and not
7610 contain the colon, e.g. "X-BOGOSITY X-SPAM-STATUS" for the "X-Bogosity:"
7611 and "X-Spam-Status:" header fields.
7618 When set, mutt will attempt to use the IMAP IDLE extension to check for
7619 new mail in the current mailbox. Some servers (dovecot was the inspiration
7620 for this option) react badly to mutt's implementation. If your connection
7621 seems to freeze up periodically, try unsetting this.
7623 3.88. imap_keepalive
7628 This variable specifies the maximum amount of time in seconds that mutt
7629 will wait before polling open IMAP connections, to prevent the server from
7630 closing them before mutt has finished with them. The default is well
7631 within the RFC-specified minimum amount of time (30 minutes) before a
7632 server is allowed to do this, but in practice the RFC does get violated
7633 every now and then. Reduce this number if you find yourself getting
7634 disconnected from your IMAP server due to inactivity.
7636 3.89. imap_list_subscribed
7641 This variable configures whether IMAP folder browsing will look for only
7642 subscribed folders or all folders. This can be toggled in the IMAP browser
7643 with the <toggle-subscribed> function.
7650 Your login name on the IMAP server.
7652 This variable defaults to the value of $imap_user.
7659 Specifies the password for your IMAP account. If unset, Mutt will prompt
7660 you for your password when you invoke the <fetch-mail> function or try to
7661 open an IMAP folder.
7663 Warning: you should only use this option when you are on a fairly secure
7664 machine, because the superuser can read your muttrc even if you are the
7665 only one who can read the file.
7672 When set, mutt will not open new IMAP connections to check for new mail.
7673 Mutt will only check for new mail over existing IMAP connections. This is
7674 useful if you don't want to be prompted to user/password pairs on mutt
7675 invocation, or if opening the connection is slow.
7682 When set, mutt will avoid implicitly marking your mail as read whenever
7683 you fetch a message from the server. This is generally a good thing, but
7684 can make closing an IMAP folder somewhat slower. This option exists to
7685 appease speed freaks.
7687 3.94. imap_pipeline_depth
7692 Controls the number of IMAP commands that may be queued up before they are
7693 sent to the server. A deeper pipeline reduces the amount of time mutt must
7694 wait for the server, and can make IMAP servers feel much more responsive.
7695 But not all servers correctly handle pipelined commands, so if you have
7696 problems you might want to try setting this variable to 0.
7698 Note: Changes to this variable have no effect on open connections.
7700 3.95. imap_servernoise
7705 When set, mutt will display warning messages from the IMAP server as error
7706 messages. Since these messages are often harmless, or generated due to
7707 configuration problems on the server which are out of the users' hands,
7708 you may wish to suppress them at some point.
7715 The name of the user whose mail you intend to access on the IMAP server.
7717 This variable defaults to your user name on the local machine.
7719 3.97. implicit_autoview
7724 If set to "yes", mutt will look for a mailcap entry with the
7725 "copiousoutput" flag set for every MIME attachment it doesn't have an
7726 internal viewer defined for. If such an entry is found, mutt will use the
7727 viewer defined in that entry to convert the body part to text form.
7734 Controls whether or not a copy of the message(s) you are replying to is
7735 included in your reply.
7737 3.99. include_onlyfirst
7742 Controls whether or not Mutt includes only the first attachment of the
7743 message you are replying.
7745 3.100. indent_string
7750 Specifies the string to prepend to each line of text quoted in a message
7751 to which you are replying. You are strongly encouraged not to change this
7752 value, as it tends to agitate the more fanatical netizens.
7754 This option is a format string, please see the description of
7755 $index_format for supported printf(3)-style sequences.
7757 Because for format=lowed style messages the quoting mechanism is strictly
7758 defined, this setting is ignored if $text_flowed is set.
7763 Default: "%4C %Z %{%b %d} %-15.15L (%?l?%4l&%4c?) %s"
7765 This variable allows you to customize the message index display to your
7768 "Format strings" are similar to the strings used in the C function
7769 printf(3) to format output (see the man page for more details). The
7770 following sequences are defined in Mutt:
7774 address of the author
7778 reply-to address (if present; otherwise: address of author)
7782 filename of the original message folder (think mailbox)
7786 the list to which the letter was sent, or else the folder name
7791 number of characters (bytes) in the message
7795 current message number
7799 date and time of the message in the format specified by
7800 $date_format converted to sender's time zone
7804 date and time of the message in the format specified by
7805 $date_format converted to the local time zone
7809 current message number in thread
7813 number of messages in current thread
7817 sender (address + real name), either From: or Return-Path:
7821 author name, or recipient name if the message is from you
7825 spam attribute(s) of this message
7829 message-id of the current message
7833 number of lines in the message (does not work with maildir, mh,
7834 and possibly IMAP folders)
7838 If an address in the "To:" or "Cc:" header field matches an
7839 address defined by the users "subscribe" command, this displays
7840 "To <list-name>", otherwise the same as %F.
7844 total number of message in the mailbox
7848 number of hidden messages if the thread is collapsed.
7856 author's real name (or address if missing)
7860 original save folder where mutt would formerly have stashed the
7861 message: list name or recipient name if not sent to a list
7865 progress indicator for the builtin pager (how much of the file has
7870 subject of the message
7874 status of the message ("N"/"D"/"d"/"!"/"r"/*)
7878 "To:" field (recipients)
7882 the appropriate character from the $to_chars string
7886 user (login) name of the author
7890 first name of the author, or the recipient if the message is from
7895 number of attachments (please see the "attachments" section for
7896 possible speed effects)
7900 "X-Label:" field, if present
7904 "X-Label:" field, if present, and (1) not at part of a thread
7905 tree, (2) at the top of a thread, or (3) "X-Label:" is different
7906 from preceding message's "X-Label:".
7910 message status flags
7914 the date and time of the message is converted to sender's time
7915 zone, and "fmt" is expanded by the library function strftime(3); a
7916 leading bang disables locales
7920 the date and time of the message is converted to the local time
7921 zone, and "fmt" is expanded by the library function strftime(3); a
7922 leading bang disables locales
7926 the local date and time when the message was received. "fmt" is
7927 expanded by the library function strftime(3); a leading bang
7932 the current local time. "fmt" is expanded by the library function
7933 strftime(3); a leading bang disables locales.
7937 right justify the rest of the string and pad with character "X"
7941 pad to the end of the line with character "X"
7945 soft-fill with character "X" as pad
7947 "Soft-fill" deserves some explanation: Normal right-justification will
7948 print everything to the left of the "%>", displaying padding and whatever
7949 lies to the right only if there's room. By contrast, soft-fill gives
7950 priority to the right-hand side, guaranteeing space to display it and
7951 showing padding only if there's still room. If necessary, soft-fill will
7952 eat text leftwards to make room for rightward text.
7954 Note that these expandos are supported in "save-hook", "fcc-hook" and
7955 "fcc-save-hook", too.
7962 How to invoke ispell (GNU's spell-checking software).
7969 If set, read messages marked as flagged will not be moved from your spool
7970 mailbox to your $mbox mailbox, or as a result of a "mbox-hook" command.
7977 The locale used by strftime(3) to format dates. Legal values are the
7978 strings your system accepts for the locale environment variable $LC_TIME.
7985 This variable configures how often (in seconds) mutt should look for new
7986 mail. Also see the $timeout variable.
7993 This variable specifies which files to consult when attempting to display
7994 MIME bodies not directly supported by Mutt.
7996 3.107. mailcap_sanitize
8001 If set, mutt will restrict possible characters in mailcap % expandos to a
8002 well-defined set of safe characters. This is the safe setting, but we are
8003 not sure it doesn't break some more advanced MIME stuff.
8005 DON'T CHANGE THIS SETTING UNLESS YOU ARE REALLY SURE WHAT YOU ARE DOING!
8007 3.108. maildir_mtime
8012 If set, the sort-by-date option in the browser will sort maildirs smartly,
8013 not using the mtime of the maildir itself but that of the newest message
8014 in the new subdirectory, making the sorting by reverse date much more
8015 useful. People with maildirs over NFS may wish to leave this option unset.
8022 This variable points to the header cache database. If pointing to a
8023 directory Mutt will contain a header cache database file per folder, if
8024 pointing to a file that file will be a single global header cache. By
8025 default it is unset so no header caching will be used.
8027 Header caching can greatly improve speed when opening POP, IMAP MH or
8028 Maildir folders, see "caching" for details.
8030 3.110. maildir_header_cache_verify
8035 Check for Maildir unaware programs other than mutt having modified maildir
8036 files when the header cache is in use. This incurs one stat(2) per message
8037 every time the folder is opened (which can be very slow for NFS folders).
8039 3.111. header_cache_pagesize
8044 When mutt is compiled with either gdbm or bdb4 as the header cache
8045 backend, this option changes the database page size. Too large or too
8046 small values can waste space, memory, or CPU time. The default should be
8047 more or less optimal for most use cases.
8049 3.112. maildir_trash
8054 If set, messages marked as deleted will be saved with the maildir trashed
8055 flag instead of unlinked. Note: this only applies to maildir-style
8056 mailboxes. Setting it will have no effect on other mailbox types.
8063 Controls whether or not mutt marks new unread messages as old if you exit
8064 a mailbox without reading them. With this option set, the next time you
8065 start mutt, the messages will show up with an "O" next to them in the
8066 index menu, indicating that they are old.
8073 Controls the display of wrapped lines in the internal pager. If set, a "+"
8074 marker is displayed at the beginning of wrapped lines.
8076 Also see the $smart_wrap variable.
8080 Type: regular expression
8083 A regular expression used in the file browser, optionally preceded by the
8084 not operator "!". Only files whose names match this mask will be shown.
8085 The match is always case-sensitive.
8092 This specifies the folder into which read mail in your $spoolfile folder
8095 Also see the $move variable.
8102 The default mailbox type used when creating new folders. May be any of
8103 "mbox", "MMDF", "MH" and "Maildir".
8110 If unset, Mutt will remove your address (see the "alternates" command)
8111 from the list of recipients when replying to a message.
8118 This variable controls the number of lines of context that are given when
8119 scrolling through menus. (Similar to $pager_context.)
8121 3.120. menu_move_off
8126 When unset, the bottom entry of menus will never scroll up past the bottom
8127 of the screen, unless there are less entries than lines. When set, the
8128 bottom entry may move off the bottom.
8135 When set, menus will be scrolled up or down one line when you attempt to
8136 move across a screen boundary. If unset, the screen is cleared and the
8137 next or previous page of the menu is displayed (useful for slow links to
8138 avoid many redraws).
8145 If set, forces Mutt to interpret keystrokes with the high bit (bit 8) set
8146 as if the user had pressed the Esc key and whatever key remains after
8147 having the high bit removed. For example, if the key pressed has an ASCII
8148 value of 0xf8, then this is treated as if the user had pressed Esc then
8149 "x". This is because the result of removing the high bit from 0xf8 is
8150 0x78, which is the ASCII character "x".
8157 When unset, mutt will mimic mh's behaviour and rename deleted messages to
8158 ,<old file name> in mh folders instead of really deleting them. This
8159 leaves the message on disk but makes programs reading the folder ignore
8160 it. If the variable is set, the message files will simply be deleted.
8162 This option is similar to $maildir_trash for Maildir folders.
8164 3.124. mh_seq_flagged
8169 The name of the MH sequence used for flagged messages.
8171 3.125. mh_seq_replied
8176 The name of the MH sequence used to tag replied messages.
8178 3.126. mh_seq_unseen
8183 The name of the MH sequence used for unseen messages.
8190 When set, the message you are forwarding will be attached as a separate
8191 message/rfc822 MIME part instead of included in the main body of the
8192 message. This is useful for forwarding MIME messages so the receiver can
8193 properly view the message as it was delivered to you. If you like to
8194 switch between MIME and not MIME from mail to mail, set this variable to
8195 "ask-no" or "ask-yes".
8197 Also see $forward_decode and $mime_forward_decode.
8199 3.128. mime_forward_decode
8204 Controls the decoding of complex MIME messages into text/plain when
8205 forwarding a message while $mime_forward is set. Otherwise $forward_decode
8208 3.129. mime_forward_rest
8213 When forwarding multiple attachments of a MIME message from the attachment
8214 menu, attachments which cannot be decoded in a reasonable manner will be
8215 attached to the newly composed message if this option is set.
8217 3.130. mix_entry_format
8220 Default: "%4n %c %-16s %a"
8222 This variable describes the format of a remailer line on the mixmaster
8223 chain selection screen. The following printf(3)-like sequences are
8228 The running number on the menu.
8232 Remailer capabilities.
8236 The remailer's short name.
8240 The remailer's e-mail address.
8245 Default: "mixmaster"
8247 This variable contains the path to the Mixmaster binary on your system. It
8248 is used with various sets of parameters to gather the list of known
8249 remailers, and to finally send a message through the mixmaster chain.
8251 Note: On Debian systems, this option is set by default to
8252 "mixmaster-filter" in /etc/Muttrc.
8259 Controls whether or not Mutt will move read messages from your spool
8260 mailbox to your $mbox mailbox, or as a result of a "mbox-hook" command.
8262 3.133. message_cachedir
8267 Set this to a directory and mutt will cache copies of messages from your
8268 IMAP and POP servers here. You are free to remove entries at any time.
8270 When setting this variable to a directory, mutt needs to fetch every
8271 remote message only once and can perform regular expression searches as
8272 fast as for local folders.
8274 Also see the $message_cache_clean variable.
8276 3.134. message_cache_clean
8281 If set, mutt will clean out obsolete entries from the message cache when
8282 the mailbox is synchronized. You probably only want to set it every once
8283 in a while, since it can be a little slow (especially for large folders).
8285 3.135. message_format
8290 This is the string displayed in the "attachment" menu for attachments of
8291 type message/rfc822. For a full listing of defined printf(3)-like
8292 sequences see the section on $index_format.
8299 This variable, when set, makes the thread tree narrower, allowing deeper
8300 threads to fit on the screen.
8307 Operations that expect to transfer a large amount of data over the network
8308 will update their progress every $net_inc kilobytes. If set to 0, no
8309 progress messages will be displayed.
8311 See also $read_inc, $write_inc and $net_inc.
8318 This variable specifies which pager you would like to use to view
8319 messages. The value "builtin" means to use the builtin pager, otherwise
8320 this variable should specify the pathname of the external pager you would
8323 Using an external pager may have some disadvantages: Additional keystrokes
8324 are necessary because you can't call mutt functions directly from the
8325 pager, and screen resizes cause lines longer than the screen width to be
8326 badly formatted in the help menu.
8328 3.139. pager_context
8333 This variable controls the number of lines of context that are given when
8334 displaying the next or previous page in the internal pager. By default,
8335 Mutt will display the line after the last one on the screen at the top of
8336 the next page (0 lines of context).
8341 Default: "-%Z- %C/%m: %-20.20n %s%* -- (%P)"
8343 This variable controls the format of the one-line message "status"
8344 displayed before each message in either the internal or an external pager.
8345 The valid sequences are listed in the $index_format section.
8347 3.141. pager_index_lines
8352 Determines the number of lines of a mini-index which is shown when in the
8353 pager. The current message, unless near the top or bottom of the folder,
8354 will be roughly one third of the way down this mini-index, giving the
8355 reader the context of a few messages before and after the message. This is
8356 useful, for example, to determine how many messages remain to be read in
8357 the current thread. One of the lines is reserved for the status bar from
8358 the index, so a setting of 6 will only show 5 lines of the actual index. A
8359 value of 0 results in no index being shown. If the number of messages in
8360 the current folder is less than $pager_index_lines, then the index will
8361 only use as many lines as it needs.
8368 When set, the internal-pager will not move to the next message when you
8369 are at the end of a message and invoke the <next-page> function.
8371 3.143. crypt_autosign
8376 Setting this variable will cause Mutt to always attempt to
8377 cryptographically sign outgoing messages. This can be overridden by use of
8378 the pgp menu, when signing is not required or encryption is requested as
8379 well. If $smime_is_default is set, then OpenSSL is used instead to create
8380 S/MIME messages and settings can be overridden by use of the smime menu
8381 instead of the pgp menu. (Crypto only)
8383 3.144. crypt_autoencrypt
8388 Setting this variable will cause Mutt to always attempt to PGP encrypt
8389 outgoing messages. This is probably only useful in connection to the
8390 "send-hook" command. It can be overridden by use of the pgp menu, when
8391 encryption is not required or signing is requested as well. If
8392 $smime_is_default is set, then OpenSSL is used instead to create S/MIME
8393 messages and settings can be overridden by use of the smime menu instead.
8396 3.145. pgp_ignore_subkeys
8401 Setting this variable will cause Mutt to ignore OpenPGP subkeys. Instead,
8402 the principal key will inherit the subkeys' capabilities. Unset this if
8403 you want to play interesting key selection games. (PGP only)
8405 3.146. crypt_replyencrypt
8410 If set, automatically PGP or OpenSSL encrypt replies to messages which are
8411 encrypted. (Crypto only)
8413 3.147. crypt_replysign
8418 If set, automatically PGP or OpenSSL sign replies to messages which are
8421 Note: this does not work on messages that are encrypted and signed!
8424 3.148. crypt_replysignencrypted
8429 If set, automatically PGP or OpenSSL sign replies to messages which are
8430 encrypted. This makes sense in combination with $crypt_replyencrypt,
8431 because it allows you to sign all messages which are automatically
8432 encrypted. This works around the problem noted in $crypt_replysign, that
8433 mutt is not able to find out whether an encrypted message is also signed.
8436 3.149. crypt_timestamp
8441 If set, mutt will include a time stamp in the lines surrounding PGP or
8442 S/MIME output, so spoofing such lines is more difficult. If you are using
8443 colors to mark these lines, and rely on these, you may unset this setting.
8446 3.150. sidebar_delim
8451 This specifies the delimiter between the sidebar (if visible) and other
8454 3.151. sidebar_visible
8459 This specifies whether or not to show sidebar (left-side list of folders).
8461 3.152. sidebar_width
8466 The width of the sidebar.
8468 3.153. pgp_use_gpg_agent
8473 If set, mutt will use a possibly-running gpg-agent(1) process. (PGP only)
8475 3.154. crypt_verify_sig
8480 If "yes", always attempt to verify PGP or S/MIME signatures. If "ask-*",
8481 ask whether or not to verify the signature. If \Fi"no", never attempt to
8482 verify cryptographic signatures. (Crypto only)
8484 3.155. smime_is_default
8489 The default behaviour of mutt is to use PGP on all auto-sign/encryption
8490 operations. To override and to use OpenSSL instead this must be set.
8491 However, this has no effect while replying, since mutt will automatically
8492 select the same application that was used to sign/encrypt the original
8493 message. (Note that this variable can be overridden by unsetting
8494 $crypt_autosmime.) (S/MIME only)
8496 3.156. smime_ask_cert_label
8501 This flag controls whether you want to be asked to enter a label for a
8502 certificate about to be added to the database or not. It is set by
8503 default. (S/MIME only)
8505 3.157. smime_decrypt_use_default_key
8510 If set (default) this tells mutt to use the default key for decryption.
8511 Otherwise, if managing multiple certificate-key-pairs, mutt will try to
8512 use the mailbox-address to determine the key to use. It will ask you to
8513 supply a key, if it can't find one. (S/MIME only)
8515 3.158. pgp_entry_format
8518 Default: "%4n %t%f %4l/0x%k %-4a %2c %u"
8520 This variable allows you to customize the PGP key selection menu to your
8521 personal taste. This string is similar to $index_format, but has its own
8522 set of printf(3)-like sequences:
8554 trust/validity of the key-uid association
8558 date of the key where <s> is an strftime(3) expression
8562 3.159. pgp_good_sign
8564 Type: regular expression
8567 If you assign a text to this variable, then a PGP signature is only
8568 considered verified if the output from $pgp_verify_command contains the
8569 text. Use this variable if the exit code from the command is 0 even for
8570 bad signatures. (PGP only)
8572 3.160. pgp_check_exit
8577 If set, mutt will check the exit code of the PGP subprocess when signing
8578 or encrypting. A non-zero exit code means that the subprocess failed. (PGP
8586 If set, use 64 bit PGP key IDs, if unset use the normal 32 bit key IDs.
8589 3.162. pgp_retainable_sigs
8594 If set, signed and encrypted messages will consist of nested
8595 multipart/signed and multipart/encrypted body parts.
8597 This is useful for applications like encrypted and signed mailing lists,
8598 where the outer layer (multipart/encrypted) can be easily removed, while
8599 the inner multipart/signed part is retained. (PGP only)
8601 3.163. pgp_autoinline
8606 This option controls whether Mutt generates old-style inline (traditional)
8607 PGP encrypted or signed messages under certain circumstances. This can be
8608 overridden by use of the pgp menu, when inline is not required.
8610 Note that Mutt might automatically use PGP/MIME for messages which consist
8611 of more than a single MIME part. Mutt can be configured to ask before
8612 sending PGP/MIME messages when inline (traditional) would not work.
8614 Also see the $pgp_mime_auto variable.
8616 Also note that using the old-style PGP message format is strongly
8617 deprecated. (PGP only)
8619 3.164. pgp_replyinline
8624 Setting this variable will cause Mutt to always attempt to create an
8625 inline (traditional) message when replying to a message which is PGP
8626 encrypted/signed inline. This can be overridden by use of the pgp menu,
8627 when inline is not required. This option does not automatically detect if
8628 the (replied-to) message is inline; instead it relies on Mutt internals
8629 for previously checked/flagged messages.
8631 Note that Mutt might automatically use PGP/MIME for messages which consist
8632 of more than a single MIME part. Mutt can be configured to ask before
8633 sending PGP/MIME messages when inline (traditional) would not work.
8635 Also see the $pgp_mime_auto variable.
8637 Also note that using the old-style PGP message format is strongly
8638 deprecated. (PGP only)
8640 3.165. pgp_show_unusable
8645 If set, mutt will display non-usable keys on the PGP key selection menu.
8646 This includes keys which have been revoked, have expired, or have been
8647 marked as "disabled" by the user. (PGP only)
8654 If you have more than one key pair, this option allows you to specify
8655 which of your private keys to use. It is recommended that you use the
8656 keyid form to specify your key (e.g. 0x00112233). (PGP only)
8658 3.167. pgp_strict_enc
8663 If set, Mutt will automatically encode PGP/MIME signed messages as
8664 quoted-printable. Please note that unsetting this variable may lead to
8665 problems with non-verifyable PGP signatures, so only change this if you
8666 know what you are doing. (PGP only)
8673 The number of seconds after which a cached passphrase will expire if not
8676 3.169. pgp_sort_keys
8681 Specifies how the entries in the pgp menu are sorted. The following are
8686 sort alphabetically by user id
8690 sort alphabetically by key id
8694 sort by key creation date
8698 sort by the trust of the key
8700 If you prefer reverse order of the above values, prefix it with
8701 "reverse-". (PGP only)
8703 3.170. pgp_mime_auto
8708 This option controls whether Mutt will prompt you for automatically
8709 sending a (signed/encrypted) message using PGP/MIME when inline
8710 (traditional) fails (for any reason).
8712 Also note that using the old-style PGP message format is strongly
8713 deprecated. (PGP only)
8715 3.171. pgp_auto_decode
8720 If set, mutt will automatically attempt to decrypt traditional PGP
8721 messages whenever the user performs an operation which ordinarily would
8722 result in the contents of the message being operated on. For example, if
8723 the user displays a pgp-traditional message which has not been manually
8724 checked with the <check-traditional-pgp> function, mutt will automatically
8725 check the message for traditional pgp.
8727 3.172. pgp_mime_signature_filename
8730 Default: "signature.asc"
8732 This option sets the filename used for signature parts in PGP/MIME signed
8735 3.173. pgp_mime_signature_description
8738 Default: "Digital signature"
8740 This option sets the Content-Description used for signature parts in
8741 PGP/MIME signed messages.
8743 3.174. pgp_decode_command
8748 This format strings specifies a command which is used to decode
8749 application/pgp attachments.
8751 The PGP command formats have their own set of printf(3)-like sequences:
8755 Expands to PGPPASSFD=0 when a pass phrase is needed, to an empty
8756 string otherwise. Note: This may be used with a %? construct.
8760 Expands to the name of a file containing a message.
8764 Expands to the name of a file containing the signature part of a
8765 multipart/signed attachment when verifying it.
8769 The value of $pgp_sign_as.
8773 One or more key IDs.
8775 For examples on how to configure these formats for the various versions of
8776 PGP which are floating around, see the pgp and gpg sample configuration
8777 files in the samples/ subdirectory which has been installed on your system
8778 alongside the documentation. (PGP only)
8780 3.175. pgp_getkeys_command
8785 This command is invoked whenever mutt will need public key information. Of
8786 the sequences supported by $pgp_decode_command, %r is the only
8787 printf(3)-like sequence used with this format. (PGP only)
8789 3.176. pgp_verify_command
8794 This command is used to verify PGP signatures.
8796 This is a format string, see the $pgp_decode_command command for possible
8797 printf(3)-like sequences. (PGP only)
8799 3.177. pgp_decrypt_command
8804 This command is used to decrypt a PGP encrypted message.
8806 This is a format string, see the $pgp_decode_command command for possible
8807 printf(3)-like sequences. (PGP only)
8809 3.178. pgp_clearsign_command
8814 This format is used to create an old-style "clearsigned" PGP message. Note
8815 that the use of this format is strongly deprecated.
8817 This is a format string, see the $pgp_decode_command command for possible
8818 printf(3)-like sequences. (PGP only)
8820 3.179. pgp_sign_command
8825 This command is used to create the detached PGP signature for a
8826 multipart/signed PGP/MIME body part.
8828 This is a format string, see the $pgp_decode_command command for possible
8829 printf(3)-like sequences. (PGP only)
8831 3.180. pgp_encrypt_sign_command
8836 This command is used to both sign and encrypt a body part.
8838 This is a format string, see the $pgp_decode_command command for possible
8839 printf(3)-like sequences. (PGP only)
8841 3.181. pgp_encrypt_only_command
8846 This command is used to encrypt a body part without signing it.
8848 This is a format string, see the $pgp_decode_command command for possible
8849 printf(3)-like sequences. (PGP only)
8851 3.182. pgp_import_command
8856 This command is used to import a key from a message into the user's public
8859 This is a format string, see the $pgp_decode_command command for possible
8860 printf(3)-like sequences. (PGP only)
8862 3.183. pgp_export_command
8867 This command is used to export a public key from the user's key ring.
8869 This is a format string, see the $pgp_decode_command command for possible
8870 printf(3)-like sequences. (PGP only)
8872 3.184. pgp_verify_key_command
8877 This command is used to verify key information from the key selection
8880 This is a format string, see the $pgp_decode_command command for possible
8881 printf(3)-like sequences. (PGP only)
8883 3.185. pgp_list_secring_command
8888 This command is used to list the secret key ring's contents. The output
8889 format must be analogous to the one used by:
8891 gpg --list-keys --with-colons.
8894 This format is also generated by the pgpring utility which comes with
8897 This is a format string, see the $pgp_decode_command command for possible
8898 printf(3)-like sequences. (PGP only)
8900 3.186. pgp_list_pubring_command
8905 This command is used to list the public key ring's contents. The output
8906 format must be analogous to the one used by
8908 gpg --list-keys --with-colons.
8911 This format is also generated by the pgpring utility which comes with
8914 This is a format string, see the $pgp_decode_command command for possible
8915 printf(3)-like sequences. (PGP only)
8917 3.187. forward_decrypt
8922 Controls the handling of encrypted messages when forwarding a message.
8923 When set, the outer layer of encryption is stripped off. This variable is
8924 only used if $mime_forward is set and $mime_forward_decode is unset. (PGP
8927 3.188. smime_timeout
8932 The number of seconds after which a cached passphrase will expire if not
8935 3.189. smime_encrypt_with
8940 This sets the algorithm that should be used for encryption. Valid choices
8941 are "des", "des3", "rc2-40", "rc2-64", "rc2-128". If unset, "3des"
8942 (TripleDES) is used. (S/MIME only)
8949 Since for S/MIME there is no pubring/secring as with PGP, mutt has to
8950 handle storage and retrieval of keys/certs by itself. This is very basic
8951 right now, and stores keys and certificates in two different directories,
8952 both named as the hash-value retrieved from OpenSSL. There is an index
8953 file which contains mailbox-address keyid pair, and which can be manually
8954 edited. This option points to the location of the private keys. (S/MIME
8957 3.191. smime_ca_location
8962 This variable contains the name of either a directory, or a file which
8963 contains trusted certificates for use with OpenSSL. (S/MIME only)
8965 Note: On Debian systems, this defaults to the first existing file in the
8966 following list: ~/.smime/ca-certificates.crt ~/.smime/ca-bundle.crt
8967 /etc/ssl/certs/ca-certificates.crt.
8969 3.192. smime_certificates
8974 Since for S/MIME there is no pubring/secring as with PGP, mutt has to
8975 handle storage and retrieval of keys by itself. This is very basic right
8976 now, and keys and certificates are stored in two different directories,
8977 both named as the hash-value retrieved from OpenSSL. There is an index
8978 file which contains mailbox-address keyid pairs, and which can be manually
8979 edited. This option points to the location of the certificates. (S/MIME
8982 3.193. smime_decrypt_command
8987 This format string specifies a command which is used to decrypt
8988 application/x-pkcs7-mime attachments.
8990 The OpenSSL command formats have their own set of printf(3)-like sequences
8995 Expands to the name of a file containing a message.
8999 Expands to the name of a file containing the signature part of a
9000 multipart/signed attachment when verifying it.
9004 The key-pair specified with $smime_default_key
9008 One or more certificate IDs.
9012 The algorithm used for encryption.
9016 CA location: Depending on whether $smime_ca_location points to a
9017 directory or file, this expands to "-CApath $smime_ca_location" or
9018 "-CAfile $smime_ca_location".
9020 For examples on how to configure these formats, see the smime.rc in the
9021 samples/ subdirectory which has been installed on your system alongside
9022 the documentation. (S/MIME only)
9024 3.194. smime_verify_command
9029 This command is used to verify S/MIME signatures of type multipart/signed.
9031 This is a format string, see the $smime_decrypt_command command for
9032 possible printf(3)-like sequences. (S/MIME only)
9034 3.195. smime_verify_opaque_command
9039 This command is used to verify S/MIME signatures of type
9040 application/x-pkcs7-mime.
9042 This is a format string, see the $smime_decrypt_command command for
9043 possible printf(3)-like sequences. (S/MIME only)
9045 3.196. smime_sign_command
9050 This command is used to created S/MIME signatures of type
9051 multipart/signed, which can be read by all mail clients.
9053 This is a format string, see the $smime_decrypt_command command for
9054 possible printf(3)-like sequences. (S/MIME only)
9056 3.197. smime_sign_opaque_command
9061 This command is used to created S/MIME signatures of type
9062 application/x-pkcs7-signature, which can only be handled by mail clients
9063 supporting the S/MIME extension.
9065 This is a format string, see the $smime_decrypt_command command for
9066 possible printf(3)-like sequences. (S/MIME only)
9068 3.198. smime_encrypt_command
9073 This command is used to create encrypted S/MIME messages.
9075 This is a format string, see the $smime_decrypt_command command for
9076 possible printf(3)-like sequences. (S/MIME only)
9078 3.199. smime_pk7out_command
9083 This command is used to extract PKCS7 structures of S/MIME signatures, in
9084 order to extract the public X509 certificate(s).
9086 This is a format string, see the $smime_decrypt_command command for
9087 possible printf(3)-like sequences. (S/MIME only)
9089 3.200. smime_get_cert_command
9094 This command is used to extract X509 certificates from a PKCS7 structure.
9096 This is a format string, see the $smime_decrypt_command command for
9097 possible printf(3)-like sequences. (S/MIME only)
9099 3.201. smime_get_signer_cert_command
9104 This command is used to extract only the signers X509 certificate from a
9105 S/MIME signature, so that the certificate's owner may get compared to the
9106 email's "From:" field.
9108 This is a format string, see the $smime_decrypt_command command for
9109 possible printf(3)-like sequences. (S/MIME only)
9111 3.202. smime_import_cert_command
9116 This command is used to import a certificate via smime_keys.
9118 This is a format string, see the $smime_decrypt_command command for
9119 possible printf(3)-like sequences. (S/MIME only)
9121 3.203. smime_get_cert_email_command
9126 This command is used to extract the mail address(es) used for storing X509
9127 certificates, and for verification purposes (to check whether the
9128 certificate was issued for the sender's mailbox).
9130 This is a format string, see the $smime_decrypt_command command for
9131 possible printf(3)-like sequences. (S/MIME only)
9133 3.204. smime_default_key
9138 This is the default key-pair to use for signing. This must be set to the
9139 keyid (the hash-value that OpenSSL generates) to work properly (S/MIME
9142 3.205. ssl_client_cert
9147 The file containing a client certificate and its associated private key.
9149 3.206. ssl_force_tls
9154 If this variable is set, Mutt will require that all connections to remote
9155 servers be encrypted. Furthermore it will attempt to negotiate TLS even if
9156 the server does not advertise the capability, since it would otherwise
9157 have to abort the connection anyway. This option supersedes $ssl_starttls.
9164 If set (the default), mutt will attempt to use STARTTLS on servers
9165 advertising the capability. When unset, mutt will not attempt to use
9166 STARTTLS regardless of the server's capabilities.
9168 3.208. certificate_file
9171 Default: "~/.mutt_certificates"
9173 This variable specifies the file where the certificates you trust are
9174 saved. When an unknown certificate is encountered, you are asked if you
9175 accept it or not. If you accept it, the certificate can also be saved in
9176 this file and further connections are automatically accepted.
9178 You can also manually add CA certificates in this file. Any server
9179 certificate that is signed with one of these CA certificates is also
9180 automatically accepted.
9184 set certificate_file=~/.mutt/certificates
9187 3.209. ssl_use_sslv3
9192 This variable specifies whether to attempt to use SSLv3 in the SSL
9193 authentication process.
9195 3.210. ssl_use_tlsv1
9200 This variable specifies whether to attempt to use TLSv1 in the SSL
9201 authentication process.
9203 3.211. ssl_min_dh_prime_bits
9208 This variable specifies the minimum acceptable prime size (in bits) for
9209 use in any Diffie-Hellman key exchange. A value of 0 will use the default
9210 from the GNUTLS library.
9212 3.212. ssl_ca_certificates_file
9217 This variable specifies a file containing trusted CA certificates. Any
9218 server certificate that is signed with one of these CA certificates is
9219 also automatically accepted.
9223 set ssl_ca_certificates_file=/etc/ssl/certs/ca-certificates.crt
9226 Note: On Debian systems, this variable defaults to the example mentioned.
9227 This file is managed by the "ca-certificates" package.
9234 Used in connection with the <pipe-message> function following
9235 <tag-prefix>. If this variable is unset, when piping a list of tagged
9236 messages Mutt will concatenate the messages and will pipe them all
9237 concatenated. When set, Mutt will pipe the messages one by one. In both
9238 cases the messages are piped in the current sorted order, and the
9239 $pipe_sep separator is added after each message.
9246 Used in connection with the <pipe-message> command. When unset, Mutt will
9247 pipe the messages without any preprocessing. When set, Mutt will weed
9248 headers and will attempt to decode the messages first.
9255 The separator to add between messages when piping a list of tagged
9256 messages to an external Unix command.
9258 3.216. pop_authenticators
9263 This is a colon-delimited list of authentication methods mutt may attempt
9264 to use to log in to an POP server, in the order mutt should try them.
9265 Authentication methods are either "user", "apop" or any SASL mechanism, eg
9266 "digest-md5", "gssapi" or "cram-md5". This option is case-insensitive. If
9267 this option is unset (the default) mutt will try all available methods, in
9268 order from most-secure to least-secure.
9272 set pop_authenticators="digest-md5:apop:user"
9275 3.217. pop_auth_try_all
9280 If set, Mutt will try all available authentication methods. When unset,
9281 Mutt will only fall back to other authentication methods if the previous
9282 methods are unavailable. If a method is available but authentication
9283 fails, Mutt will not connect to the POP server.
9285 3.218. pop_checkinterval
9290 This variable configures how often (in seconds) mutt should look for new
9291 mail in the currently selected mailbox if it is a POP mailbox.
9298 If set, Mutt will delete successfully downloaded messages from the POP
9299 server when using the <fetch-mail> function. When unset, Mutt will
9300 download messages but also leave them on the POP server.
9307 The name of your POP server for the <fetch-mail> function. You can also
9308 specify an alternative port, username and password, ie:
9310 [pop[s]://][username[:password]@]popserver[:port]
9313 where "[...]" denotes an optional part.
9320 If this variable is set, mutt will try to use the "LAST" POP command for
9321 retrieving only unread messages from the POP server when using the
9322 <fetch-mail> function.
9324 3.222. pop_reconnect
9329 Controls whether or not Mutt will try to reconnect to the POP server if
9330 the connection is lost.
9337 Your login name on the POP server.
9339 This variable defaults to your user name on the local machine.
9346 Specifies the password for your POP account. If unset, Mutt will prompt
9347 you for your password when you open a POP mailbox.
9349 Warning: you should only use this option when you are on a fairly secure
9350 machine, because the superuser can read your muttrc even if you are the
9351 only one who can read the file.
9353 3.225. post_indent_string
9358 Similar to the $attribution variable, Mutt will append this string after
9359 the inclusion of a message which is being replied to.
9366 Controls whether or not messages are saved in the $postponed mailbox when
9367 you elect not to send immediately.
9369 Also see the $recall variable.
9374 Default: "~/postponed"
9376 Mutt allows you to indefinitely "postpone sending a message" which you are
9377 editing. When you choose to postpone a message, Mutt saves it in the
9378 mailbox specified by this variable.
9380 Also see the $postpone variable.
9387 If set, a shell command to be executed if mutt fails to establish a
9388 connection to the server. This is useful for setting up secure
9389 connections, e.g. with ssh(1). If the command returns a nonzero status,
9390 mutt gives up opening the server. Example:
9392 set preconnect="ssh -f -q -L 1234:mailhost.net:143 mailhost.net \
9393 sleep 20 < /dev/null > /dev/null"
9396 Mailbox "foo" on "mailhost.net" can now be reached as
9397 "{localhost:1234}foo".
9399 Note: For this example to work, you must be able to log in to the remote
9400 machine without having to enter a password.
9402 When set, Mutt uses the tunnel for all remote connections. Please see
9403 "account-hook" in the manual for how to use different tunnel commands per
9411 Controls whether or not Mutt really prints messages. This is set to
9412 "ask-no" by default, because some people accidentally hit "p" often.
9414 3.230. print_command
9419 This specifies the command pipe that should be used to print messages.
9426 Used in connection with the <print-message> command. If this option is
9427 set, the message is decoded before it is passed to the external command
9428 specified by $print_command. If this option is unset, no processing will
9429 be applied to the message when printing it. The latter setting may be
9430 useful if you are using some advanced printer filter which is able to
9431 properly format e-mail messages for printing.
9438 Used in connection with the <print-message> command. If this option is
9439 set, the command specified by $print_command is executed once for each
9440 message which is to be printed. If this option is unset, the command
9441 specified by $print_command is executed only once, and all the messages
9442 are concatenated, with a form feed as the message separator.
9444 Those who use the enscript(1) program's mail-printing mode will most
9445 likely want to set this option.
9452 If you use an external $pager, setting this variable will cause Mutt to
9453 prompt you for a command when the pager exits rather than returning to the
9454 index menu. If unset, Mutt will return to the index menu when the external
9457 3.234. query_command
9462 This specifies the command that mutt will use to make external address
9463 queries. The string should contain a "%s", which will be substituted with
9464 the query string the user types. See "query" for more information.
9469 Default: "%4c %t %-25.25a %-25.25n %?e?(%e)?"
9471 This variable describes the format of the "query" menu. The following
9472 printf(3)-style sequences are understood:
9480 current entry number
9492 "*" if current entry is tagged, a space otherwise
9496 right justify the rest of the string and pad with "X"
9500 pad to the end of the line with "X"
9504 soft-fill with character "X" as pad
9506 For an explanation of "soft-fill", see the $index_format documentation.
9508 * = can be optionally printed if nonzero, see the $status_format
9516 This variable controls whether "quit" and "exit" actually quit from mutt.
9517 If this option is set, they do quit, if it is unset, they have no effect,
9518 and if it is set to ask-yes or ask-no, you are prompted for confirmation
9519 when you try to quit.
9523 Type: regular expression
9524 Default: "^([ \t]*[|>:}#])+"
9526 A regular expression used in the internal pager to determine quoted
9527 sections of text in the body of a message. Quoted text may be filtered out
9528 using the <toggle-quoted> command, or colored according to the "color
9529 quoted" family of directives.
9531 Higher levels of quoting may be colored differently ("color quoted1",
9532 "color quoted2", etc.). The quoting level is determined by removing the
9533 last character from the matched text and recursively reapplying the
9534 regular expression until it fails to produce a match.
9536 Match detection may be overridden by the $smileys regular expression.
9543 If set to a value greater than 0, Mutt will display which message it is
9544 currently on when reading a mailbox or when performing search actions such
9545 as search and limit. The message is printed after this many messages have
9546 been read or searched (e.g., if set to 25, Mutt will print a message when
9547 it is at message 25, and then again when it gets to message 50). This
9548 variable is meant to indicate progress when reading or searching large
9549 mailboxes which may take some time. When set to 0, only a single message
9550 will appear before the reading the mailbox.
9552 Also see the $write_inc, $net_inc and $time_inc variables and the "tuning"
9553 section of the manual for performance considerations.
9560 If set, all folders are opened in read-only mode.
9567 This variable specifies what "real" or "personal" name should be used when
9570 By default, this is the GECOS field from /etc/passwd. Note that this
9571 variable will not be used when the user has set a real name in the $from
9579 Controls whether or not Mutt recalls postponed messages when composing a
9582 Setting this variable to is not generally useful, and thus not
9585 Also see $postponed variable.
9592 This specifies the file into which your outgoing messages should be
9593 appended. (This is meant as the primary method for saving a copy of your
9594 messages, but another way to do this is using the "my_hdr" command to
9595 create a "Bcc:" field with your email address in it.)
9597 The value of $record is overridden by the $force_name and $save_name
9598 variables, and the "fcc-hook" command.
9602 Type: regular expression
9603 Default: "^(re([\[0-9\]+])*|aw):[ \t]*"
9605 A regular expression used to recognize reply messages when threading and
9606 replying. The default value corresponds to the English "Re:" and the
9614 If unset and you are replying to a message sent by you, Mutt will assume
9615 that you want to reply to the recipients of that message rather than to
9618 Also see the "alternates" command.
9625 If set, when replying to a message, Mutt will use the address listed in
9626 the Reply-to: header as the recipient of the reply. If unset, it will use
9627 the address in the From: header field instead. This option is useful for
9628 reading a mailing list that sets the Reply-To: header field to the list
9629 address and you want to send a private message to the author of a message.
9636 When set, the cursor will be automatically advanced to the next (possibly
9637 undeleted) message whenever a command that modifies the current message is
9640 3.247. reverse_alias
9645 This variable controls whether or not Mutt will display the "personal"
9646 name from your aliases in the index menu if it finds an alias that matches
9647 the message's sender. For example, if you have the following alias:
9649 alias juser abd30425@somewhere.net (Joe User)
9652 and then you receive mail which contains the following header:
9654 From: abd30425@somewhere.net
9657 It would be displayed in the index menu as "Joe User" instead of
9658 "abd30425@somewhere.net." This is useful when the person's e-mail address
9659 is not human friendly.
9666 It may sometimes arrive that you receive mail to a certain machine, move
9667 the messages to another machine, and reply to some the messages from
9668 there. If this variable is set, the default From: line of the reply
9669 messages is built using the address where you received the messages you
9670 are replying to if that address matches your "alternates". If the variable
9671 is unset, or the address that would be used doesn't match your
9672 "alternates", the From: line will use your address on the current machine.
9674 Also see the "alternates" command.
9676 3.249. reverse_realname
9681 This variable fine-tunes the behaviour of the $reverse_name feature. When
9682 it is set, mutt will use the address from incoming messages as-is,
9683 possibly including eventual real names. When it is unset, mutt will
9684 override any such real names with the setting of the $realname variable.
9686 3.250. rfc2047_parameters
9691 When this variable is set, Mutt will decode RFC2047-encoded MIME
9692 parameters. You want to set this variable when mutt suggests you to save
9693 attachments to files named like:
9695 =?iso-8859-1?Q?file=5F=E4=5F991116=2Ezip?=
9698 When this variable is set interactively, the change won't be active until
9701 Note that this use of RFC2047's encoding is explicitly prohibited by the
9702 standard, but nevertheless encountered in the wild.
9704 Also note that setting this parameter will not have the effect that mutt
9705 generates this kind of encoding. Instead, mutt will unconditionally use
9706 the encoding specified in RFC2231.
9713 If set, mutt will take the sender's full address when choosing a default
9714 folder for saving a mail. If $save_name or $force_name is set too, the
9715 selection of the Fcc folder will be changed as well.
9722 When unset, mailboxes which contain no saved messages will be removed when
9723 closed (the exception is $spoolfile which is never removed). If set,
9724 mailboxes are never removed.
9726 Note: This only applies to mbox and MMDF folders, Mutt does not delete MH
9727 and Maildir directories.
9734 This variable controls the size of the history (per category) saved in the
9742 This variable controls how copies of outgoing messages are saved. When
9743 set, a check is made to see if a mailbox specified by the recipient
9744 address exists (this is done by searching for a mailbox in the $folder
9745 directory with the username part of the recipient address). If the mailbox
9746 exists, the outgoing message will be saved to that mailbox, otherwise the
9747 message is saved to the $record mailbox.
9749 Also see the $force_name variable.
9756 When this variable is unset, scoring is turned off. This can be useful to
9757 selectively disable scoring for certain folders when the
9758 $score_threshold_delete variable and related are used.
9760 3.256. score_threshold_delete
9765 Messages which have been assigned a score equal to or lower than the value
9766 of this variable are automatically marked for deletion by mutt. Since mutt
9767 scores are always greater than or equal to zero, the default setting of
9768 this variable will never mark a message for deletion.
9770 3.257. score_threshold_flag
9775 Messages which have been assigned a score greater than or equal to this
9776 variable's value are automatically marked "flagged".
9778 3.258. score_threshold_read
9783 Messages which have been assigned a score equal to or lower than the value
9784 of this variable are automatically marked as read by mutt. Since mutt
9785 scores are always greater than or equal to zero, the default setting of
9786 this variable will never mark a message read.
9791 Default: "us-ascii:iso-8859-1:utf-8"
9793 A colon-delimited list of character sets for outgoing messages. Mutt will
9794 use the first character set into which the text can be converted exactly.
9795 If your $charset is not "iso-8859-1" and recipients may not understand
9796 "UTF-8", it is advisable to include in the list an appropriate widely used
9797 standard character set (such as "iso-8859-2", "koi8-r" or "iso-2022-jp")
9798 either instead of or after "iso-8859-1".
9800 In case the text cannot be converted into one of these exactly, mutt uses
9801 $charset as a fallback.
9806 Default: "/usr/sbin/sendmail -oem -oi"
9808 Specifies the program and arguments used to deliver mail sent by Mutt.
9809 Mutt expects that the specified program interprets additional arguments as
9810 recipient addresses.
9812 3.261. sendmail_wait
9817 Specifies the number of seconds to wait for the $sendmail process to
9818 finish before giving up and putting delivery in the background.
9820 Mutt interprets the value of this variable as follows:
9824 number of seconds to wait for sendmail to finish before continuing
9828 wait forever for sendmail to finish
9832 always put sendmail in the background without waiting
9834 Note that if you specify a value other than 0, the output of the child
9835 process will be put in a temporary file. If there is some error, you will
9836 be informed as to where to find the output.
9843 Command to use when spawning a subshell. By default, the user's login
9844 shell from /etc/passwd is used.
9851 If set, a line containing "-- " (note the trailing space) will be inserted
9852 before your $signature. It is strongly recommended that you not unset this
9853 variable unless your signature contains just your name. The reason for
9854 this is because many software packages use "-- \n" to detect your
9855 signature. For example, Mutt has the ability to highlight the signature in
9856 a different color in the builtin pager.
9863 If set, the signature will be included before any quoted or forwarded
9864 text. It is strongly recommended that you do not set this variable unless
9865 you really know what you are doing, and are prepared to take some heat
9866 from netiquette guardians.
9871 Default: "~/.signature"
9873 Specifies the filename of your signature, which is appended to all
9874 outgoing messages. If the filename ends with a pipe ("|"), it is assumed
9875 that filename is a shell command and input should be read from its
9878 3.266. simple_search
9881 Default: "~f %s | ~s %s"
9883 Specifies how Mutt should expand a simple search into a real search
9884 pattern. A simple search is one that does not contain any of the "~"
9885 pattern operators. See "patterns" for more information on search patterns.
9887 For example, if you simply type "joe" at a search or limit prompt, Mutt
9888 will automatically expand it to the value specified by this variable by
9889 replacing "%s" with the supplied string. For the default value, "joe"
9890 would be expanded to: "~f joe | ~s joe".
9897 Controls the display of lines longer than the screen width in the internal
9898 pager. If set, long lines are wrapped at a word boundary. If unset, lines
9899 are simply wrapped at the screen edge. Also see the $markers variable.
9903 Type: regular expression
9904 Default: "(>From )|(:[-^]?[][)(><}{|/DP])"
9906 The pager uses this variable to catch some common false positives of
9907 $quote_regexp, most notably smileys and not consider a line quoted text if
9908 it also matches $smileys. This mostly happens at the beginning of a line.
9915 Specifies time, in seconds, to pause while displaying certain
9916 informational messages, while moving from folder to folder and after
9917 expunging messages from the current folder. The default is to pause one
9918 second, so a value of zero for this option suppresses the pause.
9920 3.270. smtp_authenticators
9925 This is a colon-delimited list of authentication methods mutt may attempt
9926 to use to log in to an SMTP server, in the order mutt should try them.
9927 Authentication methods are any SASL mechanism, eg "digest-md5", "gssapi"
9928 or "cram-md5". This option is case-insensitive. If it is "unset" (the
9929 default) mutt will try all available methods, in order from most-secure to
9934 set smtp_authenticators="digest-md5:cram-md5"
9942 Specifies the password for your SMTP account. If unset, Mutt will prompt
9943 you for your password when you first send mail via SMTP. See $smtp_url to
9944 configure mutt to send mail via SMTP.
9946 Warning: you should only use this option when you are on a fairly secure
9947 machine, because the superuser can read your muttrc even if you are the
9948 only one who can read the file.
9955 Defines the SMTP smarthost where sent messages should relayed for
9956 delivery. This should take the form of an SMTP URL, eg:
9958 smtp[s]://[user[:pass]@]host[:port]/
9961 \.\.\. where "[...]" denotes an optional part. Setting this variable
9962 overrides the value of the $sendmail variable.
9969 Specifies how to sort messages in the "index" menu. Valid values are:
9977 o mailbox-order (unsorted)
9991 You may optionally use the "reverse-" prefix to specify reverse sorting
9992 order (example: "set sort=reverse-date-sent").
9994 Note: On Debian systems, this option is set by default to "threads" in
10002 Specifies how the entries in the "alias" menu are sorted. The following
10005 o address (sort alphabetically by email address)
10007 o alias (sort alphabetically by alias name)
10009 o unsorted (leave in order specified in .muttrc)
10016 When sorting by threads, this variable controls how threads are sorted in
10017 relation to other threads, and how the branches of the thread trees are
10018 sorted. This can be set to any value that $sort can, except "threads" (in
10019 that case, mutt will just use "date-sent"). You can also specify the
10020 "last-" prefix in addition to the "reverse-" prefix, but "last-" must come
10021 after "reverse-". The "last-" prefix causes messages to be sorted against
10022 its siblings by which has the last descendant, using the rest of $sort_aux
10023 as an ordering. For instance,
10025 set sort_aux=last-date-received
10028 would mean that if a new message is received in a thread, that thread
10029 becomes the last one displayed (or the first, if you have "set
10030 sort=reverse-threads".)
10032 Note: For reversed $sort order $sort_aux is reversed again (which is not
10033 the right thing to do, but kept to not break any existing configuration
10036 3.276. sort_browser
10041 Specifies how to sort entries in the file browser. By default, the entries
10042 are sorted alphabetically. Valid values:
10044 o alpha (alphabetically)
10052 You may optionally use the "reverse-" prefix to specify reverse sorting
10053 order (example: "set sort_browser=reverse-date").
10060 This variable is only useful when sorting by threads with $strict_threads
10061 unset. In that case, it changes the heuristic mutt uses to thread messages
10062 by subject. With $sort_re set, mutt will only attach a message as the
10063 child of another message by subject if the subject of the child message
10064 starts with a substring matching the setting of $reply_regexp. With
10065 $sort_re unset, mutt will attach the message whether or not this is the
10066 case, as long as the non-$reply_regexp parts of both messages are
10069 3.278. spam_separator
10074 This variable controls what happens when multiple spam headers are
10075 matched: if unset, each successive header will overwrite any previous
10076 matches value for the spam label. If set, each successive match will
10077 append to the previous, using this variable's value as a separator.
10084 If your spool mailbox is in a non-default place where Mutt cannot find it,
10085 you can specify its location with this variable. Mutt will automatically
10086 set this variable to the value of the environment variable $MAIL if it is
10089 3.280. status_chars
10094 Controls the characters used by the "%r" indicator in $status_format. The
10095 first character is used when the mailbox is unchanged. The second is used
10096 when the mailbox has been changed, and it needs to be resynchronized. The
10097 third is used if the mailbox is in read-only mode, or if the mailbox will
10098 not be written when exiting that mailbox (You can toggle whether to write
10099 changes to a mailbox with the <toggle-write> operation, bound by default
10100 to "%"). The fourth is used to indicate that the current folder has been
10101 opened in attach- message mode (Certain operations like composing a new
10102 mail, replying, forwarding, etc. are not permitted in this mode).
10104 3.281. status_format
10107 Default: "-%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)---"
10109 Controls the format of the status line displayed in the "index" menu. This
10110 string is similar to $index_format, but has its own set of printf(3)-like
10115 number of mailboxes with new mail *
10119 number of deleted messages *
10123 the full pathname of the current mailbox
10127 number of flagged messages *
10135 size (in bytes) of the current mailbox *
10139 size (in bytes) of the messages shown (i.e., which match the
10144 the number of messages in the mailbox *
10148 the number of messages shown (i.e., which match the current limit)
10153 number of new messages in the mailbox *
10157 number of old unread messages *
10161 number of postponed messages *
10165 percentage of the way through the index
10169 modified/read-only/won't-write/attach-message indicator, according
10174 current sorting mode ($sort)
10178 current aux sorting method ($sort_aux)
10182 number of tagged messages *
10186 number of unread messages *
10190 Mutt version string
10194 currently active limit pattern, if any *
10198 right justify the rest of the string and pad with "X"
10202 pad to the end of the line with "X"
10206 soft-fill with character "X" as pad
10208 For an explanation of "soft-fill", see the $index_format documentation.
10210 * = can be optionally printed if nonzero
10212 Some of the above sequences can be used to optionally print a string if
10213 their value is nonzero. For example, you may only want to see the number
10214 of flagged messages if such messages exist, since zero is not particularly
10215 meaningful. To optionally print a string based upon one of the above
10216 sequences, the following construct is used:
10218 %?<sequence_char>?<optional_string>?
10220 where sequence_char is a character from the table above, and
10221 optional_string is the string you would like printed if sequence_char is
10222 nonzero. optional_string may contain other sequences as well as normal
10223 text, but you may not nest optional strings.
10225 Here is an example illustrating how to optionally print the number of new
10226 messages in a mailbox:
10228 %?n?%n new messages.?
10230 You can also switch between two strings using the following construct:
10232 %?<sequence_char>?<if_string>&<else_string>?
10234 If the value of sequence_char is non-zero, if_string will be expanded,
10235 otherwise else_string will be expanded.
10237 You can force the result of any printf(3)-like sequence to be lowercase by
10238 prefixing the sequence character with an underscore ("_") sign. For
10239 example, if you want to display the local hostname in lowercase, you would
10242 If you prefix the sequence character with a colon (":") character, mutt
10243 will replace any dots in the expansion by underscores. This might be
10244 helpful with IMAP folders that don't like dots in folder names.
10246 3.282. status_on_top
10251 Setting this variable causes the "status bar" to be displayed on the first
10252 line of the screen rather than near the bottom. If $help is set, too it'll
10253 be placed at the bottom.
10255 3.283. strict_threads
10260 If set, threading will only make use of the "In-Reply-To" and
10261 "References:" fields when you $sort by message threads. By default,
10262 messages with the same subject are grouped together in "pseudo threads.".
10263 This may not always be desirable, such as in a personal mailbox where you
10264 might have several unrelated messages with the subjects like "hi" which
10265 will get grouped together. See also $sort_re for a less drastic way of
10266 controlling this behaviour.
10273 When unset, mutt won't stop when the user presses the terminal's susp key,
10274 usually "^Z". This is useful if you run mutt inside an xterm using a
10275 command like "xterm -e mutt".
10282 When set, mutt will generate "format=flowed" bodies with a content type of
10283 "text/plain; format=flowed". This format is easier to handle for some
10284 mailing software, and generally just looks like ordinary text. To actually
10285 make use of this format's features, you'll need support in your editor.
10287 Note that $indent_string is ignored when this option is set.
10289 3.286. thread_received
10294 When set, mutt uses the date received rather than the date sent to thread
10295 messages by subject.
10297 3.287. thorough_search
10302 Affects the ~b and ~h search operations described in section "patterns".
10303 If set, the headers and body/attachments of messages to be searched are
10304 decoded before searching. If unset, messages are searched as they appear
10307 Users searching attachments or for non-ASCII characters should set this
10308 value because decoding also includes MIME parsing/decoding and possible
10309 character set conversions. Otherwise mutt will attempt to match against
10310 the raw message received (for example quoted-printable encoded or with
10311 encoded headers) which may lead to incorrect search results.
10318 When set, the internal-pager will pad blank lines to the bottom of the
10319 screen with a tilde ("~").
10326 Along with $read_inc, $write_inc, and $net_inc, this variable controls the
10327 frequency with which progress updates are displayed. It suppresses updates
10328 less than $time_inc milliseconds apart. This can improve throughput on
10329 systems with slow terminals, or when running mutt on a remote system.
10331 Also see the "tuning" section of the manual for performance
10339 When Mutt is waiting for user input either idleing in menus or in an
10340 interactive prompt, Mutt would block until input is present. Depending on
10341 the context, this would prevent certain operations from working, like
10342 checking for new mail or keeping an IMAP connection alive.
10344 This variable controls how many seconds Mutt will at most wait until it
10345 aborts waiting for input, performs these operations and continues to wait
10348 A value of zero or less will cause Mutt to never time out.
10355 This variable allows you to specify where Mutt will place its temporary
10356 files needed for displaying and composing messages. If this variable is
10357 not set, the environment variable $TMPDIR is used. If $TMPDIR is not set
10358 then "/tmp" is used.
10365 Controls the character used to indicate mail addressed to you. The first
10366 character is the one used when the mail is not addressed to your address.
10367 The second is used when you are the only recipient of the message. The
10368 third is when your address appears in the "To:" header field, but you are
10369 not the only recipient of the message. The fourth character is used when
10370 your address is specified in the "Cc:" header field, but you are not the
10371 only recipient. The fifth character is used to indicate mail that was sent
10372 by you. The sixth character is used to indicate when a mail was sent to a
10373 mailing-list you subscribe to.
10380 If set, this variable specifies the path of the trash folder where the
10381 mails marked for deletion will be moved, instead of being irremediably
10384 NOTE: When you delete a message in the trash folder, it is really deleted,
10385 so that you have a way to clean the trash.
10392 Setting this variable will cause mutt to open a pipe to a command instead
10393 of a raw socket. You may be able to use this to set up preauthenticated
10394 connections to your IMAP/POP3/SMTP server. Example:
10396 set tunnel="ssh -q mailhost.net /usr/local/libexec/imapd"
10399 Note: For this example to work you must be able to log in to the remote
10400 machine without having to enter a password.
10402 3.295. use_8bitmime
10407 Warning: do not set this variable unless you are using a version of
10408 sendmail which supports the -B8BITMIME flag (such as sendmail 8.8.x) or
10409 you may not be able to send mail.
10411 When set, Mutt will invoke $sendmail with the -B8BITMIME flag when sending
10412 8-bit messages to enable ESMTP negotiation.
10419 When set, Mutt will qualify all local addresses (ones without the "@host"
10420 portion) with the value of $hostname. If unset, no addresses will be
10423 3.297. use_envelope_from
10428 When set, mutt will set the envelope sender of the message. If
10429 $envelope_from_address is set, it will be used as the sender address. If
10430 unset, mutt will attempt to derive the sender from the "From:" header.
10432 Note that this information is passed to sendmail command using the -f
10433 command line switch. Therefore setting this option is not useful if the
10434 $sendmail variable already contains -f or if the executable pointed to by
10435 $sendmail doesn't support the -f switch.
10442 When set, Mutt will generate the "From:" header field when sending
10443 messages. If unset, no "From:" header field will be generated unless the
10444 user explicitly sets one using the "my_hdr" command.
10451 When set, Mutt will show you international domain names decoded. Note: You
10452 can use IDNs for addresses even if this is unset. This variable only
10460 When set, Mutt will look for IPv6 addresses of hosts it tries to contact.
10461 If this option is unset, Mutt will restrict itself to IPv4 addresses.
10462 Normally, the default should work.
10469 When set, mutt will add a "User-Agent:" header to outgoing messages,
10470 indicating which version of mutt was used for composing them.
10477 Specifies the visual editor to invoke when the "~v" command is given in
10478 the builtin editor.
10485 Controls whether Mutt will ask you to press a key after an external
10486 command has been invoked by these functions: <shell-escape>,
10487 <pipe-message>, <pipe-entry>, <print-message>, and <print-entry> commands.
10489 It is also used when viewing attachments with "auto_view", provided that
10490 the corresponding mailcap entry has a needsterminal flag, and the external
10491 program is interactive.
10493 When set, Mutt will always ask for a key. When unset, Mutt will wait for a
10494 key only if the external command returned a non-zero status.
10501 When set, mutt will weed headers when displaying, forwarding, printing, or
10502 replying to messages.
10509 When set to a positive value, mutt will wrap text at $wrap characters.
10510 When set to a negative value, mutt will wrap text so that there are $wrap
10511 characters of empty space on the right side of the terminal.
10518 Controls whether searches wrap around the end.
10520 When set, searches will wrap around the first (or last) item. When unset,
10521 incremental searches will not wrap.
10528 (DEPRECATED) Equivalent to setting $wrap with a negative value.
10535 When writing a mailbox, a message will be printed every $write_inc
10536 messages to indicate progress. If set to 0, only a single message will be
10537 displayed before writing a mailbox.
10539 Also see the $read_inc, $net_inc and $time_inc variables and the "tuning"
10540 section of the manual for performance considerations.
10547 Controls whether mutt writes out the "Bcc:" header when preparing messages
10548 to be sent. Exim users may wish to unset this. If mutt is set to deliver
10549 directly via SMTP (see $smtp_url), this option does nothing: mutt will
10550 never write out the "Bcc:" header in this case.
10552 Note: On Debian systems, exim4 and postfix strip BCC headers by default.
10553 The above warning applies to exim3 users, see /etc/Muttrc.
10558 Default: "M%?n?AIL&ail?"
10560 Controls the format of the icon title, as long as xterm_set_titles is
10561 enabled. This string is identical in formatting to the one used by
10564 3.311. xterm_set_titles
10569 Controls whether mutt sets the xterm title bar and icon name (as long as
10570 you are in an appropriate terminal).
10575 Default: "Mutt with %?m?%m messages&no messages?%?n? [%n NEW]?"
10577 Controls the format of the title bar of the xterm provided that
10578 xterm_set_titles has been set. This string is identical in formatting to
10579 the one used by "$status_format".
10583 The following is the list of available functions listed by the mapping in
10584 which they are available. The default key setting is given, and an
10585 explanation of what the function does. The key bindings of these functions
10586 can be changed with the bind command.
10590 The generic menu is not a real menu, but specifies common functions (such
10591 as movement) available in all menus except for pager and editor. Changing
10592 settings for this menu will affect the default bindings for all menus
10595 Table 8.2. Default generic function bindings
10597 +------------------------------------------------------------------------+
10598 | Function | Default key | Description |
10599 |-------------------+-------------+--------------------------------------|
10600 | <top-page> | H | move to the top of the page |
10601 |-------------------+-------------+--------------------------------------|
10602 | <next-entry> | j | move to the next entry |
10603 |-------------------+-------------+--------------------------------------|
10604 | <previous-entry> | k | move to the previous entry |
10605 |-------------------+-------------+--------------------------------------|
10606 | <bottom-page> | L | move to the bottom of the page |
10607 |-------------------+-------------+--------------------------------------|
10608 | <refresh> | ^L | clear and redraw the screen |
10609 |-------------------+-------------+--------------------------------------|
10610 | <middle-page> | M | move to the middle of the page |
10611 |-------------------+-------------+--------------------------------------|
10612 | <search-next> | n | search for next match |
10613 |-------------------+-------------+--------------------------------------|
10614 | <exit> | q | exit this menu |
10615 |-------------------+-------------+--------------------------------------|
10616 | <tag-entry> | t | tag the current entry |
10617 |-------------------+-------------+--------------------------------------|
10618 | <next-page> | z | move to the next page |
10619 |-------------------+-------------+--------------------------------------|
10620 | <previous-page> | Z | move to the previous page |
10621 |-------------------+-------------+--------------------------------------|
10622 | <last-entry> | * | move to the last entry |
10623 |-------------------+-------------+--------------------------------------|
10624 | <first-entry> | = | move to the first entry |
10625 |-------------------+-------------+--------------------------------------|
10626 | <enter-command> | : | enter a muttrc command |
10627 |-------------------+-------------+--------------------------------------|
10628 | <next-line> | > | scroll down one line |
10629 |-------------------+-------------+--------------------------------------|
10630 | <previous-line> | < | scroll up one line |
10631 |-------------------+-------------+--------------------------------------|
10632 | <half-up> | [ | scroll up 1/2 page |
10633 |-------------------+-------------+--------------------------------------|
10634 | <half-down> | ] | scroll down 1/2 page |
10635 |-------------------+-------------+--------------------------------------|
10636 | <help> | ? | this screen |
10637 |-------------------+-------------+--------------------------------------|
10638 | <tag-prefix> | ; | apply next function to tagged |
10640 |-------------------+-------------+--------------------------------------|
10641 | <tag-prefix-cond> | | apply next function ONLY to tagged |
10643 |-------------------+-------------+--------------------------------------|
10644 | <end-cond> | | end of conditional execution (noop) |
10645 |-------------------+-------------+--------------------------------------|
10646 | <shell-escape> | ! | invoke a command in a subshell |
10647 |-------------------+-------------+--------------------------------------|
10648 | <select-entry> | <Return> | select the current entry |
10649 |-------------------+-------------+--------------------------------------|
10650 | <search> | / | search for a regular expression |
10651 |-------------------+-------------+--------------------------------------|
10652 | <search-reverse> | Esc / | search backwards for a regular |
10654 |-------------------+-------------+--------------------------------------|
10655 | <search-opposite> | | search for next match in opposite |
10657 |-------------------+-------------+--------------------------------------|
10658 | <jump> | | jump to an index number |
10659 |-------------------+-------------+--------------------------------------|
10660 | <current-top> | | move entry to top of screen |
10661 |-------------------+-------------+--------------------------------------|
10662 | <current-middle> | | move entry to middle of screen |
10663 |-------------------+-------------+--------------------------------------|
10664 | <current-bottom> | | move entry to bottom of screen |
10665 |-------------------+-------------+--------------------------------------|
10666 | <what-key> | | display the keycode for a key press |
10667 +------------------------------------------------------------------------+
10671 Table 8.3. Default index function bindings
10673 +------------------------------------------------------------------------+
10674 | Function | Default key | Description |
10675 |----------------------------+-------------+-----------------------------|
10676 | <create-alias> | a | create an alias from a |
10677 | | | message sender |
10678 |----------------------------+-------------+-----------------------------|
10679 | <bounce-message> | b | remail a message to another |
10681 |----------------------------+-------------+-----------------------------|
10682 | <break-thread> | # | break the thread in two |
10683 |----------------------------+-------------+-----------------------------|
10684 | <change-folder> | c | open a different folder |
10685 |----------------------------+-------------+-----------------------------|
10686 | <change-folder-readonly> | Esc c | open a different folder in |
10687 | | | read only mode |
10688 |----------------------------+-------------+-----------------------------|
10689 | <next-unread-mailbox> | | open next mailbox with new |
10691 |----------------------------+-------------+-----------------------------|
10692 | <collapse-thread> | Esc v | collapse/uncollapse current |
10694 |----------------------------+-------------+-----------------------------|
10695 | <collapse-all> | Esc V | collapse/uncollapse all |
10697 |----------------------------+-------------+-----------------------------|
10698 | <copy-message> | C | copy a message to a |
10699 | | | file/mailbox |
10700 |----------------------------+-------------+-----------------------------|
10701 | <decode-copy> | Esc C | make decoded (text/plain) |
10703 |----------------------------+-------------+-----------------------------|
10704 | <decode-save> | Esc s | make decoded copy |
10705 | | | (text/plain) and delete |
10706 |----------------------------+-------------+-----------------------------|
10707 | <delete-message> | d | delete the current entry |
10708 |----------------------------+-------------+-----------------------------|
10709 | <delete-pattern> | D | delete messages matching a |
10711 |----------------------------+-------------+-----------------------------|
10712 | <delete-thread> | ^D | delete all messages in |
10714 |----------------------------+-------------+-----------------------------|
10715 | <delete-subthread> | Esc d | delete all messages in |
10717 |----------------------------+-------------+-----------------------------|
10718 | <edit> | e | edit the raw message |
10719 |----------------------------+-------------+-----------------------------|
10720 | <edit-type> | ^E | edit attachment content |
10722 |----------------------------+-------------+-----------------------------|
10723 | <forward-message> | f | forward a message with |
10725 |----------------------------+-------------+-----------------------------|
10726 | <flag-message> | F | toggle a message's |
10727 | | | 'important' flag |
10728 |----------------------------+-------------+-----------------------------|
10729 | <group-reply> | g | reply to all recipients |
10730 |----------------------------+-------------+-----------------------------|
10731 | <fetch-mail> | G | retrieve mail from POP |
10733 |----------------------------+-------------+-----------------------------|
10734 | <imap-fetch-mail> | | force retrieval of mail |
10735 | | | from IMAP server |
10736 |----------------------------+-------------+-----------------------------|
10737 | <display-toggle-weed> | h | display message and toggle |
10738 | | | header weeding |
10739 |----------------------------+-------------+-----------------------------|
10740 | <next-undeleted> | j | move to the next undeleted |
10742 |----------------------------+-------------+-----------------------------|
10743 | <previous-undeleted> | k | move to the previous |
10744 | | | undeleted message |
10745 |----------------------------+-------------+-----------------------------|
10746 | <limit> | l | show only messages matching |
10748 |----------------------------+-------------+-----------------------------|
10749 | <link-threads> | & | link tagged message to the |
10750 | | | current one |
10751 |----------------------------+-------------+-----------------------------|
10752 | <list-reply> | L | reply to specified mailing |
10754 |----------------------------+-------------+-----------------------------|
10755 | <mail> | m | compose a new mail message |
10756 |----------------------------+-------------+-----------------------------|
10757 | <toggle-new> | N | toggle a message's 'new' |
10759 |----------------------------+-------------+-----------------------------|
10760 | <toggle-write> | % | toggle whether the mailbox |
10761 | | | will be rewritten |
10762 |----------------------------+-------------+-----------------------------|
10763 | <next-thread> | ^N | jump to the next thread |
10764 |----------------------------+-------------+-----------------------------|
10765 | <next-subthread> | Esc n | jump to the next subthread |
10766 |----------------------------+-------------+-----------------------------|
10767 | | | really delete the current |
10768 | <purge-message> | | entry, bypassing the trash |
10770 |----------------------------+-------------+-----------------------------|
10771 | <query> | Q | query external program for |
10773 |----------------------------+-------------+-----------------------------|
10774 | <quit> | q | save changes to mailbox and |
10776 |----------------------------+-------------+-----------------------------|
10777 | <reply> | r | reply to a message |
10778 |----------------------------+-------------+-----------------------------|
10779 | <show-limit> | Esc l | show currently active limit |
10781 |----------------------------+-------------+-----------------------------|
10782 | <sort-mailbox> | o | sort messages |
10783 |----------------------------+-------------+-----------------------------|
10784 | <sort-reverse> | O | sort messages in reverse |
10786 |----------------------------+-------------+-----------------------------|
10787 | <print-message> | p | print the current entry |
10788 |----------------------------+-------------+-----------------------------|
10789 | <previous-thread> | ^P | jump to previous thread |
10790 |----------------------------+-------------+-----------------------------|
10791 | <previous-subthread> | Esc p | jump to previous subthread |
10792 |----------------------------+-------------+-----------------------------|
10793 | <recall-message> | R | recall a postponed message |
10794 |----------------------------+-------------+-----------------------------|
10795 | <read-thread> | ^R | mark the current thread as |
10797 |----------------------------+-------------+-----------------------------|
10798 | <read-subthread> | Esc r | mark the current subthread |
10800 |----------------------------+-------------+-----------------------------|
10801 | <resend-message> | Esc e | use the current message as |
10802 | | | a template for a new one |
10803 |----------------------------+-------------+-----------------------------|
10804 | <save-message> | s | save message/attachment to |
10806 |----------------------------+-------------+-----------------------------|
10807 | <tag-pattern> | T | tag messages matching a |
10809 |----------------------------+-------------+-----------------------------|
10810 | <tag-subthread> | | tag the current subthread |
10811 |----------------------------+-------------+-----------------------------|
10812 | <tag-thread> | Esc t | tag the current thread |
10813 |----------------------------+-------------+-----------------------------|
10814 | <untag-pattern> | ^T | untag messages matching a |
10816 |----------------------------+-------------+-----------------------------|
10817 | <undelete-message> | u | undelete the current entry |
10818 |----------------------------+-------------+-----------------------------|
10819 | <undelete-pattern> | U | undelete messages matching |
10821 |----------------------------+-------------+-----------------------------|
10822 | <undelete-subthread> | Esc u | undelete all messages in |
10824 |----------------------------+-------------+-----------------------------|
10825 | <undelete-thread> | ^U | undelete all messages in |
10827 |----------------------------+-------------+-----------------------------|
10828 | <view-attachments> | v | show MIME attachments |
10829 |----------------------------+-------------+-----------------------------|
10830 | <show-version> | V | show the Mutt version |
10831 | | | number and date |
10832 |----------------------------+-------------+-----------------------------|
10833 | <set-flag> | w | set a status flag on a |
10835 |----------------------------+-------------+-----------------------------|
10836 | <clear-flag> | W | clear a status flag from a |
10838 |----------------------------+-------------+-----------------------------|
10839 | <display-message> | <Return> | display a message |
10840 |----------------------------+-------------+-----------------------------|
10841 | <buffy-list> | . | list mailboxes with new |
10843 |----------------------------+-------------+-----------------------------|
10844 | <sync-mailbox> | $ | save changes to mailbox |
10845 |----------------------------+-------------+-----------------------------|
10846 | <display-address> | @ | display full address of |
10848 |----------------------------+-------------+-----------------------------|
10849 | <pipe-message> | | | pipe message/attachment to |
10850 | | | a shell command |
10851 |----------------------------+-------------+-----------------------------|
10852 | <next-new> | | jump to the next new |
10854 |----------------------------+-------------+-----------------------------|
10855 | <next-new-then-unread> | <Tab> | jump to the next new or |
10856 | | | unread message |
10857 |----------------------------+-------------+-----------------------------|
10858 | <previous-new> | | jump to the previous new |
10860 |----------------------------+-------------+-----------------------------|
10861 | <previous-new-then-unread> | Esc <Tab> | jump to the previous new or |
10862 | | | unread message |
10863 |----------------------------+-------------+-----------------------------|
10864 | <next-unread> | | jump to the next unread |
10866 |----------------------------+-------------+-----------------------------|
10867 | <previous-unread> | | jump to the previous unread |
10869 |----------------------------+-------------+-----------------------------|
10870 | <parent-message> | P | jump to parent message in |
10872 |----------------------------+-------------+-----------------------------|
10873 | <extract-keys> | ^K | extract supported public |
10875 |----------------------------+-------------+-----------------------------|
10876 | <forget-passphrase> | ^F | wipe passphrase(s) from |
10878 |----------------------------+-------------+-----------------------------|
10879 | <check-traditional-pgp> | Esc P | check for classic PGP |
10880 |----------------------------+-------------+-----------------------------|
10881 | <mail-key> | Esc k | mail a PGP public key |
10882 |----------------------------+-------------+-----------------------------|
10883 | <decrypt-copy> | | make decrypted copy |
10884 |----------------------------+-------------+-----------------------------|
10885 | <decrypt-save> | | make decrypted copy and |
10887 |----------------------------+-------------+-----------------------------|
10888 | <sidebar-scroll-up> | | scroll the mailbox pane up |
10890 |----------------------------+-------------+-----------------------------|
10891 | <sidebar-scroll-down> | | scroll the mailbox pane |
10892 | | | down 1 page |
10893 |----------------------------+-------------+-----------------------------|
10894 | <sidebar-next> | | go down to next mailbox |
10895 |----------------------------+-------------+-----------------------------|
10896 | <sidebar-prev> | | go to previous mailbox |
10897 |----------------------------+-------------+-----------------------------|
10898 | <sidebar-open> | | open hilighted mailbox |
10899 +------------------------------------------------------------------------+
10903 Table 8.4. Default pager function bindings
10905 +------------------------------------------------------------------------+
10906 | Function | Default key | Description |
10907 |--------------------------+-------------+-------------------------------|
10908 | <break-thread> | # | break the thread in two |
10909 |--------------------------+-------------+-------------------------------|
10910 | <create-alias> | a | create an alias from a |
10911 | | | message sender |
10912 |--------------------------+-------------+-------------------------------|
10913 | <bounce-message> | b | remail a message to another |
10915 |--------------------------+-------------+-------------------------------|
10916 | <change-folder> | c | open a different folder |
10917 |--------------------------+-------------+-------------------------------|
10918 | <change-folder-readonly> | Esc c | open a different folder in |
10919 | | | read only mode |
10920 |--------------------------+-------------+-------------------------------|
10921 | <next-unread-mailbox> | | open next mailbox with new |
10923 |--------------------------+-------------+-------------------------------|
10924 | <copy-message> | C | copy a message to a |
10925 | | | file/mailbox |
10926 |--------------------------+-------------+-------------------------------|
10927 | <decode-copy> | Esc C | make decoded (text/plain) |
10929 |--------------------------+-------------+-------------------------------|
10930 | <delete-message> | d | delete the current entry |
10931 |--------------------------+-------------+-------------------------------|
10932 | <delete-thread> | ^D | delete all messages in thread |
10933 |--------------------------+-------------+-------------------------------|
10934 | <delete-subthread> | Esc d | delete all messages in |
10936 |--------------------------+-------------+-------------------------------|
10937 | <edit> | e | edit the raw message |
10938 |--------------------------+-------------+-------------------------------|
10939 | <edit-type> | ^E | edit attachment content type |
10940 |--------------------------+-------------+-------------------------------|
10941 | <forward-message> | f | forward a message with |
10943 |--------------------------+-------------+-------------------------------|
10944 | <flag-message> | F | toggle a message's |
10945 | | | 'important' flag |
10946 |--------------------------+-------------+-------------------------------|
10947 | <group-reply> | g | reply to all recipients |
10948 |--------------------------+-------------+-------------------------------|
10949 | <imap-fetch-mail> | | force retrieval of mail from |
10950 | | | IMAP server |
10951 |--------------------------+-------------+-------------------------------|
10952 | <display-toggle-weed> | h | display message and toggle |
10953 | | | header weeding |
10954 |--------------------------+-------------+-------------------------------|
10955 | <next-undeleted> | j | move to the next undeleted |
10957 |--------------------------+-------------+-------------------------------|
10958 | <next-entry> | J | move to the next entry |
10959 |--------------------------+-------------+-------------------------------|
10960 | <previous-undeleted> | k | move to the previous |
10961 | | | undeleted message |
10962 |--------------------------+-------------+-------------------------------|
10963 | <previous-entry> | K | move to the previous entry |
10964 |--------------------------+-------------+-------------------------------|
10965 | <link-threads> | & | link tagged message to the |
10966 | | | current one |
10967 |--------------------------+-------------+-------------------------------|
10968 | <list-reply> | L | reply to specified mailing |
10970 |--------------------------+-------------+-------------------------------|
10971 | <redraw-screen> | ^L | clear and redraw the screen |
10972 |--------------------------+-------------+-------------------------------|
10973 | <mail> | m | compose a new mail message |
10974 |--------------------------+-------------+-------------------------------|
10975 | <mark-as-new> | N | toggle a message's 'new' flag |
10976 |--------------------------+-------------+-------------------------------|
10977 | <search-next> | n | search for next match |
10978 |--------------------------+-------------+-------------------------------|
10979 | <next-thread> | ^N | jump to the next thread |
10980 |--------------------------+-------------+-------------------------------|
10981 | <next-subthread> | Esc n | jump to the next subthread |
10982 |--------------------------+-------------+-------------------------------|
10983 | <print-message> | p | print the current entry |
10984 |--------------------------+-------------+-------------------------------|
10985 | <previous-thread> | ^P | jump to previous thread |
10986 |--------------------------+-------------+-------------------------------|
10987 | <previous-subthread> | Esc p | jump to previous subthread |
10988 |--------------------------+-------------+-------------------------------|
10989 | | | really delete the current |
10990 | <purge-message> | | entry, bypassing the trash |
10992 |--------------------------+-------------+-------------------------------|
10993 | <quit> | Q | save changes to mailbox and |
10995 |--------------------------+-------------+-------------------------------|
10996 | <exit> | q | exit this menu |
10997 |--------------------------+-------------+-------------------------------|
10998 | <reply> | r | reply to a message |
10999 |--------------------------+-------------+-------------------------------|
11000 | <recall-message> | R | recall a postponed message |
11001 |--------------------------+-------------+-------------------------------|
11002 | <read-thread> | ^R | mark the current thread as |
11004 |--------------------------+-------------+-------------------------------|
11005 | <read-subthread> | Esc r | mark the current subthread as |
11007 |--------------------------+-------------+-------------------------------|
11008 | <resend-message> | Esc e | use the current message as a |
11009 | | | template for a new one |
11010 |--------------------------+-------------+-------------------------------|
11011 | <save-message> | s | save message/attachment to a |
11013 |--------------------------+-------------+-------------------------------|
11014 | <skip-quoted> | S | skip beyond quoted text |
11015 |--------------------------+-------------+-------------------------------|
11016 | <decode-save> | Esc s | make decoded copy |
11017 | | | (text/plain) and delete |
11018 |--------------------------+-------------+-------------------------------|
11019 | <tag-message> | t | tag the current entry |
11020 |--------------------------+-------------+-------------------------------|
11021 | <toggle-quoted> | T | toggle display of quoted text |
11022 |--------------------------+-------------+-------------------------------|
11023 | <undelete-message> | u | undelete the current entry |
11024 |--------------------------+-------------+-------------------------------|
11025 | <undelete-subthread> | Esc u | undelete all messages in |
11027 |--------------------------+-------------+-------------------------------|
11028 | <undelete-thread> | ^U | undelete all messages in |
11030 |--------------------------+-------------+-------------------------------|
11031 | <view-attachments> | v | show MIME attachments |
11032 |--------------------------+-------------+-------------------------------|
11033 | <show-version> | V | show the Mutt version number |
11035 |--------------------------+-------------+-------------------------------|
11036 | <search-toggle> | \\ | toggle search pattern |
11038 |--------------------------+-------------+-------------------------------|
11039 | <display-address> | @ | display full address of |
11041 |--------------------------+-------------+-------------------------------|
11042 | <next-new> | | jump to the next new message |
11043 |--------------------------+-------------+-------------------------------|
11044 | <pipe-message> | | | pipe message/attachment to a |
11045 | | | shell command |
11046 |--------------------------+-------------+-------------------------------|
11047 | <help> | ? | this screen |
11048 |--------------------------+-------------+-------------------------------|
11049 | <next-page> | <Space> | move to the next page |
11050 |--------------------------+-------------+-------------------------------|
11051 | <previous-page> | - | move to the previous page |
11052 |--------------------------+-------------+-------------------------------|
11053 | <top> | ^ | jump to the top of the |
11055 |--------------------------+-------------+-------------------------------|
11056 | <sync-mailbox> | $ | save changes to mailbox |
11057 |--------------------------+-------------+-------------------------------|
11058 | <shell-escape> | ! | invoke a command in a |
11060 |--------------------------+-------------+-------------------------------|
11061 | <enter-command> | : | enter a muttrc command |
11062 |--------------------------+-------------+-------------------------------|
11063 | <buffy-list> | . | list mailboxes with new mail |
11064 |--------------------------+-------------+-------------------------------|
11065 | <search> | / | search for a regular |
11067 |--------------------------+-------------+-------------------------------|
11068 | <search-reverse> | Esc / | search backwards for a |
11069 | | | regular expression |
11070 |--------------------------+-------------+-------------------------------|
11071 | <search-opposite> | | search for next match in |
11072 | | | opposite direction |
11073 |--------------------------+-------------+-------------------------------|
11074 | <next-line> | <Return> | scroll down one line |
11075 |--------------------------+-------------+-------------------------------|
11076 | <jump> | | jump to an index number |
11077 |--------------------------+-------------+-------------------------------|
11078 | <next-unread> | | jump to the next unread |
11080 |--------------------------+-------------+-------------------------------|
11081 | <previous-new> | | jump to the previous new |
11083 |--------------------------+-------------+-------------------------------|
11084 | <previous-unread> | | jump to the previous unread |
11086 |--------------------------+-------------+-------------------------------|
11087 | <half-up> | | scroll up 1/2 page |
11088 |--------------------------+-------------+-------------------------------|
11089 | <half-down> | | scroll down 1/2 page |
11090 |--------------------------+-------------+-------------------------------|
11091 | <previous-line> | | scroll up one line |
11092 |--------------------------+-------------+-------------------------------|
11093 | <bottom> | | jump to the bottom of the |
11095 |--------------------------+-------------+-------------------------------|
11096 | <parent-message> | P | jump to parent message in |
11098 |--------------------------+-------------+-------------------------------|
11099 | <check-traditional-pgp> | Esc P | check for classic PGP |
11100 |--------------------------+-------------+-------------------------------|
11101 | <mail-key> | Esc k | mail a PGP public key |
11102 |--------------------------+-------------+-------------------------------|
11103 | <extract-keys> | ^K | extract supported public keys |
11104 |--------------------------+-------------+-------------------------------|
11105 | <forget-passphrase> | ^F | wipe passphrase(s) from |
11107 |--------------------------+-------------+-------------------------------|
11108 | <decrypt-copy> | | make decrypted copy |
11109 |--------------------------+-------------+-------------------------------|
11110 | <decrypt-save> | | make decrypted copy and |
11112 |--------------------------+-------------+-------------------------------|
11113 | <what-key> | | display the keycode for a key |
11115 |--------------------------+-------------+-------------------------------|
11116 | <sidebar-scroll-up> | | scroll the mailbox pane up 1 |
11118 |--------------------------+-------------+-------------------------------|
11119 | <sidebar-scroll-down> | | scroll the mailbox pane down |
11121 |--------------------------+-------------+-------------------------------|
11122 | <sidebar-next> | | go down to next mailbox |
11123 |--------------------------+-------------+-------------------------------|
11124 | <sidebar-prev> | | go to previous mailbox |
11125 |--------------------------+-------------+-------------------------------|
11126 | <sidebar-open> | | open hilighted mailbox |
11127 +------------------------------------------------------------------------+
11131 Table 8.5. Default alias function bindings
11133 +-------------------------------------------------------------+
11134 | Function | Default key | Description |
11135 |------------------+-------------+----------------------------|
11136 | <delete-entry> | d | delete the current entry |
11137 |------------------+-------------+----------------------------|
11138 | <undelete-entry> | u | undelete the current entry |
11139 +-------------------------------------------------------------+
11143 Table 8.6. Default query function bindings
11145 +------------------------------------------------------------------------+
11146 | Function | Default key | Description |
11147 |----------------+-------------+-----------------------------------------|
11148 | <create-alias> | a | create an alias from a message sender |
11149 |----------------+-------------+-----------------------------------------|
11150 | <mail> | m | compose a new mail message |
11151 |----------------+-------------+-----------------------------------------|
11152 | <query> | Q | query external program for addresses |
11153 |----------------+-------------+-----------------------------------------|
11154 | <query-append> | A | append new query results to current |
11156 +------------------------------------------------------------------------+
11160 Table 8.7. Default attach function bindings
11162 +------------------------------------------------------------------------+
11163 | Function | Default key | Description |
11164 |-------------------------+-------------+--------------------------------|
11165 | <bounce-message> | b | remail a message to another |
11167 |-------------------------+-------------+--------------------------------|
11168 | <display-toggle-weed> | h | display message and toggle |
11169 | | | header weeding |
11170 |-------------------------+-------------+--------------------------------|
11171 | <edit-type> | ^E | edit attachment content type |
11172 |-------------------------+-------------+--------------------------------|
11173 | <print-entry> | p | print the current entry |
11174 |-------------------------+-------------+--------------------------------|
11175 | <save-entry> | s | save message/attachment to a |
11177 |-------------------------+-------------+--------------------------------|
11178 | <pipe-entry> | | | pipe message/attachment to a |
11179 | | | shell command |
11180 |-------------------------+-------------+--------------------------------|
11181 | <view-mailcap> | m | force viewing of attachment |
11182 | | | using mailcap |
11183 |-------------------------+-------------+--------------------------------|
11184 | <reply> | r | reply to a message |
11185 |-------------------------+-------------+--------------------------------|
11186 | <resend-message> | Esc e | use the current message as a |
11187 | | | template for a new one |
11188 |-------------------------+-------------+--------------------------------|
11189 | <group-reply> | g | reply to all recipients |
11190 |-------------------------+-------------+--------------------------------|
11191 | <list-reply> | L | reply to specified mailing |
11193 |-------------------------+-------------+--------------------------------|
11194 | <forward-message> | f | forward a message with |
11196 |-------------------------+-------------+--------------------------------|
11197 | <view-text> | T | view attachment as text |
11198 |-------------------------+-------------+--------------------------------|
11199 | <view-attach> | <Return> | view attachment using mailcap |
11200 | | | entry if necessary |
11201 |-------------------------+-------------+--------------------------------|
11202 | <delete-entry> | d | delete the current entry |
11203 |-------------------------+-------------+--------------------------------|
11204 | <undelete-entry> | u | undelete the current entry |
11205 |-------------------------+-------------+--------------------------------|
11206 | <collapse-parts> | v | Toggle display of subparts |
11207 |-------------------------+-------------+--------------------------------|
11208 | <check-traditional-pgp> | Esc P | check for classic PGP |
11209 |-------------------------+-------------+--------------------------------|
11210 | <extract-keys> | ^K | extract supported public keys |
11211 |-------------------------+-------------+--------------------------------|
11212 | <forget-passphrase> | ^F | wipe passphrase(s) from memory |
11213 +------------------------------------------------------------------------+
11217 Table 8.8. Default compose function bindings
11219 +------------------------------------------------------------------------+
11220 | Function | Default key | Description |
11221 |-----------------------+-------------+----------------------------------|
11222 | <attach-file> | a | attach file(s) to this message |
11223 |-----------------------+-------------+----------------------------------|
11224 | <attach-message> | A | attach message(s) to this |
11226 |-----------------------+-------------+----------------------------------|
11227 | <edit-bcc> | b | edit the BCC list |
11228 |-----------------------+-------------+----------------------------------|
11229 | <edit-cc> | c | edit the CC list |
11230 |-----------------------+-------------+----------------------------------|
11231 | <copy-file> | C | save message/attachment to a |
11233 |-----------------------+-------------+----------------------------------|
11234 | <detach-file> | D | delete the current entry |
11235 |-----------------------+-------------+----------------------------------|
11236 | <toggle-disposition> | ^D | toggle disposition between |
11237 | | | inline/attachment |
11238 |-----------------------+-------------+----------------------------------|
11239 | <edit-description> | d | edit attachment description |
11240 |-----------------------+-------------+----------------------------------|
11241 | <edit-message> | e | edit the message |
11242 |-----------------------+-------------+----------------------------------|
11243 | <edit-headers> | E | edit the message with headers |
11244 |-----------------------+-------------+----------------------------------|
11245 | <edit-file> | ^X e | edit the file to be attached |
11246 |-----------------------+-------------+----------------------------------|
11247 | <edit-encoding> | ^E | edit attachment |
11248 | | | transfer-encoding |
11249 |-----------------------+-------------+----------------------------------|
11250 | <edit-from> | Esc f | edit the from field |
11251 |-----------------------+-------------+----------------------------------|
11252 | <edit-fcc> | f | enter a file to save a copy of |
11253 | | | this message in |
11254 |-----------------------+-------------+----------------------------------|
11255 | <filter-entry> | F | filter attachment through a |
11256 | | | shell command |
11257 |-----------------------+-------------+----------------------------------|
11258 | <get-attachment> | G | get a temporary copy of an |
11260 |-----------------------+-------------+----------------------------------|
11261 | <display-toggle-weed> | h | display message and toggle |
11262 | | | header weeding |
11263 |-----------------------+-------------+----------------------------------|
11264 | <ispell> | i | run ispell on the message |
11265 |-----------------------+-------------+----------------------------------|
11266 | <print-entry> | l | print the current entry |
11267 |-----------------------+-------------+----------------------------------|
11268 | <edit-mime> | m | edit attachment using mailcap |
11270 |-----------------------+-------------+----------------------------------|
11271 | <new-mime> | n | compose new attachment using |
11272 | | | mailcap entry |
11273 |-----------------------+-------------+----------------------------------|
11274 | <postpone-message> | P | save this message to send later |
11275 |-----------------------+-------------+----------------------------------|
11276 | <edit-reply-to> | r | edit the Reply-To field |
11277 |-----------------------+-------------+----------------------------------|
11278 | <rename-file> | R | rename/move an attached file |
11279 |-----------------------+-------------+----------------------------------|
11280 | <edit-subject> | s | edit the subject of this message |
11281 |-----------------------+-------------+----------------------------------|
11282 | <edit-to> | t | edit the TO list |
11283 |-----------------------+-------------+----------------------------------|
11284 | <edit-type> | ^T | edit attachment content type |
11285 |-----------------------+-------------+----------------------------------|
11286 | <write-fcc> | w | write the message to a folder |
11287 |-----------------------+-------------+----------------------------------|
11288 | <toggle-unlink> | u | toggle whether to delete file |
11289 | | | after sending it |
11290 |-----------------------+-------------+----------------------------------|
11291 | <toggle-recode> | | toggle recoding of this |
11293 |-----------------------+-------------+----------------------------------|
11294 | <update-encoding> | U | update an attachment's encoding |
11296 |-----------------------+-------------+----------------------------------|
11297 | <view-attach> | <Return> | view attachment using mailcap |
11298 | | | entry if necessary |
11299 |-----------------------+-------------+----------------------------------|
11300 | <send-message> | y | send the message |
11301 |-----------------------+-------------+----------------------------------|
11302 | <pipe-entry> | | | pipe message/attachment to a |
11303 | | | shell command |
11304 |-----------------------+-------------+----------------------------------|
11305 | <attach-key> | Esc k | attach a PGP public key |
11306 |-----------------------+-------------+----------------------------------|
11307 | <pgp-menu> | p | show PGP options |
11308 |-----------------------+-------------+----------------------------------|
11309 | <forget-passphrase> | ^F | wipe passphrase(s) from memory |
11310 |-----------------------+-------------+----------------------------------|
11311 | <smime-menu> | S | show S/MIME options |
11312 |-----------------------+-------------+----------------------------------|
11313 | <mix> | M | send the message through a |
11314 | | | mixmaster remailer chain |
11315 +------------------------------------------------------------------------+
11319 Table 8.9. Default postpone function bindings
11321 +-------------------------------------------------------------+
11322 | Function | Default key | Description |
11323 |------------------+-------------+----------------------------|
11324 | <delete-entry> | d | delete the current entry |
11325 |------------------+-------------+----------------------------|
11326 | <undelete-entry> | u | undelete the current entry |
11327 +-------------------------------------------------------------+
11331 Table 8.10. Default browser function bindings
11333 +------------------------------------------------------------------------+
11334 | Function | Default key | Description |
11335 |---------------------+-------------+------------------------------------|
11336 | <change-dir> | c | change directories |
11337 |---------------------+-------------+------------------------------------|
11338 | <display-filename> | @ | display the currently selected |
11339 | | | file's name |
11340 |---------------------+-------------+------------------------------------|
11341 | <enter-mask> | m | enter a file mask |
11342 |---------------------+-------------+------------------------------------|
11343 | <sort> | o | sort messages |
11344 |---------------------+-------------+------------------------------------|
11345 | <sort-reverse> | O | sort messages in reverse order |
11346 |---------------------+-------------+------------------------------------|
11347 | <select-new> | N | select a new file in this |
11349 |---------------------+-------------+------------------------------------|
11350 | <check-new> | | check mailboxes for new mail |
11351 |---------------------+-------------+------------------------------------|
11352 | <toggle-mailboxes> | <Tab> | toggle whether to browse mailboxes |
11353 | | | or all files |
11354 |---------------------+-------------+------------------------------------|
11355 | <view-file> | <Space> | view file |
11356 |---------------------+-------------+------------------------------------|
11357 | <buffy-list> | . | list mailboxes with new mail |
11358 |---------------------+-------------+------------------------------------|
11359 | <create-mailbox> | C | create a new mailbox (IMAP only) |
11360 |---------------------+-------------+------------------------------------|
11361 | <delete-mailbox> | d | delete the current mailbox (IMAP |
11363 |---------------------+-------------+------------------------------------|
11364 | <rename-mailbox> | r | rename the current mailbox (IMAP |
11366 |---------------------+-------------+------------------------------------|
11367 | <subscribe> | s | subscribe to current mailbox (IMAP |
11369 |---------------------+-------------+------------------------------------|
11370 | <unsubscribe> | u | unsubscribe from current mailbox |
11371 | | | (IMAP only) |
11372 |---------------------+-------------+------------------------------------|
11373 | <toggle-subscribed> | T | toggle view all/subscribed |
11374 | | | mailboxes (IMAP only) |
11375 +------------------------------------------------------------------------+
11379 Table 8.11. Default pgp function bindings
11381 +------------------------------------------------------+
11382 | Function | Default key | Description |
11383 |--------------+-------------+-------------------------|
11384 | <verify-key> | c | verify a PGP public key |
11385 |--------------+-------------+-------------------------|
11386 | <view-name> | % | view the key's user id |
11387 +------------------------------------------------------+
11391 Table 8.12. Default smime function bindings
11393 +------------------------------------------------------+
11394 | Function | Default key | Description |
11395 |--------------+-------------+-------------------------|
11396 | <verify-key> | c | verify a PGP public key |
11397 |--------------+-------------+-------------------------|
11398 | <view-name> | % | view the key's user id |
11399 +------------------------------------------------------+
11403 Table 8.13. Default mix function bindings
11405 +-----------------------------------------------------------------------+
11406 | Function | Default key | Description |
11407 |--------------+-------------+------------------------------------------|
11408 | <accept> | <Return> | Accept the chain constructed |
11409 |--------------+-------------+------------------------------------------|
11410 | <append> | a | Append a remailer to the chain |
11411 |--------------+-------------+------------------------------------------|
11412 | <insert> | i | Insert a remailer into the chain |
11413 |--------------+-------------+------------------------------------------|
11414 | <delete> | d | Delete a remailer from the chain |
11415 |--------------+-------------+------------------------------------------|
11416 | <chain-prev> | <Left> | Select the previous element of the chain |
11417 |--------------+-------------+------------------------------------------|
11418 | <chain-next> | <Right> | Select the next element of the chain |
11419 +-----------------------------------------------------------------------+
11423 Table 8.14. Default editor function bindings
11425 +------------------------------------------------------------------------+
11426 | Function | Default key | Description |
11427 |-------------------+-------------+--------------------------------------|
11428 | <bol> | ^A | jump to the beginning of the line |
11429 |-------------------+-------------+--------------------------------------|
11430 | <backward-char> | ^B | move the cursor one character to the |
11432 |-------------------+-------------+--------------------------------------|
11433 | <backward-word> | Esc b | move the cursor to the beginning of |
11435 |-------------------+-------------+--------------------------------------|
11436 | <capitalize-word> | Esc c | capitalize the word |
11437 |-------------------+-------------+--------------------------------------|
11438 | <downcase-word> | Esc l | convert the word to lower case |
11439 |-------------------+-------------+--------------------------------------|
11440 | <upcase-word> | Esc u | convert the word to upper case |
11441 |-------------------+-------------+--------------------------------------|
11442 | <delete-char> | ^D | delete the char under the cursor |
11443 |-------------------+-------------+--------------------------------------|
11444 | <eol> | ^E | jump to the end of the line |
11445 |-------------------+-------------+--------------------------------------|
11446 | <forward-char> | ^F | move the cursor one character to the |
11448 |-------------------+-------------+--------------------------------------|
11449 | <forward-word> | Esc f | move the cursor to the end of the |
11451 |-------------------+-------------+--------------------------------------|
11452 | <backspace> | <Backspace> | delete the char in front of the |
11454 |-------------------+-------------+--------------------------------------|
11455 | <kill-eol> | ^K | delete chars from cursor to end of |
11457 |-------------------+-------------+--------------------------------------|
11458 | <kill-eow> | Esc d | delete chars from the cursor to the |
11459 | | | end of the word |
11460 |-------------------+-------------+--------------------------------------|
11461 | <kill-line> | ^U | delete all chars on the line |
11462 |-------------------+-------------+--------------------------------------|
11463 | <quote-char> | ^V | quote the next typed key |
11464 |-------------------+-------------+--------------------------------------|
11465 | <kill-word> | ^W | delete the word in front of the |
11467 |-------------------+-------------+--------------------------------------|
11468 | <complete> | <Tab> | complete filename or alias |
11469 |-------------------+-------------+--------------------------------------|
11470 | <complete-query> | ^T | complete address with query |
11471 |-------------------+-------------+--------------------------------------|
11472 | <buffy-cycle> | <Space> | cycle among incoming mailboxes |
11473 |-------------------+-------------+--------------------------------------|
11474 | <history-up> | | scroll up through the history list |
11475 |-------------------+-------------+--------------------------------------|
11476 | <history-down> | | scroll down through the history list |
11477 |-------------------+-------------+--------------------------------------|
11478 | <transpose-chars> | | transpose character under cursor |
11479 | | | with previous |
11480 +------------------------------------------------------------------------+
11482 Chapter 9. Miscellany
11486 1. Acknowledgements
11488 2. About this document
11490 1. Acknowledgements
11492 Kari Hurtta <kari.hurtta@fmi.fi> co-developed the original MIME parsing
11493 code back in the ELM-ME days.
11495 The following people have been very helpful to the development of Mutt:
11497 o Vikas Agnihotri <vikasa@writeme.com>
11499 o Francois Berjon <Francois.Berjon@aar.alcatel-alsthom.fr>
11501 o Aric Blumer <aric@fore.com>
11503 o John Capo <jc@irbs.com>
11505 o David Champion <dgc@uchicago.edu>
11507 o Brendan Cully <brendan@kublai.com>
11509 o Liviu Daia <daia@stoilow.imar.ro>
11511 o Thomas E. Dickey <dickey@herndon4.his.com>
11513 o David DeSimone <fox@convex.hp.com>
11515 o Nickolay N. Dudorov <nnd@wint.itfs.nsk.su>
11517 o Ruslan Ermilov <ru@freebsd.org>
11519 o Edmund Grimley Evans <edmundo@rano.org>
11521 o Michael Finken <finken@conware.de>
11523 o Sven Guckes <guckes@math.fu-berlin.de>
11525 o Lars Hecking <lhecking@nmrc.ie>
11527 o Mark Holloman <holloman@nando.net>
11529 o Andreas Holzmann <holzmann@fmi.uni-passau.de>
11531 o Marco d'Itri <md@linux.it>
11533 o Bjo:rn Jacke <bjacke@suse.com>
11535 o Byrial Jensen <byrial@image.dk>
11537 o David Jeske <jeske@igcom.net>
11539 o Christophe Kalt <kalt@hugo.int-evry.fr>
11541 o Tommi Komulainen <Tommi.Komulainen@iki.fi>
11543 o Felix von Leitner (a.k.a "Fefe") <leitner@math.fu-berlin.de>
11545 o Brandon Long <blong@fiction.net>
11547 o Jimmy Ma:kela: <jmy@flashback.net>
11549 o Lars Marowsky-Bree <lmb@pointer.in-minden.de>
11551 o Thomas "Mike" Michlmayr <mike@cosy.sbg.ac.at>
11553 o Andrew W. Nosenko <awn@bcs.zp.ua>
11555 o David O'Brien <obrien@Nuxi.cs.ucdavis.edu>
11557 o Clint Olsen <olsenc@ichips.intel.com>
11559 o Park Myeong Seok <pms@romance.kaist.ac.kr>
11561 o Thomas Parmelan <tom@ankh.fr.eu.org>
11563 o Ollivier Robert <roberto@keltia.freenix.fr>
11565 o Thomas Roessler <roessler@does-not-exist.org>
11567 o Roland Rosenfeld <roland@spinnaker.de>
11569 o Rocco Rutte <pdmef@gmx.net>
11571 o TAKIZAWA Takashi <taki@luna.email.ne.jp>
11573 o Allain Thivillon <Allain.Thivillon@alma.fr>
11575 o Gero Treuner <gero@70t.de>
11577 o Vsevolod Volkov <vvv@lucky.net>
11579 o Ken Weinert <kenw@ihs.com>
11581 2. About this document
11583 This document was written in DocBook, and then rendered using the Gnome