1 The Mutt Next Generation E-Mail Client
15 Michael Elinks on mutt, circa 1995: ``All mail clients suck. This one just
18 Sven Guckes on mutt, ca. 2003: ``But it still sucks!''
20 --------------------------------------------------------------------------
32 4. Software Distribution Sites
44 1.1. Screens and Menus
76 3. Moving Around in Menus
78 4. Editing Input Fields
80 5. Reading Mail - The Index and Pager
82 5.1. The Message Index
88 5.4. Miscellaneous Functions
92 6.1. Composing new messages
96 6.3. Editing the message header
98 6.4. Using Mutt-ng with PGP
100 6.5. Sending anonymous messages via mixmaster
102 7. Forwarding and Bouncing Mail
108 1. Locations of Configuration Files
110 2. Basic Syntax of Initialization Files
112 3. Expansion within variables
114 3.1. Commands' Output
116 3.2. Environment Variables
118 3.3. Configuration Variables
120 3.4. Self-Defined Variables
122 3.5. Pre-Defined Variables
124 3.6. Type Conversions
126 4. Defining/Using aliases
128 5. Changing the default key bindings
130 6. Defining aliases for character sets
132 7. Setting variables based upon mailbox
136 9. Using color and mono video attributes
138 10. Ignoring (weeding) unwanted message headers
140 11. Alternative addresses
146 12.2. Receiving: Display Setup
150 12.4. Additional Notes
154 14. Using Multiple spool mailboxes
156 15. Defining mailboxes which receive mail
158 16. User defined headers
160 17. Defining the order of headers when viewing messages
162 18. Specify default save filename
164 19. Specify default Fcc: mailbox when composing
166 20. Specify default save filename and default Fcc: mailbox at
169 21. Change settings based upon message recipients
171 22. Change settings before formatting a message
173 23. Choosing the cryptographic key of the recipient
175 24. Adding key sequences to the keyboard buffer
177 25. Executing functions
183 28. Setting variables
185 29. Reading initialization commands from another file
195 31.3. Conditional parts
197 32. Obsolete Variables
201 1. Regular Expressions
205 2.1. Complex Patterns
207 2.2. Patterns and Dates
213 3.2. Conditional Expansion
215 3.3. Modifications and Padding
221 5.1. Message Matching in Hooks
225 7. External Address Queries
231 10. Handling Mailing Lists
235 11.1. Linking threads
237 11.2. Breaking threads
239 12. Delivery Status Notification (DSN) Support
241 13. POP3 Support (OPTIONAL)
243 14. IMAP Support (OPTIONAL)
245 14.1. The Folder Browser
249 15. NNTP Support (OPTIONAL)
253 16. SMTP Support (OPTIONAL)
255 17. Managing multiple IMAP/POP/NNTP accounts (OPTIONAL)
257 18. Start a WWW Browser on URLs (EXTERNAL)
259 19. Compressed folders Support (OPTIONAL)
261 19.1. Open a compressed mailbox for reading
263 19.2. Write a compressed mailbox
265 19.3. Append a message to a compressed mailbox
267 19.4. Encrypted folders
269 5. Mutt-ng's MIME Support
271 1. Using MIME in Mutt
273 1.1. Viewing MIME messages in the pager
275 1.2. The Attachment Menu
277 1.3. The Compose Menu
279 2. MIME Type configuration with mime.types
281 3. MIME Viewer configuration with mailcap
283 3.1. The Basics of the mailcap file
285 3.2. Secure use of mailcap
287 3.3. Advanced mailcap Usage
289 3.4. Example mailcap files
293 5. MIME Multipart/Alternative
297 6. Security Considerations
305 3.1. Message-ID: headers
307 3.2. mailto:-style links
309 4. External applications
317 1. Command line options
321 3. Configuration Commands
323 4. Configuration variables
357 2.1. Default Menu Movement Keys
359 2.2. Built-In Editor Functions
361 2.3. Default Index Menu Bindings
363 2.4. Default Pager Menu Bindings
365 2.5. ANSI Escape Sequences
369 2.7. Default Thread Function Bindings
371 2.8. Default Mail Composition Bindings
373 2.9. Default Compose Menu Bindings
375 2.10. PGP Key Menu Flags
377 3.1. Alternative Key Names
379 4.1. Default Sidebar Function Bindings
381 7.1. Mutt-NG Command Line Options
385 7.3. Obsolete Variables
387 Chapter 1. Introduction
397 4. Software Distribution Sites
407 Mutt-ng is a small but very powerful text-based MIME mail client. Mutt-ng
408 is highly configurable, and is well suited to the mail power user with
409 advanced features like key bindings, keyboard macros, mail threading,
410 regular expression searches and a powerful pattern matching language for
411 selecting groups of messages.
413 This documentation additionally contains documentation to Mutt-NG ,a fork
414 from Mutt with the goal to fix all the little annoyances of Mutt, to
415 integrate all the Mutt patches that are floating around in the web, and to
416 add other new features. Features specific to Mutt-ng will be discussed in
417 an extra section. Don't be confused when most of the documentation talk
418 about Mutt and not Mutt-ng, Mutt-ng contains all Mutt features, plus many
423 http://www.muttng.org
427 o <mutt-ng-users@lists.berlios.de>: This is where the mutt-ng user
430 o <mutt-ng-devel@lists.berlios.de>: The development mailing list for
433 4. Software Distribution Sites
435 So far, there are no official releases of Mutt-ng, but you can download
436 daily snapshots from http://mutt-ng.berlios.de/snapshots/
440 Visit channel #muttng on irc.freenode.net (www.freenode.net) to chat with
441 other people interested in Mutt-ng.
445 If you want to read fresh news about the latest development in Mutt-ng,
446 and get informed about stuff like interesting, Mutt-ng-related articles
447 and packages for your favorite distribution, you can read and/or subscribe
448 to our Mutt-ng development weblog.
452 Mutt is Copyright (C) 1996-2000 Michael R. Elkins <me@cs.hmc.edu> and
455 This program is free software; you can redistribute it and/or modify it
456 under the terms of the GNU General Public License as published by the Free
457 Software Foundation; either version 2 of the License, or (at your option)
460 This program is distributed in the hope that it will be useful, but
461 WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
462 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
465 You should have received a copy of the GNU General Public License along
466 with this program; if not, write to the Free Software Foundation, Inc., 59
467 Temple Place - Suite 330, Boston, MA 02111, USA.
469 Chapter 2. Getting Started
475 1.1. Screens and Menus
507 3. Moving Around in Menus
509 4. Editing Input Fields
511 5. Reading Mail - The Index and Pager
513 5.1. The Message Index
519 5.4. Miscellaneous Functions
523 6.1. Composing new messages
527 6.3. Editing the message header
529 6.4. Using Mutt-ng with PGP
531 6.5. Sending anonymous messages via mixmaster
533 7. Forwarding and Bouncing Mail
539 1.1. Screens and Menus
541 mutt-ng offers different screens of which every has its special purpose:
543 o The index displays the contents of the currently opened mailbox.
545 o The pager is responsible for displaying messages, that is, the header,
546 the body and all attached parts.
548 o The file browser offers operations on and displays information of all
549 folders mutt-ng should watch for mail.
551 o The sidebar offers a permanent view of which mailboxes contain how
552 many total, new and/or flagged mails.
554 o The help screen lists for all currently available commands how to
555 invoke them as well as a short description.
557 o The compose menu is a comfortable interface take last actions before
558 sending mail: change subjects, attach files, remove attachements, etc.
560 o The attachement menu gives a summary and the tree structure of the
561 attachements of the current message.
563 o The alias menu lists all or a fraction of the aliases a user has
566 o The key menu used in connection with encryption lets users choose the
567 right key to encrypt with.
569 When mutt-ng is started without any further options, it'll open the users
570 default mailbox and display the index.
574 Mutt-ng does not feature an internal configuration interface or menu due
575 to the simple fact that this would be too complex to handle (currently
576 there are several hundred variables which fine-tune the behaviour.)
578 Mutt-ng is configured using configuration files which allow users to add
579 comments or manage them via version control systems to ease maintenance.
581 Also, mutt-ng comes with a shell script named grml-muttng kindly
582 contributed by users which really helps and eases the creation of a user's
583 configuration file. When downloading the source code via a snapshot or via
584 subversion, it can be found in the contrib directory.
588 Mutt-ng offers great flexibility due to the use of functions: internally,
589 every action a user can make mutt-ng perform is named ``function.'' Those
590 functions are assigned to keys (or even key sequences) and may be
591 completely adjusted to user's needs. The basic idea is that the impatient
592 users get a very intuitive interface to start off with and advanced users
593 virtually get no limits to adjustments.
597 Mutt-ng has two basic concepts of user interaction:
599 1. There is one dedicated line on the screen used to query the user for
600 input, issue any command, query variables and display error and
601 informational messages. As for every type of user input, this requires
602 manual action leading to the need of input.
604 2. The automatized interface for interaction are the so called hooks.
605 Hooks specify actions the user wants to be performed at well-defined
606 situations: what to do when entering which folder, what to do when
607 displaying or replying to what kind of message, etc. These are
608 optional, i.e. a user doesn't need to specify them but can do so.
612 Although mutt-ng has many functionality built-in, many features can be
613 delegated to external tools to increase flexibility: users can define
614 programs to filter a message through before displaying, users can use any
615 program they want for displaying a message, message types (such as PDF or
616 PostScript) for which mutt-ng doesn't have a built-in filter can be
617 rendered by arbitrary tools and so forth. Although mutt-ng has an alias
618 mechanism built-in, it features using external tools to query for nearly
619 every type of addresses from sources like LDAP, databases or just the list
620 of locally known users.
624 Mutt-ng has a built-in pattern matching ``language'' which is as widely
625 used as possible to present a consistent interface to users. The same
626 ``pattern terms'' can be used for searching, scoring, message selection
633 The index is the screen that you usually see first when you start mutt-ng.
634 It gives an overview over your emails in the currently opened mailbox. By
635 default, this is your system mailbox. The information you see in the index
636 is a list of emails, each with its number on the left, its flags (new
637 email, important email, email that has been forwarded or replied to,
638 tagged email, ...), the date when email was sent, its sender, the email
639 size, and the subject. Additionally, the index also shows thread
640 hierarchies: when you reply to an email, and the other person replies
641 back, you can see the other's person email in a "sub-tree" below. This is
642 especially useful for personal email between a group of people or when
643 you've subscribed to mailing lists.
647 The pager is responsible for showing the email content. On the top of the
648 pager you have an overview over the most important email headers like the
649 sender, the recipient, the subject, and much more information. How much
650 information you actually see depends on your configuration, which we'll
653 Below the headers, you see the email body which usually contains the
654 message. If the email contains any attachments, you will see more
655 information about them below the email body, or, if the attachments are
656 text files, you can view them directly in the pager.
658 To give the user a good overview, it is possible to configure mutt-ng to
659 show different things in the pager with different colors. Virtually
660 everything that can be described with a regular expression can be colored,
661 e.g. URLs, email addresses or smileys.
665 The file browser is the interface to the local or remote file system. When
666 selecting a mailbox to open, the browser allows custom sorting of items,
667 limiting the items shown by a regular expression and a freely adjustable
668 format of what to display in which way. It also allows for easy navigation
669 through the file system when selecting file(s) to attach to a message,
670 select multiple files to attach and many more.
674 The sidebar comes in handy to manage mails which are spread over different
675 folders. All folders users setup mutt-ng to watch for new mail will be
676 listed. The listing includes not only the name but also the number of
677 total messages, the number of new and flagged messages. Items with new
678 mail may be colored different from those with flagged mail, items may be
679 shortened or compress if they're they to long to be printed in full form
680 so that by abbreviated names, user still now what the name stands for.
684 The help screen is meant to offer a quick help to the user. It lists the
685 current configuration of key bindings and their associated commands
686 including a short description, and currently unbound functions that still
687 need to be associated with a key binding (or alternatively, they can be
688 called via the mutt-ng command prompt).
692 The compose menu features a split screen containing the information which
693 really matter before actually sending a message by mail or posting an
694 article to a newsgroup: who gets the message as what (recipient,
695 newsgroup, who gets what kind of copy). Additionally, users may set
696 security options like deciding whether to sign, encrypt or sign and
697 encrypt a message with/for what keys.
699 Also, it's used to attach messages, news articles or files to a message,
700 to re-edit any attachment including the message itself.
704 The alias menu is used to help users finding the recipients of messages.
705 For users who need to contact many people, there's no need to remember
706 addresses or names completely because it allows for searching, too. The
707 alias mechanism and thus the alias menu also features grouping several
708 addresses by a shorter nickname, the actual alias, so that users don't
709 have to select each single recipient manually.
713 As will be later discussed in detail, mutt-ng features a good and stable
714 MIME implementation, that is, is greatly supports sending and receiving
715 messages of arbitrary type. The attachment menu displays a message's
716 structure in detail: what content parts are attached to which parent part
717 (which gives a true tree structure), which type is of what type and what
718 size. Single parts may saved, deleted or modified to offer great and easy
719 access to message's internals.
725 3. Moving Around in Menus
727 Information is presented in menus, very similar to ELM. Here is a
728 tableshowing the common keys used to navigate menus in Mutt-ng.
730 Table 2.1. Default Menu Movement Keys
732 +------------------------------------------------------------------------+
733 | Key | Function | Description |
734 |-------------+----------------+-----------------------------------------|
735 | j or Down | next-entry | move to the next entry |
736 |-------------+----------------+-----------------------------------------|
737 | k or Up | previous-entry | move to the previous entry |
738 |-------------+----------------+-----------------------------------------|
739 | z or PageDn | page-down | go to the next page |
740 |-------------+----------------+-----------------------------------------|
741 | Z or PageUp | page-up | go to the previous page |
742 |-------------+----------------+-----------------------------------------|
743 | = or Home | first-entry | jump to the first entry |
744 |-------------+----------------+-----------------------------------------|
745 | * or End | last-entry | jump to the last entry |
746 |-------------+----------------+-----------------------------------------|
747 | q | quit | exit the current menu |
748 |-------------+----------------+-----------------------------------------|
749 | ? | help | list all key bindings for the current |
751 +------------------------------------------------------------------------+
753 4. Editing Input Fields
755 Mutt-ng has a builtin line editor which is used as the primary way to
756 input textual data such as email addresses or filenames. The keys used to
757 move around while editing are very similar to those of Emacs.
759 Table 2.2. Built-In Editor Functions
761 +------------------------------------------------------------------------+
762 | Key | Function | Description |
763 |----------------+-----------------+-------------------------------------|
764 | ^A or <Home> | bol | move to the start of the line |
765 |----------------+-----------------+-------------------------------------|
766 | ^B or <Left> | backward-char | move back one char |
767 |----------------+-----------------+-------------------------------------|
768 | Esc B | backward-word | move back one word |
769 |----------------+-----------------+-------------------------------------|
770 | ^D or <Delete> | delete-char | delete the char under the cursor |
771 |----------------+-----------------+-------------------------------------|
772 | ^E or <End> | eol | move to the end of the line |
773 |----------------+-----------------+-------------------------------------|
774 | ^F or <Right> | forward-char | move forward one char |
775 |----------------+-----------------+-------------------------------------|
776 | Esc F | forward-word | move forward one word |
777 |----------------+-----------------+-------------------------------------|
778 | <Tab> | complete | complete filename or alias |
779 |----------------+-----------------+-------------------------------------|
780 | ^T | complete-query | complete address with query |
781 |----------------+-----------------+-------------------------------------|
782 | ^K | kill-eol | delete to the end of the line |
783 |----------------+-----------------+-------------------------------------|
784 | ESC d | kill-eow | delete to the end of the word |
785 |----------------+-----------------+-------------------------------------|
786 | ^W | kill-word | kill the word in front of the |
788 |----------------+-----------------+-------------------------------------|
789 | ^U | kill-line | delete entire line |
790 |----------------+-----------------+-------------------------------------|
791 | ^V | quote-char | quote the next typed key |
792 |----------------+-----------------+-------------------------------------|
793 | <Up> | history-up | recall previous string from history |
794 |----------------+-----------------+-------------------------------------|
795 | <Down> | history-down | recall next string from history |
796 |----------------+-----------------+-------------------------------------|
797 | <BackSpace> | backspace | kill the char in front of the |
799 |----------------+-----------------+-------------------------------------|
800 | Esc u | upcase-word | convert word to upper case |
801 |----------------+-----------------+-------------------------------------|
802 | Esc l | downcase-word | convert word to lower case |
803 |----------------+-----------------+-------------------------------------|
804 | Esc c | capitalize-word | capitalize the word |
805 |----------------+-----------------+-------------------------------------|
807 |----------------+-----------------+-------------------------------------|
808 | <Return> | n/a | finish editing |
809 +------------------------------------------------------------------------+
811 You can remap the editor functions using the bind command. For example, to
812 make the Delete key delete the character in front of the cursor rather
813 than under, you could use
815 bind editor <delete> backspace
817 5. Reading Mail - The Index and Pager
819 Similar to many other mail clients, there are two modes in which mail
820 isread in Mutt-ng. The first is the index of messages in the mailbox,
821 which is called the ``index'' in Mutt-ng. The second mode is the display
822 of the message contents. This is called the ``pager.''
824 The next few sections describe the functions provided in each of these
827 5.1. The Message Index
829 Table 2.3. Default Index Menu Bindings
831 +-------------------------------------------------------------------+
832 | Key | Function | Description |
833 |----------+----------+---------------------------------------------|
834 | c | | change to a different mailbox |
835 |----------+----------+---------------------------------------------|
836 | ESC c | | change to a folder in read-only mode |
837 |----------+----------+---------------------------------------------|
838 | C | | copy the current message to another mailbox |
839 |----------+----------+---------------------------------------------|
840 | ESC C | | decode a message and copy it to a folder |
841 |----------+----------+---------------------------------------------|
842 | ESC s | | decode a message and save it to a folder |
843 |----------+----------+---------------------------------------------|
844 | D | | delete messages matching a pattern |
845 |----------+----------+---------------------------------------------|
846 | d | | delete the current message |
847 |----------+----------+---------------------------------------------|
848 | F | | mark as important |
849 |----------+----------+---------------------------------------------|
850 | l | | show messages matching a pattern |
851 |----------+----------+---------------------------------------------|
852 | N | | mark message as new |
853 |----------+----------+---------------------------------------------|
854 | o | | change the current sort method |
855 |----------+----------+---------------------------------------------|
856 | O | | reverse sort the mailbox |
857 |----------+----------+---------------------------------------------|
858 | q | | save changes and exit |
859 |----------+----------+---------------------------------------------|
860 | s | | save-message |
861 |----------+----------+---------------------------------------------|
862 | T | | tag messages matching a pattern |
863 |----------+----------+---------------------------------------------|
864 | t | | toggle the tag on a message |
865 |----------+----------+---------------------------------------------|
866 | ESC t | | toggle tag on entire message thread |
867 |----------+----------+---------------------------------------------|
868 | U | | undelete messages matching a pattern |
869 |----------+----------+---------------------------------------------|
870 | u | | undelete-message |
871 |----------+----------+---------------------------------------------|
872 | v | | view-attachments |
873 |----------+----------+---------------------------------------------|
874 | x | | abort changes and exit |
875 |----------+----------+---------------------------------------------|
876 | <Return> | | display-message |
877 |----------+----------+---------------------------------------------|
878 | <Tab> | | jump to the next new or unread message |
879 |----------+----------+---------------------------------------------|
880 | @ | | show the author's full e-mail address |
881 |----------+----------+---------------------------------------------|
882 | $ | | save changes to mailbox |
883 |----------+----------+---------------------------------------------|
885 |----------+----------+---------------------------------------------|
886 | ESC / | | search-reverse |
887 |----------+----------+---------------------------------------------|
888 | ^L | | clear and redraw the screen |
889 |----------+----------+---------------------------------------------|
890 | ^T | | untag messages matching a pattern |
891 +-------------------------------------------------------------------+
895 In addition to who sent the message and the subject, a short summary of
896 the disposition of each message is printed beside the message number. Zero
897 or more of the following ``flags'' may appear, which mean:
901 message is deleted (is marked for deletion)
905 message have attachments marked for deletion
909 contains a PGP public key
921 message is PGP encrypted
925 message has been replied to
929 message is signed, and the signature is succesfully verified
943 Some of the status flags can be turned on or off using
945 o set-flag (default: w)
947 o clear-flag (default: W)
949 Furthermore, the following flags reflect who the message is addressed to.
950 They can be customized with the $to_chars variable.
954 message is to you and you only
958 message is to you, but also to or cc'ed to others
962 message is cc'ed to you
970 message is sent to a subscribed mailing list
974 By default, Mutt-ng uses its builtin pager to display the body of
975 messages. The pager is very similar to the Unix program less though not
976 nearly as featureful.
978 Table 2.4. Default Pager Menu Bindings
980 +------------------------------------------------------------------------+
981 | Key | Function | Description |
982 |----------+----------+--------------------------------------------------|
983 | <Return> | | go down one line |
984 |----------+----------+--------------------------------------------------|
985 | <Space> | | display the next page (or next message if at the |
986 | | | end of a message) |
987 |----------+----------+--------------------------------------------------|
988 | - | | go back to the previous page |
989 |----------+----------+--------------------------------------------------|
990 | n | | search for next match |
991 |----------+----------+--------------------------------------------------|
992 | S | | skip beyond quoted text |
993 |----------+----------+--------------------------------------------------|
994 | T | | toggle display of quoted text |
995 |----------+----------+--------------------------------------------------|
996 | ? | | show key bindings |
997 |----------+----------+--------------------------------------------------|
998 | / | | search for a regular expression (pattern) |
999 |----------+----------+--------------------------------------------------|
1000 | ESC / | | search backwards for a regular expression |
1001 |----------+----------+--------------------------------------------------|
1002 | \ | | toggle search pattern coloring |
1003 |----------+----------+--------------------------------------------------|
1004 | ^ | | jump to the top of the message |
1005 +------------------------------------------------------------------------+
1007 In addition, many of the functions from the index are available in the
1008 pager, such as delete-message or copy-message (this is one advantage over
1009 using an external pager to view messages).
1011 Also, the internal pager supports a couple other advanced features. For
1012 one, it will accept and translate the ``standard'' nroff sequences forbold
1013 and underline. These sequences are a series of either the letter,
1014 backspace (^H), the letter again for bold or the letter, backspace, ``_''
1015 for denoting underline. Mutt-ng will attempt to display these in bold and
1016 underline respectively if your terminal supports them. If not, you can use
1017 the bold and underline color objects to specify a color or mono attribute
1020 Additionally, the internal pager supports the ANSI escape sequences for
1021 character attributes. Mutt-ng translates them into the correct color and
1022 character settings. The sequences Mutt-ng supports are: ESC [
1023 Ps;Ps;Ps;...;Ps m (see table below for possible values for Ps).
1025 Table 2.5. ANSI Escape Sequences
1027 +-------------------------------------------------+
1028 | Value | Attribute |
1029 |-------+-----------------------------------------|
1030 | 0 | All Attributes Off |
1031 |-------+-----------------------------------------|
1033 |-------+-----------------------------------------|
1034 | 4 | Underline on |
1035 |-------+-----------------------------------------|
1037 |-------+-----------------------------------------|
1038 | 7 | Reverse video on |
1039 |-------+-----------------------------------------|
1040 | 3x | Foreground color is x (see table below) |
1041 |-------+-----------------------------------------|
1042 | 4x | Background color is x (see table below) |
1043 +-------------------------------------------------+
1045 Table 2.6. ANSI Colors
1047 +------------------+
1049 |--------+---------|
1051 |--------+---------|
1053 |--------+---------|
1055 |--------+---------|
1057 |--------+---------|
1059 |--------+---------|
1061 |--------+---------|
1063 |--------+---------|
1065 +------------------+
1067 Mutt-ng uses these attributes for handling text/enriched messages, and
1068 they can also be used by an external autoview script for highlighting
1069 purposes. Note: If you change the colors for your display, for example by
1070 changing the color associated with color2 for your xterm, then that color
1071 will be used instead of green.
1075 When the mailbox is sorted by threads ,there are a few additional
1076 functions available in the index and pager modes.
1078 Table 2.7. Default Thread Function Bindings
1080 +------------------------------------------------------------------------+
1081 | Key | Function | Description |
1082 |-------+--------------------+-------------------------------------------|
1083 | ^D | delete-thread | delete all messages in the current thread |
1084 |-------+--------------------+-------------------------------------------|
1085 | ^U | undelete-thread | undelete all messages in the current |
1087 |-------+--------------------+-------------------------------------------|
1088 | ^N | next-thread | jump to the start of the next thread |
1089 |-------+--------------------+-------------------------------------------|
1090 | ^P | previous-thread | jump to the start of the previous thread |
1091 |-------+--------------------+-------------------------------------------|
1092 | ^R | read-thread | mark the current thread as read |
1093 |-------+--------------------+-------------------------------------------|
1094 | ESC d | delete-subthread | delete all messages in the current |
1096 |-------+--------------------+-------------------------------------------|
1097 | ESC u | undelete-subthread | undelete all messages in the current |
1099 |-------+--------------------+-------------------------------------------|
1100 | ESC n | next-subthread | jump to the start of the next subthread |
1101 |-------+--------------------+-------------------------------------------|
1102 | ESC p | previous-subthread | jump to the start of the previous |
1104 |-------+--------------------+-------------------------------------------|
1105 | ESC r | read-subthread | mark the current subthread as read |
1106 |-------+--------------------+-------------------------------------------|
1107 | ESC t | tag-thread | toggle the tag on the current thread |
1108 |-------+--------------------+-------------------------------------------|
1109 | ESC v | collapse-thread | toggle collapse for the current thread |
1110 |-------+--------------------+-------------------------------------------|
1111 | ESC V | collapse-all | toggle collapse for all threads |
1112 |-------+--------------------+-------------------------------------------|
1113 | P | parent-message | jump to parent message in thread |
1114 +------------------------------------------------------------------------+
1116 Note: Collapsing a thread displays only the first message in the thread
1117 and hides the others. This is useful when threads contain so many messages
1118 that you can only see a handful of threads onthe screen. See %M in
1119 index-format . For example, you could use "%?M?(#%03M)&(%4l)?" in
1120 index-format to optionally display the number of hidden messages if the
1121 thread is collapsed.
1123 See also: strict-threads.
1125 5.4. Miscellaneous Functions
1127 create-alias (default: a)
1129 Creates a new alias based upon the current message (or prompts for a new
1130 one). Once editing is complete, an alias command is added to the file
1131 specified by the alias-file variable for future use. Note: Specifying an
1132 alias-file does not add the aliases specified there-in, you must also
1135 check-traditional-pgp (default: ESC P)
1137 This function will search the current message for content signed or
1138 encrypted with PGP the "traditional" way, that is, without proper MIME
1139 tagging. Technically, this function will temporarily change the MIME
1140 content types of the body parts containing PGP data; this is similar to
1141 the edit-type function's effect.
1143 display-toggle-weed (default: h)
1145 Toggles the weeding of message header fields specified by ignore commands.
1149 This command (available in the ``index'' and ``pager'') allows you to edit
1150 the raw current message as it's present in the mail folder. After you have
1151 finished editing, the changed message will be appended to the current
1152 folder, and the original message will be marked for deletion.
1154 edit-type (default: ^E on the attachment menu, and in the pager and index
1155 menus; ^T on the compose menu)
1157 This command is used to temporarily edit an attachment's content type to
1158 fix, for instance, bogus character set parameters. When invoked from the
1159 index or from the pager, you'll have the opportunity to edit the top-level
1160 attachment's content type. On the attach-menu, you can change any
1161 attachment's content type. These changes are not persistent, and get lost
1162 upon changing folders.
1164 Note that this command is also available on the compose-menu .There, it's
1165 used to fine-tune the properties of attachments you are going to send.
1167 enter-command (default: ``:'')
1169 This command is used to execute any command you would normally put in a
1170 configuration file. A common use is to check the settings of variables, or
1171 in conjunction with macro to change settings on the fly.
1173 extract-keys (default: ^K)
1175 This command extracts PGP public keys from the current or tagged
1176 message(s) and adds them to your PGP public key ring.
1178 forget-passphrase (default: ^F)
1180 This command wipes the passphrase(s) from memory. It is useful, if you
1181 misspelled the passphrase.
1183 list-reply (default: L)
1185 Reply to the current or tagged message(s) by extracting any addresses
1186 which match the regular expressions given by the lists commands, but also
1187 honor any Mail-Followup-To header(s) if the honor-followup-to
1188 configuration variable is set. Using this when replying to messages posted
1189 to mailing lists helps avoid duplicate copies being sent to the author of
1190 the message you are replying to.
1192 pipe-message (default: |)
1194 Asks for an external Unix command and pipes the current or tagged
1195 message(s) to it. The variables pipe-decode ,pipe-split, pipe-sep and
1196 wait-key control the exact behavior of this function.
1198 resend-message (default: ESC e)
1200 With resend-message, mutt takes the current message as a template for a
1201 new message. This function is best described as "recall from arbitrary
1202 folders". It can conveniently be used to forward MIME messages while
1203 preserving the original mail structure. Note that the amount of headers
1204 included here depends on the value of the weed variable.
1206 This function is also available from the attachment menu. You can use this
1207 to easily resend a message which was included with a bounce message as a
1208 message/rfc822 body part.
1210 shell-escape (default: !)
1212 Asks for an external Unix command and executes it. The wait-key can be
1213 used to control whether Mutt-ng will wait for a key to be pressed when the
1214 command returns (presumably to let the user read the output of the
1215 command), based on the return status of the named command.
1217 toggle-quoted (default: T)
1219 The pager uses the quote-regexp variable to detect quoted text when
1220 displaying the body of the message. This function toggles the displayof
1221 the quoted material in the message. It is particularly useful when are
1222 interested in just the response and there is a large amount of quoted text
1225 skip-quoted (default: S)
1227 This function will go to the next line of non-quoted text which come after
1228 a line of quoted text in the internal pager.
1232 The following bindings are available in the index for sending messages.
1234 Table 2.8. Default Mail Composition Bindings
1236 +--------------------------------------------------------+
1237 | Key | Function | Description |
1238 |-------+-------------+----------------------------------|
1239 | m | compose | compose a new message |
1240 |-------+-------------+----------------------------------|
1241 | r | reply | reply to sender |
1242 |-------+-------------+----------------------------------|
1243 | g | group-reply | reply to all recipients |
1244 |-------+-------------+----------------------------------|
1245 | L | list-reply | reply to mailing list address |
1246 |-------+-------------+----------------------------------|
1247 | f | forward | forward message |
1248 |-------+-------------+----------------------------------|
1249 | b | bounce | bounce (remail) message |
1250 |-------+-------------+----------------------------------|
1251 | ESC k | mail-key | mail a PGP public key to someone |
1252 +--------------------------------------------------------+
1254 Bouncing a message sends the message as is to the recipient you specify.
1255 Forwarding a message allows you to add comments or modify the message you
1256 are forwarding. These items are discussed in greater detail in the next
1257 chapter forwarding-mail .
1259 6.1. Composing new messages
1261 When you want to send an email using mutt-ng, simply press m on your
1262 keyboard. Then, mutt-ng asks for the recipient via a prompt in the last
1267 After you've finished entering the recipient(s), press return. If you want
1268 to send an email to more than one recipient, separate the email addresses
1269 using the comma ",". Mutt-ng then asks you for the email subject. Again,
1270 press return after you've entered it. After that, mutt-ng got the most
1271 important information from you, and starts up an editor where you can then
1274 The editor that is called is selected in the following way: you can e.g.
1275 set it in the mutt-ng configuration:
1277 set editor = "vim +/^$/ -c ':set tw=72'"
1279 set editor = "emacs"
1281 If you don't set your preferred editor in your configuration, mutt-ng
1282 first looks whether the environment variable $VISUAL is set, and if so, it
1283 takes its value as editor command. Otherwise, it has a look at $EDITOR and
1284 takes its value if it is set. If no editor command can be found, mutt-ng
1285 simply assumes vi to be the default editor, since it's the most widespread
1286 editor in the Unix world and it's pretty safe to assume that it is
1287 installed and available.
1289 When you've finished entering your message, save it and quit your editor.
1290 Mutt-ng will then present you with a summary screen, the compose menu. On
1291 the top, you see a summary of the most important available key commands.
1292 Below that, you see the sender, the recipient(s), Cc and/or Bcc
1293 recipient(s), the subject, the reply-to address, and optionally
1294 information where the sent email will be stored and whether it should be
1295 digitally signed and/or encrypted.
1297 Below that, you see a list of "attachments". The mail you've just entered
1298 before is also an attachment, but due to its special type (it's plain
1299 text), it will be displayed as the normal message on the receiver's side.
1301 At this point, you can add more attachments, pressing a, you can edit the
1302 recipient addresses, pressing t for the "To:" field, c for the "Cc:"
1303 field, and b for the "Bcc: field. You can also edit the subject the
1304 subject by simply pressing s or the email message that you've entered
1305 before by pressing e. You will then again return to the editor. You can
1306 even edit the sender, by pressing <esc>f, but this shall only be used with
1309 Alternatively, you can configure mutt-ng in a way that most of the above
1310 settings can be edited using the editor. Therefore, you only need to add
1311 the following to your configuration:
1315 Once you have finished editing the body of your mail message, you are
1316 returned to the compose menu. The following options are available:
1318 Table 2.9. Default Compose Menu Bindings
1320 +------------------------------------------------------------------------+
1321 | Key | Function | Description |
1322 |-------+-------------------+--------------------------------------------|
1323 | a | attach-file | attach a file |
1324 |-------+-------------------+--------------------------------------------|
1325 | A | attach-message | attach message(s) to the message |
1326 |-------+-------------------+--------------------------------------------|
1327 | ESC k | attach-key | attach a PGP public key |
1328 |-------+-------------------+--------------------------------------------|
1329 | d | edit-description | edit description on attachment |
1330 |-------+-------------------+--------------------------------------------|
1331 | D | detach-file | detach a file |
1332 |-------+-------------------+--------------------------------------------|
1333 | t | edit-to | edit the To field |
1334 |-------+-------------------+--------------------------------------------|
1335 | ESC f | edit-from | edit the From field |
1336 |-------+-------------------+--------------------------------------------|
1337 | r | edit-reply-to | edit the Reply-To field |
1338 |-------+-------------------+--------------------------------------------|
1339 | c | edit-cc | edit the Cc field |
1340 |-------+-------------------+--------------------------------------------|
1341 | b | edit-bcc | edit the Bcc field |
1342 |-------+-------------------+--------------------------------------------|
1343 | y | send-message | send the message |
1344 |-------+-------------------+--------------------------------------------|
1345 | s | edit-subject | edit the Subject |
1346 |-------+-------------------+--------------------------------------------|
1347 | S | smime-menu | select S/MIME options |
1348 |-------+-------------------+--------------------------------------------|
1349 | f | edit-fcc | specify an ``Fcc'' mailbox |
1350 |-------+-------------------+--------------------------------------------|
1351 | p | pgp-menu | select PGP options |
1352 |-------+-------------------+--------------------------------------------|
1353 | P | postpone-message | postpone this message until later |
1354 |-------+-------------------+--------------------------------------------|
1355 | q | quit | quit (abort) sending the message |
1356 |-------+-------------------+--------------------------------------------|
1357 | w | write-fcc | write the message to a folder |
1358 |-------+-------------------+--------------------------------------------|
1359 | i | ispell | check spelling (if available on your |
1361 |-------+-------------------+--------------------------------------------|
1362 | ^F | forget-passphrase | wipe passphrase(s) from memory |
1363 +------------------------------------------------------------------------+
1365 Note: The attach-message function will prompt you for a folder to attach
1366 messages from. You can now tag messages in that folder and theywill be
1367 attached to the message you are sending. Note that certainoperations like
1368 composing a new mail, replying, forwarding, etc. are not permitted when
1369 you are in that folder. The %r in status-format will change to a 'A' to
1370 indicate that you are in attach-message mode.
1374 6.2.1. Simple Replies
1376 When you want to reply to an email message, select it in the index menu
1377 and then press r. Mutt-ng's behaviour is then similar to the behaviour
1378 when you compose a message: first, you will be asked for the recipient,
1379 then for the subject, and then, mutt-ng will start the editor with the
1380 quote attribution and the quoted message. This can e.g. look like the
1383 On Mon, Mar 07, 2005 at 05:02:12PM +0100, Michael Svensson wrote:
1384 > Bill, can you please send last month's progress report to Mr.
1385 > Morgan? We also urgently need the cost estimation for the new
1386 > production server that we want to set up before our customer's
1387 > project will go live.
1389 You can start editing the email message. It is strongly recommended to put
1390 your answer below the quoted text and to only quote what is really
1391 necessary and that you refer to. Putting your answer on top of the quoted
1392 message, is, although very widespread, very often not considered to be a
1393 polite way to answer emails.
1395 The quote attribution is configurable, by default it is set to
1397 set attribution = "On %d, %n wrote:"
1399 It can also be set to something more compact, e.g.
1401 set attribution = "attribution="* %n <%a> [%(%y-%m-%d %H:%M)]:"
1403 The example above results in the following attribution:
1405 * Michael Svensson <svensson@foobar.com> [05-03-06 17:02]:
1406 > Bill, can you please send last month's progress report to Mr.
1407 > Morgan? We also urgently need the cost estimation for the new
1408 > production server that we want to set up before our customer's
1409 > project will go live.
1411 Generally, try to keep your attribution short yet information-rich. It is
1412 not the right place for witty quotes, long "attribution" novels or
1413 anything like that: the right place for such things is - if at all - the
1414 email signature at the very bottom of the message.
1416 When you're done with writing your message, save and quit the editor. As
1417 before, you will return to the compose menu, which is used in the same way
1420 6.2.2. Group Replies
1422 In the situation where a group of people uses email as a discussion, most
1423 of the emails will have one or more recipients, and probably several "Cc:"
1424 recipients. The group reply functionalityensures that when you press g
1425 instead of r to do a reply, each and every recipient that is contained in
1426 the original message will receive a copy of the message, either as normal
1427 recipient or as "Cc:" recipient.
1431 When you use mailing lists, it's generally better to send your reply to a
1432 message only to the list instead of the list and the original author. To
1433 make this easy to use, mutt-ng features list replies.
1435 To do a list reply, simply press L. If the email contains a
1436 Mail-Followup-To: header, its value will be used as reply address.
1437 Otherwise, mutt-ng searches through all mail addresses in the original
1438 message and tries to match them a list of regular expressions which can be
1439 specified using the lists command. If any of the regular expression
1440 matches, a mailing list address has been found, and it will be used as
1443 lists linuxevent@luga\.at vuln-dev@ mutt-ng-users@
1445 Nowadays, most mailing list software like GNU Mailman adds a
1446 Mail-Followup-To: header to their emails anyway, so setting lists is
1447 hardly ever necessary in practice.
1449 6.3. Editing the message header
1451 When editing the header of your outgoing message, there are a couple of
1452 special features available.
1454 If you specify Fcc: filename Mutt-ng will pick up filename just as if you
1455 had used the edit-fcc function in the compose menu.
1457 You can also attach files to your message by specifying Attach: filename [
1458 description ] where filename is the file to attach and description is an
1459 optional string to use as the description of the attached file.
1461 When replying to messages, if you remove the In-Reply-To: field from the
1462 header field, Mutt-ng will not generate a References: field, which allows
1463 you to create a new message thread.
1465 Also see edit-headers.
1467 6.4. Using Mutt-ng with PGP
1469 If you want to use PGP, you can specify
1471 Pgp: [ E | S | S<id> ]
1473 ``E'' encrypts, ``S'' signs and ``S<id>'' signs with the given key,
1474 setting pgp-sign-as permanently.
1476 If you have told mutt to PGP encrypt a message, it will guide you through
1477 a key selection process when you try to send the message. Mutt-ng will not
1478 ask you any questions about keys which have a certified user ID matching
1479 one of the message recipients' mail addresses. However, there may be
1480 situations in which there are several keys, weakly certified user ID
1481 fields, or where no matching keys can be found.
1483 In these cases, you are dropped into a menu with a list of keys from which
1484 you can select one. When you quit this menu, or mutt can't find any
1485 matching keys, you are prompted for a user ID. You can, as usually, abort
1486 this prompt using ^G. When you do so, mutt will return to the compose
1489 Once you have successfully finished the key selection, the message will be
1490 encrypted using the selected public keys, and sent out.
1492 Most fields of the entries in the key selection menu (see also
1493 pgp-entry-format ) have obvious meanings. But some explanations on the
1494 capabilities, flags, and validity fields are in order.
1496 The flags sequence (%f) will expand to one of the following flags:
1498 Table 2.10. PGP Key Menu Flags
1500 +-----------------------------------------------------------+
1501 | Flag | Description |
1502 |------+----------------------------------------------------|
1503 | R | The key has been revoked and can't be used. |
1504 |------+----------------------------------------------------|
1505 | X | The key is expired and can't be used. |
1506 |------+----------------------------------------------------|
1507 | d | You have marked the key as disabled. |
1508 |------+----------------------------------------------------|
1509 | c | There are unknown critical self-signature packets. |
1510 +-----------------------------------------------------------+
1512 The capabilities field (%c) expands to a two-character
1513 sequencerepresenting a key's capabilities. The first character gives the
1514 key's encryption capabilities: A minus sign (- )means that the key cannot
1515 be used for encryption. A dot (. )means that it's marked as a signature
1516 key in one of the user IDs, but may also be used for encryption. The
1517 letter e indicates that this key can be used for encryption.
1519 The second character indicates the key's signing capabilities. Once again,
1520 a ``-'' implies ``not for signing'', ``.'' implies that the key is marked
1521 as an encryption key in one of the user-ids, and ``s'' denotes a key which
1522 can be used for signing.
1524 Finally, the validity field (%t) indicates how well-certified a user-id
1525 is. A question mark (?) indicates undefined validity, a minus character
1526 (-) marks an untrusted association, a space character means a partially
1527 trusted association, and a plus character (+ ) indicates complete
1530 6.5. Sending anonymous messages via mixmaster
1532 You may also have configured mutt to co-operate with Mixmaster, an
1533 anonymous remailer. Mixmaster permits you to send your messages
1534 anonymously using a chain of remailers. Mixmaster support in mutt is for
1535 mixmaster version 2.04 (beta 45 appears to be the latest) and 2.03. It
1536 does not support earlier versions or the later so-called version 3 betas,
1537 of which the latest appears to be called 2.9b23.
1539 To use it, you'll have to obey certain restrictions. Most important, you
1540 cannot use the Cc and Bcc headers. To tell Mutt-ng to use mixmaster, you
1541 have to select a remailer chain, using the mix function on the compose
1544 The chain selection screen is divided into two parts. In the (larger)
1545 upper part, you get a list of remailers you may use. In the lower part,
1546 you see the currently selected chain of remailers.
1548 You can navigate in the chain using the chain-prev and chain-next
1549 functions, which are by default bound to the left and right arrows and to
1550 the h and l keys (think vi keyboard bindings). To insert a remailer at the
1551 current chain position, use the insert function. To append a remailer
1552 behind the current chain position, use select-entry or append . You can
1553 also delete entries from the chain, using the corresponding function.
1554 Finally, to abandon your changes, leave the menu, or accept them pressing
1555 (by default) the Return key.
1557 Note that different remailers do have different capabilities, indicated in
1558 the %c entry of the remailer menu lines (see mix-entry-format). Most
1559 important is the ``middleman'' capability, indicated by a capital ``M'':
1560 This means that the remailer in question cannot be used as the final
1561 element of a chain, but will only forward messages to other mixmaster
1562 remailers. For details on the other capabilities, please have a look at
1563 the mixmaster documentation.
1565 7. Forwarding and Bouncing Mail
1567 Often, it is necessary to forward mails to other people. Therefore,
1568 mutt-ng supports forwarding messages in two different ways.
1570 The first one is regular forwarding, as you probably know it from other
1571 mail clients. You simply press f, enter the recipient email address, the
1572 subject of the forwarded email, and then you can edit the message to be
1573 forwarded in the editor. The forwarded message is separated from the rest
1574 of the message via the two following markers:
1576 ----- Forwarded message from Lucas User <luser@example.com> -----
1578 From: Lucas User <luser@example.com>
1579 Date: Thu, 02 Dec 2004 03:08:34 +0100
1580 To: Michael Random <mrandom@example.com>
1581 Subject: Re: blackmail
1583 Pay me EUR 50,000.- cash or your favorite stuffed animal will die
1586 ----- End forwarded message -----
1588 When you're done with editing the mail, save and quit the editor, and you
1589 will return to the compose menu, the same menu you also encounter when
1590 composing or replying to mails.
1592 The second mode of forwarding emails with mutt-ng is the so-called
1593 bouncing: when you bounce an email to another address, it will be sent in
1594 practically the same format you send it (except for headers that are
1595 created during transporting the message). To bounce a message, press b and
1596 enter the recipient email address. By default, you are then asked whether
1597 you really want to bounce the message to the specified recipient. If you
1598 answer with yes, the message will then be bounced.
1600 To the recipient, the bounced email will look as if he got it like a
1601 regular email where he was Bcc: recipient. The only possibility to find
1602 out whether it was a bounced email is to carefully study the email headers
1603 and to find out which host really sent the email.
1607 At times it is desirable to delay sending a message that you have already
1608 begun to compose. When the postpone-message function is used in the
1609 compose menu, the body of your message and attachments are stored in the
1610 mailbox specified by the postponed variable. This means that you can
1611 recall the message even if you exit Mutt-ng and then restart it at a later
1614 Once a message is postponed, there are several ways to resume it. From the
1615 command line you can use the ``-p'' option, or if you compose a new
1616 message from the index or pager you will be prompted if postponed messages
1617 exist. If multiple messages are currently postponed, the postponed menu
1618 will pop up and you can select which message you would like to resume.
1620 Note: If you postpone a reply to a message, the reply setting of the
1621 message is only updated when you actually finish the message and send it.
1622 Also, you must be in the same folder with the message you replied to for
1623 the status of the message to be updated.
1625 See also the postpone quad-option.
1627 Chapter 3. Configuration
1631 1. Locations of Configuration Files
1633 2. Basic Syntax of Initialization Files
1635 3. Expansion within variables
1637 3.1. Commands' Output
1639 3.2. Environment Variables
1641 3.3. Configuration Variables
1643 3.4. Self-Defined Variables
1645 3.5. Pre-Defined Variables
1647 3.6. Type Conversions
1649 4. Defining/Using aliases
1651 5. Changing the default key bindings
1653 6. Defining aliases for character sets
1655 7. Setting variables based upon mailbox
1659 9. Using color and mono video attributes
1661 10. Ignoring (weeding) unwanted message headers
1663 11. Alternative addresses
1669 12.2. Receiving: Display Setup
1673 12.4. Additional Notes
1677 14. Using Multiple spool mailboxes
1679 15. Defining mailboxes which receive mail
1681 16. User defined headers
1683 17. Defining the order of headers when viewing messages
1685 18. Specify default save filename
1687 19. Specify default Fcc: mailbox when composing
1689 20. Specify default save filename and default Fcc: mailbox at once
1691 21. Change settings based upon message recipients
1693 22. Change settings before formatting a message
1695 23. Choosing the cryptographic key of the recipient
1697 24. Adding key sequences to the keyboard buffer
1699 25. Executing functions
1705 28. Setting variables
1707 29. Reading initialization commands from another file
1713 31.1. Character Sets
1715 31.2. Modularization
1717 31.3. Conditional parts
1719 32. Obsolete Variables
1721 1. Locations of Configuration Files
1723 While the default configuration (or ``preferences'') make Mutt-ng usable
1724 right out of the box, it is often desirable to tailor Mutt-ng to suit your
1725 own tastes. When Mutt-ng is first invoked, it will attempt to read the
1726 ``system'' configuration file (defaults set by your local system
1727 administrator), unless the ``-n'' commandline option is specified. This
1728 file is typically /usr/local/share/muttng/Muttngrc or /etc/Muttngrc ,
1729 Mutt-ng users will find this file in /usr/local/share/muttng/Muttrc or
1730 /etc/Muttngrc. Mutt will next look for a file named .muttrc in your home
1731 directory, Mutt-ng will look for .muttngrc. If this file does not exist
1732 and your home directory has a subdirectory named .mutt , mutt try to load
1733 a file named .muttng/muttngrc.
1735 .muttrc (or .muttngrc for Mutt-ng) is the file where you will usually
1736 place your commands to configure Mutt-ng.
1738 2. Basic Syntax of Initialization Files
1740 An initialization file consists of a series of commands .Each line of the
1741 file may contain one or more commands. When multiple commands are used,
1742 they must be separated by a semicolon (;).
1744 set realname='Mutt-ng user' ; ignore x-
1746 The hash mark, or pound sign (``#''), is used as a ``comment'' character.
1747 You can use it to annotate your initialization file. All text after the
1748 comment character to the end of the line is ignored. For example,
1750 my_hdr X-Disclaimer: Why are you listening to me? # This is a comment
1752 Single quotes (') and double quotes (") can be used to quote strings which
1753 contain spaces or other special characters. The difference between the two
1754 types of quotes is similar to that of many popular shell programs, namely
1755 that a single quote is used to specify a literal string (one that is not
1756 interpreted for shell variables or quoting with a backslash [see next
1757 paragraph]), while double quotes indicate a string for which should be
1758 evaluated. For example, backtics are evaluated inside of double quotes,
1759 but not for single quotes.
1761 \ quotes the next character, just as in shells such as bash and zsh. For
1762 example, if want to put quotes ``"'' inside of a string, you can use ``\''
1763 to force the next character to be a literal instead of interpreted
1766 set realname="Michael \"MuttDude\" Elkins"
1768 ``\\'' means to insert a literal ``\'' into the line. ``\n'' and ``\r''
1769 have their usual C meanings of linefeed and carriage-return, respectively.
1771 A \ at the end of a line can be used to split commands over multiple
1772 lines, provided that the split points don't appear in the middle of
1775 Please note that, unlike the various shells, mutt-ng interprets a ``\'' at
1776 the end of a line also in comments. This allows you to disable a command
1777 split over multiple lines with only one ``#''.
1780 set realname="Michael \"MuttDude\" Elkins"
1782 When testing your config files, beware the following caveat. The backslash
1783 at the end of the commented line extends the current line with the next
1784 line - then referred to as a ``continuation line''. As the first line is
1785 commented with a hash (#) all following continuation lines are also part
1786 of a comment and therefore are ignored, too. So take care of comments when
1787 continuation lines are involved within your setup files!
1797 line1 ``continues'' until line4. however, the part after the # is a
1798 comment which includes line3 and line4. line5 is a new line of its own and
1799 thus is interpreted again.
1801 The commands understood by mutt are explained in the next paragraphs. For
1802 a complete list, see the commands.
1804 3. Expansion within variables
1806 Besides just assign static content to variables, there's plenty of ways of
1807 adding external and more or less dynamic content.
1809 3.1. Commands' Output
1811 It is possible to substitute the output of a Unix command in an
1812 initialization file. This is accomplished by enclosing the command in
1813 backquotes (``) as in, for example:
1815 my_hdr X-Operating-System: `uname -a`
1817 The output of the Unix command ``uname -a'' will be substituted before the
1818 line is parsed. Note that since initialization files are line oriented,
1819 only the first line of output from the Unix command will be substituted.
1821 3.2. Environment Variables
1823 UNIX environments can be accessed like the way it is done in shells like
1824 sh and bash: Prepend the name of the environment by a ``$'' sign. For
1827 set record=+sent_on_$HOSTNAME
1829 sets the record variable to the string +sent_on_ and appends the value of
1830 the evironment variable $HOSTNAME.
1832 Note: There will be no warning if an environment variable is not defined.
1833 The result will of the expansion will then be empty.
1835 3.3. Configuration Variables
1837 As for environment variables, the values of all configuration variables as
1838 string can be used in the same way, too. For example,
1840 set imap_home_namespace = $folder
1842 would set the value of imap-home-namespace to the value to which folder is
1845 Note: There're no logical links established in such cases so that the the
1846 value for imap-home-namespace won't change even if folder gets changed.
1848 Note: There will be no warning if a configuration variable is not defined
1849 or is empty. The result will of the expansion will then be empty.
1851 3.4. Self-Defined Variables
1853 Mutt-ng flexibly allows users to define their own variables. To avoid
1854 conflicts with the standard set and to prevent misleading error messages,
1855 there's a reserved namespace for them: all user-defined variables must be
1856 prefixed with user_ and can be used just like any ordinary configuration
1857 or environment variable.
1859 For example, to view the manual, users can either define two macros like
1862 macro generic <F1> "!less -r /path/to/manual" "Show manual"
1863 macro pager <F1> "!less -r /path/to/manual" "Show manual"
1865 for generic, pager and index .The alternative is to define a custom
1868 set user_manualcmd = "!less -r /path/to_manual"
1869 macro generic <F1> "$user_manualcmd<enter>" "Show manual"
1870 macro pager <F1> "$user_manualcmd<enter>" "Show manual"
1871 macro index <F1> "$user_manualcmd<enter>" "Show manual"
1873 to re-use the command sequence as in:
1875 macro index <F2> "$user_manualcmd | grep '\^[ ]\\+~. '" "Show Patterns"
1877 Using this feature, arbitrary sequences can be defined once and recalled
1878 and reused where necessary. More advanced scenarios could include to save
1879 a variable's value at the beginning of macro sequence and restore it at
1882 When the variable is first defined, the first value it gets assigned is
1883 also the initial value to which it can be reset using the reset command.
1885 The complete removal is done via the unset keyword.
1887 After the following sequence:
1892 the variable $user_foo has a current value of 666 and an initial of 42.
1897 will show 666. After doing the reset via
1901 a following query will give 42 as the result. After unsetting it via
1905 any query or operation (except the noted expansion within other
1906 statements) will lead to an error message.
1908 3.5. Pre-Defined Variables
1910 In order to allow users to share one setup over a number of different
1911 machines without having to change its contents, there's a number of
1912 pre-defined variables. These are prefixed with muttng_ and are read-only,
1913 i.e. they cannot be set, unset or reset. The reference chapter lists all
1914 available variables.
1916 Please consult the local copy of your manual for their values as they may
1917 differ from different manual sources. Where the manual is installed in can
1918 be queried (already using such a variable) by running:
1920 muttng -Q muttng_docdir
1922 To extend the example for viewing the manual via self-defined variables,
1923 it can be made more readable and more portable by changing the real path
1926 set user_manualcmd = '!less -r /path/to_manual'
1930 set user_manualcmd = "!less -r $muttng_docdir/manual.txt"
1932 which works everywhere if a manual is installed.
1934 Please note that by the type of quoting, muttng determines when to expand
1935 these values: when it finds double quotes, the value will be expanded
1936 during reading the setup files but when it finds single quotes, it'll
1937 expand it at runtime as needed.
1939 For example, the statement
1941 folder-hook . "set user_current_folder = $muttng_folder_name"
1943 will be already be translated to the following when reading the startup
1946 folder-hook . "set user_current_folder = some_folder"
1948 with some_folder being the name of the first folder muttng opens. On the
1951 folder-hook . 'set user_current_folder = $muttng_folder_name'
1953 will be executed at runtime because of the single quotes so that
1954 user_current_folder will always have the value of the currently opened
1957 A more practical example is:
1959 folder-hook . 'source ~/.mutt/score-$muttng_folder_name'
1961 which can be used to source files containing score commands depending on
1962 the folder the user enters.
1964 3.6. Type Conversions
1966 A note about variable's types during conversion: internally values are
1967 stored in internal types but for any dump/query or set operation they're
1968 converted to and from string. That means that there's no need to worry
1969 about types when referencing any variable. As an example, the following
1970 can be used without harm (besides makeing muttng very likely behave
1974 set folder = $read_inc
1975 set read_inc = $folder
1976 set user_magic_number = 42
1977 set folder = $user_magic_number
1979 4. Defining/Using aliases
1981 Usage: alias key address[ , address, ... ]
1984 It's usually very cumbersome to remember or type out the address of
1985 someone you are communicating with. Mutt-ng allows you to create
1986 ``aliases'' which map a short string to a full address.
1988 Note: if you want to create an alias for a group (by specifying more than
1989 one address), you must separate the addresses with a comma (``,'').
1991 To remove an alias or aliases (``*'' means all aliases):
1993 unalias [ * | key ... ]
1995 alias muttdude me@cs.hmc.edu (Michael Elkins)
1996 alias theguys manny, moe, jack
1998 Unlike other mailers, Mutt-ng doesn't require aliases to be defined in a
1999 special file. The alias command can appear anywhere in a configuration
2000 file, as long as this file is source .Consequently, you can have multiple
2001 alias files, or you can have all aliases defined in your muttrc.
2003 On the other hand, the create-alias function can use only one file, the
2004 one pointed to by the alias-file variable (which is ˜/.muttrc by
2005 default). This file is not special either, in the sense that Mutt-ng will
2006 happily append aliases to any file, but in order for the new aliases to
2007 take effect you need to explicitly source this file too.
2011 source /usr/local/share/Mutt-ng.aliases
2012 source ~/.mail_aliases
2013 set alias_file=~/.mail_aliases
2015 To use aliases, you merely use the alias at any place in mutt where
2016 muttprompts for addresses, such as the To: or Cc: prompt. You can also
2017 enter aliases in your editor at the appropriate headers if you have the
2018 edit-headers variable set.
2020 In addition, at the various address prompts, you can use the tab character
2021 to expand a partial alias to the full alias. If there are multiple
2022 matches, mutt will bring up a menu with the matching aliases. In order to
2023 be presented with the full list of aliases, you must hit tab with out a
2024 partial alias, such as at the beginning of the prompt or after a comma
2025 denoting multiple addresses.
2027 In the alias menu, you can select as many aliases as you want with the
2028 select-entry key (default: RET), and use the exit key (default: q) to
2029 return to the address prompt.
2031 5. Changing the default key bindings
2033 Usage: bind map key function
2036 This command allows you to change the default key bindings (operation
2037 invoked when pressing a key).
2039 map specifies in which menu the binding belongs. Multiple maps may be
2040 specified by separating them with commas (no additional whitespace
2041 isallowed). The currently defined maps are:
2045 This is not a real menu, but is used as a fallback for all of the
2046 other menus except for the pager and editor modes. If a key is not
2047 defined in another menu, Mutt-ng will look for a binding to use in
2048 this menu. This allows you to bind a key to a certain function in
2049 multiple menus instead of having multiple bind statements to
2050 accomplish the same task.
2054 The alias menu is the list of your personal aliases as defined in
2055 your muttrc. It is the mapping from a short alias name to the full
2056 email address(es) of the recipient(s).
2060 The attachment menu is used to access the attachments on received
2065 The browser is used for both browsing the local directory
2066 structure, and for listing all of your incoming mailboxes.
2070 The editor is the line-based editor the user enters text data.
2074 The index is the list of messages contained in a mailbox.
2078 The compose menu is the screen used when sending a new message.
2082 The pager is the mode used to display message/attachment data, and
2087 The pgp menu is used to select the OpenPGP keys used for
2088 encrypting outgoing messages.
2092 The postpone menu is similar to the index menu, except is used
2093 when recalling a message the user was composing, but saved until
2096 key is the key (or key sequence) you wish to bind. To specify a control
2097 character, use the sequence \Cx, where x is the letter of the control
2098 character (for example, to specify control-A use ``\Ca''). Note that the
2099 case of x as well as \C is ignored, so that \CA, \Ca, \cA and \ca are all
2100 equivalent. An alternative form is to specify the key as a three digit
2101 octal number prefixed with a ``\'' (for example \177 is equivalent to
2104 In addition, key may consist of:
2106 Table 3.1. Alternative Key Names
2108 +-----------------------------------+
2109 | Sequence | Description |
2110 |-------------+---------------------|
2112 |-------------+---------------------|
2114 |-------------+---------------------|
2115 | <backtab> | backtab / shift-tab |
2116 |-------------+---------------------|
2117 | \r | carriage return |
2118 |-------------+---------------------|
2120 |-------------+---------------------|
2122 |-------------+---------------------|
2124 |-------------+---------------------|
2126 |-------------+---------------------|
2127 | <down> | down arrow |
2128 |-------------+---------------------|
2129 | <left> | left arrow |
2130 |-------------+---------------------|
2131 | <right> | right arrow |
2132 |-------------+---------------------|
2133 | <pageup> | Page Up |
2134 |-------------+---------------------|
2135 | <pagedown> | Page Down |
2136 |-------------+---------------------|
2137 | <backspace> | Backspace |
2138 |-------------+---------------------|
2139 | <delete> | Delete |
2140 |-------------+---------------------|
2141 | <insert> | Insert |
2142 |-------------+---------------------|
2144 |-------------+---------------------|
2145 | <return> | Return |
2146 |-------------+---------------------|
2148 |-------------+---------------------|
2150 |-------------+---------------------|
2151 | <space> | Space bar |
2152 |-------------+---------------------|
2153 | <f1> | function key 1 |
2154 |-------------+---------------------|
2155 | <f10> | function key 10 |
2156 +-----------------------------------+
2158 key does not need to be enclosed in quotes unless it contains a space (``
2161 function specifies which action to take when key is pressed. For a
2162 complete list of functions, see the functions .The special function noop
2163 unbinds the specified key sequence.
2165 6. Defining aliases for character sets
2167 Usage: charset-hook alias charset
2168 Usage: iconv-hook charset local-charset
2171 The charset-hook command defines an alias for a character set. This is
2172 useful to properly display messages which are tagged with a character set
2173 name not known to mutt.
2175 The iconv-hook command defines a system-specific name for a character set.
2176 This is helpful when your systems character conversion library insists on
2177 using strange, system-specific names for character sets.
2179 7. Setting variables based upon mailbox
2181 Usage: folder-hook [!]regexp command
2184 It is often desirable to change settings based on which mailbox you are
2185 reading. The folder-hook command provides a method by which you can
2186 execute any configuration command. regexp is a regular expression
2187 specifying in which mailboxes to execute command before loading. If a
2188 mailbox matches multiple folder-hook's, they are executed in the order
2189 given in the muttrc.
2191 Note: if you use the ``!'' shortcut for spoolfile at the beginning of the
2192 pattern, you must place it inside of double or single quotes in order to
2193 distinguish it from the logical not operator for the expression.
2195 Note that the settings are not restored when you leave the mailbox. For
2196 example, a command action to perform is to change the sorting methodbased
2197 upon the mailbox being read:
2199 folder-hook mutt set sort=threads
2201 However, the sorting method is not restored to its previous value when
2202 reading a different mailbox. To specify a default command, use the pattern
2205 folder-hook . set sort=date-sent
2209 Usage: macro menu key sequence [ description ]
2212 Macros are useful when you would like a single key to perform a series of
2213 actions. When you press key in menu menu ,Mutt-ng will behave as if you
2214 had typed sequence. So if you have a common sequence of commands you type,
2215 you can create a macro to execute those commands with a singlekey.
2217 menu is the maps which the macro will be bound. Multiple maps may be
2218 specified by separating multiple menu arguments by commas. Whitespace may
2219 not be used in between the menu arguments and thecommas separating them.
2221 key and sequence are expanded by the same rules as the bind. There are
2222 some additions however. The first is that control characters in sequence
2223 can also be specified as ^x. In order to get a caret (`^'') you need to
2224 use ^^. Secondly, to specify a certain key such as up or to invoke a
2225 function directly, you can use the format <key name> and <function name>
2226 .For a listing of key names see the section on bind. Functions are listed
2229 The advantage with using function names directly is that the macros
2230 willwork regardless of the current key bindings, so they are not dependent
2231 on the user having particular key definitions. This makes them more
2232 robustand portable, and also facilitates defining of macros in files used
2233 by more than one user (eg. the system Muttngrc).
2235 Optionally you can specify a descriptive text after sequence, which is
2236 shown in the help screens.
2238 Note: Macro definitions (if any) listed in the help screen(s), are
2239 silently truncated at the screen width, and are not wrapped.
2241 9. Using color and mono video attributes
2243 Usage: color object foregroundbackground [ regexp]
2244 Usage: color index foreground backgroundpattern
2245 Usage: uncolor index pattern[ pattern ... ]
2248 If your terminal supports color, you can spice up Mutt-ng by creating your
2249 own color scheme. To define the color of an object (type of information),
2250 you must specify both a foreground color and a background color (it is not
2251 possible to only specify one or the other).
2253 object can be one of:
2257 o body (match regexp in the body of messages)
2259 o bold (highlighting bold patterns in the body of messages)
2261 o error (error messages printed by Mutt-ng)
2263 o header (match regexp in the message header)
2265 o hdrdefault (default color of the message header in the pager)
2267 o index (match pattern in the message index)
2269 o indicator (arrow or bar used to indicate the current item in a menu)
2271 o markers (the ``+'' markers at the beginning of wrapped lines in the
2274 o message (informational messages)
2278 o quoted (text matching quote-regexp in the body of a message)
2280 o quoted1, quoted2, ..., quotedN (higher levels of quoting)
2282 o search (highlighting of words in the pager)
2286 o status (mode lines used to display info about the mailbox or message)
2288 o tilde (the ``˜'' used to pad blank lines in the pager)
2290 o tree (thread tree drawn in the message index and attachment menu)
2292 o underline (highlighting underlined patterns in the body of messages)
2294 foreground and background can be one of the following:
2316 foreground can optionally be prefixed with the keyword bright to make the
2317 foreground color boldfaced (e.g., brightred).
2319 If your terminal supports it, the special keyword default can be used as a
2320 transparent color. The value brightdefault is also valid. If Mutt-ng is
2321 linked against the S-Lang library, you also need to set the COLORFGBG
2322 environment variable to the default colors of your terminal for this to
2323 work; for example (for Bourne-like shells):
2325 set COLORFGBG="green;black"
2328 Note: The S-Lang library requires you to use the lightgray and brown
2329 keywords instead of white and yellow when setting this variable.
2331 Note: The uncolor command can be applied to the index object only. It
2332 removes entries from the list. You must specify the same pattern specified
2333 in the color command for it to be removed. The pattern ``*'' is a special
2334 token which means to clear the color index list of all entries.
2336 Mutt-ng also recognizes the keywords color0, color1 ,…, colorN-1 (N
2337 being the number of colors supported by your terminal). This is useful
2338 when you remap the colors for your display (for example by changing the
2339 color associated with color2 for your xterm), since color names may then
2340 lose their normal meaning.
2342 If your terminal does not support color, it is still possible change the
2343 video attributes through the use of the ``mono'' command:
2345 Usage: mono <object> <attribute>[ regexp ]
2346 Usage: mono index attribute pattern
2347 Usage: unmono index pattern[ pattern ... ]
2349 where attribute is one of the following:
2361 10. Ignoring (weeding) unwanted message headers
2363 Usage: [un]ignore pattern [ pattern... ]
2366 Messages often have many header fields added by automatic processing
2367 systems, or which may not seem useful to display on the screen. This
2368 command allows you to specify header fields which you don't normally want
2371 You do not need to specify the full header field name. For example,
2372 ``ignore content-'' will ignore all header fields that begin with the
2373 pattern ``content-''. ``ignore *'' will ignore all headers.
2375 To remove a previously added token from the list, use the ``unignore''
2376 command. The ``unignore'' command will make Mutt-ng display headers with
2377 the given pattern. For example, if you do ``ignore x-'' it is possible to
2378 ``unignore x-mailer''.
2380 ``unignore *'' will remove all tokens from the ignore list.
2384 # Sven's draconian header weeding
2386 unignore from date subject to cc
2387 unignore organization organisation x-mailer: x-newsreader: x-mailing-list:
2390 11. Alternative addresses
2392 Usage: [un]alternates regexp [ regexp ... ]
2394 With various functions, mutt will treat messages differently, depending on
2395 whether you sent them or whether you received them from someone else. For
2396 instance, when replying to a message that you sent to a different party,
2397 mutt will automatically suggest to send the response to the original
2398 message's recipients--responding to yourself won't make much sense in many
2399 cases. (See reply-to .)
2401 Many users receive e-mail under a number of different addresses. To fully
2402 use mutt's features here, the program must be able to recognize what
2403 e-mail addresses you receive mail under. That's the purpose of the
2404 alternates command: It takes a list of regular expressions, each of which
2405 can identify an address under which you receive e-mail.
2407 The unalternates command can be used to write exceptions to alternates
2408 patterns. If an address matches something in an alternates command, but
2409 you nonetheless do not think it is from you, you can list a more precise
2410 pattern under an unalternates command.
2412 To remove a regular expression from the alternates list, use the
2413 unalternates command with exactly the same regexp . Likewise, if the
2414 regexp for a alternates command matches an entry on the unalternates list,
2415 that unalternates entry will be removed. If the regexp for unalternates is
2416 ``*'', all entries on alternates will be removed.
2422 Mutt-ng contains support for so-called format=flowed messages. In the
2423 beginning of email, each message had a fixed line width, and it was enough
2424 for displaying them on fixed-size terminals. But times changed, and
2425 nowadays hardly anybody still uses fixed-size terminals: more people
2426 nowaydays use graphical user interfaces, with dynamically resizable
2427 windows. This led to the demand of a new email format that makes it
2428 possible for the email client to make the email look nice in a resizable
2429 window without breaking quoting levels and creating an incompatible email
2430 format that can also be displayed nicely on old fixed-size terminals.
2432 For introductory information on format=flowed messages, see
2433 <http://www.joeclark.org/ffaq.html>.
2435 12.2. Receiving: Display Setup
2437 When you receive emails that are marked as format=flowed messages, and is
2438 formatted correctly, mutt-ng will try to reformat the message to optimally
2439 fit on your terminal. If you want a fixed margin on the right side of your
2440 terminal, you can set the following:
2444 The code above makes the line break 10 columns before the right side of
2447 If your terminal is so wide that the lines are embarrassingly long, you
2448 can also set a maximum line length:
2450 set max_line_length = 120
2452 The example above will give you lines not longer than 120 characters.
2454 When you view at format=flowed messages, you will often see the quoting
2455 hierarchy like in the following example:
2457 >Bill, can you please send last month's progress report to Mr.
2458 >Morgan? We also urgently need the cost estimation for the new
2459 >production server that we want to set up before our customer's
2460 >project will go live.
2462 This obviously doesn't look very nice, and it makes it very hard to
2463 differentiate between text and quoting character. The solution is to
2464 configure mutt-ng to "stuff" the quoting:
2468 This will lead to a nicer result that is easier to read:
2470 > Bill, can you please send last month's progress report to Mr.
2471 > Morgan? We also urgently need the cost estimation for the new
2472 > production server that we want to set up before our customer's
2473 > project will go live.
2477 If you want mutt-ng to send emails with format=flowed set, you need to
2482 Additionally, you have to use an editor which supports writing
2483 format=flowed-conforming emails. For vim, this is done by adding w to the
2484 formatoptions (see :h formatoptions and :h fo-table) when writing emails.
2486 Also note that format=flowed knows about ``space-stuffing'', that is, when
2487 sending messages, some kinds of lines have to be indented with a single
2488 space on the sending side. On the receiving side, the first space (if any)
2489 is removed. As a consequence and in addition to the above simple setting,
2490 please keep this in mind when making manual formattings within the editor.
2491 Also note that mutt-ng currently violates the standard (RfC 3676) as it
2492 does not space-stuff lines starting with:
2494 o > This is not the quote character but a right angle used for other
2497 o From with a trailing space.
2499 o just a space for formatting reasons
2501 Please make sure that you manually prepend a space to each of them.
2503 12.4. Additional Notes
2505 For completeness, the delete-space variable provides the mechanism to
2506 generate a DelSp=yes parameter on outgoing messages. According to the
2507 standard, clients receiving a format=flowed messages should delete the
2508 last space of a flowed line but still interpret the line as flowed.
2509 Because flowed lines usually contain only one space at the end, this
2510 parameter would make the receiving client concatenate the last word of the
2511 previous with the first of the current line without a space. This makes
2512 ordinary text unreadable and is intended for languages rarely using
2513 spaces. So please use this setting only if you're sure what you're doing.
2517 Usage: [un]lists regexp [ regexp... ]
2518 Usage: [un]subscribe regexp [ regexp... ]
2521 Mutt-ng has a few nice features for using-lists .In order to take
2522 advantage of them, you must specify which addresses belong to mailing
2523 lists, and which mailing lists you are subscribed to. Once you have done
2524 this, the list-reply function will work for all known lists. Additionally,
2525 when you send a message to a subscribed list, mutt will add a
2526 Mail-Followup-To header to tell other users' mail user agents not to send
2527 copies of replies to your personal address. Note that the Mail-Followup-To
2528 header is a non-standard extension which is not supported by all mail user
2529 agents. Adding it is not bullet-proof against receiving personal CCs of
2530 list messages. Also note that the generation of the Mail-Followup-To
2531 header is controlled by the followup-to configuration variable.
2533 More precisely, Mutt-ng maintains lists of patterns for the addresses of
2534 known and subscribed mailing lists. Every subscribed mailing list is
2535 known. To mark a mailing list as known, use the ``lists'' command. To mark
2536 it as subscribed, use ``subscribe''.
2538 You can use regular expressions with both commands. To mark all messages
2539 sent to a specific bug report's address on mutt's bug tracking system as
2540 list mail, for instance, you could say ``subscribe [0-9]*@bugs.guug.de''.
2541 Often, it's sufficient to just give a portion of the list's e-mail
2544 Specify as much of the address as you need to to remove ambiguity. For
2545 example, if you've subscribed to the Mutt-ng mailing list, you will
2546 receive mail addressed to mutt-users@mutt.org. So, to tell Mutt-ng that
2547 this is a mailing list, you could add ``lists mutt-users'' to your
2548 initialization file. To tell mutt that you are subscribed to it, add
2549 ``subscribe mutt-users'' to your initialization file instead. If you also
2550 happen to get mail from someone whose address is mutt-users@example.com,
2551 you could use ``lists mutt-users@mutt\\.org'' or ``subscribe
2552 mutt-users@mutt\\.org'' to match only mail from the actual list.
2554 The ``unlists'' command is used to remove a token from the list of known
2555 and subscribed mailing-lists. Use ``unlists *'' to remove all tokens.
2557 To remove a mailing list from the list of subscribed mailing lists, but
2558 keep it on the list of known mailing lists, use ``unsubscribe''.
2560 14. Using Multiple spool mailboxes
2562 Usage: mbox-hook [!]pattern mailbox
2565 This command is used to move read messages from a specified mailbox to
2566 adifferent mailbox automatically when you quit or change folders. pattern
2567 is a regular expression specifying the mailbox to treat as a ``spool''
2568 mailbox and mailbox specifies where mail should be saved when read.
2570 Unlike some of the other hook commands, only the first matching pattern is
2571 used (it is not possible to save read mail in more than a single mailbox).
2573 15. Defining mailboxes which receive mail
2575 Usage: [un]mailboxes [!]filename[ filename ... ]
2578 This command specifies folders which can receive mail and which will be
2579 checked for new messages. By default, the main menu status bar displays
2580 how many of these folders have new messages.
2582 When changing folders, pressing space will cycle through folders with new
2585 Pressing TAB in the directory browser will bring up a menu showing the
2586 files specified by the mailboxes command, and indicate which contain new
2587 messages. Mutt-ng will automatically enter this mode when invoked from the
2588 command line with the -y option.
2590 The ``unmailboxes'' command is used to remove a token from the list of
2591 folders which receive mail. Use ``unmailboxes *'' to remove all tokens.
2593 Note: new mail is detected by comparing the last modification time to the
2594 last access time. Utilities like biff or frm or any other program which
2595 accesses the mailbox might cause Mutt-ng to never detect new mail for that
2596 mailbox if they do not properly reset the access time. Backup tools are
2597 another common reason for updated access times.
2599 Note: the filenames in the mailboxes command are resolved when the command
2600 is executed, so if these names contain shortcuts (such as ``='' and
2601 ``!''), any variable definition that affect these characters (like folder
2602 and spoolfile) should be executed before the mailboxes command.
2604 16. User defined headers
2606 Usage: my_hdr string
2607 Usage: unmy_hdr field [ field... ]
2610 The ``my_hdr'' command allows you to create your own header fields which
2611 will be added to every message you send.
2613 For example, if you would like to add an ``Organization:'' header field to
2614 all of your outgoing messages, you can put the command
2616 my_hdr Organization: A Really Big Company, Anytown, USA
2620 Note: space characters are not allowed between the keyword and the colon
2621 (``:''). The standard for electronic mail (RFC822) says that space is
2622 illegal there, so Mutt-ng enforces the rule.
2624 If you would like to add a header field to a single message, you should
2625 either set the edit-headers variable, or use the edit-headers function
2626 (default: ``E'') in the send-menu so that you can edit the header of your
2627 message along with the body.
2629 To remove user defined header fields, use the ``unmy_hdr'' command. You
2630 may specify an asterisk (``*'') to remove all header fields, or the fields
2631 to remove. For example, to remove all ``To'' and ``Cc'' header fields, you
2636 17. Defining the order of headers when viewing messages
2638 Usage: hdr_order header1header2 header3
2641 With this command, you can specify an order in which mutt will attempt to
2642 present headers to you when viewing messages.
2644 ``unhdr_order *'' will clear all previous headers from the order list,
2645 thus removing the header order effects set by the system-wide startup
2648 hdr_order From Date: From: To: Cc: Subject:
2650 18. Specify default save filename
2652 Usage: save-hook [!]pattern filename
2655 This command is used to override the default filename used when saving
2656 messages. filename will be used as the default filename if the message is
2657 From: an address matching regexp or if you are the author and the message
2658 is addressed to: something matching regexp .
2660 See pattern-hook for information on the exact format of pattern.
2664 save-hook me@(turing\\.)?cs\\.hmc\\.edu$ +elkins
2665 save-hook aol\\.com$ +spam
2667 Also see the fcc-save-hook command.
2669 19. Specify default Fcc: mailbox when composing
2671 Usage: fcc-hook [!]pattern mailbox
2674 This command is used to save outgoing mail in a mailbox other than record.
2675 Mutt-ng searches the initial list of message recipients for the first
2676 matching regexp and uses mailbox as the default Fcc: mailbox. If no match
2677 is found the message will be saved to record mailbox.
2679 See pattern-hook for information on the exact format of pattern.
2681 Example: fcc-hook [@.]aol\\.com$ +spammers
2683 The above will save a copy of all messages going to the aol.com domain to
2684 the `+spammers' mailbox by default. Also see the fcc-save-hook command.
2686 20. Specify default save filename and default Fcc: mailbox at once
2688 Usage: fcc-save-hook [!]pattern mailbox
2691 This command is a shortcut, equivalent to doing both a fcc-hook and a
2692 save-hook with its arguments.
2694 21. Change settings based upon message recipients
2696 Usage: reply-hook [!]pattern command
2697 Usage: send-hook [!]pattern command
2698 Usage: send2-hook [!]pattern command
2703 These commands can be used to execute arbitrary configuration commands
2704 based upon recipients of the message. pattern is a regular expression
2705 matching the desired address. command is executed when regexp matches
2706 recipients of the message.
2708 reply-hook is matched against the message you are replying to, instead of
2709 the message you are sending .send-hook is matched against all messages,
2710 both new and replies .Note: reply-hooks are matched before the send-hook
2711 ,regardless of the order specified in the users's configuration file.
2713 send2-hook is matched every time a message is changed, either by editing
2714 it, or by using the compose menu to change its recipients or subject.
2715 send2-hook is executed after send-hook ,and can, e.g., be used to set
2716 parameters such as the sendmail variable depending on the message's sender
2719 For each type of send-hook or reply-hook, when multiple matches occur,
2720 commands are executed in the order they are specified in the muttrc (for
2723 See pattern-hook for information on the exact format of pattern.
2725 Example: send-hook mutt "set mime_forward signature=''"
2727 Another typical use for this command is to change the values of the
2728 attribution, signature and locale variables in order to change the
2729 language of the attributions and signatures based upon the recipients.
2731 Note: the send-hook's are only executed ONCE after getting the initial
2732 list of recipients. Adding a recipient after replying or editing the
2733 message will NOT cause any send-hook to be executed. Also note that my_hdr
2734 commands which modify recipient headers, or the message's subject, don't
2735 have any effect on the current message when executed from a send-hook.
2737 22. Change settings before formatting a message
2739 Usage: message-hook [!]pattern command
2742 This command can be used to execute arbitrary configuration commands
2743 before viewing or formatting a message based upon information about the
2744 message. command is executed if the pattern matches the message to be
2745 displayed. When multiple matches occur, commands are executed in the order
2746 they are specified in the muttrc.
2748 See pattern-hook for information on the exact format of pattern.
2752 message-hook ~A 'set pager=builtin'
2753 message-hook '~f freshmeat-news' 'set pager="less \"+/^ subject:.*\""'
2755 23. Choosing the cryptographic key of the recipient
2757 Usage: crypt-hook pattern keyid
2760 When encrypting messages with PGP or OpenSSL, you may want to associate a
2761 certain key with a given e-mail address automatically, either because the
2762 recipient's public key can't be deduced from the destination address, or
2763 because, for some reasons, you need to override the key Mutt-ng
2764 wouldnormally use. The crypt-hook command provides a method by which you
2765 can specify the ID of the public key to be used when encrypting messages
2766 to a certain recipient.
2768 The meaning of "key id" is to be taken broadly in this context: You can
2769 either put a numerical key ID here, an e-mail address, or even just a real
2772 24. Adding key sequences to the keyboard buffer
2777 This command adds the named string to the keyboard buffer. The string may
2778 contain control characters, key names and function names like the sequence
2779 string in the macro command. You may use it to automatically run a
2780 sequence of commands at startup, or when entering certain folders. For
2781 example, the following command will automatically collapse all threads
2782 when entering a folder:
2784 folder-hook . 'push <collapse-all>'
2787 25. Executing functions
2789 Usage: exec function [ function ... ]
2792 This command can be used to execute any function. Functions are listed in
2793 the functions. ``exec function'' is equivalent to ``push <function>''.
2797 Usage: score pattern value
2798 Usage: unscore pattern [ pattern... ]
2801 In situations where you have to cope with a lot of emails, e.g. when you
2802 read many different mailing lists, and take part in discussions, it is
2803 always useful to have the important messages marked and the annoying
2804 messages or the ones that you aren't interested in deleted. For this
2805 purpose, mutt-ng features a mechanism called ``scoring''.
2807 When you use scoring, every message has a base score of 0. You can then
2808 use the score command to define patterns and a positive or negative value
2809 associated with it. When a pattern matches a message, the message's score
2810 will be raised or lowered by the amount of the value associated with the
2813 score "~f nion@muttng\.org" 50
2814 score "~f @sco\.com" -100
2816 If the pattern matches, it is also possible to set the score value of the
2817 current message to a certain value and then stop evaluation:
2819 score "~f santaclaus@northpole\.int" =666
2821 What is important to note is that negative score values will be rounded up
2824 To make scoring actually useful, the score must be applied in some way.
2825 That's what the score thresholds are for. Currently, there are three score
2828 o flag threshold: when a message has a score value equal or higher than
2829 the flag threshold, it will be flagged.
2831 o read threshold: when a message has a score value equal or lower than
2832 the read threshold, it will be marked as read.
2834 o delete threshold: when a message has a score value equal or lower than
2835 the delete threshold, it will be marked as deleted.
2837 These three thresholds can be set via the variables score-threshold-flag
2838 ,score-threshold-read, score-threshold-delete and. By default,
2839 score-threshold-read and score-threshold-delete are set to -1, which means
2840 that in the default threshold configuration no message will ever get
2841 marked as read or deleted.
2843 Scoring gets especially interesting when combined with the color command
2844 and the Ëœn pattern:
2846 color index black yellow "~n 10-"
2847 color index red yellow "~n 100-"
2849 The rules above mark all messages with a score between 10 and 99 with
2850 black and yellow, and messages with a score greater or equal 100 with red
2851 and yellow. This might be unusual to you if you're used to e.g. slrn's
2852 scoring mechanism, but it is more flexible, as it visually marks different
2857 Usage: spam pattern format
2858 Usage: nospam pattern
2861 Mutt-ng has generalized support for external spam-scoring filters. By
2862 defining your spam patterns with the spam and nospam commands, you can
2863 limit, search, and sort your mail based on its spam attributes, as
2864 determined by the external filter. You also can display the spam
2865 attributes in your index display using the %H selector in the index-format
2866 variable. (Tip: try %?H?[%H] ? to display spam tags only when they are
2867 defined for a given message.)
2869 Your first step is to define your external filter's spam patterns using
2870 the spam command. pattern should be a regular expression that matches a
2871 header in a mail message. If any message in the mailbox matches this
2872 regular expression, it will receive a ``spam tag'' or ``spam attribute''
2873 (unless it also matches a nospam pattern -- see below.) The appearance of
2874 this attribute is entirely up to you, and is governed by the format
2875 parameter. format can be any static text, but it also can include
2876 back-references from the pattern expression. (A regular expression
2877 ``back-reference'' refers to a sub-expression contained within
2878 parentheses.) %1 is replaced with the first back-reference in the regex,
2879 %2 with the second, etc.
2881 If you're using multiple spam filters, a message can have more than one
2882 spam-related header. You can define spam patterns for each filter you use.
2883 If a message matches two or more of these patterns, and the
2884 $spam_separator variable is set to a string, then the message's spam tag
2885 will consist of all the format strings joined together, with the value of
2886 $spam_separator separating them.
2888 For example, suppose I use DCC, SpamAssassin, and PureMessage. I might
2889 define these spam settings:
2891 spam "X-DCC-.*-Metrics:.*(....)=many" "90+/DCC-%1"
2892 spam "X-Spam-Status: Yes" "90+/SA"
2893 spam "X-PerlMX-Spam: .*Probability=([0-9]+)%" "%1/PM"
2894 set spam_separator=", "
2896 If I then received a message that DCC registered with ``many'' hits under
2897 the ``Fuz2'' checksum, and that PureMessage registered with a 97%
2898 probability of being spam, that message's spam tag would read90+/DCC-Fuz2,
2899 97/PM. (The four characters before ``=many'' in a DCC report indicate the
2900 checksum used -- in this case, ``Fuz2''.)
2902 If the $spam_separator variable is unset, then each spam pattern match
2903 supersedes the previous one. Instead of getting joined format strings,
2904 you'll get only the last one to match.
2906 The spam tag is what will be displayed in the index when you use %H in the
2907 $index_format variable. It's also the string that the ËœH pattern-matching
2908 expression matches against for search and limit functions. And it's what
2909 sorting by spam attribute will use as a sort key.
2911 That's a pretty complicated example, and most people's actual environments
2912 will have only one spam filter. The simpler your configuration, the more
2913 effective mutt can be, especially when it comes to sorting.
2915 Generally, when you sort by spam tag, mutt will sort lexically -- that is,
2916 by ordering strings alphnumerically. However, if a spam tag begins with a
2917 number, mutt will sort numerically first, and lexically only when two
2918 numbers are equal in value. (This is like UNIX's sort -n.) A message with
2919 no spam attributes at all -- that is, one that didn't match any of your
2920 spam patterns -- is sorted at lowest priority. Numbers are sorted next,
2921 beginning with 0 and ranging upward. Finally, non-numeric strings are
2922 sorted, with ``a'' taking lowerpriority than ``z''. Clearly, in general,
2923 sorting by spam tags is most effective when you can coerce your filter to
2924 give you a raw number. But in case you can't, mutt can still do something
2927 The nospam command can be used to write exceptions to spam patterns. If a
2928 header pattern matches something in a spam command, but you nonetheless do
2929 not want it to receive a spam tag, you can list amore precise pattern
2930 under a nospam command.
2932 If the pattern given to nospam is exactly the same as the pattern on an
2933 existing spam list entry, the effect will be to remove the entry from the
2934 spam list, instead of adding an exception. Likewise, if the pattern for a
2935 spam command matches an entry on the nospam list, that nospam entry will
2936 be removed. If the pattern for nospam is ``*'', all entries on both lists
2937 will be removed. This might be the default action if you use spam and
2938 nospam in conjunction with a folder-hook .
2940 You can have as many spam or nospam commands as you like. You can even do
2941 your own primitive spam detection within mutt -- for example, if you
2942 consider all mail from MAILER-DAEMON to be spam, you can use a spam
2945 spam "^From: .*MAILER-DAEMON" "999"
2947 28. Setting variables
2949 Usage: set [no|inv]variable[=value] [ variable ... ]
2950 Usage: toggle variable [variable... ]
2951 Usage: unset variable [variable... ]
2952 Usage: reset variable [variable... ]
2955 This command is used to set (and unset) variables .There are four basic
2956 types of variables: boolean, number, string and quadoption. boolean
2957 variables can be set (true) or unset (false). number variables can be
2958 assigned a positive integer value.
2960 string variables consist of any number of printable characters. strings
2961 must be enclosed in quotes if they contain spaces or tabs. You may also
2962 use the ``C'' escape sequences \n and \t for newline and tab,
2965 quadoption variables are used to control whether or not to be prompted for
2966 certain actions, or to specify a default action. A value of yes will cause
2967 the action to be carried out automatically as if you had answered yes to
2968 the question. Similarly, a value of no will cause the the action to be
2969 carried out as if you had answered ``no.'' A value of ask-yes will cause a
2970 prompt with a default answer of ``yes'' and ask-no will provide a default
2973 Prefixing a variable with ``no'' will unset it. Example: set noaskbcc .
2975 For boolean variables, you may optionally prefix the variable name with
2976 inv to toggle the value (on or off). This is useful when writing macros.
2977 Example: set invsmart_wrap.
2979 The toggle command automatically prepends the inv prefix to all specified
2982 The unset command automatically prepends the no prefix to all specified
2985 Using the enter-command function in the index menu, you can query the
2986 value of a variable by prefixing the name of the variable with a question
2991 The question mark is actually only required for boolean and quadoption
2994 The reset command resets all given variables to the compile time defaults
2995 (hopefully mentioned in this manual). If you use the command set and
2996 prefix the variable with ``&'' this has the same behavior as the reset
2999 With the reset command there exists the special variable ``all'', which
3000 allows you to reset all variables to their system defaults.
3002 29. Reading initialization commands from another file
3004 Usage: source filename [ filename... ]
3007 This command allows the inclusion of initialization commands from other
3008 files. For example, I place all of my aliases in ˜/.mail_aliases so that
3009 I can make my ˜/.muttrc readable and keep my aliases private.
3011 If the filename begins with a tilde (``˜''), it will be expanded to the
3012 path of your home directory.
3014 If the filename ends with a vertical bar (|), then filename is considered
3015 to be an executable program from which to read input (eg. source
3020 Usage: unhook [ * | hook-type ]
3023 This command permits you to flush hooks you have previously defined. You
3024 can either remove all hooks by giving the ``*'' character as an argument,
3025 or you can remove all hooks of a specific type by saying something like
3030 31.1. Character Sets
3032 As users may run mutt-ng on different systems, the configuration must be
3033 maintained because it's likely that people want to use the setup
3034 everywhere they use mutt-ng. And mutt-ng tries to help where it can.
3036 To not produce conflicts with different character sets, mutt-ng allows
3037 users to specify in which character set their configuration files are
3038 encoded. Please note that while reading the configuration files, this is
3039 only respected after the corresponding declaration appears. It's advised
3040 to put the following at the very beginning of a users muttngrc:
3042 set config_charset = "..."
3044 and replacing the dots with the actual character set. To avoid problems
3045 while maintaining the setup, vim user's may want to use modelines as show
3048 # vim:fileencoding=...:
3050 while, again, replacing the dots with the appropriate name. This tells vim
3051 as which character set to read and save the file.
3053 31.2. Modularization
3055 ``Modularization'' means to divide the setup into several files while
3056 sorting the options or commands by topic. Especially for longer setups
3057 (e.g. with many hooks), this helps maintaining it and solving trouble.
3059 When using separation, setups may be, as a whole or in fractions, shared
3060 over different systems.
3062 31.3. Conditional parts
3064 When using a configuration on different systems, the user may not always
3065 have influence on how mutt-ng is installed and which features it includes.
3067 To solve this, mutt-ng contain a feature based on the ``ifdef'' patch
3068 written for mutt. Its basic syntax is:
3070 ifdef <item> <command>
3071 ifndef <item> <command>
3073 ...whereby <item> can be one of:
3083 All available functions, variables and menus are documented elsewhere in
3084 this manual but ``features'' is specific to these two commands. To test
3085 for one, prefix one of the following keywords with feature_: ncurses,
3086 slang, iconv, idn, dotlock, standalone, pop, nntp, imap, ssl, gnutls,
3087 sasl, sasl2, libesmtp, compressed, color, classic_pgp, classic_smime,
3090 As an example, one can use the following in ˜/.muttngrc:
3092 ifdef feature_imap 'source ~/.mutt-ng/setup-imap'
3093 ifdef feature_pop 'source ~/.mutt-ng/setup-pop'
3094 ifdef feature_nntp 'source ~/.mutt-ng/setup-nntp'
3096 ...to only source ˜/.mutt-ng/setup-imap if IMAP support is built in, only
3097 source ˜/.mutt-ng/setup-pop if POP support is built in and only source
3098 ˜/.mutt-ng/setup-nntp if NNTP support is built in.
3100 An example for testing for variable names can be used if users use
3101 different revisions of mutt-ng whereby the older one may not have a
3102 certain variable. To test for the availability of imap-mail-check , use:
3104 ifdef imap_mail_check 'set imap_mail_check = 300'
3106 Provided for completeness is the test for menu names. To set
3107 pager-index-lines only if the pager menu is available, use:
3109 ifdef pager 'set pager_index_lines = 10'
3111 For completeness, too, the opposite of ifdef is provided: ifndef which
3112 only executes the command if the test fails. For example, the following
3113 two examples are equivalent:
3115 ifdef feature_ncurses 'source ~/.mutt-ng/setup-ncurses'
3116 ifndef feature_ncurses 'source ~/.mutt-ng/setup-slang'
3120 ifdef feature_slang 'source ~/.mutt-ng/setup-slang'
3121 ifndef feature_slang 'source ~/.mutt-ng/setup-ncurses'
3123 32. Obsolete Variables
3125 In the process of ensuring and creating more consistency, many variables
3126 have been renamed and some of the old names were already removed. Please
3127 see sect-obsolete for a complete list.
3129 Chapter 4. Advanced Usage
3133 1. Regular Expressions
3137 2.1. Complex Patterns
3139 2.2. Patterns and Dates
3145 3.2. Conditional Expansion
3147 3.3. Modifications and Padding
3153 5.1. Message Matching in Hooks
3155 6. Using the sidebar
3157 7. External Address Queries
3161 9. Mailbox Shortcuts
3163 10. Handling Mailing Lists
3167 11.1. Linking threads
3169 11.2. Breaking threads
3171 12. Delivery Status Notification (DSN) Support
3173 13. POP3 Support (OPTIONAL)
3175 14. IMAP Support (OPTIONAL)
3177 14.1. The Folder Browser
3179 14.2. Authentication
3181 15. NNTP Support (OPTIONAL)
3183 15.1. Again: Scoring
3185 16. SMTP Support (OPTIONAL)
3187 17. Managing multiple IMAP/POP/NNTP accounts (OPTIONAL)
3189 18. Start a WWW Browser on URLs (EXTERNAL)
3191 19. Compressed folders Support (OPTIONAL)
3193 19.1. Open a compressed mailbox for reading
3195 19.2. Write a compressed mailbox
3197 19.3. Append a message to a compressed mailbox
3199 19.4. Encrypted folders
3201 1. Regular Expressions
3203 All string patterns in Mutt-ng including those in more complex patterns
3204 must be specified using regular expressions (regexp) in the ``POSIX
3205 extended'' syntax (which is more or less the syntax used by egrep and GNU
3206 awk). For your convenience, we have included below a brief description of
3209 The search is case sensitive if the pattern contains at least one upper
3210 case letter, and case insensitive otherwise. Note that ``\'' must be
3211 quoted if used for a regular expression in an initialization command:
3214 A regular expression is a pattern that describes a set of strings. Regular
3215 expressions are constructed analogously to arithmetic expressions, by
3216 using various operators to combine smaller expressions.
3218 Note that the regular expression can be enclosed/delimited by either " or
3219 ' which is useful if the regular expression includes a white-space
3220 character. See muttrc-syntax for more information on " and ' delimiter
3221 processing. To match a literal " or ' you must preface it with \
3224 The fundamental building blocks are the regular expressions that match a
3225 single character. Most characters, including all letters and digits, are
3226 regular expressions that match themselves. Any metacharacter with special
3227 meaning may be quoted by preceding it with a backslash.
3229 The period ``.'' matches any single character. The caret ``^'' andthe
3230 dollar sign ``$'' are metacharacters that respectively match the empty
3231 string at the beginning and end of a line.
3233 A list of characters enclosed by ``['' and ``]'' matches any single
3234 character in that list; if the first character of the list is a caret
3235 ``^'' then it matches any character not in the list. For example, the
3236 regular expression [0123456789] matches any single digit. A range of ASCII
3237 characters may be specified by giving the first and last characters,
3238 separated by a hyphen ``-''. Most metacharacters lose their special
3239 meaning inside lists. To include a literal ``]'' place it first in the
3240 list. Similarly, to include a literal ``^'' place it anywhere but first.
3241 Finally, to include a literal hyphen ``-'' place it last.
3243 Certain named classes of characters are predefined. Character classes
3244 consist of ``[:'', a keyword denoting the class, and ``:]''. The following
3245 classes are defined by the POSIX standard:
3249 Alphanumeric characters.
3253 Alphabetic characters.
3257 Space or tab characters.
3269 Characters that are both printable and visible. (A space is
3270 printable, but not visible, while an ``a'' is both.)
3274 Lower-case alphabetic characters.
3278 Printable characters (characters that are not control characters.)
3282 Punctuation characters (characters that are not letter, digits,
3283 control characters, or space characters).
3287 Space characters (such as space, tab and formfeed, to name a few).
3291 Upper-case alphabetic characters.
3295 Characters that are hexadecimal digits.
3297 A character class is only valid in a regular expression inside the
3298 brackets of a character list. Note that the brackets in these class names
3299 are part of the symbolic names, and must be included in addition to the
3300 brackets delimiting the bracket list. For example, [[:digit:]] is
3301 equivalent to [0-9].
3303 Two additional special sequences can appear in character lists. These
3304 apply to non-ASCII character sets, which can have single symbols
3305 (calledcollating elements) that are represented with more than one
3306 character, as well as several characters that are equivalent for collating
3307 or sorting purposes:
3311 A collating symbol is a multi-character collating element enclosed
3312 in ``[.'' and ``.]''. For example, if ``ch'' is a collating
3313 element, then [[.ch.]] is a regexp that matches this collating
3314 element, while [ch] is a regexp that matches either ``c'' or
3319 An equivalence class is a locale-specific name for a list of
3320 characters that are equivalent. The name is enclosed in ``[='' and
3321 ``=]''. For example, the name ``e'' might be used to represent all
3322 of ``è'' ``é'' and ``e''. In this case, [[=e=]] is a regexp that
3323 matches any of ``è'', ``é'' and ``e''.
3325 A regular expression matching a single character may be followed by one of
3326 several repetition operators:
3330 The preceding item is optional and matched at most once.
3334 The preceding item will be matched zero or more times.
3338 The preceding item will be matched one or more times.
3342 The preceding item is matched exactly n times.
3346 The preceding item is matched n or more times.
3350 The preceding item is matched at most m times.
3354 The preceding item is matched at least n times, but no more than m
3357 Two regular expressions may be concatenated; the resulting regular
3358 expression matches any string formed by concatenating two substrings that
3359 respectively match the concatenated subexpressions.
3361 Two regular expressions may be joined by the infix operator ``|''; the
3362 resulting regular expression matches any string matching either
3365 Repetition takes precedence over concatenation, which in turn takes
3366 precedence over alternation. A whole subexpression may be enclosed in
3367 parentheses to override these precedence rules.
3369 Note: If you compile Mutt-ng with the GNU rx package, the following
3370 operators may also be used in regular expressions:
3374 Matches the empty string at either the beginning or the end of a
3379 Matches the empty string within a word.
3383 Matches the empty string at the beginning of a word.
3387 Matches the empty string at the end of a word.
3391 Matches any word-constituent character (letter, digit, or
3396 Matches any character that is not word-constituent.
3400 Matches the empty string at the beginning of a buffer (string).
3404 Matches the empty string at the end of a buffer.
3406 Please note however that these operators are not defined by POSIX, so they
3407 may or may not be available in stock libraries on various systems.
3411 Mutt-ng's pattern language provides a simple yet effective way to set up
3412 rules to match messages, e.g. for operations like tagging and scoring. A
3413 pattern consists of one or more sub-pattern, which can be logically
3414 grouped, ORed, and negated. For a complete listing of these patterns,
3415 please refer to table patterns in the Reference chapter.
3417 It must be noted that in this table, EXPR is a regular expression. For
3418 ranges, the forms <[MAX], >>[MIN], [MIN]- and -[MAX] are also possible.
3420 2.1. Complex Patterns
3422 It is possible to combine several sub-patterns to a more complex pattern.
3423 The most simple possibility is to logically AND several patterns by
3424 stringing them together:
3428 The pattern above matches all messages that contain ``SPAM'' in the
3429 subject and are unread.
3431 To logical OR patterns, simply use the | operator. This one especially
3432 useful when using local groups:
3434 ~f ("nion@muttng\.org"|"ak@muttng\.org"|"pdmef@muttng\.org")
3435 (~b mutt-ng|~s Mutt-ng)
3438 The first pattern matches all messages that were sent by one of the
3439 mutt-ng maintainers, while the seconds pattern matches all messages that
3440 contain ``mutt-ng'' in the message body or ``Mutt-ng'' in the subject. The
3441 third pattern matches all messages that do not contain ``@synflood\.at''
3442 in the References: header, i.e. messages that are not an (indirect) reply
3443 to one of my messages. A pattern can be logicall negated using the !
3446 2.2. Patterns and Dates
3448 When using dates in patterns, the dates must be specified in a special
3449 format, i.e. DD/MM/YYYY. If you don't specify month or year, they default
3450 to the current month or year. When using date ranges, and you specify only
3451 the minimum or the maximum, the specified date will be excluded, e.g.
3452 01/06/2005- matches against all messages after Juni 1st, 2005.
3454 It is also possible to use so-called ``error margins'' when specifying
3455 date ranges. You simply specify a date, and then the error margin. This
3456 margin needs to contain the information whether it goes ``forth'' or
3457 ``back'' in time, by using + and -. Then follows a number and a unit, i.e.
3458 y for years, m for months, w for weeks and d for days. If you use the
3459 special * sign, it means that the error margin goes to both``directions''
3466 The first pattern matches all dates between January 1st, 2005 and January
3467 1st 2006. The second pattern matches all dates between October 18th, 2004
3468 and October 4th 2004 (2 weeks before 18/10/2004), while the third pattern
3469 matches all dates 1 day around December 28th, 2004 (i.e. Dec 27th, 28th
3472 Relative dates are also very important, as they make it possible to
3473 specify date ranges between a fixed number of units and the current date.
3474 How this works can be seen in the following example:
3476 ~d >2w # messages older than two weeks
3477 ~d <3d # messages newer than 3 days
3478 ~d =1m # messages that are exactly one month old
3484 The so called Format Strings offer great flexibility when configuring
3485 mutt-ng. In short, they describe what items to print out how in menus and
3488 Basically, they work as this: for different menus and bars, there's a
3489 variable specifying the layout. For every item available, there is a so
3492 For example, when running mutt-ng on different machines or different
3493 versions for testing purposes, it may be interesting to have the following
3494 information always printed on screen when one is in the index:
3496 o the current hostname
3498 o the current mutt-ng version number
3500 The setting for the status bar of the index is controlled via the
3501 status-format variable. For the hostname and version string, there's an
3502 expando for $status_format: %h expands to the hostname and %v to the
3503 version string. When just configuring:
3505 set status_format = "%v on %h: ..."
3507 mutt-ng will replace the sequence %v with the version string and %h with
3508 the host's name. When you are, for example, running mutt-ng version 1.5.9i
3509 on host mailhost, you'll see the following when you're in the index:
3511 Mutt-ng 1.5.9i on mailhost: ...
3513 In the index, there're more useful information one could want to see:
3515 o which mailbox is open
3517 o how man new, flagged or postponed messages
3521 To include the mailbox' name is as easy as:
3523 set status_format = "%v on %h: %B: ...
3525 When the currently opened mailbox is Inbox, this will be expanded to:
3527 Mutt-ng 1.5.9i on mailhost: Inbox: ...
3529 For the number of certain types of messages, one more feature of the
3530 format strings is extremely useful. If there aren't messages of a certain
3531 type, it may not be desired to print just that there aren't any but
3532 instead only print something if there are any.
3534 3.2. Conditional Expansion
3536 To only print the number of messages if there are new messages in the
3537 current mailbox, further extend $status_format to:
3539 set status_format = "%v on %h: %B %?n?%n new? ...
3541 This feature is called nonzero-printing and works as this: some expandos
3542 may be optionally printed nonzero, i.e. a portion of the format string is
3543 only evaluated if the value of the expando is different from zero. The
3546 %?<item>?<string if nonzero>?
3548 which tells mutt-ng to only look at <string if nonzero> if the value of
3549 the %<item%gt; expando is different from zero. In our example, we used n
3550 as the expando to check for and %n new as the optional nonzero string.
3552 But this is not all: this feature only offers one alternative: ``print
3553 something if not zero.'' Mutt-ng does, as you might guess, also provide a
3554 logically complete version: ``if zero, print something and else print
3555 something else.'' This is achieved by the following syntax for those
3556 expandos which may be printed nonzero:
3558 %?<item>?<string if nonzero>&<string if zero>?
3560 Using this we can make mutt-ng to do the following:
3562 o make it print ``n new messages'' whereby n is the count but only if
3565 o and make it print ``no new messages'' if there aren't any
3567 The corresponding configuration is:
3569 set status_format = "%v on %h: %B: %?n?%n new messages&no new messages? ...
3571 This doubles the use of the ``new messages'' string because it'll get
3572 always printed. Thus, it can be shortened to:
3574 set status_format = "%v on %h: %B: %?n?%n&no? new messages ...
3576 As you might see from this rather simple example, one can create very
3577 complex but fancy status messages. Please see the reference chapter for
3578 expandos and those which may be printed nonzero.
3580 3.3. Modifications and Padding
3582 Besides the information given so far, there're even more features of
3585 o When specifying %_<item> instead of just %<item>, mutt-ng will convert
3586 all characters in the expansion of <item> to lowercase.
3588 o When specifying %:<item> instead of just %<item>, mutt-ng will convert
3589 all dots in the expansion of <item> to underscores (_).
3591 Also, there's a feature called Padding supplied by the following two
3592 expandos: %|X and %>X .
3596 When this occurs, mutt-ng will fill the rest of the line with the
3597 character X. In our example, filling the rest of the line with
3598 dashes is done by setting:
3600 set status_format = "%v on %h: %B: %?n?%n&no? new messages %|-"
3604 Since the previous expando stops at the end of line, there must be
3605 a way to fill the gap between two items via the %>X expando: it
3606 puts as many characters X in between two items so that the rest of
3607 the line will be right-justified. For example, to not put the
3608 version string and hostname of our example on the left but on the
3609 right and fill the gap with spaces, one might use (note the space
3612 set status_format = "%B: %?n?%n&no? new messages %> (%v on %h)"
3616 Sometimes it is desirable to perform an operation on a group of messages
3617 all at once rather than one at a time. An example might be to save
3618 messages to a mailing list to a separate folder, or to delete all messages
3619 with a given subject. To tag all messages matching a pattern, use the
3620 tag-pattern function, which is bound to ``shift-T'' by default. Or you can
3621 select individual messages by hand using the ``tag-message'' function,
3622 which is bound to ``t'' by default. See patterns for Mutt-ng's pattern
3625 Once you have tagged the desired messages, you can use the ``tag-prefix''
3626 operator, which is the ``;'' (semicolon) key by default. When the
3627 ``tag-prefix'' operator is used, the next operation will be applied to all
3628 tagged messages if that operation can be used in that manner. If the
3629 auto-tag variable is set, the next operation applies to the tagged
3630 messages automatically, without requiring the ``tag-prefix''.
3632 In macro or push commands, you can use the ``tag-prefix-cond'' operator.
3633 If there are no tagged messages, mutt will "eat" the rest of the macro to
3634 abort it's execution.Mutt-ng will stop "eating" the macro when it
3635 encounters the ``end-cond'' operator; after this operator the rest of the
3636 macro will be executed asnormal.
3640 A hook is a concept borrowed from the EMACS editor which allows you to
3641 execute arbitrary commands before performing some operation. For example,
3642 you may wish to tailor your configuration based upon which mailbox you are
3643 reading, or to whom you are sending mail. In the Mutt-ng world, a hook
3644 consists of a regexp or patterns along with a configuration
3661 for specific details on each type of hook available.
3663 Note: if a hook changes configuration settings, these changes remain
3664 effective until the end of the current mutt session. As this is generally
3665 not desired, a default hook needs to be added before all other hooks to
3666 restore configuration defaults. Here is an example with send-hook and the
3669 send-hook . 'unmy_hdr From:'
3670 send-hook ~C'^b@b\.b$' my_hdr from: c@c.c
3672 5.1. Message Matching in Hooks
3674 Hooks that act upon messages (send-hook, save-hook, fcc-hook,message-hook
3675 )are evaluated in a slightly different manner. For the other types of
3676 hooks, a regexp is sufficient. But in dealing with messages a finer grain
3677 of control is needed for matching since for different purposes you want to
3678 match different criteria.
3680 Mutt-ng allows the use of the patterns language for matching messages in
3681 hook commands. This works in exactly the same way as it would when
3682 limiting orsearching the mailbox, except that you are restricted to those
3683 operators which match information mutt extracts from the header of the
3684 message (i.e. from, to, cc, date, subject, etc.).
3686 For example, if you wanted to set your return address based upon sending
3687 mail to a specific address, you could do something like:
3689 send-hook '~t ^me@cs\.hmc\.edu$' 'my_hdr From: Mutt-ng User <user@host>'
3691 which would execute the given command when sending mail to me@cs.hmc.edu.
3693 However, it is not required that you write the pattern to match using the
3694 full searching language. You can still specify a simple regular expression
3695 like the other hooks, in which case Mutt-ng will translate your pattern
3696 into the full language, using the translation specified by the
3697 default-hook variable. The pattern is translated at the time the hook is
3698 declared, so the value of default-hook that is in effect at that time will
3701 6. Using the sidebar
3703 The sidebar, a feature specific to Mutt-ng, allows you to use a mailbox
3704 listing which looks very similar to the ones you probably know from GUI
3705 mail clients. The sidebar lists all specified mailboxes, shows the number
3706 in each and highlights the ones with new email Use the following
3707 configuration commands:
3709 set sidebar_visible="yes"
3710 set sidebar_width=25
3712 If you want to specify the mailboxes you can do so with:
3720 You can also specify the colors for mailboxes with new mails by using:
3722 color sidebar_new red black
3723 color sidebar white black
3725 The available functions are:
3727 Table 4.1. Default Sidebar Function Bindings
3729 +------------------------------------------------------------------------+
3730 | Key | Function | Description |
3731 |------+---------------------+-------------------------------------------|
3732 | none | sidebar-scroll-up | Scrolls the mailbox list up 1 page |
3733 |------+---------------------+-------------------------------------------|
3734 | none | sidebar-scroll-down | Scrolls the mailbox list down 1 page |
3735 |------+---------------------+-------------------------------------------|
3736 | none | sidebar-next | Highlights the next mailbox |
3737 |------+---------------------+-------------------------------------------|
3738 | none | sidebar-next-new | Highlights the next mailbox with new mail |
3739 |------+---------------------+-------------------------------------------|
3740 | none | sidebar-previous | Highlights the previous mailbox |
3741 |------+---------------------+-------------------------------------------|
3742 | none | sidebar-open | Opens the currently highlighted mailbox |
3743 +------------------------------------------------------------------------+
3745 Reasonable key bindings look e.g. like this:
3747 bind index \Cp sidebar-prev
3748 bind index \Cn sidebar-next
3749 bind index \Cb sidebar-open
3750 bind pager \Cp sidebar-prev
3751 bind pager \Cn sidebar-next
3752 bind pager \Cb sidebar-open
3754 macro index B ':toggle sidebar_visible^M'
3755 macro pager B ':toggle sidebar_visible^M'
3757 You can then go up and down by pressing Ctrl-P and Ctrl-N, and switch on
3758 and off the sidebar simply by pressing 'B'.
3760 7. External Address Queries
3762 Mutt-ng supports connecting to external directory databases such as LDAP,
3763 ph/qi, bbdb, or NIS through a wrapper script which connects to mutt using
3764 a simple interface. Using the query-command variable, you specify the
3765 wrapper command to use. For example:
3767 set query_command = "mutt_ldap_query.pl '%s'"
3769 The wrapper script should accept the query on the command-line. It should
3770 return a one line message, then each matching response on a single line,
3771 each line containing a tab separated address then name thensome other
3772 optional information. On error, or if there are no matching addresses,
3773 return a non-zero exit code and a one line error message.
3775 An example multiple response output:
3777 Searching database ... 20 entries ... 3 matching:
3778 me@cs.hmc.edu Michael Elkins mutt dude
3779 blong@fiction.net Brandon Long mutt and more
3780 roessler@guug.de Thomas Roessler mutt pgp
3782 There are two mechanisms for accessing the query function of mutt. One is
3783 to do a query from the index menu using the query function (default: Q).
3784 This will prompt for a query, then bring up the query menu which will list
3785 the matching responses. From the query menu, you can select addresses to
3786 create aliases, or to mail. You can tag multiple addressesto mail, start a
3787 new query, or have a new query appended to the current responses.
3789 The other mechanism for accessing the query function is for address
3790 completion, similar to the alias completion. In any prompt for address
3791 entry, you can use the complete-query function (default: ^T) to run a
3792 query based on the current address you have typed. Like aliases, mutt will
3793 look for what you have typed back to the last space or comma. If there is
3794 a single response for that query, mutt will expand the address in place.
3795 If there are multiple responses, mutt will activate the querymenu. At the
3796 query menu, you can select one or more addresses to be added to the
3801 Mutt-ng supports reading and writing of four different mailbox formats:
3802 mbox, MMDF, MH and Maildir. The mailbox type is autodetected, so there is
3803 no need to use a flag for different mailbox types. When creating
3804 newmailboxes, Mutt-ng uses the default specified with the mbox-type
3807 mbox. This is the most widely used mailbox format for UNIX. All messages
3808 are stored in a single file. Each message has a line of the form:
3810 From me@cs.hmc.edu Fri, 11 Apr 1997 11:44:56 PST
3812 to denote the start of a new message (this is often referred to as the
3815 MMDF. This is a variant of the mbox format. Each message is surrounded by
3816 lines containing ``^A^A^A^A'' (four control-A's).
3818 MH. A radical departure from mbox and MMDF, a mailbox consists of a
3819 directory and each message is stored in a separate file. The filename
3820 indicates the message number (however, this is may not correspond to the
3821 message number Mutt-ng displays). Deleted messages arerenamed with a comma
3822 (,) prepended to the filename. Note: Mutt detects this type of mailbox by
3823 looking for either .mh_sequences or .xmhcache (needed to distinguish
3824 normal directories from MH mailboxes).
3826 Maildir. The newest of the mailbox formats, used by the Qmail MTA (a
3827 replacement for sendmail). Similar to MH, except that it adds three
3828 subdirectories of the mailbox: tmp, new and cur .Filenames for the
3829 messages are chosen in such a way they are unique, even when twoprograms
3830 are writing the mailbox over NFS, which means that no file locking is
3833 9. Mailbox Shortcuts
3835 There are a number of built in shortcuts which refer to specific
3836 mailboxes. These shortcuts can be used anywhere you are prompted for a
3837 file or mailbox path.
3839 o ! -- refers to your spoolfile (incoming) mailbox
3841 o > -- refers to your mbox file
3843 o < -- refers to your record file
3845 o ^ -- refers to the current mailbox
3847 o - or !! -- refers to the file you've last visited
3849 o ˜ -- refers to your home directory
3851 o = or + -- refers to your folder directory
3853 o @alias -- refers to the save-hook as determined by the address of the
3856 10. Handling Mailing Lists
3858 Mutt-ng has a few configuration options that make dealing with large
3859 amounts of mail easier. The first thing you must do is to let Mutt know
3860 what addresses you consider to be mailing lists (technically this does not
3861 have to be a mailing list, but that is what it is most often used for),
3862 and what lists you are subscribed to. This is accomplished through the use
3863 of the lists commands in your muttrc.
3865 Now that Mutt-ng knows what your mailing lists are, it can do several
3866 things, the first of which is the ability to show the name of a list
3867 through which you received a message (i.e., of a subscribed list) in the
3868 index menu display. This is useful to distinguish between personal and
3869 list mail in the same mailbox. In the index-format variable, the escape
3870 ``%L'' will return the string ``To <list>'' when ``list'' appears in the
3871 ``To'' field, and ``Cc <list>'' when it appears in the ``Cc'' field
3872 (otherwise it returns the name of the author).
3874 Often times the ``To'' and ``Cc'' fields in mailing list messages tend to
3875 get quite large. Most people do not bother to remove the author of the
3876 message they are reply to from the list, resulting in two or more copies
3877 being sent to that person. The ``list-reply'' function, which by default
3878 is bound to ``L'' in the index menu and pager, helps reduce the clutter by
3879 only replying to the known mailing list addresses instead of all
3880 recipients (except as specified by Mail-Followup-To, see below).
3882 Mutt-ng also supports the Mail-Followup-To header. When you send a message
3883 to a list of recipients which includes one or several subscribed mailing
3884 lists, and if the followup-to option is set, mutt will generate a
3885 Mail-Followup-To header which contains all the recipients to whom you send
3886 this message, but not your address. This indicates that group-replies or
3887 list-replies (also known as ``followups'') to this message should only be
3888 sent to the original recipients of the message, and not separately to you
3889 - you'll receive your copy through one of the mailing lists you are
3892 Conversely, when group-replying or list-replying to a message which has a
3893 Mail-Followup-To header, mutt will respect this header if the
3894 honor-followup-to configuration variable is set. Using list-reply will in
3895 this case also make sure that the reply goes to the mailing list, even if
3896 it's not specified in the list of recipients in the Mail-Followup-To.
3898 Note that, when header editing is enabled, you can create a
3899 Mail-Followup-To header manually. Mutt-ng will only auto-generate this
3900 header if it doesn't exist when you send the message.
3902 The other method some mailing list admins use is to generate a
3903 ``Reply-To'' field which points back to the mailing list address rather
3904 than the author of the message. This can create problems when trying to
3905 reply directly to the author in private, since most mail clients will
3906 automatically reply to the address given in the ``Reply-To'' field.
3907 Mutt-ng uses the reply-to variable to help decide which address to use. If
3908 set to ask-yes or ask-no, you will be prompted as to whether or not you
3909 would like to use the address given inthe ``Reply-To'' field, or reply
3910 directly to the address given in the ``From'' field. When set to yes, the
3911 ``Reply-To'' field will be used when present.
3913 The ``X-Label:'' header field can be used to further identify mailing
3914 lists or list subject matter (or just to annotate messages individually).
3915 The index-format variable's ``%y'' and ``%Y'' escapes can be used to
3916 expand ``X-Label:'' fields in the index, and Mutt-ng's pattern-matcher can
3917 match regular expressions to ``X-Label:'' fields with the ``Ëœy''
3918 selector. ``X-Label:'' is not a standard message header field, but it can
3919 easily be inserted by procmailand other mail filtering agents.
3921 Lastly, Mutt-ng has the ability to sort the mailbox into threads. A thread
3922 is a group of messages which all relate to the same subject. This is
3923 usually organized into a tree-like structure where a message and all of
3924 its replies are represented graphically. If you've ever used a threaded
3925 news client, this is the same concept. It makes dealingwith large volume
3926 mailing lists easier because you can easily delete uninteresting threads
3927 and quickly find topics of value.
3931 Mutt-ng has the ability to dynamically restructure threads that are broken
3932 either by misconfigured software or bad behavior from some correspondents.
3933 This allows to clean your mailboxes formats) from these annoyances which
3934 make it hard to follow a discussion.
3936 11.1. Linking threads
3938 Some mailers tend to "forget" to correctly set the "In-Reply-To:" and
3939 "References:" headers when replying to a message. This results in broken
3940 discussions because Mutt-ng has not enough information to guess the
3941 correct threading. You can fix this by tagging the reply, then moving to
3942 the parent message and using the ``link-threads'' function (bound to & by
3943 default). The reply will then be connected to this "parent" message.
3945 You can also connect multiple children at once, tagging them and using the
3946 tag-prefix command (';') or the auto_tag option.
3948 11.2. Breaking threads
3950 On mailing lists, some people are in the bad habit of starting a new
3951 discussion by hitting "reply" to any message from the list and changing
3952 the subject to a totally unrelated one. You can fix such threads by using
3953 the ``break-thread'' function (boundby default to #), which will turn the
3954 subthread starting from the current message into a whole different thread.
3956 12. Delivery Status Notification (DSN) Support
3958 RFC1894 defines a set of MIME content types for relaying information about
3959 the status of electronic mail messages. These can be thought of as
3960 ``return receipts.''
3962 Users can make use of it in one of the following two ways:
3964 o Berkeley sendmail 8.8.x currently has some command line options in
3965 which the mail client can make requests as to what type of status
3966 messages should be returned.
3968 o The SMTP support via libESMTP supports it, too.
3970 To support this, there are two variables:
3972 o dsn-notify is used to request receipts for different results (such as
3973 failed message,message delivered, etc.).
3975 o dsn-return requests how much of your message should be returned with
3976 the receipt (headers or full message).
3978 Please see the reference chapter for possible values.
3980 13. POP3 Support (OPTIONAL)
3982 If Mutt-ng was compiled with POP3 support (by running the configure script
3983 with the --enable-pop flag), it has the ability to work with mailboxes
3984 located on a remote POP3 server and fetch mail for local browsing.
3986 You can access the remote POP3 mailbox by selecting the folder
3989 You can select an alternative port by specifying it with the server, i.e.:
3990 pop://popserver:port/.
3992 You can also specify different username for each folder, i.e.:
3993 pop://username@popserver[:port]/.
3995 Polling for new mail is more expensive over POP3 than locally. For this
3996 reason the frequency at which Mutt-ng will check for mail remotely can be
3997 controlled by the pop-mail-check variable, which defaults to every 60
4000 If Mutt-ng was compiled with SSL support (by running the configure script
4001 with the --with-ssl flag), connections to POP3 servers can be encrypted.
4002 This naturally requires that the server supports SSL encrypted
4003 connections. To access a folder with POP3/SSL, you should use pops:
4004 prefix, ie: pops://[username@]popserver[:port]/.
4006 Another way to access your POP3 mail is the fetch-mail function (default:
4007 G). It allows to connect to pop-host ,fetch all your new mail and place it
4008 in the local spoolfile. After this point, Mutt-ng runs exactly as if the
4009 mail had always been local.
4011 Note: If you only need to fetch all messages to local mailbox you should
4012 consider using a specialized program, such as fetchmail
4014 14. IMAP Support (OPTIONAL)
4016 If Mutt-ng was compiled with IMAP support (by running the configure script
4017 with the --enable-imap flag), it has the ability to work with folders
4018 located on a remote IMAP server.
4020 You can access the remote inbox by selecting the folder
4021 imap://imapserver/INBOX, where imapserver is the name of the IMAP server
4022 and INBOX is the special name for your spool mailbox on the IMAP server.
4023 If you want to access another mail folder at the IMAP server, you should
4024 use imap://imapserver/path/to/folder where path/to/folder is the path of
4025 the folder you want to access.
4027 You can select an alternative port by specifying it with the server, i.e.:
4028 imap://imapserver:port/INBOX.
4030 You can also specify different username for each folder, i.e.:
4031 imap://username@imapserver[:port]/INBOX.
4033 If Mutt-ng was compiled with SSL support (by running the configure script
4034 with the --with-ssl flag), connections to IMAP servers can be encrypted.
4035 This naturally requires that the server supports SSL encrypted
4036 connections. To access a folder with IMAP/SSL, you should use
4037 imaps://[username@]imapserver[:port]/path/to/folder as your folder path.
4039 Pine-compatible notation is also supported, i.e.
4040 {[username@]imapserver[:port][/ssl]}path/to/folder
4042 Note that not all servers use / as the hierarchy separator. Mutt-ng should
4043 correctly notice which separator is being used by the server and
4044 convertpaths accordingly.
4046 When browsing folders on an IMAP server, you can toggle whether to look at
4047 only the folders you are subscribed to, or all folders with the
4048 toggle-subscribed command. See also the imap-list-subscribed variable.
4050 Polling for new mail on an IMAP server can cause noticeable delays. So,
4051 you'll want to carefully tune the imap-mail-check and timeout variables.
4053 Note that if you are using mbox as the mail store on UW servers prior
4054 tov12.250, the server has been reported to disconnect a client if another
4055 client selects the same folder.
4057 14.1. The Folder Browser
4059 As of version 1.2, mutt supports browsing mailboxes on an IMAP server.
4060 This is mostly the same as the local file browser, with the following
4063 o Instead of file permissions, mutt displays the string "IMAP", possibly
4064 followed by the symbol "+", indicating that the entry contains both
4065 messages and subfolders. On Cyrus-like servers folders will often
4066 contain both messages and subfolders.
4068 o For the case where an entry can contain both messages and subfolders,
4069 the selection key (bound to enter by default) will choose to descend
4070 into the subfolder view. If you wish to view the messages in that
4071 folder, you must use view-file instead (bound to space by default).
4073 o You can create, delete and rename mailboxes with the create-mailbox,
4074 delete-mailbox, and rename-mailbox commands (default bindings: C , d
4075 and r, respectively). You may also subscribe and unsubscribe to
4076 mailboxes (normally these are bound to s and u, respectively).
4078 14.2. Authentication
4080 Mutt-ng supports four authentication methods with IMAP servers: SASL,
4081 GSSAPI, CRAM-MD5, and LOGIN (there is a patch by Grant Edwards to add NTLM
4082 authentication for you poor exchange users out there, but it has yet to be
4083 integrated into the main tree). There is also support for the
4084 pseudo-protocol ANONYMOUS, which allows you to log in to a public IMAP
4085 server without having an account. To use ANONYMOUS, simply make your
4086 username blank or "anonymous".
4088 SASL is a special super-authenticator, which selects among several
4089 protocols (including GSSAPI, CRAM-MD5, ANONYMOUS, and DIGEST-MD5) the most
4090 secure method available on your host and the server. Using some of these
4091 methods (including DIGEST-MD5 and possibly GSSAPI), your entire session
4092 will be encrypted and invisible to those teeming network snoops. It is the
4093 best option if you have it. To use it, you must have the Cyrus SASL
4094 libraryinstalled on your system and compile mutt with the --with-sasl
4097 Mutt-ng will try whichever methods are compiled in and available on the
4098 server, in the following order: SASL, ANONYMOUS, GSSAPI, CRAM-MD5, LOGIN.
4100 There are a few variables which control authentication:
4102 o imap-user - controls the username under which you request
4103 authentication on the IMAP server, for all authenticators. This is
4104 overridden by an explicit username in the mailbox path (i.e. by using
4105 a mailbox name of the form {user@host}).
4107 o imap-pass - a password which you may preset, used by all
4108 authentication methods where a password is needed.
4110 o imap-authenticators - a colon-delimited list of IMAP authentication
4111 methods to try, in the order you wish to try them. If specified, this
4112 overrides mutt's default (attempt everything, in the order listed
4115 15. NNTP Support (OPTIONAL)
4117 If compiled with ``--enable-nntp'' option, Mutt-ng can read news from a
4118 newsserver via NNTP. You can open a newsgroup with the
4119 ``change-newsgroup'' function from the index/pager which is by default
4122 The Default newsserver can be obtained from the $NNTPSERVER environment
4123 variable. Like other news readers, info about subscribed newsgroups is
4124 saved in a file as specified by the nntp-newsrc variable. Article headers
4125 are cached and can be loaded from a file when a newsgroup is entered
4126 instead loading from newsserver; currently, this caching mechanism still
4127 is different from the header caching for maildir/IMAP.
4129 15.1. Again: Scoring
4131 Especially for Usenet, people often ask for advanced filtering and scoring
4132 functionality. Of course, mutt-ng has scoring and allows a killfile, too.
4133 How to use a killfile has been discussed in score-command.
4135 What has not been discusses in detail is mutt-ng's built-in realname
4136 filter. For may newsreaders including those for ``advanced users'' like
4137 slrn or tin, there are frequent request for such functionality. The
4138 solutions offered often are complicated regular expressions.
4140 In mutt-ng this is as easy as
4144 This tells mutt-ng to apply a score of 42 to all messages whose sender
4145 specified a valid realname and a valid email address. Using
4149 on the contrary applies a score of 42 to all messages not matching those
4150 criteria which are very strict:
4152 o Email addresses must be valid according to RFC 2822, see
4153 <ftp://ftp.rfc-editor.org/in-notes/rfc2822.txt>
4155 o the name must consist of at least 2 fields whereby a field must not
4156 end in a dot. This means that ``Joe User'' and ``Joe A.User'' are
4157 valid while ``J. User'' and ``J. A. User'' aren't.
4159 o it's assumed that users are interested in reading their own mail and
4160 mail from people who they have defined an alias forso that those 2
4161 groups of messages are excluded from the strict rules.
4163 16. SMTP Support (OPTIONAL)
4165 Mutt-ng can be built using a library called ``libESMTP'' which provides
4166 SMTP functionality. When configure was called with --with-libesmtp or the
4167 output muttng -v contains +USE_LIBESMTP, this will be or is the case
4168 already. The SMTP support includes support for Delivery Status
4169 Notification (see dsn section) as well as handling the 8BITMIME flag
4170 controlled via use-8bitmime .
4172 To enable sending mail directly via SMTP without an MTA such as Postfix or
4173 SSMTP and the like, simply set the smtp-host variable pointing to your
4176 Authentication mechanisms are available via the smtp-user and smtp-pass
4179 Transport Encryption via the StartTLS command is also available. For this
4180 to work, first of all Mutt-ng must be built with SSL or GNUTLS. Secondly,
4181 the smtp-use-tls variable must be either set to ``enabled'' or
4182 ``required.'' In both cases, StartTLS will be used if the server supports
4183 it: for the second case, the connection will fail ifit doesn't while
4184 switching back to unencrypted communication for the first one.
4186 Some mail providers require user's to set a particular envelope sender,
4187 i.e. they allow for only one value which may not be what the user wants to
4188 send as the From: header. In this case, the variable smtp-envelope may be
4189 used to set the envelope different from the From: header.
4191 17. Managing multiple IMAP/POP/NNTP accounts (OPTIONAL)
4193 If you happen to have accounts on multiple IMAP and/or POP servers, you
4194 may find managing all the authentication settings inconvenient and
4195 error-prone. The account-hook command may help. This hook works like
4196 folder-hook but is invoked whenever you access a remote mailbox (including
4197 inside the folder browser), not just when you open the mailbox.
4201 account-hook . 'unset imap_user; unset imap_pass; unset tunnel'
4202 account-hook imap://host1/ 'set imap_user=me1 imap_pass=foo'
4203 account-hook imap://host2/ 'set tunnel="ssh host2 /usr/libexec/imapd"'
4205 18. Start a WWW Browser on URLs (EXTERNAL)
4207 If a message contains URLs (unified resource locator = address in the WWW
4208 space like http://www.mutt.org/), it is efficient to get a menu with all
4209 the URLs and start a WWW browser on one of them. This functionality is
4210 provided by the external urlview program which can be retrieved at
4211 ftp://ftp.mutt.org/mutt/contrib/ > and the configuration commands:
4213 macro index \cb |urlview\n
4214 macro pager \cb |urlview\n
4216 19. Compressed folders Support (OPTIONAL)
4218 If Mutt-ng was compiled with compressed folders support (by running the
4219 configure script with the --enable-compressed flag), Mutt can open folders
4220 stored in an arbitrary format, provided that the user has a script to
4221 convert from/to this format to one of the accepted.
4223 The most common use is to open compressed archived folders e.g. with gzip.
4225 In addition, the user can provide a script that gets a folder in an
4226 accepted format and appends its context to the folder in the user-defined
4227 format, which may be faster than converting the entire folder to the
4228 accepted format, appending to it and converting back to the user-defined
4231 There are three hooks defined (open-hook, close-hook and append-hook
4232 )which define commands to uncompress and compress a folder and to append
4233 messages to an existing compressed folder respectively.
4237 open-hook \\.gz$ "gzip -cd %f > %t"
4238 close-hook \\.gz$ "gzip -c %t > %f"
4239 append-hook \\.gz$ "gzip -c %t >> %f"
4241 You do not have to specify all of the commands. If you omit append-hook
4242 ,the folder will be open and closed again each time you will add to it. If
4243 you omit close-hook (or give empty command) , the folder will be open in
4244 the mode. If you specify append-hook though you'll be able to append to
4247 Note that Mutt-ng will only try to use hooks if the file is not in one of
4248 the accepted formats. In particular, if the file is empty, mutt supposes
4249 it is not compressed. This is important because it allows the use of
4250 programs that do not have well defined extensions. Just use "." as a
4251 regexp. But this may be surprising if your compressing script produces
4252 empty files. In this situation, unset save-empty ,so that the compressed
4253 file will be removed if you delete all of the messages.
4255 19.1. Open a compressed mailbox for reading
4257 Usage: open-hook regexp "command"
4259 The command is the command that can be used for opening the folders whose
4262 The command string is the printf-like format string, and it should accept
4263 two parameters: %f, which is replaced with the (compressed) folder name,
4264 and %t which is replaced with the name of the temporary folder to which to
4267 %f and %t can be repeated any number of times in the command string, and
4268 all of the entries are replaced with the appropriate folder name. In
4269 addition, %% is replaced by %, as in printf, and any other %anything is
4272 The command should not remove the original compressed file. The command
4273 should return non-zero exit status if it fails, so mutt knows something's
4278 open-hook \\.gz$ "gzip -cd %f > %t"
4280 If the command is empty, this operation is disabled for this file type.
4282 19.2. Write a compressed mailbox
4284 Usage: close-hook regexp"command"
4286 This is used to close the folder that was open with the open-hook command
4287 after some changes were made to it.
4289 The command string is the command that can be used for closing the folders
4290 whose names match regexp. It has the same format as in the open-hook
4291 command. Temporary folder in this case is the folder previously produced
4292 by the < open-hook command.
4294 The command should not remove the decompressed file. The command should
4295 return non-zero exit status if it fails, so mutt knows something's wrong.
4299 close-hook \\.gz$ "gzip -c %t > %f"
4301 If the command is empty, this operation is disabled for this file type,
4302 and the file can only be open in the readonly mode.
4304 close-hook is not called when you exit from the folder if the folder was
4307 19.3. Append a message to a compressed mailbox
4309 Usage: append-hook regexp"command"
4311 This command is used for saving to an existing compressed folder. The
4312 command is the command that can be used for appending to the folders whose
4313 names match regexp. It has the same format as in the open-hook command.
4314 The temporary folder in this case contains the messages that are
4317 The command should not remove the decompressed file. The command should
4318 return non-zero exit status if it fails, so mutt knows something's wrong.
4322 append-hook \\.gz$ "gzip -c %t >> %f"
4324 When append-hook is used, the folder is not opened, which saves time, but
4325 this means that we can not find out what the folder type is. Thus the
4326 default ( mbox-type )type is always supposed (i.e. this is the format used
4327 for the temporary folder).
4329 If the file does not exist when you save to it, close-hook is called, and
4330 not append-hook. append-hook is only for appending to existing folders.
4332 If the command is empty, this operation is disabled for this file type. In
4333 this case, the folder will be open and closed again (using open-hook and
4334 close-hook respectively) each time you will add to it.
4336 19.4. Encrypted folders
4338 The compressed folders support can also be used to handle encrypted
4339 folders. If you want to encrypt a folder with PGP, you may want to usethe
4342 open-hook \\.pgp$ "pgp -f < %f > %t"
4343 close-hook \\.pgp$ "pgp -fe YourPgpUserIdOrKeyId < %t > %f"
4345 Please note, that PGP does not support appending to an encrypted folder,
4346 so there is no append-hook defined.
4348 Note: the folder is temporary stored decrypted in the /tmp directory,
4349 where it can be read by your system administrator. So thinkabout the
4350 security aspects of this.
4352 Chapter 5. Mutt-ng's MIME Support
4356 1. Using MIME in Mutt
4358 1.1. Viewing MIME messages in the pager
4360 1.2. The Attachment Menu
4362 1.3. The Compose Menu
4364 2. MIME Type configuration with mime.types
4366 3. MIME Viewer configuration with mailcap
4368 3.1. The Basics of the mailcap file
4370 3.2. Secure use of mailcap
4372 3.3. Advanced mailcap Usage
4374 3.4. Example mailcap files
4378 5. MIME Multipart/Alternative
4382 Quite a bit of effort has been made to make Mutt-ng the premier text-mode
4383 MIME MUA. Every effort has been made to provide the functionality that the
4384 discerning MIME user requires, and the conformance to the standards
4385 wherever possible. When configuring Mutt-ng for MIME, there are two
4386 extratypes of configuration files which Mutt-ng uses. One is the
4387 mime.types file, which contains the mapping of file extensions to IANA
4388 MIME types. The other is the mailcap file, which specifies the external
4389 commands to use for handling specific MIME types.
4391 1. Using MIME in Mutt
4393 There are three areas/menus in Mutt-ng which deal with MIME, they are the
4394 pager (while viewing a message), the attachment menu and the compose menu.
4396 1.1. Viewing MIME messages in the pager
4398 When you select a message from the index and view it in the pager, Mutt
4399 decodes the message to a text representation. Mutt-ng internally supports
4400 a number of MIME types, including text/plain, text/enriched,
4401 message/rfc822, and message/news .In addition, the export controlled
4402 version of Mutt-ng recognizes a variety of PGP MIME types, including
4403 PGP/MIME and application/pgp.
4405 Mutt-ng will denote attachments with a couple lines describing them. These
4406 lines are of the form:
4408 [-- Attachment #1: Description --]
4409 [-- Type: text/plain, Encoding: 7bit, Size: 10000 --]
4411 Where the Description is the description or filename given for the
4412 attachment, and the Encoding is one of
4413 7bit/8bit/quoted-printable/base64/binary.
4415 If Mutt-ng cannot deal with a MIME type, it will display a message like:
4417 [-- image/gif is unsupported (use 'v' to view this part) --]
4419 1.2. The Attachment Menu
4421 The default binding for view-attachments is `v', which displays the
4422 attachment menu for a message. The attachment menu displays a list ofthe
4423 attachments in a message. From the attachment menu, you can save, print,
4424 pipe, delete, and view attachments. You can apply these operations to a
4425 group of attachments at once, by tagging the attachments and by using the
4426 ``tag-prefix'' operator. You can also reply to the current message from
4427 this menu, and only the current attachment (or the attachments tagged)
4428 will be quoted in your reply. You can view attachments as text, or view
4429 them using the mailcap viewer definition.
4431 Finally, you can apply the usual message-related functions (like
4432 resend-message, and the reply and forward functions) to attachments of
4433 type message/rfc822.
4435 See the help on the attachment menu for more information.
4437 1.3. The Compose Menu
4439 The compose menu is the menu you see before you send a message. It allows
4440 you to edit the recipient list, the subject, and other aspects of your
4441 message. It also contains a list of the attachments of your message,
4442 including the main body. From this menu, you can print, copy, filter,
4443 pipe, edit, compose, review, and rename an attachment or a list of tagged
4444 attachments. You can also modifying the attachment information, notably
4445 the type, encoding and description.
4447 Attachments appear as follows:
4449 1 [text/plain, 7bit, 1K] /tmp/mutt-euler-8082-0 <no description>
4450 2 [applica/x-gunzip, base64, 422K] ~/src/mutt-0.85.tar.gz <no description>
4452 The '-' denotes that Mutt-ng will delete the file after sending (or
4453 postponing, or canceling) the message. It can be toggled with the
4454 toggle-unlink command (default: u). The next field is the MIME
4455 content-type, and can be changed with the edit-type command (default: ^T).
4456 The next field is the encoding for the attachment, which allows a binary
4457 message to be encoded for transmission on 7bit links. It can be changed
4458 with the edit-encoding command (default: ^E). The next field is the size
4459 of the attachment, rounded to kilobytes or megabytes. The next field is
4460 the filename, which can be changed with the rename-file command (default:
4461 R). The final field is the description of the attachment, and can be
4462 changed with the edit-description command (default: d).
4464 2. MIME Type configuration with mime.types
4466 When you add an attachment to your mail message, Mutt-ng searches your
4467 personal mime.types file at ${HOME}/.mime.types ,and then the system
4468 mime.types file at /usr/local/share/mutt/mime.types or /etc/mime.types
4470 The mime.types file consist of lines containing a MIME type and a space
4471 separated list of extensions. For example:
4473 application/postscript ps eps
4475 audio/x-aiff aif aifc aiff
4477 A sample mime.types file comes with the Mutt-ng distribution, and should
4478 contain most of the MIME types you are likely to use.
4480 If Mutt-ng can not determine the mime type by the extension of the file
4481 you attach, it will look at the file. If the file is free of binary
4482 information, Mutt-ng will assume that the file is plain text, and mark it
4483 as text/plain. If the file contains binary information, then Mutt-ng will
4484 mark it as application/octet-stream. You can change the MIME type that
4485 Mutt-ng assigns to an attachment by using the edit-type command from the
4486 compose menu (default: ^T). The MIME type is actually a major mime type
4487 followed by the sub-type, separated by a '/'. 6 major types: application,
4488 text, image, video, audio, and model have been approved after various
4489 internet discussions. Mutt-ng recognises all of these if the appropriate
4490 entry is found in the mime.types file. It also recognises other major mime
4491 types, such as the chemical type that is widely used in the molecular
4492 modelling community to pass molecular data in various forms to various
4493 molecular viewers. Non-recognised mime types should only be used if the
4494 recipient of the message is likely to be expecting such attachments.
4496 3. MIME Viewer configuration with mailcap
4498 Mutt-ng supports RFC 1524 MIME Configuration, in particular the Unix
4499 specific format specified in Appendix A of RFC 1524. This file format is
4500 commonly referred to as the mailcap format. Many MIME compliant programs
4501 utilize the mailcap format, allowing you to specify handling for all MIME
4502 types in one place for all programs. Programs known to use this format
4503 include Netscape, XMosaic, lynx and metamail.
4505 In order to handle various MIME types that Mutt-ng can not handle
4506 internally, Mutt-ng parses a series of external configuration files to
4507 find an external handler. The default search string for these files is a
4508 colon delimited list set to
4510 ${HOME}/.mailcap:/usr/local/share/mutt/mailcap:/etc/mailcap:/etc/mailcap:/usr/etc/mailcap:/usr/local/etc/mailcap
4512 where $HOME is your home directory.
4514 In particular, the metamail distribution will install a mailcap file,
4515 usually as /usr/local/etc/mailcap, which contains some baseline entries.
4517 3.1. The Basics of the mailcap file
4519 A mailcap file consists of a series of lines which are comments, blank, or
4522 A comment line consists of a # character followed by anything you want.
4524 A blank line is blank.
4526 A definition line consists of a content type, a view command, and any
4527 number of optional fields. Each field of a definition line is dividedby a
4528 semicolon ';' character.
4530 The content type is specified in the MIME standard type/subtype method.
4531 For example, text/plain, text/html, image/gif, etc. In addition, the
4532 mailcap format includes two formats for wildcards, one using the special
4533 '*' subtype, the other is the implicit wild, where you only include the
4534 major type. For example, image/* ,or video, will match all image types and
4535 video types, respectively.
4537 The view command is a Unix command for viewing the type specified. There
4538 are two different types of commands supported. The default is to send the
4539 body of the MIME message to the command on stdin. You can change this
4540 behavior by using %s as a parameter to your view command. This will cause
4541 Mutt-ng to save the body of the MIME message to a temporary file, and then
4542 call the view command with the %s replaced by the name of the temporary
4543 file. In both cases, Mutt-ng will turn over the terminal to the view
4544 program until the program quits, at which time Mutt will remove the
4545 temporary file if it exists.
4547 So, in the simplest form, you can send a text/plain message to the
4548 external pager more on stdin:
4552 Or, you could send the message as a file:
4556 Perhaps you would like to use lynx to interactively view a text/html
4561 In this case, lynx does not support viewing a file from stdin, so you must
4562 use the %s syntax. Note: Some older versions of lynx contain a bug where
4563 they will check the mailcap file for a viewer for text/html. They will
4564 find the line which calls lynx, and run it. This causes lynx to
4565 continuously spawn itself to view the object.
4567 On the other hand, maybe you don't want to use lynx interactively, youjust
4568 want to have it convert the text/html to text/plain, then you can use:
4570 text/html; lynx -dump %s | more
4572 Perhaps you wish to use lynx to view text/html files, and a pager on all
4573 other text formats, then you would use the following:
4578 This is the simplest form of a mailcap file.
4580 3.2. Secure use of mailcap
4582 The interpretation of shell meta-characters embedded in MIME parameters
4583 can lead to security problems in general. Mutt-ng tries to quote
4584 parameters in expansion of %s syntaxes properly, and avoids risky
4585 characters by substituting them, see the mailcap-sanitize variable.
4587 Although mutt's procedures to invoke programs with mailcap seem to be
4588 safe, there are other applications parsing mailcap, maybe taking less care
4589 of it. Therefore you should pay attention to the following rules:
4591 Keep the %-expandos away from shell quoting. Don't quote them with single
4592 or double quotes. Mutt-ng does this for you, the right way, as should any
4593 other program which interprets mailcap. Don't put them into backtick
4594 expansions. Be highly careful with eval statements, and avoid them if
4595 possible at all. Trying to fix broken behaviour with quotes introduces new
4596 leaks - there is no alternative to correct quoting in the first place.
4598 If you have to use the %-expandos' values in context where you need
4599 quoting or backtick expansions, put that value into a shell variable and
4600 reference the shell variable where necessary, as in the following example
4601 (using $charset inside the backtick expansion is safe, since it is not
4602 itself subject to any further expansion):
4604 text/test-mailcap-bug; cat %s; copiousoutput; test=charset=%{charset} \
4605 && test "`echo $charset | tr '[A-Z]' '[a-z]'`" != iso-8859-1
4607 3.3. Advanced mailcap Usage
4609 3.3.1. Optional Fields
4611 In addition to the required content-type and view command fields, you can
4612 add semi-colon ';' separated fields to set flags and other options.
4613 Mutt-ng recognizes the following optional fields:
4617 This flag tells Mutt-ng that the command passes possibly large
4618 amounts of text on stdout. This causes Mutt-ng to invoke a pager
4619 (either the internal pager or the external pager defined by the
4620 pager variable) on the output of the view command. Without this
4621 flag, Mutt-ng assumes that the command is interactive. One could
4622 use this to replace the pipe to more in the lynx -dump example in
4625 text/html; lynx -dump %s ; copiousoutput
4627 This will cause lynx to format the text/html output as text/plain
4628 and Mutt-ng will use your standard pager to display the results.
4632 Mutt-ng uses this flag when viewing attachments with auto-view ,in
4633 order to decide whether it should honor the setting of the
4634 wait-key variable or not. When an attachment is viewed using an
4635 interactive program, and the corresponding mailcap entry has a
4636 needsterminal flag, Mutt-ng will use wait-key and the exit
4637 statusof the program to decide if it will ask you to press a key
4638 after the external program has exited. In all other situations it
4639 will not prompt you for a key.
4643 This flag specifies the command to use to create a new attachment
4644 of a specific MIME type. Mutt-ng supports this from the compose
4647 composetyped=<command>
4649 This flag specifies the command to use to create a new attachment
4650 of a specific MIME type. This command differs from the compose
4651 command in that mutt will expect standard MIME headers on the
4652 data. This can be used to specify parameters, filename,
4653 description, etc. for a new attachment. Mutt-ng supports this from
4658 This flag specifies the command to use to print a specific MIME
4659 type. Mutt-ng supports this from the attachment and compose menus.
4663 This flag specifies the command to use to edit a specific MIME
4664 type. Mutt-ng supports this from the compose menu, and also uses
4665 it to compose new attachments. Mutt-ng will default to the defined
4666 editor for text attachments.
4668 nametemplate=<template>
4670 This field specifies the format for the file denoted by %s in the
4671 command fields. Certain programs will require a certain file
4672 extension, for instance, to correctly view a file. For instance,
4673 lynx will only interpret a file as text/html if the file ends in
4674 .html. So, you would specify lynx as a text/html viewer with a
4675 line in the mailcap file like:
4677 text/html; lynx %s; nametemplate=%s.html
4681 This field specifies a command to run to test whether this mailcap
4682 entry should be used. The command is defined with the command
4683 expansion rules defined in the next section. If the command
4684 returns 0, then the test passed, and Mutt-ng uses this entry. If
4685 the command returns non-zero, then the test failed, and Mutt-ng
4686 continues searching for the right entry. Note: the content-type
4687 must match before Mutt-ng performs the test. For example:
4689 text/html; netscape -remote 'openURL(%s)' ; test=RunningX
4692 In this example, Mutt-ng will run the program RunningX which will
4693 return 0 if the X Window manager is running, and non-zero if it
4694 isn't. If RunningX returns 0, then Mutt-ng will call netscape to
4695 display the text/html object. If RunningX doesn't return 0, then
4696 Mutt-ng will go on to the next entry and use lynx to display the
4701 When searching for an entry in the mailcap file, Mutt-ng will search for
4702 the most useful entry for its purpose. For instance, if you are attempting
4703 to print an image/gif, and you have the following entries in your mailcap
4704 file, Mutt-ng will search for an entry with the print command:
4707 image/gif; ; print= anytopnm %s | pnmtops | lpr; \
4710 Mutt-ng will skip the image/* entry and use the image/gif entry with the
4713 In addition, you can use this with auto-view to denote two commands for
4714 viewing an attachment, one to be viewed automatically, the other to be
4715 viewed interactively from the attachment menu. In addition, you can then
4716 use the test feature to determine which viewer to use interactively
4717 depending on your environment.
4719 text/html; netscape -remote 'openURL(%s)' ; test=RunningX
4720 text/html; lynx %s; nametemplate=%s.html
4721 text/html; lynx -dump %s; nametemplate=%s.html; copiousoutput
4723 For auto-view, Mutt-ng will choose the third entry because of the
4724 copiousoutput tag. For interactive viewing, Mutt will run the program
4725 RunningX to determine if it should use the first entry. If the program
4726 returns non-zero, Mutt-ng will use the second entry for interactive
4729 3.3.3. Command Expansion
4731 The various commands defined in the mailcap files are passed to the
4732 /bin/sh shell using the system() function. Before the command is passed to
4733 /bin/sh -c, it is parsed to expand various special parameters with
4734 information from Mutt-ng. The keywords Mutt-ng expands are:
4738 As seen in the basic mailcap section, this variable is expanded to
4739 a filename specified by the calling program. This file contains
4740 the body of the message to view/print/edit or where the composing
4741 program should place the results of composition. In addition, the
4742 use of this keyword causes Mutt-ng to not pass the body of the
4743 message to the view/print/edit program on stdin.
4747 Mutt-ng will expand %t to the text representation of the content
4748 type of the message in the same form as the first parameter of the
4749 mailcap definition line, ie text/html or image/gif.
4753 Mutt-ng will expand this to the value of the specified parameter
4754 from the Content-Type: line of the mail message. For instance, if
4755 Your mail message contains:
4757 Content-Type: text/plain; charset=iso-8859-1
4759 then Mutt-ng will expand %{charset} to iso-8859-1. The default
4760 metamail mailcap file uses this feature to test the charset to
4761 spawn an xterm using the right charset to view the message.
4765 This will be replaced by a %
4767 Mutt-ng does not currently support the %F and %n keywords specified in RFC
4768 1524. The main purpose of these parameters is for multipart messages,
4769 which is handled internally by Mutt-ng.
4771 3.4. Example mailcap files
4773 This mailcap file is fairly simple and standard:
4776 # I'm always running X :)
4777 video/*; xanim %s > /dev/null
4778 image/*; xv %s > /dev/null
4780 # I'm always running netscape (if my computer had more memory, maybe)
4781 text/html; netscape -remote 'openURL(%s)'
4783 This mailcap file shows quite a number of examples:
4785 # Use xanim to view all videos Xanim produces a header on startup,
4786 # send that to /dev/null so I don't see it
4787 video/*; xanim %s > /dev/null
4789 # Send html to a running netscape by remote
4790 text/html; netscape -remote 'openURL(%s)'; test=RunningNetscape
4791 # If I'm not running netscape but I am running X, start netscape on the
4793 text/html; netscape %s; test=RunningX
4795 # Else use lynx to view it as text
4798 # This version would convert the text/html to text/plain
4799 text/html; lynx -dump %s; copiousoutput
4801 # I use enscript to print text in two columns to a page
4802 text/*; more %s; print=enscript -2Gr %s
4804 # Netscape adds a flag to tell itself to view jpegs internally
4805 image/jpeg;xv %s; x-mozilla-flags=internal
4807 # Use xv to view images if I'm running X
4808 # In addition, this uses the \ to extend the line and set my editor
4810 image/*;xv %s; test=RunningX; edit=xpaint %s
4812 # Convert images to text using the netpbm tools
4813 image/*; (anytopnm %s | pnmscale -xysize 80 46 | ppmtopgm | pgmtopbm |
4814 pbmtoascii -1x2 ) 2>&1 ; copiousoutput
4816 # Send excel spreadsheets to my NT box
4817 application/ms-excel; open.pl %s
4821 In addition to explicitly telling Mutt-ng to view an attachment with
4822 theMIME viewer defined in the mailcap file, Mutt-ng has support for
4823 automatically viewing MIME attachments while in the pager.
4825 To work, you must define a viewer in the mailcap file which uses the
4826 copiousoutput option to denote that it is non-interactive. Usually, you
4827 also use the entry to convert the attachment to a text representation
4828 which you can view in the pager.
4830 You then use the auto_view muttrc command to list the content-types that
4831 you wish to view automatically.
4833 For instance, if you set auto_view to:
4835 auto_view text/html application/x-gunzip application/postscript
4836 image/gif application/x-tar-gz
4838 Mutt-ng could use the following mailcap entries to automatically view
4839 attachments of these types.
4841 text/html; lynx -dump %s; copiousoutput; nametemplate=%s.html
4842 image/*; anytopnm %s | pnmscale -xsize 80 -ysize 50 | ppmtopgm | pgmtopbm | pbmtoascii ; copiousoutput
4843 application/x-gunzip; gzcat; copiousoutput
4844 application/x-tar-gz; gunzip -c %s | tar -tf - ; copiousoutput
4845 application/postscript; ps2ascii %s; copiousoutput
4847 ``unauto_view'' can be used to remove previous entries from the autoview
4848 list. This can be used with message-hook to autoview messages based on
4849 size, etc. ``unauto_view *'' will remove all previous entries.
4851 5. MIME Multipart/Alternative
4853 Mutt-ng has some heuristics for determining which attachment of a
4854 multipart/alternative type to display. First, mutt will check the
4855 alternative_order list to determine if one of the available typesis
4856 preferred. The alternative_order list consists of a number of MIME types
4857 in order, including support for implicit and explicit wildcards, for
4860 alternative_order text/enriched text/plain text
4861 application/postscript image/*
4863 Next, mutt will check if any of the types have a defined auto-view, and
4864 use that. Failing that, Mutt-ng will look for any text type. As a last
4865 attempt, mutt willlook for any type it knows how to handle.
4867 To remove a MIME type from the alternative_order list, use the
4868 unalternative_order command.
4872 Mutt-ng's mime_lookup list specifies a list of mime-types that should not
4873 be treated according to their mailcap entry. This option is designed
4874 todeal with binary types such as application/octet-stream. When an
4875 attachment's mime-type is listed in mime_lookup, then the extension of the
4876 filename will be compared to the list of extensions in the mime.types
4877 file. The mime-type associated with this extension will then be used to
4878 process the attachment according to the rules in the mailcap file and
4879 according to any other configuration options (such as auto_view)
4880 specified. Common usage would be:
4882 mime_lookup application/octet-stream application/X-Lotus-Manuscript
4884 In addition, the unmime_lookup command may be used to disable this feature
4885 for any particular mime-type if it had been set, for example, in a global
4888 Chapter 6. Security Considerations
4896 3. Information Leaks
4898 3.1. Message-ID: headers
4900 3.2. mailto:-style links
4902 4. External applications
4908 First of all, mutt-ng contains no security holes included by intention but
4909 may contain unknown security holes. As a consequence, please run mutt-ng
4910 only with as few permissions as possible.
4912 Please do not run mutt-ng as the super user.
4914 When configuring mutt-ng, there're some points to note about secure
4917 In practice, mutt-ng can be easily made as vulnerable as even the most
4918 insecure mail user agents (in their default configuration) just by
4919 changing mutt-ng's configuration files: it then can execute arbitrary
4920 programs and scripts attached to messages, send out private data on its
4921 own, etc. Although this is not believed to the common type of setup,
4922 please read this chapter carefully.
4926 Although mutt-ng can be told the various passwords for accounts, please
4927 never store passwords in configuration files. Besides the fact that the
4928 system's operator can always read them, you could forget to replace the
4929 actual password with asterisks when reporting a bug or asking for help
4930 via, for example, a mailing list so that your mail including your password
4931 could be archived by internet search engines, etc. Please never store
4936 Mutt-ng uses many temporary files for viewing messages, verifying digital
4937 signatures, etc. The umask variable can be used to change the default
4938 permissions of these files. Please only change it if you really know what
4939 you are doing. Also, a different location for these files may be desired
4940 which can be changed via the tmpdir variable.
4942 3. Information Leaks
4944 3.1. Message-ID: headers
4946 In the default configuration, mutt-ng will leak some information to the
4947 outside world when sending messages: the generation of Message-ID: headers
4948 includes a step counter which is increased (and rotated) with every
4949 message sent. If you'd like to hide this information probably telling
4950 others how many mail you sent in which time, you at least need to remove
4951 the %P expando from the default setting of the msgid-format variable.
4952 Please make sure that you really know how local parts of these Message-ID:
4953 headers are composed.
4955 3.2. mailto:-style links
4957 As mutt-ng be can be set up to be the mail client to handle mailto: style
4958 links in websites, there're security considerations, too. To keep the old
4959 behavior by default, mutt-ng will be strict in interpreting them which
4960 means that arbitrary header fields can be embedded in these links which
4961 could override existing header fields or attach arbitrary files. This may
4962 be problematic if the edit-headers variable is unset, i.e. the user
4963 doesn't want to see header fields while editing the message.
4965 For example, following a link like
4967 mailto:joe@host?Attach=~/.gnupg/secring.gpg
4969 will send out the user's private gnupg keyring to joe@host if the user
4970 doesn't follow the information on screen carefully enough.
4972 When unsetting the strict-mailto variable, mutt-ng will
4974 o be less strict when interpreting these links by prepending a X-Mailto-
4975 string to all header fields embedded in such a link and
4977 o turn on the edit-headers variable by force to let the user see all the
4978 headers (because they still may leak information.)
4980 4. External applications
4982 Mutt-ng in many places has to rely on external applications or for
4983 convenience supports mechanisms involving external applications.
4987 One of these is the mailcap mechanism as defined by RfC 1524. Mutt-ng can
4988 be set up to automatically execute any given utility as listed in one of
4989 the mailcap files (see the mailcap-path variable for details.)
4991 These utilities may have a variety of security vulnerabilities, including
4992 overwriting of arbitrary files, information leaks or other exploitable
4993 bugs. These vulnerabilities may go unnoticed by the user, especially when
4994 they are called automatically (and without interactive prompting) from the
4995 mailcap file(s). When using mutt-ng's autoview mechanism in combination
4996 with mailcap files, please be sure to...
4998 o manually select trustworth applications with a reasonable calling
5001 o periodically check the contents of mailcap files, especially after
5002 software installations or upgrades
5004 o keep the software packages referenced in the mailcap file up to date
5006 o leave the mailcap-sanitize variable in its default state to restrict
5007 mailcap expandos to a safe set of characters
5011 Besides the mailcap mechanism, mutt-ng uses a number of other external
5012 utilities for operation.
5014 The same security considerations apply for these as for tools involved via
5015 mailcap (for example, mutt-ng is vulnerable to Denial of Service Attacks
5016 with compressed folders support if the uncompressed mailbox is too large
5017 for the disk it is saved to.)
5019 As already noted, most of these problems are not built in but caused by
5020 wrong configuration, so please check your configuration.
5022 Chapter 7. Reference
5026 1. Command line options
5030 3. Configuration Commands
5032 4. Configuration variables
5058 1. Command line options
5060 Running mutt with no arguments will make Mutt-ng attempt to read your
5061 spool mailbox. However, it is possible to read other mailboxes and to send
5062 messages from the command line as well.
5064 Table 7.1. Mutt-NG Command Line Options
5066 +------------------------------------------------------------------------+
5067 | Option | Description |
5068 |--------+---------------------------------------------------------------|
5069 | -A | expand an alias |
5070 |--------+---------------------------------------------------------------|
5071 | -a | attach a file to a message |
5072 |--------+---------------------------------------------------------------|
5073 | -b | specify a blind carbon-copy (BCC) address |
5074 |--------+---------------------------------------------------------------|
5075 | -c | specify a carbon-copy (Cc) address |
5076 |--------+---------------------------------------------------------------|
5077 | -e | specify a config command to be run after initialization files |
5079 |--------+---------------------------------------------------------------|
5080 | -f | specify a mailbox to load |
5081 |--------+---------------------------------------------------------------|
5082 | -F | specify an alternate file to read initialization commands |
5083 |--------+---------------------------------------------------------------|
5084 | -h | print help on command line options |
5085 |--------+---------------------------------------------------------------|
5086 | -H | specify a draft file from which to read a header and body |
5087 |--------+---------------------------------------------------------------|
5088 | -i | specify a file to include in a message composition |
5089 |--------+---------------------------------------------------------------|
5090 | -m | specify a default mailbox type |
5091 |--------+---------------------------------------------------------------|
5092 | -n | do not read the system Muttngrc |
5093 |--------+---------------------------------------------------------------|
5094 | -p | recall a postponed message |
5095 |--------+---------------------------------------------------------------|
5096 | -Q | query a configuration variable |
5097 |--------+---------------------------------------------------------------|
5098 | -R | open mailbox in read-only mode |
5099 |--------+---------------------------------------------------------------|
5100 | -s | specify a subject (enclose in quotes if it contains spaces) |
5101 |--------+---------------------------------------------------------------|
5102 | -t | dump the value of all variables to stdout |
5103 |--------+---------------------------------------------------------------|
5104 | -T | dump the value of all changed variables to stdout |
5105 |--------+---------------------------------------------------------------|
5106 | -v | show version number and compile-time definitions |
5107 |--------+---------------------------------------------------------------|
5108 | -x | simulate the mailx(1) compose mode |
5109 |--------+---------------------------------------------------------------|
5110 | -y | show a menu containing the files specified by the mailboxes |
5112 |--------+---------------------------------------------------------------|
5113 | -z | exit immediately if there are no messages in the mailbox |
5114 |--------+---------------------------------------------------------------|
5115 | -Z | open the first folder with new message,exit immediately if |
5117 +------------------------------------------------------------------------+
5119 To read messages in a mailbox
5121 mutt [ -nz ] [ -F muttrc ] [ -m type ] [ -f mailbox ]
5123 To compose a new message
5125 mutt [ -n ] [ -F muttrc ] [ -a file ] [ -c address ] [ -i filename ] [ -s
5126 subject ] address [ address ... ]
5128 Mutt-ng also supports a ``batch'' mode to send prepared messages. Simply
5129 redirect input from the file you wish to send. For example,
5131 mutt -s "data set for run #2" professor@bigschool.edu < ˜/run2.dat
5133 This command will send a message to ``professor@bigschool.edu'' with a
5134 subject of ``data set for run #2''. In the body of the message will be the
5135 contents of the file ``˜/run2.dat''.
5141 +------------------------------------------------------------------------+
5142 | Pattern Modifier | Argument | Description |
5143 |------------------+-------------+---------------------------------------|
5144 | ~A | | all messages |
5145 |------------------+-------------+---------------------------------------|
5146 | ~b | EXPR | messages which contain EXPR in the |
5147 | | | message body |
5148 |------------------+-------------+---------------------------------------|
5149 | ~B | EXPR | messages which contain EXPR in the |
5150 | | | whole message |
5151 |------------------+-------------+---------------------------------------|
5152 | ~c | EXPR | messages carbon-copied to EXPR |
5153 |------------------+-------------+---------------------------------------|
5154 | ~C | EXPR | message is either to: or cc: EXPR |
5155 |------------------+-------------+---------------------------------------|
5156 | ~D | | deleted messages |
5157 |------------------+-------------+---------------------------------------|
5158 | ~d | [MIN]-[MAX] | messages with ``date-sent'' in a Date |
5160 |------------------+-------------+---------------------------------------|
5161 | ~E | | expired messages |
5162 |------------------+-------------+---------------------------------------|
5163 | ~e | EXPR | message which contains EXPR in the |
5164 | | | ``Sender'' field |
5165 |------------------+-------------+---------------------------------------|
5166 | ~F | | flagged messages |
5167 |------------------+-------------+---------------------------------------|
5168 | ~f | EXPR | messages originating from EXPR |
5169 |------------------+-------------+---------------------------------------|
5170 | ~g | | cryptographically signed messages |
5171 |------------------+-------------+---------------------------------------|
5172 | ~G | | cryptographically encrypted messages |
5173 |------------------+-------------+---------------------------------------|
5174 | ~H | EXPR | messages with a spam attribute |
5175 | | | matching EXPR |
5176 |------------------+-------------+---------------------------------------|
5177 | ~h | EXPR | messages which contain EXPR in the |
5178 | | | message header |
5179 |------------------+-------------+---------------------------------------|
5180 | ~k | | message contains PGP key material |
5181 |------------------+-------------+---------------------------------------|
5182 | ~i | EXPR | message which match ID in the |
5183 | | | ``Message-ID'' field |
5184 |------------------+-------------+---------------------------------------|
5185 | ~L | EXPR | message is either originated or |
5186 | | | received by EXPR |
5187 |------------------+-------------+---------------------------------------|
5188 | ~l | | message is addressed to a known |
5189 | | | mailing list |
5190 |------------------+-------------+---------------------------------------|
5191 | ~m | [MIN]-[MAX] | message in the range MIN to MAX *) |
5192 |------------------+-------------+---------------------------------------|
5193 | ~M | | multipart messages |
5194 |------------------+-------------+---------------------------------------|
5195 | ~n | [MIN]-[MAX] | messages with a score in the range |
5196 | | | MIN to MAX *) |
5197 |------------------+-------------+---------------------------------------|
5198 | ~N | | new messages |
5199 |------------------+-------------+---------------------------------------|
5200 | ~O | | old messages |
5201 |------------------+-------------+---------------------------------------|
5202 | ~p | | message is addressed to you (consults |
5204 |------------------+-------------+---------------------------------------|
5205 | ~P | | message is from you (consults |
5207 |------------------+-------------+---------------------------------------|
5208 | ~Q | | messages which have been replied to |
5209 |------------------+-------------+---------------------------------------|
5210 | ~R | | read messages |
5211 |------------------+-------------+---------------------------------------|
5212 | ~r | [MIN]-[MAX] | messages with ``date-received'' in a |
5214 |------------------+-------------+---------------------------------------|
5215 | ~S | | superseded messages |
5216 |------------------+-------------+---------------------------------------|
5217 | ~s | EXPR | messages having EXPR in the |
5218 | | | ``Subject'' field. |
5219 |------------------+-------------+---------------------------------------|
5220 | ~T | | tagged messages |
5221 |------------------+-------------+---------------------------------------|
5222 | ~t | EXPR | messages addressed to EXPR |
5223 |------------------+-------------+---------------------------------------|
5224 | ~U | | unread messages |
5225 |------------------+-------------+---------------------------------------|
5226 | ~u | | message is addressed to a subscribed |
5227 | | | mailing list |
5228 |------------------+-------------+---------------------------------------|
5229 | ~v | | message is part of a collapsed |
5231 |------------------+-------------+---------------------------------------|
5232 | ~V | | cryptographically verified messages |
5233 |------------------+-------------+---------------------------------------|
5234 | | | messages which contain EXPR in the |
5235 | ~w | EXPR | `Newsgroups' field (if compiled with |
5236 | | | NNTP support) |
5237 |------------------+-------------+---------------------------------------|
5238 | ~x | EXPR | messages which contain EXPR in the |
5239 | | | `References' field |
5240 |------------------+-------------+---------------------------------------|
5241 | ~y | EXPR | messages which contain EXPR in the |
5242 | | | `X-Label' field |
5243 |------------------+-------------+---------------------------------------|
5244 | ~z | [MIN]-[MAX] | messages with a size in the range MIN |
5246 |------------------+-------------+---------------------------------------|
5247 | ~= | | duplicated messages (see |
5248 | | | $duplicate_threads) |
5249 |------------------+-------------+---------------------------------------|
5250 | ~$ | | unreferenced messages (requires |
5251 | | | threaded view) |
5252 |------------------+-------------+---------------------------------------|
5253 | | | ``From'' contains realname and |
5254 | ~* | | (syntactically) valid address |
5255 | | | (excluded are addresses matching |
5256 | | | against alternates or any alias) |
5257 +------------------------------------------------------------------------+
5259 Where EXPR are regexp. Special attention has to be made when using regular
5260 expressions inside of patterns. Specifically, Mutt-ng's parser for these
5261 patterns will strip one level of backslash (\), which is normally used for
5262 quoting. If it is your intention to use a backslash in the regular
5263 expression, you will need to use two backslashes instead (\\).
5265 *) The forms <[MAX], >[MIN] , [MIN]- and -[MAX] are allowed, too.
5267 3. Configuration Commands
5269 The following are the commands understood by mutt.
5271 o account-hook pattern command
5273 o alias key address [ , address ,... ]
5275 o alias [ * | key ... ]
5277 o alternates regexp [ regexp ... ]
5279 o alternates [ * | regexp ... ]
5281 o alternative-order mimetype [ mimetype ... ]
5283 o alternative-order mimetype [ mimetype ... ]
5285 o append-hook regexp command
5287 o auto-view mimetype [ mimetype ... ]
5289 o auto-view mimetype [ mimetype ... ]
5291 o bind map key function
5293 o charset-hook alias charset
5295 o close-hook regexp command
5297 o color object foreground background [ regexp ]
5299 o color index pattern [ pattern ... ]
5301 o exec function [ function ... ]
5303 o fcc-hook pattern mailbox
5305 o fcc-save-hook pattern mailbox
5307 o folder-hook pattern command
5309 o hdr-order header [ header ... ]
5311 o hdr-order header [ header ... ]
5313 o charset-hook charset local-charset
5315 o ignore pattern [ pattern ... ]
5317 o ignore pattern [ pattern ... ]
5319 o lists regexp [ regexp ... ]
5321 o lists regexp [ regexp ... ]
5323 o macro menu key sequence [ description ]
5325 o mailboxes filename [ filename ... ]
5327 o mbox-hook pattern mailbox
5329 o message-hook pattern command
5331 o mime-lookup mimetype [ mimetype ... ]
5333 o mime-lookup mimetype [ mimetype ... ]
5335 o color object attribute [ regexp ]
5337 o color index pattern [ pattern ... ]
5341 o my-hdr field [ field ... ]
5343 o open-hook regexp command
5345 o crypt-hook pattern key-id
5349 o set variable [variable ... ]
5351 o save-hook regexp filename
5353 o score-command pattern value
5355 o score-command pattern [ pattern ... ]
5357 o send-hook regexp command
5359 o reply-hook regexp command
5361 o set [no|inv]variable[=value ] [ variable ... ]
5363 o set variable [variable ... ]
5367 o spam pattern format
5371 o lists regexp [ regexp ... ]
5373 o lists regexp [ regexp ... ]
5375 o set variable [variable ... ]
5379 4. Configuration variables
5381 The following list contains all variables which, in the process of
5382 providing more consistency, have been renamed and are partially even
5383 removed already. The left column contains the old synonym variables, the
5384 right column the full/new name:
5386 Table 7.3. Obsolete Variables
5388 +----------------------------------------------------+
5389 | Old Name | New Name |
5390 |------------------------+---------------------------|
5391 | edit_hdrs | edit_headers |
5392 |------------------------+---------------------------|
5393 | forw_decode | forward_decode |
5394 |------------------------+---------------------------|
5395 | forw_format | forward_format |
5396 |------------------------+---------------------------|
5397 | forw_quote | forward_quote |
5398 |------------------------+---------------------------|
5399 | hdr_format | index_format |
5400 |------------------------+---------------------------|
5401 | indent_str | indent_string |
5402 |------------------------+---------------------------|
5403 | mime_fwd | mime_forward |
5404 |------------------------+---------------------------|
5405 | msg_format | message_format |
5406 |------------------------+---------------------------|
5407 | pgp_autosign | crypt_autosign |
5408 |------------------------+---------------------------|
5409 | pgp_autoencrypt | crypt_autoencrypt |
5410 |------------------------+---------------------------|
5411 | pgp_replyencrypt | crypt_replyencrypt |
5412 |------------------------+---------------------------|
5413 | pgp_replysign | crypt_replysign |
5414 |------------------------+---------------------------|
5415 | pgp_replysignencrypted | crypt_replysignencrypted |
5416 |------------------------+---------------------------|
5417 | pgp_verify_sig | crypt_verify_sig |
5418 |------------------------+---------------------------|
5419 | pgp_create_traditional | pgp_autoinline |
5420 |------------------------+---------------------------|
5421 | pgp_auto_traditional | pgp_replyinline |
5422 |------------------------+---------------------------|
5423 | forw_decrypt | forward_decrypt |
5424 |------------------------+---------------------------|
5425 | smime_sign_as | smime_default_key |
5426 |------------------------+---------------------------|
5427 | post_indent_str | post_indent_string |
5428 |------------------------+---------------------------|
5429 | print_cmd | print_command |
5430 |------------------------+---------------------------|
5431 | shorten_hierarchy | sidebar_shorten_hierarchy |
5432 |------------------------+---------------------------|
5433 | ask_followup_to | nntp_ask_followup_to |
5434 |------------------------+---------------------------|
5435 | ask_x_comment_to | nntp_ask_x_comment_to |
5436 |------------------------+---------------------------|
5437 | catchup_newsgroup | nntp_catchup |
5438 |------------------------+---------------------------|
5439 | followup_to_poster | nntp_followup_to_poster |
5440 |------------------------+---------------------------|
5441 | group_index_format | nntp_group_index_format |
5442 |------------------------+---------------------------|
5443 | inews | nntp_inews |
5444 |------------------------+---------------------------|
5445 | mime_subject | nntp_mime_subject |
5446 |------------------------+---------------------------|
5447 | news_cache_dir | nntp_cache_dir |
5448 |------------------------+---------------------------|
5449 | news_server | nntp_host |
5450 |------------------------+---------------------------|
5451 | newsrc | nntp_newsrc |
5452 |------------------------+---------------------------|
5453 | nntp_poll | nntp_mail_check |
5454 |------------------------+---------------------------|
5455 | pop_checkinterval | pop_mail_check |
5456 |------------------------+---------------------------|
5457 | post_moderated | nntp_post_moderated |
5458 |------------------------+---------------------------|
5459 | save_unsubscribed | nntp_save_unsubscribed |
5460 |------------------------+---------------------------|
5461 | show_new_news | nntp_show_new_news |
5462 |------------------------+---------------------------|
5463 | show_only_unread | nntp_show_only_unread |
5464 |------------------------+---------------------------|
5465 | x_comment_to | nntp_x_comment_to |
5466 |------------------------+---------------------------|
5467 | smtp_auth_username | smtp_user |
5468 |------------------------+---------------------------|
5469 | smtp_auth_password | smtp_pass |
5470 |------------------------+---------------------------|
5471 | user_agent | agent_string |
5472 +----------------------------------------------------+
5474 The contrib subdirectory contains a script named update-config.pl which
5477 A complete list of current variables follows.
5485 This variable specifies whether to abort sending if no attachment was made
5486 but the content references them, i.e. the content matches the regular
5487 expression given in $attach_remind_regexp. If a match was found and this
5488 variable is set to yes, message sending will be aborted but the mail will
5489 be send nevertheless if set to no.
5491 This variable and $attach_remind_regexp are intended to remind the user to
5492 attach files if the message's text references them.
5494 See also the $attach_remind_regexp variable.
5502 If set to yes, when composing messages and no subject is given at the
5503 subject prompt, composition will be aborted. If set to no, composing
5504 messages with no subject given at the subject prompt will never be
5513 If set to yes, composition will automatically abort after editing the
5514 message body if no changes are made to the file (this check only happens
5515 after the first edit of the file). When set to no, composition will never
5524 When set, Mutt-ng will add a ``User-Agent:'' header to outgoing messages,
5525 indicating which version of Mutt-ng was used for composing them.
5531 Default: "˜/.muttngrc"
5533 The default file in which to save aliases created by the ``create-alias''
5536 Note: Mutt-ng will not automatically source this file; you must explicitly
5537 use the `` source'' command for it to be executed.
5543 Default: "%4n %2f %t %-10a %r"
5545 Specifies the format of the data displayed for the ``alias'' menu. The
5546 following printf(3)-style sequences are available:
5554 flags - currently, a "d" for an alias marked for deletion
5562 address which alias expands to
5566 character which indicates if the alias is tagged for inclusion
5574 Controls whether 8-bit data is converted to 7-bit using either
5575 quoted-printable or base64 encoding when sending mail.
5583 Controls whether ANSI color codes in messages (and color tags in rich text
5584 messages) are to be interpreted. Messages containing these codes are rare,
5585 but if this option is set, their text will be colored accordingly. Note
5586 that this may override your color choices, and even present a security
5587 problem, since a message could include a line like ``[-- PGP output
5588 follows ..." and give it the same color as your attachment color.
5596 When set, an arrow (``->'') will be used to indicate the current entry in
5597 menus instead of highlighting the whole line. On slow network or modem
5598 links this will make response faster because there is less that has to be
5599 redrawn on the screen when moving to the next or previous entries in the
5608 If set, Mutt-ng will use plain ASCII characters when displaying thread and
5609 attachment trees, instead of the default ACS characters.
5617 If set, Mutt-ng will prompt you for blind-carbon-copy (Bcc) recipients
5618 before editing an outgoing message.
5626 If set, Mutt-ng will prompt you for carbon-copy (Cc) recipients before
5627 editing the body of an outgoing message.
5635 This variable is a colon-separated list of character encoding schemes for
5636 messages without character encoding indication. Header field values and
5637 message body content without character encoding indication would be
5638 assumed that they are written in one of this list. By default, all the
5639 header fields and message body without any charset indication are assumed
5642 For example, Japanese users might prefer this:
5644 set assumed_charset="iso-2022-jp:euc-jp:shift_jis:utf-8"
5646 However, only the first content is valid for the message body. This
5647 variable is valid only if $strict_mime is unset.
5653 Default: "%u%D%I %t%4n %T%.40d%> [%.7m/%.10M, %.6e%?C?, %C?, %s] "
5655 This variable describes the format of the ``attachment'' menu. The
5656 following printf(3)-style sequences are understood:
5664 requires charset conversion (n or c)
5676 MIME Content-Transfer-Encoding: header field
5684 MIME Content-Disposition: header field (I=inline, A=attachment)
5708 graphic tree characters
5712 unlink (=to delete) flag
5716 right justify the rest of the string and pad with character "X"
5720 pad to the end of the line with character "X"
5722 15. attach_remind_regexp
5724 Type: regular expression
5728 If this variable is non-empty, muttng will scan a message's contents
5729 before sending for this regular expression. If it is found, it will ask
5730 for what to do depending on the setting of $abort_noattach.
5732 This variable and $abort_noattach are intended to remind the user to
5733 attach files if the message's text references them.
5741 The separator to add between attachments when operating (saving, printing,
5742 piping, etc) on a list of tagged attachments.
5750 If this variable is unset, when operating (saving, printing, piping, etc)
5751 on a list of tagged attachments, Mutt-ng will concatenate the attachments
5752 and will operate on them as a single attachment. The ``$attach_sep''
5753 separator is added after each attachment. When set, Mutt-ng will operate
5754 on the attachments one by one.
5760 Default: "On %d, %n wrote:"
5762 This is the string that will precede a message which has been included in
5763 a reply. For a full listing of defined printf(3)-like sequences see the
5764 section on ``$index_format''.
5772 When set, functions in the index menu which affect a message will be
5773 applied to all tagged messages (if there are any). When unset, you must
5774 first use the ``tag-prefix'' function (default: ";") to make the next
5775 function apply to all tagged messages.
5783 When set along with ``$edit_headers'', Mutt-ng will skip the initial
5784 send-menu and allow you to immediately begin editing the body of your
5785 message. The send-menu may still be accessed once you have finished
5786 editing the body of your message.
5788 Also see ``$fast_reply''.
5796 When this variable is set, Mutt-ng will beep when an error occurs.
5804 When this variable is set, Mutt-ng will beep whenever it prints a message
5805 notifying you of new mail. This is independent of the setting of the
5814 Controls whether you will be asked to confirm bouncing messages. If set to
5815 yes you don't get asked if you want to bounce a message. Setting this
5816 variable to no is not generally useful, and thus not recommended, because
5817 you are unable to bounce messages.
5819 24. bounce_delivered
5825 When this variable is set, Mutt-ng will include Delivered-To: header
5826 fields when bouncing messages. Postfix users may wish to unset this
5829 25. braille_friendly
5835 When this variable is set, mutt will place the cursor at the beginning of
5836 the current line in menus, even when the arrow_cursor variable is unset,
5837 making it easier for blind persons using Braille displays to follow these
5838 menus. The option is disabled by default because many visual terminals
5839 don't permit making the cursor invisible.
5841 26. certificate_file
5845 Default: "˜/.mutt_certificates"
5847 Availability: SSL or GNUTLS
5849 This variable specifies the file where the certificates you trust are
5850 saved. When an unknown certificate is encountered, you are asked if you
5851 accept it or not. If you accept it, the certificate can also be saved in
5852 this file and further connections are automatically accepted.
5854 You can also manually add CA certificates in this file. Any server
5855 certificate that is signed with one of these CA certificates are also
5856 automatically accepted.
5858 Example: set certificate_file=˜/.muttng/certificates
5866 Character set your terminal uses to display and enter textual data.
5874 Note: this option only affects maildir and MH style mailboxes.
5876 When set, Mutt-ng will check for new mail delivered while the mailbox is
5877 open. Especially with MH mailboxes, this operation can take quite some
5878 time since it involves scanning the directory and checking each file to
5879 see if it has already been looked at. If it's unset, no check for new mail
5880 is performed while the mailbox is open.
5888 When unset, Mutt-ng will not collapse a thread if it contains any unread
5895 Default: "-- Mutt-ng: Compose [Approx. msg size: %l Atts: %a]%>-"
5897 Controls the format of the status line displayed in the ``compose'' menu.
5898 This string is similar to ``$status_format'', but has its own set of
5899 printf(3)-like sequences:
5903 total number of attachments
5911 approximate size (in bytes) of the current message
5915 Mutt-ng version string
5917 See the text describing the ``$status_format'' option for more information
5918 on how to set ``$compose_format''.
5926 When defined, Mutt-ng will recode commands in rc files from this encoding.
5934 When set, Mutt-ng will prompt for confirmation when appending messages to
5935 an existing mailbox.
5943 When set, Mutt-ng will prompt for confirmation when saving messages to a
5944 mailbox which does not yet exist before creating it.
5952 Causes Mutt-ng to timeout a network connection (for IMAP or POP) after
5953 this many seconds if the connection is not able to be established. A
5954 negative value causes Mutt-ng to wait indefinitely for the connection to
5961 Default: "text/plain"
5963 Sets the default Content-Type: header field for the body of newly composed
5972 This variable controls whether or not copies of your outgoing messages
5973 will be saved for later references. Also see ``$record'', ``$save_name'',
5974 ``$force_name'' and ``fcc-hook''.
5976 37. crypt_autoencrypt
5982 Setting this variable will cause Mutt-ng to always attempt to PGP encrypt
5983 outgoing messages. This is probably only useful in connection to the
5984 send-hook command. It can be overridden by use of the pgp-menu, when
5985 encryption is not required or signing is requested as well. If
5986 ``$smime_is_default'' is set, then OpenSSL is used instead to create
5987 S/MIME messages and settings can be overridden by use of the smime-menu.
5996 This variable controls whether or not Mutt-ng may automatically enable PGP
5997 encryption/signing for messages. See also ``$crypt_autoencrypt'',
5998 ``$crypt_replyencrypt'', ``$crypt_autosign'', ``$crypt_replysign'' and
5999 ``$smime_is_default''.
6007 Setting this variable will cause Mutt-ng to always attempt to
6008 cryptographically sign outgoing messages. This can be overridden by use of
6009 the pgp-menu, when signing is not required or encryption is requested as
6010 well. If ``$smime_is_default'' is set, then OpenSSL is used instead to
6011 create S/MIME messages and settings can be overridden by use of the
6012 smime-menu. (Crypto only)
6020 This variable controls whether or not Mutt-ng may automatically enable
6021 S/MIME encryption/signing for messages. See also ``$crypt_autoencrypt'',
6022 ``$crypt_replyencrypt'', ``$crypt_autosign'', ``$crypt_replysign'' and
6023 ``$smime_is_default''.
6025 41. crypt_replyencrypt
6031 If set, automatically PGP or OpenSSL encrypt replies to messages which are
6032 encrypted. (Crypto only)
6040 If set, automatically PGP or OpenSSL sign replies to messages which are
6043 Note: this does not work on messages that are encrypted and signed!
6046 43. crypt_replysignencrypted
6052 If set, automatically PGP or OpenSSL sign replies to messages which are
6053 encrypted. This makes sense in combination with ``$crypt_replyencrypt'',
6054 because it allows you to sign all messages which are automatically
6055 encrypted. This works around the problem noted in ``$crypt_replysign'',
6056 that Mutt-ng is not able to find out whether an encrypted message is also
6057 signed. (Crypto only)
6065 If set, Mutt-ng will include a time stamp in the lines surrounding PGP or
6066 S/MIME output, so spoofing such lines is more difficult. If you are using
6067 colors to mark these lines, and rely on these, you may unset this setting.
6076 This variable controls the use the GPGME enabled crypto backends. If it is
6077 set and Mutt-ng was build with gpgme support, the gpgme code for S/MIME
6078 and PGP will be used instead of the classic code.
6080 Note: You need to use this option in your .muttngrc configuration file as
6081 it won't have any effect when used interactively.
6083 46. crypt_verify_sig
6089 If ``yes'', always attempt to verify PGP or S/MIME signatures. If ``ask'',
6090 ask whether or not to verify the signature. If ``no'', never attempt to
6091 verify cryptographic signatures. (Crypto only)
6097 Default: "!%a, %b %d, %Y at %I:%M:%S%p %Z"
6099 This variable controls the format of the date printed by the ``%d''
6100 sequence in ``$index_format''. This is passed to strftime(3) to process
6103 Unless the first character in the string is a bang (``!''), the month and
6104 week day names are expanded according to the locale specified in the
6105 variable ``$locale''. If the first character in the string is a bang, the
6106 bang is discarded, and the month and week day names in the rest of the
6107 string are expanded in the C locale (that is in US English).
6117 This variable specifies the current debug level and may be used to
6118 increase or decrease the verbosity level during runtime. It overrides the
6119 level given with the -d command line option.
6121 Currently, this number must be >= 0 and <= 5 and muttng must be started
6122 with -d to enable debugging at all; enabling at runtime is not possible.
6128 Default: "Ëœf %s !ËœP | (ËœP ËœC %s)"
6130 This variable controls how send-hooks, message-hooks, save-hooks, and
6131 fcc-hooks will be interpreted if they are specified with only a simple
6132 regexp, instead of a matching pattern. The hooks are expanded when they
6133 are declared, so a hook will be interpreted according to the value of this
6134 variable at the time the hook is declared. The default value matches if
6135 the message is either from a user matching the regular expression given,
6136 or if it is from you (if the from address matches ``alternates'') and is
6137 to or cc'ed to a user matching the given regular expression.
6145 Controls whether or not messages are really deleted when closing or
6146 synchronizing a mailbox. If set to yes, messages marked for deleting will
6147 automatically be purged without prompting. If set to no, messages marked
6148 for deletion will be kept in the mailbox.
6156 When sending messages with format=flowed by setting the $text_flowed
6157 variable, this variable specifies whether to also set the DelSp parameter
6158 to yes. If this is unset, no additional parameter will be send as a value
6159 of no already is the default behavior.
6161 Note: this variable only has an effect on outgoing messages (if
6162 $text_flowed is set) but not on incomming.
6170 If this option is set, Mutt-ng will untag messages when marking them for
6171 deletion. This applies when you either explicitly delete a message, or
6172 when you save it to another folder.
6180 If this option is set, Mutt-ng's received-attachments menu will not show
6181 the subparts of individual messages in a multipart/digest. To see these
6182 subparts, press 'v' on that menu.
6190 When set, specifies a command used to filter messages. When a message is
6191 viewed it is passed as standard input to $display_filter, and the filtered
6192 message is read from the standard output.
6198 Default: "$muttng_bindir/muttng_dotlock"
6200 Availability: Standalone and Dotlock
6202 Contains the path of the muttng_dotlock(1) binary to be used by Mutt-ng.
6210 Note: you should not enable this unless you are using Sendmail 8.8.x or
6211 greater or in connection with the SMTP support via libESMTP.
6213 This variable sets the request for when notification is returned. The
6214 string consists of a comma separated list (no spaces!) of one or more of
6215 the following: never, to never request notification, failure, to request
6216 notification on transmission failure, delay, to be notified of message
6217 delays, success, to be notified of successful transmission.
6219 Example: set dsn_notify="failure,delay"
6227 Note: you should not enable this unless you are using Sendmail 8.8.x or
6228 greater or in connection with the SMTP support via libESMTP.
6230 This variable controls how much of your message is returned in DSN
6231 messages. It may be set to either hdrs to return just the message header,
6232 or full to return the full message.
6234 Example: set dsn_return=hdrs
6236 58. duplicate_threads
6242 This variable controls whether Mutt-ng, when sorting by threads, threads
6243 messages with the same Message-Id: header field together. If it is set, it
6244 will indicate that it thinks they are duplicates of each other with an
6245 equals sign in the thread diagram.
6253 This option allows you to edit the header of your outgoing messages along
6254 with the body of your message.
6256 Which empty header fields to show is controlled by the $editor_headers
6265 This variable specifies which editor is used by Mutt-ng. It defaults to
6266 the value of the $VISUAL, or $EDITOR, environment variable, or to the
6267 string "vi" if neither of those are set.
6273 Default: "From: To: Cc: Bcc: Subject: Reply-To: Newsgroups: Followup-To:
6276 If $edit_headers is set, this space-separated list specifies which
6277 non-empty header fields to edit in addition to user-defined headers.
6279 Note: if $edit_headers had to be turned on by force because $strict_mailto
6280 is unset, this option has no effect.
6288 When set, Mutt-ng will quoted-printable encode messages when they contain
6289 the string ``From '' (note the trailing space) in the beginning of a line.
6290 Useful to avoid the tampering certain mail delivery and transport agents
6291 tend to do with messages.
6293 Note: as mutt-ng currently violates RfC3676 defining format=flowed, it's
6294 <em/strongly/ advised to set this option although discouraged by the
6295 standard. Alternatively, you must take care of space-stuffing <tt/From /
6296 lines (with a trailing space) yourself.
6306 The file which includes random data that is used to initialize SSL library
6315 When set, Mutt-ng will try to derive the message's envelope sender from
6316 the ``From:'' header field. Note that this information is passed to the
6317 sendmail command using the ``-f" command line switch, so don't set this
6318 option if you are using that switch in $sendmail yourself, or if the
6319 sendmail on your machine doesn't support that command line switch.
6327 Escape character to use for functions in the builtin editor.
6335 When set, the initial prompt for recipients and subject are skipped when
6336 replying to messages, and the initial prompt for subject is skipped when
6337 forwarding messages.
6339 Note: this variable has no effect when the ``$autoedit'' variable is set.
6347 This variable controls whether or not attachments on outgoing messages are
6348 saved along with the main body of your message.
6356 When this variable is set, FCCs will be stored unencrypted and unsigned,
6357 even when the actual message is encrypted and/or signed. (PGP only)
6365 This variable is a colon-separated list of character encoding schemes for
6366 text file attatchments. If unset, $charset value will be used instead. For
6367 example, the following configuration would work for Japanese text
6370 set file_charset="iso-2022-jp:euc-jp:shift_jis:utf-8"
6372 Note: ``iso-2022-*'' must be put at the head of the value as shown above
6381 Specifies the default location of your mailboxes. A ``+'' or ``='' at the
6382 beginning of a pathname will be expanded to the value of this variable.
6383 Note that if you change this variable from the default value you need to
6384 make sure that the assignment occurs before you use ``+'' or ``='' for any
6385 other variables since expansion takes place during the ``set'' command.
6391 Default: "%2C %t %N %F %2l %-8.8u %-8.8g %8s %d %f"
6393 This variable allows you to customize the file browser display to your
6394 personal taste. This string is similar to ``$index_format'', but has its
6395 own set of printf(3)-like sequences:
6403 date/time folder was last modified
6415 group name (or numeric gid, if missing)
6419 number of hard links
6423 N if folder has new mail, blank otherwise
6431 * if the file is tagged, blank otherwise
6435 owner name (or numeric uid, if missing)
6439 right justify the rest of the string and pad with character "X"
6443 pad to the end of the line with character "X"
6451 Controls whether or not the Mail-Followup-To: header field is generated
6452 when sending mail. When set, Mutt-ng will generate this field when you are
6453 replying to a known mailing list, specified with the ``subscribe'' or
6454 ``lists'' commands or detected by common mailing list headers.
6456 This field has two purposes. First, preventing you from receiving
6457 duplicate copies of replies to messages which you send to mailing lists.
6458 Second, ensuring that you do get a reply separately for any messages sent
6459 to known lists to which you are not subscribed. The header will contain
6460 only the list's address for subscribed lists, and both the list address
6461 and your own email address for unsubscribed lists. Without this header, a
6462 group reply to your message sent to a subscribed list will be sent to both
6463 the list and your address, resulting in two copies of the same email for
6466 73. force_buffy_check
6472 When set, it causes Mutt-ng to check for new mail when the buffy-list
6473 command is invoked. When unset, buffy_list will just list all mailboxes
6474 which are already known to have new mail.
6476 Also see the following variables: ``$timeout'', ``$mail_check'' and
6477 ``$imap_mail_check''.
6485 This variable is similar to ``$save_name'', except that Mutt-ng will store
6486 a copy of your outgoing message by the username of the address you are
6487 sending to even if that mailbox does not exist.
6489 Also see the ``$record'' variable.
6497 Controls the decoding of complex MIME messages into text/plain when
6498 forwarding a message. The message header is also RFC2047 decoded. This
6499 variable is only used, if ``$mime_forward'' is unset, otherwise
6500 ``$mime_forward_decode'' is used instead.
6508 Controls the handling of encrypted messages when forwarding a message.
6509 When set, the outer layer of encryption is stripped off. This variable is
6510 only used if ``$mime_forward'' is set and ``$mime_forward_decode'' is
6519 This quadoption controls whether or not the user is automatically placed
6520 in the editor when forwarding messages. For those who always want to
6521 forward with no modification, use a setting of no.
6529 This variable controls the default subject when forwarding a message. It
6530 uses the same format sequences as the ``$index_format'' variable.
6538 When set forwarded messages included in the main body of the message (when
6539 ``$mime_forward'' is unset) will be quoted using ``$indent_string''.
6543 Type: e-mail address
6547 This variable contains a default from address. It can be overridden using
6548 my_hdr (including from send-hooks) and ``$reverse_name''. This variable is
6549 ignored if ``$use_from'' is unset.
6551 E.g. you can use send-hook Mutt-ng-devel@lists.berlios.de 'my_hdr From:
6552 Foo Bar <foo@bar.fb>' when replying to the mutt-ng developer's mailing
6553 list and Mutt-ng takes this email address.
6555 Defaults to the contents of the environment variable $EMAIL.
6559 Type: regular expression
6563 A regular expression used by Mutt-ng to parse the GECOS field of a
6564 password entry when expanding the alias. By default the regular expression
6565 is set to ``^[^,]*'' which will return the string up to the first ``,''
6566 encountered. If the GECOS field contains a string like "lastname,
6567 firstname" then you should do: set gecos_mask=".*".
6569 This can be useful if you see the following behavior: you address a e-mail
6570 to user ID stevef whose full name is Steve Franklin. If Mutt-ng expands
6571 stevef to ``Franklin'' stevef@foo.bar then you should set the gecos_mask
6572 to a regular expression that will match the whole name so Mutt-ng will
6573 expand ``Franklin'' to ``Franklin, Steve''.
6581 When unset, the header fields normally added by the ``my_hdr'' command are
6582 not created. This variable must be unset before composing a new message or
6583 replying in order to take effect. If set, the user defined header fields
6584 are added to every new message.
6592 When set, this variable causes Mutt-ng to include the header of the
6593 message you are replying to into the edit buffer. The ``$weed'' setting
6602 Availability: Header Cache
6604 The $header_cache variable points to the header cache database.
6606 If $header_cache points to a directory it will contain a header cache
6607 database per folder. If $header_cache points to a file that file will be a
6608 single global header cache. By default it is unset so no header caching
6611 85. header_cache_compress
6617 If enabled the header cache will be compressed. So only one fifth of the
6618 usual diskspace is used, but the uncompression can result in a slower open
6619 of the cached folder.
6627 When set, help lines describing the bindings for the major functions
6628 provided by each menu are displayed on the first line of the screen.
6630 Note: The binding will not be displayed correctly if the function is bound
6631 to a sequence rather than a single keystroke. Also, the help line may not
6632 be updated if a binding is changed while Mutt-ng is running. Since this
6633 variable is primarily aimed at new users, neither of these should present
6642 When set, Mutt-ng will skip the host name part of ``$hostname'' variable
6643 when adding the domain part to addresses. This variable does not affect
6644 the generation of Message-ID: header fields, and it will not lead to the
6645 cut-off of first-level domains.
6653 When set, Mutt-ng will not show the presence of messages that are hidden
6654 by limiting, in the thread tree.
6662 When set, Mutt-ng will not show the presence of missing messages in the
6665 90. hide_thread_subject
6671 When set, Mutt-ng will not show the subject of messages in the thread tree
6672 that have the same subject as their parent or closest previously displayed
6675 91. hide_top_limited
6681 When set, Mutt-ng will not show the presence of messages that are hidden
6682 by limiting, at the top of threads in the thread tree. Note that when
6683 $hide_missing is set, this option will have no effect.
6685 92. hide_top_missing
6691 When set, Mutt-ng will not show the presence of missing messages at the
6692 top of threads in the thread tree. Note that when $hide_limited is set,
6693 this option will have no effect.
6701 This variable controls the size (in number of strings remembered) of the
6702 string history buffer. The buffer is cleared each time the variable is
6705 94. honor_followup_to
6711 This variable controls whether or not a Mail-Followup-To: header field is
6712 honored when group-replying to a message.
6720 Specifies the hostname to use after the ``@'' in local e-mail addresses
6721 and during generation of Message-Id: headers.
6723 Please be sure to really know what you are doing when changing this
6724 variable to configure a custom domain part of Message-IDs.
6726 96. ignore_list_reply_to
6732 Affects the behaviour of the reply function when replying to messages from
6733 mailing lists. When set, if the ``Reply-To:'' header field is set to the
6734 same value as the ``To:'' header field, Mutt-ng assumes that the
6735 ``Reply-To:'' header field was set by the mailing list to automate
6736 responses to the list, and will ignore this field. To direct a response to
6737 the mailing list when this option is set, use the list-reply function;
6738 group-reply will reply to both the sender and the list.
6740 97. imap_authenticators
6748 This is a colon-delimited list of authentication methods Mutt-ng may
6749 attempt to use to log in to an IMAP server, in the order Mutt-ng should
6750 try them. Authentication methods are either ``login'' or the right side of
6751 an IMAP ``AUTH='' capability string, e.g. ``digest-md5'', ``gssapi'' or
6752 ``cram-md5''. This parameter is case-insensitive.
6754 If this parameter is unset (the default) Mutt-ng will try all available
6755 methods, in order from most-secure to least-secure.
6757 Example: set imap_authenticators="gssapi:cram-md5:login"
6759 Note: Mutt-ng will only fall back to other authentication methods if the
6760 previous methods are unavailable. If a method is available but
6761 authentication fails, Mutt-ng will not connect to the IMAP server.
6763 98. imap_check_subscribed
6769 When set, mutt will fetch the set of subscribed folders from your server
6770 on connection, and add them to the set of mailboxes it polls for new mail.
6771 See also the ``mailboxes'' command.
6773 99. imap_delim_chars
6781 This contains the list of characters which you would like to treat as
6782 folder separators for displaying IMAP paths. In particular it helps in
6783 using the '=' shortcut for your $folder variable.
6793 Mutt-ng requests these header fields in addition to the default headers
6794 (``DATE FROM SUBJECT TO CC MESSAGE-ID REFERENCES CONTENT-TYPE
6795 CONTENT-DESCRIPTION IN-REPLY-TO REPLY-TO LINES X-LABEL'') from IMAP
6796 servers before displaying the ``index'' menu. You may want to add more
6797 headers for spam detection.
6799 Note: This is a space separated list.
6801 101. imap_home_namespace
6809 You normally want to see your personal folders alongside your INBOX in the
6810 IMAP browser. If you see something else, you may set this variable to the
6811 IMAP path to your folders.
6821 This variable specifies the maximum amount of time in seconds that Mutt-ng
6822 will wait before polling open IMAP connections, to prevent the server from
6823 closing them before Mutt-ng has finished with them.
6825 The default is well within the RFC-specified minimum amount of time (30
6826 minutes) before a server is allowed to do this, but in practice the RFC
6827 does get violated every now and then.
6829 Reduce this number if you find yourself getting disconnected from your
6830 IMAP server due to inactivity.
6832 103. imap_list_subscribed
6840 This variable configures whether IMAP folder browsing will look for only
6841 subscribed folders or all folders. This can be toggled in the IMAP browser
6842 with the toggle-subscribed function.
6852 Your login name on the IMAP server.
6854 This variable defaults to the value of ``$imap_user.''
6856 105. imap_mail_check
6862 This variable configures how often (in seconds) Mutt-ng should look for
6863 new mail in IMAP folders. This is split from the ``mail_check'' variable
6864 to generate less traffic and get more accurate information for local
6875 Specifies the password for your IMAP account. If unset, Mutt-ng will
6876 prompt you for your password when you invoke the fetch-mail function.
6878 Warning: you should only use this option when you are on a fairly secure
6879 machine, because the superuser can read your configuration even if you are
6880 the only one who can read the file.
6890 When set, Mutt-ng will not open new IMAP connections to check for new
6891 mail. Mutt-ng will only check for new mail over existing IMAP connections.
6892 This is useful if you don't want to be prompted to user/password pairs on
6893 Mutt-ng invocation, or if opening the connection is slow.
6903 If set, Mutt-ng will avoid implicitly marking your mail as read whenever
6904 you fetch a message from the server. This is generally a good thing, but
6905 can make closing an IMAP folder somewhat slower. This option exists to
6906 appease speed freaks.
6916 Controls whether or not Mutt-ng will try to reconnect to IMAP server when
6917 the connection is lost.
6919 110. imap_servernoise
6927 When set, Mutt-ng will display warning messages from the IMAP server as
6928 error messages. Since these messages are often harmless, or generated due
6929 to configuration problems on the server which are out of the users' hands,
6930 you may wish to suppress them at some point.
6940 The name of the user whose mail you intend to access on the IMAP server.
6942 This variable defaults to your user name on the local machine.
6944 112. implicit_autoview
6950 If set, Mutt-ng will look for a mailcap entry with the ``copiousoutput''
6951 flag set for every MIME attachment it doesn't have an internal viewer
6952 defined for. If such an entry is found, Mutt-ng will use the viewer
6953 defined in that entry to convert the body part to text form.
6961 Controls whether or not a copy of the message(s) you are replying to is
6962 included in your reply.
6964 114. include_onlyfirst
6970 Controls whether or not Mutt-ng includes only the first attachment of the
6971 message you are replying.
6979 Specifies the string to prepend to each line of text quoted in a message
6980 to which you are replying. You are strongly encouraged not to change this
6981 value, as it tends to agitate the more fanatical netizens.
6987 Default: "%4C %Z %{%b %d} %-15.15L (%?l?%4l&%4c?) %s"
6989 This variable allows you to customize the message index display to your
6992 ``Format strings'' are similar to the strings used in the ``C'' function
6993 printf(3) to format output (see the man page for more detail). The
6994 following sequences are defined in Mutt-ng:
6998 address of the author
7002 reply-to address (if present; otherwise: address of author)
7006 filename of the original message folder (think mailBox)
7010 the list to which the letter was sent, or else the folder name
7015 number of characters (bytes) in the message
7019 current message number
7023 date and time of the message in the format specified by
7024 ``date_format'' converted to sender's time zone
7028 date and time of the message in the format specified by
7029 ``date_format'' converted to the local time zone
7033 current message number in thread
7037 number of messages in current thread
7041 entire From: line (address + real name)
7045 author name, or recipient name if the message is from you
7049 spam attribute(s) of this message
7053 newsgroup name (if compiled with nntp support)
7057 message-id of the current message
7061 number of lines in the message (does not work with maildir, mh,
7062 and possibly IMAP folders)
7066 If an address in the To or CC header field matches an address
7067 defined by the users ``subscribe'' command, this displays "To
7068 <list-name>", otherwise the same as %F.
7072 total number of message in the mailbox
7076 number of hidden messages if the thread is collapsed.
7084 author's real name (or address if missing)
7088 (_O_riginal save folder) Where Mutt-ng would formerly have stashed
7089 the message: list name or recipient name if no list
7093 subject of the message
7097 status of the message (N/D/d/!/r/*)
7101 `to:' field (recipients)
7105 the appropriate character from the $to_chars string
7109 user (login) name of the author
7113 first name of the author, or the recipient if the message is from
7118 name of organization of author (`organization:' field)
7122 `x-label:' field, if present
7126 `x-label' field, if present, and (1) not at part of a thread tree,
7127 (2) at the top of a thread, or (3) `x-label' is different from
7128 preceding message's `x-label'.
7132 message status flags
7136 the date and time of the message is converted to sender's time
7137 zone, and ``fmt'' is expanded by the library function
7138 ``strftime''; a leading bang disables locales
7142 the date and time of the message is converted to the local time
7143 zone, and ``fmt'' is expanded by the library function
7144 ``strftime''; a leading bang disables locales
7148 the local date and time when the message was received. ``fmt'' is
7149 expanded by the library function ``strftime''; a leading bang
7154 the current local time. ``fmt'' is expanded by the library
7155 function ``strftime''; a leading bang disables locales.
7159 right justify the rest of the string and pad with character "X"
7163 pad to the end of the line with character "X"
7165 See also: ``$to_chars''.
7173 How to invoke ispell (GNU's spell-checking software).
7181 If set, read messages marked as flagged will not be moved from your spool
7182 mailbox to your ``$mbox'' mailbox, or as a result of a ``mbox-hook''
7191 When set, address replies to the mailing list the original message came
7192 from (instead to the author only). Setting this option to ``ask-yes'' or
7193 ``ask-no'' will ask if you really intended to reply to the author only.
7201 The locale used by strftime(3) to format dates. Legal values are the
7202 strings your system accepts for the locale variable LC_TIME.
7210 This variable configures how often (in seconds) Mutt-ng should look for
7213 Note: This does not apply to IMAP mailboxes, see $imap_mail_check.
7221 This variable specifies which files to consult when attempting to display
7222 MIME bodies not directly supported by Mutt-ng.
7224 123. mailcap_sanitize
7230 If set, Mutt-ng will restrict possible characters in mailcap % expandos to
7231 a well-defined set of safe characters. This is the safe setting, but we
7232 are not sure it doesn't break some more advanced MIME stuff.
7234 DON'T CHANGE THIS SETTING UNLESS YOU ARE REALLY SURE WHAT YOU ARE DOING!
7236 124. maildir_header_cache_verify
7242 Availability: Header Cache
7244 Check for Maildir unaware programs other than Mutt-ng having modified
7245 maildir files when the header cache is in use. This incurs one stat(2) per
7246 message every time the folder is opened.
7254 If set, messages marked as deleted will be saved with the maildir
7255 (T)rashed flag instead of physically deleted.
7257 NOTE: this only applies to maildir-style mailboxes. Setting it will have
7258 no effect on other mailbox types.
7260 It is similiar to the trash option.
7268 Controls whether or not Mutt-ng marks new unread messages as old if you
7269 exit a mailbox without reading them.
7271 With this option set, the next time you start Mutt-ng, the messages will
7272 show up with an "O" next to them in the ``index'' menu, indicating that
7281 Controls the display of wrapped lines in the internal pager. If set, a
7282 ``+'' marker is displayed at the beginning of wrapped lines. Also see the
7283 ``$smart_wrap'' variable.
7287 Type: regular expression
7291 A regular expression used in the file browser, optionally preceded by the
7292 not operator ``!''. Only files whose names match this mask will be shown.
7293 The match is always case-sensitive.
7295 129. max_display_recips
7301 When set non-zero, this specifies the maximum number of recipient header
7302 lines (To:, Cc: and Bcc:) to display in the pager if header weeding is
7303 turned on. In case the number of lines exeeds its value, the last line
7304 will have 3 dots appended.
7306 130. max_line_length
7312 When set, the maximum line length for displaying ``format = flowed''
7313 messages is limited to this length. A value of 0 (which is also the
7314 default) means that the maximum line length is determined by the terminal
7315 width and $wrapmargin.
7323 This specifies the folder into which read mail in your ``$spoolfile''
7324 folder will be appended.
7332 The default mailbox type used when creating new folders. May be any of
7333 mbox, MMDF, MH and Maildir.
7341 This variable controls the number of lines of context that are given when
7342 scrolling through menus. (Similar to ``$pager_context''.)
7350 When unset, the bottom entry of menus will never scroll up past the bottom
7351 of the screen, unless there are less entries than lines. When set, the
7352 bottom entry may move off the bottom.
7360 When set, menus will be scrolled up or down one line when you attempt to
7361 move across a screen boundary. If unset, the screen is cleared and the
7362 next or previous page of the menu is displayed (useful for slow links to
7363 avoid many redraws).
7371 This is the string displayed in the ``attachment'' menu for attachments of
7372 type message/rfc822. For a full listing of defined printf(3)-like
7373 sequences see the section on ``$index_format''.
7381 If set, forces Mutt-ng to interpret keystrokes with the high bit (bit 8)
7382 set as if the user had pressed the ESC key and whatever key remains after
7383 having the high bit removed. For example, if the key pressed has an ASCII
7384 value of 0xf4, then this is treated as if the user had pressed ESC then
7385 ``x''. This is because the result of removing the high bit from ``0xf4''
7386 is ``0x74'', which is the ASCII character ``x''.
7394 If unset, Mutt-ng will remove your address (see the ``alternates''
7395 command) from the list of recipients when replying to a message.
7403 When unset, Mutt-ng will mimic mh's behaviour and rename deleted messages
7404 to ,<old file name> in mh folders instead of really deleting them. If the
7405 variable is set, the message files will simply be deleted.
7413 The name of the MH sequence used for flagged messages.
7421 The name of the MH sequence used to tag replied messages.
7429 The name of the MH sequence used for unseen messages.
7437 When set, the message you are forwarding will be attached as a separate
7438 MIME part instead of included in the main body of the message.
7440 This is useful for forwarding MIME messages so the receiver can properly
7441 view the message as it was delivered to you. If you like to switch between
7442 MIME and not MIME from mail to mail, set this variable to ask-no or
7445 Also see ``$forward_decode'' and ``$mime_forward_decode''.
7447 144. mime_forward_decode
7453 Controls the decoding of complex MIME messages into text/plain when
7454 forwarding a message while ``$mime_forward'' is set. Otherwise
7455 ``$forward_decode'' is used instead.
7457 145. mime_forward_rest
7463 When forwarding multiple attachments of a MIME message from the recvattach
7464 menu, attachments which cannot be decoded in a reasonable manner will be
7465 attached to the newly composed message if this option is set.
7467 146. mix_entry_format
7471 Default: "%4n %c %-16s %a"
7473 Availability: Mixmaster
7475 This variable describes the format of a remailer line on the mixmaster
7476 chain selection screen. The following printf(3)-like sequences are
7481 The running number on the menu.
7485 Remailer capabilities.
7489 The remailer's short name.
7493 The remailer's e-mail address.
7499 Default: "mixmaster"
7501 Availability: Mixmaster
7503 This variable contains the path to the Mixmaster binary on your system. It
7504 is used with various sets of parameters to gather the list of known
7505 remailers, and to finally send a message through the mixmaster chain.
7513 Controls whether or not Mutt-ng will move read messages from your spool
7514 mailbox to your ``$mbox'' mailbox, or as a result of a ``mbox-hook''
7521 Default: "%Y%m%d%h%M%s.G%P%p"
7523 This is the format for the ``local part'' of the Message-Id: header field
7524 generated by Mutt-ng. If this variable is empty, no Message-Id: headers
7525 will be generated. The '%' character marks that certain data will be added
7526 to the string, similar to printf(3). The following characters are allowed:
7530 the current day of month
7546 the current UNIX timestamp (octal)
7554 the current Message-ID prefix (a character rotating with every
7555 Message-ID being generated)
7559 a random integer value (decimal)
7563 a random integer value (hexadecimal)
7571 the current UNIX timestamp (decimal)
7575 the current UNIX timestamp (hexadecimal)
7579 the current year (Y2K compliant)
7585 Note: Please only change this setting if you know what you are doing. Also
7586 make sure to consult RFC2822 to produce technically valid strings.
7590 Type: system property
7592 Value: /opt/freebsd4/mutt-ng/bin
7594 This is a read-only system property and specifies the directory containing
7599 Type: system property
7601 Value: /opt/freebsd4/mutt-ng/doc/muttng
7603 This is a read-only system property and specifies the directory containing
7604 the muttng documentation.
7606 152. muttng_folder_name
7608 Type: system property
7612 This is a read-only system property and, at runtime, specifies the last
7613 part of the full path or URI of the folder currently open (if any), i.e.
7614 everything after the last ``/''.
7616 153. muttng_folder_path
7618 Type: system property
7622 This is a read-only system property and, at runtime, specifies the full
7623 path or URI of the folder currently open (if any).
7625 154. muttng_hcache_backend
7627 Type: system property
7631 This is a read-only system property and specifies the header chaching's
7636 Type: system property
7640 This is a read-only system property and, at runtime, specifies the current
7641 working directory of the muttng binary.
7643 156. muttng_revision
7645 Type: system property
7649 This is a read-only system property and specifies muttng's subversion
7652 157. muttng_sysconfdir
7654 Type: system property
7656 Value: /opt/freebsd4/mutt-ng/etc
7658 This is a read-only system property and specifies the directory containing
7659 the muttng system-wide configuration.
7663 Type: system property
7667 This is a read-only system property and specifies muttng's version string.
7675 This variable, when set, makes the thread tree narrower, allowing deeper
7676 threads to fit on the screen.
7684 Operations that expect to transfer a large amount of data over the network
7685 will update their progress every net_inc kilobytes. If set to 0, no
7686 progress messages will be displayed.
7688 See also ``$read_inc'' and ``$write_inc''.
7690 161. nntp_ask_followup_to
7698 If set, Mutt-ng will prompt you for the Followup-To: header field before
7699 editing the body of an outgoing news article.
7701 162. nntp_ask_x_comment_to
7709 If set, Mutt-ng will prompt you for the X-Comment-To: header field before
7710 editing the body of an outgoing news article.
7716 Default: "˜/.muttng"
7720 This variable points to directory where Mutt-ng will cache news article
7721 headers. If unset, headers will not be saved at all and will be reloaded
7722 each time when you enter a newsgroup.
7724 As for the header caching in connection with IMAP and/or Maildir, this
7725 drastically increases speed and lowers traffic.
7735 If this variable is set, Mutt-ng will mark all articles in a newsgroup as
7736 read when you leaving it.
7746 This variable controls how many news articles to cache per newsgroup (if
7747 caching is enabled, see $nntp_cache_dir) and how many news articles to
7748 show in the ``index'' menu.
7750 If there're more articles than defined with $nntp_context, all older ones
7751 will be removed/not shown in the index.
7753 166. nntp_followup_to_poster
7761 If this variable is set and the keyword "poster" is present in the
7762 Followup-To: header field, a follow-up to the newsgroup is not permitted.
7763 The message will be mailed to the submitter of the message via mail.
7765 167. nntp_group_index_format
7769 Default: "%4C %M%N %5s %-45.45f %d"
7773 This variable allows you to customize the newsgroup browser display to
7774 your personal taste. This string is similar to ``index_format'', but has
7775 its own set of printf(3)-like sequences:
7777 %C current newsgroup number
7778 %d description of newsgroup (retrieved from server)
7780 %M ``-'' if newsgroup not allowed for direct post (moderated for example)
7781 %N ``N'' if newsgroup is new, ``u'' if unsubscribed, blank otherwise
7782 %n number of new articles in newsgroup
7783 %s number of unread articles in newsgroup
7784 %>X right justify the rest of the string and pad with character "X"
7785 %|X pad to the end of the line with character "X"
7796 This variable specifies the name (or address) of the NNTP server to be
7799 It defaults to the value specified via the environment variable
7800 $NNTPSERVER or contained in the file /etc/nntpserver.
7802 You can also specify a username and an alternative port for each
7805 [nntp[s]://][username[:password]@]newsserver[:port]
7807 Note: Using a password as shown and stored in a configuration file
7808 presents a security risk since the superuser of your machine may read it
7809 regardless of the file's permissions.
7819 If set, specifies the program and arguments used to deliver news posted by
7820 Mutt-ng. Otherwise, Mutt-ng posts article using current connection. The
7821 following printf(3)-style sequence is understood:
7826 Example: set inews="/usr/local/bin/inews -hS"
7828 170. nntp_load_description
7836 This variable controls whether or not descriptions for newsgroups are to
7837 be loaded when subscribing to a newsgroup.
7839 171. nntp_mail_check
7847 The time in seconds until any operations on a newsgroup except posting a
7848 new article will cause a recheck for new news. If set to 0, Mutt-ng will
7849 recheck on each operation in index (stepping, read article, etc.).
7851 172. nntp_mime_subject
7859 If unset, an 8-bit ``Subject:'' header field in a news article will not be
7860 encoded according to RFC2047.
7862 Note: Only change this setting if you know what you are doing.
7868 Default: "˜/.newsrc"
7872 This file contains information about subscribed newsgroup and articles
7875 To ease the use of multiple news servers, the following printf(3)-style
7876 sequence is understood:
7889 Your password for NNTP account.
7891 Note: Storing passwords in a configuration file presents a security risk
7892 since the superuser of your machine may read it regardless of the file's
7895 175. nntp_post_moderated
7903 If set to yes, Mutt-ng will post articles to newsgroup that have not
7904 permissions to post (e.g. moderated).
7906 Note: if the newsserver does not support posting to that newsgroup or a
7907 group is totally read-only, that posting will not have any effect.
7917 Controls whether or not Mutt-ng will try to reconnect to a newsserver when
7918 the was connection lost.
7920 177. nntp_save_unsubscribed
7928 When set, info about unsubscribed newsgroups will be saved into the
7929 ``newsrc'' file and into the news cache.
7931 178. nntp_show_new_news
7939 If set, the newsserver will be asked for new newsgroups on entering the
7940 browser. Otherwise, it will be done only once for a newsserver. Also
7941 controls whether or not the number of new articles of subscribed
7942 newsgroups will be checked.
7944 179. nntp_show_only_unread
7952 If set, only subscribed newsgroups that contain unread articles will be
7953 displayed in the newsgroup browser.
7963 Your login name on the NNTP server. If unset and the server requires
7964 authentification, Mutt-ng will prompt you for your account name.
7966 181. nntp_x_comment_to
7974 If set, Mutt-ng will add a ``X-Comment-To:'' header field (that contains
7975 full name of the original article author) to articles that you followup
7978 182. operating_system
7984 This specifies the operating system name for the User-Agent: header field.
7985 If this is unset, it will be set to the operating system name that
7986 uname(2) returns. If uname(2) fails, ``UNIX'' will be used.
7988 It may, for example, look as: ``mutt-ng 1.5.9i (Linux)''.
7996 This variable specifies which pager you would like to use to view
7997 messages. ``builtin'' means to use the builtin pager, otherwise this
7998 variable should specify the pathname of the external pager you would like
8001 Using an external pager may have some disadvantages: Additional keystrokes
8002 are necessary because you can't call Mutt-ng functions directly from the
8003 pager, and screen resizes cause lines longer than the screen width to be
8004 badly formatted in the help menu.
8012 This variable controls the number of lines of context that are given when
8013 displaying the next or previous page in the internal pager. By default,
8014 Mutt-ng will display the line after the last one on the screen at the top
8015 of the next page (0 lines of context).
8021 Default: "-%Z- %C/%m: %-20.20n %s"
8023 This variable controls the format of the one-line message ``status''
8024 displayed before each message in either the internal or an external pager.
8025 The valid sequences are listed in the ``$index_format'' section.
8027 186. pager_index_lines
8033 Determines the number of lines of a mini-index which is shown when in the
8034 pager. The current message, unless near the top or bottom of the folder,
8035 will be roughly one third of the way down this mini-index, giving the
8036 reader the context of a few messages before and after the message. This is
8037 useful, for example, to determine how many messages remain to be read in
8038 the current thread. One of the lines is reserved for the status bar from
8039 the index, so a pager_index_lines of 6 will only show 5 lines of the
8040 actual index. A value of 0 results in no index being shown. If the number
8041 of messages in the current folder is less than pager_index_lines, then the
8042 index will only use as many lines as it needs.
8050 When set, the internal-pager will not move to the next message when you
8051 are at the end of a message and invoke the next-page function.
8053 188. pgp_auto_decode
8059 If set, Mutt-ng will automatically attempt to decrypt traditional PGP
8060 messages whenever the user performs an operation which ordinarily would
8061 result in the contents of the message being operated on. For example, if
8062 the user displays a pgp-traditional message which has not been manually
8063 checked with the check-traditional-pgp function, Mutt-ng will
8064 automatically check the message for traditional pgp.
8072 This option controls whether Mutt-ng generates old-style inline
8073 (traditional) PGP encrypted or signed messages under certain
8074 circumstances. This can be overridden by use of the pgp-menu, when inline
8077 Note that Mutt-ng might automatically use PGP/MIME for messages which
8078 consist of more than a single MIME part. Mutt-ng can be configured to ask
8079 before sending PGP/MIME messages when inline (traditional) would not work.
8080 See also: ``$pgp_mime_auto''.
8082 Also note that using the old-style PGP message format is strongly
8083 deprecated. (PGP only)
8091 If set, Mutt-ng will check the exit code of the PGP subprocess when
8092 signing or encrypting. A non-zero exit code means that the subprocess
8095 191. pgp_clearsign_command
8101 This format is used to create a old-style ``clearsigned'' PGP message.
8103 Note that the use of this format is strongly deprecated. (PGP only)
8105 192. pgp_decode_command
8111 This format strings specifies a command which is used to decode
8112 application/pgp attachments.
8114 The PGP command formats have their own set of printf(3)-like sequences:
8118 Expands to PGPPASSFD=0 when a pass phrase is needed, to an empty
8119 string otherwise. Note: This may be used with a %? construct.
8123 Expands to the name of a file containing a message.
8127 Expands to the name of a file containing the signature part of a
8128 multipart/signed attachment when verifying it.
8132 The value of $pgp_sign_as.
8136 One or more key IDs.
8138 For examples on how to configure these formats for the various versions of
8139 PGP which are floating around, see the pgp*.rc and gpg.rc files in the
8140 samples/ subdirectory which has been installed on your system alongside
8141 the documentation. (PGP only)
8143 193. pgp_decrypt_command
8149 This command is used to decrypt a PGP encrypted message. (PGP only)
8151 194. pgp_encrypt_only_command
8157 This command is used to encrypt a body part without signing it. (PGP only)
8159 195. pgp_encrypt_sign_command
8165 This command is used to both sign and encrypt a body part. (PGP only)
8167 196. pgp_entry_format
8171 Default: "%4n %t%f %4l/0x%k %-4a %2c %u"
8173 This variable allows you to customize the PGP key selection menu to your
8174 personal taste. This string is similar to ``$index_format'', but has its
8175 own set of printf(3)-like sequences:
8207 trust/validity of the key-uid association
8211 date of the key where <s> is an strftime(3) expression
8215 197. pgp_export_command
8221 This command is used to export a public key from the user's key ring. (PGP
8224 198. pgp_getkeys_command
8230 This command is invoked whenever Mutt-ng will need public key information.
8231 %r is the only printf(3)-like sequence used with this format. (PGP only)
8235 Type: regular expression
8239 If you assign a text to this variable, then a PGP signature is only
8240 considered verified if the output from $pgp_verify_command contains the
8241 text. Use this variable if the exit code from the command is 0 even for
8242 bad signatures. (PGP only)
8244 200. pgp_ignore_subkeys
8250 Setting this variable will cause Mutt-ng to ignore OpenPGP subkeys.
8251 Instead, the principal key will inherit the subkeys' capabilities. Unset
8252 this if you want to play interesting key selection games. (PGP only)
8254 201. pgp_import_command
8260 This command is used to import a key from a message into the user's public
8261 key ring. (PGP only)
8263 202. pgp_list_pubring_command
8269 This command is used to list the public key ring's contents. The output
8270 format must be analogous to the one used by gpg --list-keys --with-colons.
8272 This format is also generated by the pgpring utility which comes with
8275 203. pgp_list_secring_command
8281 This command is used to list the secret key ring's contents. The output
8282 format must be analogous to the one used by gpg --list-keys --with-colons.
8284 This format is also generated by the pgpring utility which comes with
8293 If set, use 64 bit PGP key IDs. Unset uses the normal 32 bit Key IDs. (PGP
8302 This option controls whether Mutt-ng will prompt you for automatically
8303 sending a (signed/encrypted) message using PGP/MIME when inline
8304 (traditional) fails (for any reason).
8306 Also note that using the old-style PGP message format is strongly
8307 deprecated. (PGP only)
8309 206. pgp_replyinline
8315 Setting this variable will cause Mutt-ng to always attempt to create an
8316 inline (traditional) message when replying to a message which is PGP
8317 encrypted/signed inline. This can be overridden by use of the pgp-menu,
8318 when inline is not required. This option does not automatically detect if
8319 the (replied-to) message is inline; instead it relies on Mutt-ng internals
8320 for previously checked/flagged messages.
8322 Note that Mutt-ng might automatically use PGP/MIME for messages which
8323 consist of more than a single MIME part. Mutt-ng can be configured to ask
8324 before sending PGP/MIME messages when inline (traditional) would not work.
8325 See also: ``$pgp_mime_auto''.
8327 Also note that using the old-style PGP message format is strongly
8328 deprecated. (PGP only)
8330 207. pgp_retainable_sigs
8336 If set, signed and encrypted messages will consist of nested
8337 multipart/signed and multipart/encrypted body parts.
8339 This is useful for applications like encrypted and signed mailing lists,
8340 where the outer layer (multipart/encrypted) can be easily removed, while
8341 the inner multipart/signed part is retained. (PGP only)
8343 208. pgp_show_unusable
8349 If set, Mutt-ng will display non-usable keys on the PGP key selection
8350 menu. This includes keys which have been revoked, have expired, or have
8351 been marked as ``disabled'' by the user. (PGP only)
8359 If you have more than one key pair, this option allows you to specify
8360 which of your private keys to use. It is recommended that you use the
8361 keyid form to specify your key (e.g., ``0x00112233''). (PGP only)
8363 210. pgp_sign_command
8369 This command is used to create the detached PGP signature for a
8370 multipart/signed PGP/MIME body part. (PGP only)
8378 Specifies how the entries in the ``pgp keys'' menu are sorted. The
8379 following are legal values:
8383 sort alphabetically by user id
8387 sort alphabetically by key id
8391 sort by key creation date
8395 sort by the trust of the key
8397 If you prefer reverse order of the above values, prefix it with
8398 ``reverse-''. (PGP only)
8406 If set, Mutt-ng will automatically encode PGP/MIME signed messages as
8407 quoted-printable. Please note that unsetting this variable may lead to
8408 problems with non-verifyable PGP signatures, so only change this if you
8409 know what you are doing. (PGP only)
8417 The number of seconds after which a cached passphrase will expire if not
8418 used. Default: 300. (PGP only)
8420 214. pgp_use_gpg_agent
8426 If set, Mutt-ng will use a possibly-running gpg-agent process. (PGP only)
8428 215. pgp_verify_command
8434 This command is used to verify PGP signatures. (PGP only)
8436 216. pgp_verify_key_command
8442 This command is used to verify key information from the key selection
8451 Used in connection with the pipe-message command. When unset, Mutt-ng will
8452 pipe the messages without any preprocessing. When set, Mutt-ng will weed
8453 headers and will attempt to PGP/MIME decode the messages first.
8461 The separator to add between messages when piping a list of tagged
8462 messages to an external Unix command.
8470 Used in connection with the pipe-message command and the ``tag- prefix''
8471 or ``tag-prefix-cond'' operators. If this variable is unset, when piping a
8472 list of tagged messages Mutt-ng will concatenate the messages and will
8473 pipe them as a single folder. When set, Mutt-ng will pipe the messages one
8474 by one. In both cases the messages are piped in the current sorted order,
8475 and the ``$pipe_sep'' separator is added after each message.
8477 220. pop_auth_try_all
8485 If set, Mutt-ng will try all available methods. When unset, Mutt-ng will
8486 only fall back to other authentication methods if the previous methods are
8487 unavailable. If a method is available but authentication fails, Mutt-ng
8488 will not connect to the POP server.
8490 221. pop_authenticators
8498 This is a colon-delimited list of authentication methods Mutt-ng may
8499 attempt to use to log in to an POP server, in the order Mutt-ng should try
8500 them. Authentication methods are either ``user'', ``apop'' or any SASL
8501 mechanism, eg ``digest-md5'', ``gssapi'' or ``cram-md5''.
8503 This parameter is case-insensitive. If this parameter is unset (the
8504 default) Mutt-ng will try all available methods, in order from most-secure
8507 Example: set pop_authenticators="digest-md5:apop:user"
8517 If set, Mutt-ng will delete successfully downloaded messages from the POP
8518 server when using the ``fetch-mail'' function. When unset, Mutt-ng will
8519 download messages but also leave them on the POP server.
8529 The name of your POP server for the ``fetch-mail'' function. You can also
8530 specify an alternative port, username and password, i.e.:
8532 [pop[s]://][username[:password]@]popserver[:port]
8534 Note: Storing passwords in a configuration file presents a security risk
8535 since the superuser of your machine may read it regardless of the file's
8546 If this variable is set, Mutt-ng will try to use the ``LAST'' POP command
8547 for retrieving only unread messages from the POP server when using the
8548 ``fetch-mail'' function.
8558 This variable configures how often (in seconds) POP should look for new
8569 Specifies the password for your POP account. If unset, Mutt-ng will prompt
8570 you for your password when you open POP mailbox.
8572 Note: Storing passwords in a configuration file presents a security risk
8573 since the superuser of your machine may read it regardless of the file's
8584 Controls whether or not Mutt-ng will try to reconnect to a POP server when
8585 the connection is lost.
8595 Your login name on the POP server.
8597 This variable defaults to your user name on the local machine.
8599 229. post_indent_string
8605 Similar to the ``$attribution'' variable, Mutt-ng will append this string
8606 after the inclusion of a message which is being replied to.
8614 Controls whether or not messages are saved in the ``$postponed'' mailbox
8615 when you elect not to send immediately.
8621 Default: "˜/postponed"
8623 Mutt-ng allows you to indefinitely ``postpone sending a message'' which
8624 you are editing. When you choose to postpone a message, Mutt-ng saves it
8625 in the mailbox specified by this variable. Also see the ``$postpone''
8634 If set, a shell command to be executed if Mutt-ng fails to establish a
8635 connection to the server. This is useful for setting up secure
8636 connections, e.g. with ssh(1). If the command returns a nonzero status,
8637 Mutt-ng gives up opening the server. Example:
8639 preconnect="ssh -f -q -L 1234:mailhost.net:143 mailhost.net sleep 20 <
8640 /dev/null > /dev/null"
8642 Mailbox ``foo'' on mailhost.net can now be reached as
8643 ``{localhost:1234}foo''.
8645 Note: For this example to work, you must be able to log in to the remote
8646 machine without having to enter a password.
8654 Controls whether or not Mutt-ng really prints messages. This is set to
8655 ask-no by default, because some people accidentally hit ``p'' often.
8663 This specifies the command pipe that should be used to print messages.
8671 Used in connection with the print-message command. If this option is set,
8672 the message is decoded before it is passed to the external command
8673 specified by $print_command. If this option is unset, no processing will
8674 be applied to the message when printing it. The latter setting may be
8675 useful if you are using some advanced printer filter which is able to
8676 properly format e-mail messages for printing.
8684 Used in connection with the print-message command. If this option is set,
8685 the command specified by $print_command is executed once for each message
8686 which is to be printed. If this option is unset, the command specified by
8687 $print_command is executed only once, and all the messages are
8688 concatenated, with a form feed as the message separator.
8690 Those who use the enscript(1) program's mail-printing mode will most
8691 likely want to set this option.
8699 If you use an external ``$pager'', setting this variable will cause
8700 Mutt-ng to prompt you for a command when the pager exits rather than
8701 returning to the index menu. If unset, Mutt-ng will return to the index
8702 menu when the external pager exits.
8710 This specifies the command that Mutt-ng will use to make external address
8711 queries. The string should contain a %s, which will be substituted with
8712 the query string the user types. See ``query'' for more information.
8720 This variable controls whether ``quit'' and ``exit'' actually quit from
8721 Mutt-ng. If it set to yes, they do quit, if it is set to no, they have no
8722 effect, and if it is set to ask-yes or ask-no, you are prompted for
8723 confirmation when you try to quit.
8731 Controls whether or not empty lines will be quoted using
8740 Controls how quoted lines will be quoted. If set, one quote character will
8741 be added to the end of existing prefix. Otherwise, quoted lines will be
8742 prepended by ``indent_string''.
8746 Type: regular expression
8748 Default: "^([ \t]*[|>:}#])+"
8750 A regular expression used in the internal-pager to determine quoted
8751 sections of text in the body of a message.
8753 Note: In order to use the quotedx patterns in the internal pager, you need
8754 to set this to a regular expression that matches exactly the quote
8755 characters at the beginning of quoted lines.
8763 If set to a value greater than 0, Mutt-ng will display which message it is
8764 currently on when reading a mailbox. The message is printed after read_inc
8765 messages have been read (e.g., if set to 25, Mutt-ng will print a message
8766 when it reads message 25, and then again when it gets to message 50). This
8767 variable is meant to indicate progress when reading large mailboxes which
8768 may take some time. When set to 0, only a single message will appear
8769 before the reading the mailbox.
8771 Also see the ``$write_inc'' variable.
8779 If set, all folders are opened in read-only mode.
8787 This variable specifies what ``real'' or ``personal'' name should be used
8788 when sending messages.
8790 By default, this is the GECOS field from /etc/passwd.
8792 Note: This variable will not be used when the user has set a real name in
8801 Controls whether or not Mutt-ng recalls postponed messages when composing
8802 a new message. Also see ``$postponed''.
8804 Setting this variable to yes is not generally useful, and thus not
8813 This specifies the file into which your outgoing messages should be
8814 appended. (This is meant as the primary method for saving a copy of your
8815 messages, but another way to do this is using the ``my_hdr'' command to
8816 create a Bcc: header field with your email address in it.)
8818 The value of $record is overridden by the ``$force_name'' and
8819 ``$save_name'' variables, and the ``fcc-hook'' command.
8823 Type: regular expression
8825 Default: "^(re([\[0-9\]+])*|aw):[ \t]*"
8827 A regular expression used to recognize reply messages when threading and
8828 replying. The default value corresponds to the English ``Re:'' and the
8837 If unset and you are replying to a message sent by you, Mutt-ng will
8838 assume that you want to reply to the recipients of that message rather
8847 If set, when replying to a message, Mutt-ng will use the address listed in
8848 the ``Reply-To:'' header field as the recipient of the reply. If unset, it
8849 will use the address in the ``From:'' header field instead.
8851 This option is useful for reading a mailing list that sets the
8852 ``Reply-To:'' header field to the list address and you want to send a
8853 private message to the author of a message.
8861 When set, the cursor will be automatically advanced to the next (possibly
8862 undeleted) message whenever a command that modifies the current message is
8871 This variable controls whether or not Mutt-ng will display the
8872 ``personal'' name from your aliases in the index menu if it finds an alias
8873 that matches the message's sender. For example, if you have the following
8876 alias juser abd30425@somewhere.net (Joe User)
8878 and then you receive mail which contains the following header:
8880 From: abd30425@somewhere.net
8882 It would be displayed in the index menu as ``Joe User'' instead of
8883 ``abd30425@somewhere.net.'' This is useful when the person's e-mail
8884 address is not human friendly (like CompuServe addresses).
8892 It may sometimes arrive that you receive mail to a certain machine, move
8893 the messages to another machine, and reply to some the messages from
8894 there. If this variable is set, the default From: line of the reply
8895 messages is built using the address where you received the messages you
8896 are replying to if that address matches your alternates. If the variable
8897 is unset, or the address that would be used doesn't match your alternates,
8898 the From: line will use your address on the current machine.
8900 254. reverse_realname
8906 This variable fine-tunes the behaviour of the reverse_name feature. When
8907 it is set, Mutt-ng will use the address from incoming messages as-is,
8908 possibly including eventual real names. When it is unset, Mutt-ng will
8909 override any such real names with the setting of the realname variable.
8911 255. rfc2047_parameters
8917 When this variable is set, Mutt-ng will decode RFC-2047-encoded MIME
8918 parameters. You want to set this variable when Mutt-ng suggests you to
8919 save attachments to files named like this:
8921 =?iso-8859-1?Q?file=5F=E4=5F991116=2Ezip?=
8923 When this variable is set interactively, the change doesn't have the
8924 desired effect before you have changed folders.
8926 Note that this use of RFC 2047's encoding is explicitly, prohibited by the
8927 standard, but nevertheless encountered in the wild.
8929 Also note that setting this parameter will not have the effect that
8930 Mutt-ng generates this kind of encoding. Instead, Mutt-ng will
8931 unconditionally use the encoding specified in RFC 2231.
8939 If set, Mutt-ng will take the sender's full address when choosing a
8940 default folder for saving a mail. If ``$save_name'' or ``$force_name'' is
8941 set too, the selection of the fcc folder will be changed as well.
8949 When unset, mailboxes which contain no saved messages will be removed when
8950 closed (the exception is ``$spoolfile'' which is never removed). If set,
8951 mailboxes are never removed.
8953 Note: This only applies to mbox and MMDF folders, Mutt-ng does not delete
8954 MH and Maildir directories.
8962 This variable controls how copies of outgoing messages are saved. When
8963 set, a check is made to see if a mailbox specified by the recipient
8964 address exists (this is done by searching for a mailbox in the ``$folder''
8965 directory with the username part of the recipient address). If the mailbox
8966 exists, the outgoing message will be saved to that mailbox, otherwise the
8967 message is saved to the ``$record'' mailbox.
8969 Also see the ``$force_name'' variable.
8977 When this variable is unset, scoring is turned off. This can be useful to
8978 selectively disable scoring for certain folders when the
8979 ``$score_threshold_delete'' variable and friends are used.
8981 260. score_threshold_delete
8987 Messages which have been assigned a score equal to or lower than the value
8988 of this variable are automatically marked for deletion by Mutt-ng. Since
8989 Mutt-ng scores are always greater than or equal to zero, the default
8990 setting of this variable will never mark a message for deletion.
8992 261. score_threshold_flag
8998 Messages which have been assigned a score greater than or equal to this
8999 variable's value are automatically marked ``flagged''.
9001 262. score_threshold_read
9007 Messages which have been assigned a score equal to or lower than the value
9008 of this variable are automatically marked as read by Mutt-ng. Since
9009 Mutt-ng scores are always greater than or equal to zero, the default
9010 setting of this variable will never mark a message read.
9016 Default: "us-ascii:iso-8859-1:utf-8"
9018 A list of character sets for outgoing messages. Mutt-ng will use the first
9019 character set into which the text can be converted exactly. If your
9020 ``$charset'' is not iso-8859-1 and recipients may not understand UTF-8, it
9021 is advisable to include in the list an appropriate widely used standard
9022 character set (such as iso-8859-2, koi8-r or iso-2022-jp) either instead
9023 of or after iso-8859-1.
9029 Default: "/usr/sbin/sendmail -oem -oi"
9031 Specifies the program and arguments used to deliver mail sent by Mutt-ng.
9032 Mutt-ng expects that the specified program interprets additional arguments
9033 as recipient addresses.
9041 Specifies the number of seconds to wait for the ``$sendmail'' process to
9042 finish before giving up and putting delivery in the background.
9044 Mutt-ng interprets the value of this variable as follows:
9048 number of seconds to wait for sendmail to finish before continuing
9052 wait forever for sendmail to finish
9056 always put sendmail in the background without waiting
9058 Note that if you specify a value other than 0, the output of the child
9059 process will be put in a temporary file. If there is some error, you will
9060 be informed as to where to find the output.
9068 Command to use when spawning a subshell. By default, the user's login
9069 shell from /etc/passwd is used.
9071 267. sidebar_boundary
9077 When the sidebar is displayed and $sidebar_shorten_hierarchy is set, this
9078 variable specifies the characters at which to split a folder name into
9079 ``hierarchy items.''
9087 This specifies the delimiter between the sidebar (if visible) and other
9090 269. sidebar_newmail_only
9096 If set, only folders with new mail will be shown in the sidebar.
9098 270. sidebar_number_format
9102 Default: "%m%?n?(%n)?%?f?[%f]?"
9104 This variable controls how message counts are printed when the sidebar is
9105 enabled. If this variable is empty (and only if), no numbers will be
9106 printed and mutt-ng won't frequently count mail (which may be a great
9107 speedup esp. with mbox-style mailboxes.)
9109 The following printf(3)-like sequences are supported all of which may be
9114 Number of deleted messages. 1)
9118 Number of flagged messages.
9122 Total number of messages.
9126 Total number of messages shown, i.e. not hidden by a limit. 1)
9130 Number of new messages.
9134 Number of tagged messages. 1)
9136 1) These expandos only have a non-zero value for the current mailbox and
9137 will always be zero otherwise.
9139 271. sidebar_shorten_hierarchy
9145 When set, the ``hierarchy'' of the sidebar entries will be shortened only
9146 if they cannot be printed in full length (because ``$sidebar_width'' is
9147 set to a too low value). For example, if the newsgroup name
9148 ``de.alt.sysadmin.recovery'' doesn't fit on the screen, it'll get
9149 shortened ``d.a.s.recovery'' while ``de.alt.d0'' still would and thus will
9152 At which characters this compression is done is controled via the
9153 $sidebar_boundary variable.
9155 272. sidebar_visible
9161 This specifies whether or not to show the sidebar (a list of folders
9162 specified with the ``mailboxes'' command).
9170 The width of the sidebar.
9178 If set, a line containing ``-- '' (dash, dash, space) will be inserted
9179 before your ``$signature''. It is strongly recommended that you not unset
9180 this variable unless your ``signature'' contains just your name. The
9181 reason for this is because many software packages use ``-- \n'' to detect
9184 For example, Mutt-ng has the ability to highlight the signature in a
9185 different color in the builtin pager.
9193 If set, the signature will be included before any quoted or forwarded
9194 text. It is strongly recommended that you do not set this variable unless
9195 you really know what you are doing, and are prepared to take some heat
9196 from netiquette guardians.
9202 Default: "˜/.signature"
9204 Specifies the filename of your signature, which is appended to all
9205 outgoing messages. If the filename ends with a pipe (``|''), it is assumed
9206 that filename is a shell command and input should be read from its stdout.
9214 If set, this string will be inserted before the signature. This is useful
9215 for people that want to sign off every message they send with their name.
9217 If you want to insert your website's URL, additional contact information
9218 or witty quotes into your mails, better use a signature file instead of
9225 Default: "Ëœf %s | Ëœs %s"
9227 Specifies how Mutt-ng should expand a simple search into a real search
9228 pattern. A simple search is one that does not contain any of the ˜
9229 operators. See ``patterns'' for more information on search patterns.
9231 For example, if you simply type ``joe'' at a search or limit prompt,
9232 Mutt-ng will automatically expand it to the value specified by this
9233 variable. For the default value it would be:
9243 Specifies time, in seconds, to pause while displaying certain
9244 informational messages, while moving from folder to folder and after
9245 expunging messages from the current folder. The default is to pause one
9246 second, so a value of zero for this option suppresses the pause.
9254 Controls the display of lines longer than the screen width in the internal
9255 pager. If set, long lines are wrapped at a word boundary. If unset, lines
9256 are simply wrapped at the screen edge. Also see the ``$markers'' variable.
9260 Type: regular expression
9262 Default: "(>From )|(:[-^]?[][)(><}{|/DP])"
9264 The pager uses this variable to catch some common false positives of
9265 ``$quote_regexp'', most notably smileys in the beginning of a line
9267 282. smime_ask_cert_label
9273 This flag controls whether you want to be asked to enter a label for a
9274 certificate about to be added to the database or not. It is set by
9275 default. (S/MIME only)
9277 283. smime_ca_location
9283 This variable contains the name of either a directory, or a file which
9284 contains trusted certificates for use with OpenSSL. (S/MIME only)
9286 284. smime_certificates
9292 Since there is no pubring/secring as with PGP, Mutt-ng has to handle
9293 storage and retrieval of keys by itself. This is very basic right now, and
9294 keys and certificates are stored in two different directories, both named
9295 as the hash-value retrieved from OpenSSL. There is an index file which
9296 contains mailbox-address keyid pairs, and which can be manually edited.
9297 This one points to the location of the certificates. (S/MIME only)
9299 285. smime_decrypt_command
9305 This format string specifies a command which is used to decrypt
9306 application/x-pkcs7-mime attachments.
9308 The OpenSSL command formats have their own set of printf(3)-like sequences
9313 Expands to the name of a file containing a message.
9317 Expands to the name of a file containing the signature part of a
9318 multipart/signed attachment when verifying it.
9322 The key-pair specified with $smime_default_key
9326 One or more certificate IDs.
9330 The algorithm used for encryption.
9334 CA location: Depending on whether $smime_ca_location points to a
9335 directory or file, this expands to "-CApath $smime_ca_location" or
9336 "-CAfile $smime_ca_location".
9338 For examples on how to configure these formats, see the smime.rc in the
9339 samples/ subdirectory which has been installed on your system alongside
9340 the documentation. (S/MIME only)
9342 286. smime_decrypt_use_default_key
9348 If set (default) this tells Mutt-ng to use the default key for decryption.
9349 Otherwise, if manage multiple certificate-key-pairs, Mutt-ng will try to
9350 use the mailbox-address to determine the key to use. It will ask you to
9351 supply a key, if it can't find one. (S/MIME only)
9353 287. smime_default_key
9359 This is the default key-pair to use for signing. This must be set to the
9360 keyid (the hash-value that OpenSSL generates) to work properly (S/MIME
9363 288. smime_encrypt_command
9369 This command is used to create encrypted S/MIME messages. (S/MIME only)
9371 289. smime_encrypt_with
9377 This sets the algorithm that should be used for encryption. Valid choices
9378 are ``des'', ``des3'', ``rc2-40'', ``rc2-64'', ``\frc2-128''.
9380 If unset ``3des'' (TripleDES) is used. (S/MIME only)
9382 290. smime_get_cert_command
9388 This command is used to extract X509 certificates from a PKCS7 structure.
9391 291. smime_get_cert_email_command
9397 This command is used to extract the mail address(es) used for storing X509
9398 certificates, and for verification purposes (to check whether the
9399 certificate was issued for the sender's mailbox). (S/MIME only)
9401 292. smime_get_signer_cert_command
9407 This command is used to extract only the signers X509 certificate from a
9408 S/MIME signature, so that the certificate's owner may get compared to the
9409 email's ``From:'' header field. (S/MIME only)
9411 293. smime_import_cert_command
9417 This command is used to import a certificate via smime_keysng. (S/MIME
9420 294. smime_is_default
9426 The default behaviour of Mutt-ng is to use PGP on all auto-sign/encryption
9427 operations. To override and to use OpenSSL instead this must be set.
9429 However, this has no effect while replying, since Mutt-ng will
9430 automatically select the same application that was used to sign/encrypt
9431 the original message.
9433 (Note that this variable can be overridden by unsetting $crypt_autosmime.)
9442 Since there is no pubring/secring as with PGP, Mutt-ng has to handle
9443 storage ad retrieval of keys/certs by itself. This is very basic right
9444 now, and stores keys and certificates in two different directories, both
9445 named as the hash-value retrieved from OpenSSL. There is an index file
9446 which contains mailbox-address keyid pair, and which can be manually
9447 edited. This one points to the location of the private keys. (S/MIME only)
9449 296. smime_pk7out_command
9455 This command is used to extract PKCS7 structures of S/MIME signatures, in
9456 order to extract the public X509 certificate(s). (S/MIME only)
9458 297. smime_sign_command
9464 This command is used to created S/MIME signatures of type
9465 multipart/signed, which can be read by all mail clients. (S/MIME only)
9467 298. smime_sign_opaque_command
9473 This command is used to created S/MIME signatures of type
9474 application/x-pkcs7-signature, which can only be handled by mail clients
9475 supporting the S/MIME extension. (S/MIME only)
9483 The number of seconds after which a cached passphrase will expire if not
9486 300. smime_verify_command
9492 This command is used to verify S/MIME signatures of type multipart/signed.
9495 301. smime_verify_opaque_command
9501 This command is used to verify S/MIME signatures of type
9502 application/x-pkcs7-mime. (S/MIME only)
9512 If this variable is non-empty, it'll be used as the envelope sender. If
9513 it's empty (the default), the value of the regular From: header will be
9516 This may be necessary as some providers don't allow for arbitrary values
9517 as the envelope sender but only a particular one which may not be the same
9518 as the user's desired From: header.
9528 Defines the SMTP host which will be used to deliver mail, as opposed to
9529 invoking the sendmail binary. Setting this variable overrides the value of
9530 ``$sendmail'', and any associated variables.
9540 Defines the password to use with SMTP AUTH. If ``$smtp_user'' is set, but
9541 this variable is not, you will be prompted for a password when sending.
9543 Note: Storing passwords in a configuration file presents a security risk
9544 since the superuser of your machine may read it regardless of the file's
9555 Defines the port that the SMTP host is listening on for mail delivery.
9556 Must be specified as a number.
9558 Defaults to 25, the standard SMTP port, but RFC 2476-compliant SMTP
9559 servers will probably desire 587, the mail submission port.
9567 Availability: SMTP (and SSL)
9569 Defines wether to use STARTTLS. If this option is set to ``required'' and
9570 the server does not support STARTTLS or there is an error in the TLS
9571 Handshake, the connection will fail. Setting this to ``enabled'' will try
9572 to start TLS and continue without TLS in case of an error. Muttng still
9573 needs to have SSL support enabled in order to use it.
9583 Defines the username to use with SMTP AUTH. Setting this variable will
9584 cause Mutt-ng to attempt to use SMTP AUTH when sending.
9592 Specifies how to sort messages in the index menu. Valid values are:
9597 mailbox-order (unsorted)
9606 You may optionally use the ``reverse-'' prefix to specify reverse sorting
9607 order (example: set sort=reverse-date-sent).
9615 Specifies how the entries in the ``alias'' menu are sorted. The following
9618 address (sort alphabetically by email address)
9619 alias (sort alphabetically by alias name)
9620 unsorted (leave in order specified in .muttrc)
9629 When sorting by threads, this variable controls how threads are sorted in
9630 relation to other threads, and how the branches of the thread trees are
9631 sorted. This can be set to any value that ``$sort'' can, except threads
9632 (in that case, Mutt-ng will just use date-sent). You can also specify the
9633 ``last-'' prefix in addition to ``reverse-'' prefix, but last- must come
9634 after reverse-. The last- prefix causes messages to be sorted against its
9635 siblings by which has the last descendant, using the rest of sort_aux as
9638 For instance, set sort_aux=last-date-received would mean that if a new
9639 message is received in a thread, that thread becomes the last one
9640 displayed (or the first, if you have set sort=reverse-threads.)
9642 Note: For reversed ``$sort'' order $sort_aux is reversed again (which is
9643 not the right thing to do, but kept to not break any existing
9644 configuration setting).
9652 Specifies how to sort entries in the file browser. By default, the entries
9653 are sorted alphabetically. Valid values:
9655 alpha (alphabetically)
9661 You may optionally use the ``reverse-'' prefix to specify reverse sorting
9662 order (example: set sort_browser=reverse-date).
9670 This variable is only useful when sorting by threads with
9671 ``$strict_threads'' unset. In that case, it changes the heuristic Mutt-ng
9672 uses to thread messages by subject. With $sort_re set, Mutt-ng will only
9673 attach a message as the child of another message by subject if the subject
9674 of the child message starts with a substring matching the setting of
9675 ``$reply_regexp''. With $sort_re unset, Mutt-ng will attach the message
9676 whether or not this is the case, as long as the non-``$reply_regexp''
9677 parts of both messages are identical.
9685 ``spam_separator'' controls what happens when multiple spam headers are
9686 matched: if unset, each successive header will overwrite any previous
9687 matches value for the spam label. If set, each successive match will
9688 append to the previous, using ``spam_separator'' as a separator.
9696 If your spool mailbox is in a non-default place where Mutt-ng cannot find
9697 it, you can specify its location with this variable. Mutt-ng will
9698 automatically set this variable to the value of the environment variable
9699 $MAIL if it is not set.
9701 315. ssl_ca_certificates_file
9707 This variable specifies a file containing trusted CA certificates. Any
9708 server certificate that is signed with one of these CA certificates are
9709 also automatically accepted.
9711 Example: set ssl_ca_certificates_file=/etc/ssl/certs/ca-certificates.crt
9713 316. ssl_client_cert
9721 The file containing a client certificate and its associated private key.
9729 If this variable is set, mutt-ng will require that all connections to
9730 remote servers be encrypted. Furthermore it will attempt to negotiate TLS
9731 even if the server does not advertise the capability, since it would
9732 otherwise have to abort the connection anyway. This option supersedes
9735 318. ssl_min_dh_prime_bits
9741 Availability: GNUTLS
9743 This variable specifies the minimum acceptable prime size (in bits) for
9744 use in any Diffie-Hellman key exchange. A value of 0 will use the default
9745 from the GNUTLS library.
9753 Availability: SSL or GNUTLS
9755 If set (the default), Mutt-ng will attempt to use STARTTLS on servers
9756 advertising the capability. When unset, Mutt-ng will not attempt to use
9757 STARTTLS regardless of the server's capabilities.
9767 This variables specifies whether to attempt to use SSLv2 in the SSL
9768 authentication process.
9776 Availability: SSL or GNUTLS
9778 This variables specifies whether to attempt to use SSLv3 in the SSL
9779 authentication process.
9787 Availability: SSL or GNUTLS
9789 This variables specifies whether to attempt to use TLSv1 in the SSL
9790 authentication process.
9792 323. ssl_usesystemcerts
9800 If set to yes, Mutt-ng will use CA certificates in the system-wide
9801 certificate store when checking if server certificate is signed by a
9810 Controls the characters used by the ``%r'' indicator in
9811 ``$status_format''. The first character is used when the mailbox is
9812 unchanged. The second is used when the mailbox has been changed, and it
9813 needs to be resynchronized. The third is used if the mailbox is in
9814 read-only mode, or if the mailbox will not be written when exiting that
9815 mailbox (You can toggle whether to write changes to a mailbox with the
9816 toggle-write operation, bound by default to ``%''). The fourth is used to
9817 indicate that the current folder has been opened in attach-message mode
9818 (Certain operations like composing a new mail, replying, forwarding, etc.
9819 are not permitted in this mode).
9825 Default: "-%r-Mutt-ng: %f [Msgs:%?M?%M/?%m%?n? New:%n?%?o? Old:%o?%?d?
9826 Del:%d?%?F? Flag:%F?%?t? Tag:%t?%?p? Post:%p?%?b? Inc:%b?%?l?
9827 %l?]---(%s/%S)-%>-(%P)---"
9829 Controls the format of the status line displayed in the index menu. This
9830 string is similar to ``$index_format'', but has its own set of
9831 printf(3)-like sequences:
9835 number of mailboxes with new mail *
9839 the short pathname of the current mailbox
9843 number of deleted messages *
9847 the full pathname of the current mailbox
9851 number of flagged messages *
9859 size (in bytes) of the current mailbox *
9863 size (in bytes) of the messages shown (i.e., which match the
9868 the number of messages in the mailbox *
9872 the number of messages shown (i.e., which match the current limit)
9877 number of new messages in the mailbox *
9881 number of old unread messages *
9885 number of postponed messages *
9889 percentage of the way through the index
9893 modified/read-only/won't-write/attach-message indicator, according
9898 current sorting mode ($sort)
9902 current aux sorting method ($sort_aux)
9906 number of tagged messages *
9910 number of unread messages *
9914 Mutt-ng version string
9918 currently active limit pattern, if any *
9922 right justify the rest of the string and pad with "X"
9926 pad to the end of the line with "X"
9928 * = can be optionally printed if nonzero
9930 Some of the above sequences can be used to optionally print a string if
9931 their value is nonzero. For example, you may only want to see the number
9932 of flagged messages if such messages exist, since zero is not particularly
9933 meaningful. To optionally print a string based upon one of the above
9934 sequences, the following construct is used
9936 %?<sequence_char>?<optional_string>?
9938 where sequence_char is a character from the table above, and
9939 optional_string is the string you would like printed if sequence_char is
9940 nonzero. optional_string may contain other sequences as well as normal
9941 text, but you may not nest optional strings.
9943 Here is an example illustrating how to optionally print the number of new
9944 messages in a mailbox:
9946 %?n?%n new messages.?
9948 Additionally you can switch between two strings, the first one, if a value
9949 is zero, the second one, if the value is nonzero, by using the following
9952 %?<sequence_char>?<if_string>&<else_string>?
9954 You can additionally force the result of any printf(3)-like sequence to be
9955 lowercase by prefixing the sequence character with an underscore (_) sign.
9956 For example, if you want to display the local hostname in lowercase, you
9961 If you prefix the sequence character with a colon (:) character, Mutt-ng
9962 will replace any dots in the expansion by underscores. This might be
9963 helpful with IMAP folders that don't like dots in folder names.
9971 Setting this variable causes the ``status bar'' to be displayed on the
9972 first line of the screen rather than near the bottom.
9980 With mailto: style links, a body as well as arbitrary header information
9981 may be embedded. This may lead to (user) headers being overwriten without
9982 note if ``$edit_headers'' is unset.
9984 If this variable is set, mutt-ng is strict and allows anything to be
9985 changed. If it's unset, all headers given will be prefixed with
9986 ``X-Mailto-'' and the message including headers will be shown in the
9987 editor regardless of what ``$edit_headers'' is set to.
9995 When unset, non MIME-compliant messages that doesn't have any charset
9996 indication in the ``Content-Type:'' header field can be displayed (non
9997 MIME-compliant messages are often generated by old mailers or buggy
9998 mailers like MS Outlook Express). See also $assumed_charset.
10000 This option also replaces linear-white-space between encoded-word and
10001 *text to a single space to prevent the display of MIME-encoded
10002 ``Subject:'' header field from being devided into multiple lines.
10004 329. strict_threads
10010 If set, threading will only make use of the ``In-Reply-To:'' and
10011 ``References:'' header fields when you ``$sort'' by message threads. By
10012 default, messages with the same subject are grouped together in ``pseudo
10013 threads.'' This may not always be desirable, such as in a personal mailbox
10014 where you might have several unrelated messages with the subject ``hi''
10015 which will get grouped together. See also ``$sort_re'' for a less drastic
10016 way of controlling this behaviour.
10024 When set, mutt-ng will remove the trailing part of the ``Subject:'' line
10025 which matches $strip_was_regex when replying. This is useful to properly
10026 react on subject changes and reduce ``subject noise.'' (esp. in Usenet)
10028 331. strip_was_regex
10030 Type: regular expression
10032 Default: "\([Ww][Aa][RrSs]: .*\)[ ]*$"
10034 When non-empty and $strip_was is set, mutt-ng will remove this trailing
10035 part of the ``Subject'' line when replying if it won't be empty
10044 If set, attachments with flowed format will have their quoting
10045 ``stuffed'', i.e. a space will be inserted between the quote characters
10046 and the actual text.
10054 When unset, Mutt-ng won't stop when the user presses the terminal's susp
10055 key, usually CTRL+Z. This is useful if you run Mutt-ng inside an xterm
10056 using a command like ``xterm -e muttng.''
10064 When set, Mutt-ng will generate text/plain; format=flowed attachments.
10065 This format is easier to handle for some mailing software, and generally
10066 just looks like ordinary text. To actually make use of this format's
10067 features, you'll need support in your editor.
10069 Note that $indent_string is ignored when this option is set.
10071 335. thorough_search
10077 Affects the Ëœb and Ëœh search operations described in section
10078 ``patterns'' above. If set, the headers and attachments of messages to be
10079 searched are decoded before searching. If unset, messages are searched as
10080 they appear in the folder.
10082 336. thread_received
10088 When set, Mutt-ng uses the date received rather than the date sent to
10089 thread messages by subject.
10097 When set, the internal-pager will pad blank lines to the bottom of the
10098 screen with a tilde (˜).
10106 This variable controls the number of seconds Mutt-ng will wait for a key
10107 to be pressed in the main menu before timing out and checking for new
10108 mail. A value of zero or less will cause Mutt-ng to never time out.
10116 This variable allows you to specify where Mutt-ng will place its temporary
10117 files needed for displaying and composing messages. If this variable is
10118 not set, the environment variable $TMPDIR is used. If $TMPDIR is not set
10119 then "/tmp" is used.
10127 Controls the character used to indicate mail addressed to you. The first
10128 character is the one used when the mail is NOT addressed to your address
10129 (default: space). The second is used when you are the only recipient of
10130 the message (default: +). The third is when your address appears in the
10131 ``To:'' header field, but you are not the only recipient of the message
10132 (default: T). The fourth character is used when your address is specified
10133 in the ``Cc:'' header field, but you are not the only recipient. The fifth
10134 character is used to indicate mail that was sent by you. The sixth
10135 character is used to indicate when a mail was sent to a mailing-list
10136 you're subscribe to (default: L).
10144 If set, this variable specifies the path of the trash folder where the
10145 mails marked for deletion will be moved, instead of being irremediably
10148 Note: When you delete a message in the trash folder, it is really deleted,
10149 so that there is no way to recover mail.
10157 Setting this variable will cause Mutt-ng to open a pipe to a command
10158 instead of a raw socket. You may be able to use this to set up
10159 preauthenticated connections to your IMAP/POP3 server. Example:
10161 tunnel="ssh -q mailhost.net /usr/local/libexec/imapd"
10163 Note: For this example to work you must be able to log in to the remote
10164 machine without having to enter a password.
10172 This sets the umask that will be used by Mutt-ng when creating all kinds
10173 of files. If unset, the default value is 077.
10175 344. uncollapse_jump
10181 When set, Mutt-ng will jump to the next unread message, if any, when the
10182 current thread is uncollapsed.
10190 Warning: do not set this variable unless you are using a version of
10191 sendmail which supports the -B8BITMIME flag (such as sendmail 8.8.x) or in
10192 connection with the SMTP support via libESMTP. Otherwise you may not be
10195 When set, Mutt-ng will either invoke ``$sendmail'' with the -B8BITMIME
10196 flag when sending 8-bit messages to enable ESMTP negotiation or tell
10205 When set, Mutt-ng will qualify all local addresses (ones without the @host
10206 portion) with the value of ``$hostname''. If unset, no addresses will be
10215 When set, Mutt-ng will generate the ``From:'' header field when sending
10216 messages. If unset, no ``From:'' header field will be generated unless the
10217 user explicitly sets one using the ``my_hdr'' command.
10227 When set, Mutt-ng will show you international domain names decoded.
10229 Note: You can use IDNs for addresses even if this is unset. This variable
10230 only affects decoding.
10238 When set, Mutt-ng will look for IPv6 addresses of hosts it tries to
10239 contact. If this option is unset, Mutt-ng will restrict itself to IPv4
10240 addresses. Normally, the default should work.
10248 Specifies the visual editor to invoke when the Ëœv command is given in the
10257 Controls whether Mutt-ng will ask you to press a key after shell- escape,
10258 pipe-message, pipe-entry, print-message, and print-entry commands.
10260 It is also used when viewing attachments with ``auto_view'', provided that
10261 the corresponding mailcap entry has a needsterminal flag, and the external
10262 program is interactive.
10264 When set, Mutt-ng will always ask for a key. When unset, Mutt-ng will wait
10265 for a key only if the external command returned a non-zero status.
10273 When set, Mutt-ng will weed headers when displaying, forwarding, printing,
10274 or replying to messages.
10282 Controls whether searches wrap around the end of the mailbox.
10284 When set, searches will wrap around the first (or last) message. When
10285 unset, searches will not wrap.
10293 Controls the size of the margin remaining at the right side of the
10294 terminal when Mutt-ng's pager does smart wrapping.
10302 Controls whether Mutt-ng writes out the Bcc header when preparing messages
10303 to be sent. Exim users may wish to unset this.
10311 When writing a mailbox, a message will be printed every write_inc messages
10312 to indicate progress. If set to 0, only a single message will be displayed
10313 before writing a mailbox.
10315 Also see the ``$read_inc'' variable.
10321 Default: "M%?n?AIL&ail?"
10323 Controls the format of the X11 icon title, as long as $xterm_set_titles is
10324 set. This string is identical in formatting to the one used by
10325 ``$status_format''.
10333 If $xterm_set_titles is set, this string will be used to set the title
10334 when leaving mutt-ng. For terminal-based programs, there's no easy and
10335 portable way to read the current title so mutt-ng cannot read it upon
10336 startup and restore it when exiting.
10338 Based on the xterm FAQ, the following might work:
10340 set xterm_leave = "`test x$DISPLAY != x && xprop -id $WINDOWID | grep
10341 WM_NAME | cut -d '"' -f 2`"
10343 359. xterm_set_titles
10349 Controls whether Mutt-ng sets the xterm title bar and icon name (as long
10350 as you're in an appropriate terminal). The default must be unset to force
10351 in the validity checking.
10357 Default: "Mutt-ng with %?m?%m messages&no messages?%?n? [%n New]?"
10359 Controls the format of the title bar of the xterm provided that
10360 $xterm_set_titles has been set. This string is identical in formatting to
10361 the one used by ``$status_format''.
10365 The following is the list of available functions listed by the mapping in
10366 which they are available. The default key setting is given, and an
10367 explanation of what the function does. The key bindings of these functions
10368 can be changed with the bind command.
10372 The generic menu is not a real menu, but specifies common functions (such
10373 as movement) available in all menus except for pager and editor. Changing
10374 settings for this menu will affect the default bindings for all menus
10377 bottom-page L move to the bottom of the page
10378 current-bottom not bound move current entry to bottom of page
10379 current-middle not bound move current entry to middle of page
10380 current-top not bound move current entry to top of page
10381 enter-command : enter a muttngrc command
10382 exit q exit this menu
10383 first-entry = move to the first entry
10384 half-down ] scroll down 1/2 page
10385 half-up [ scroll up 1/2 page
10387 jump number jump to an index number
10388 last-entry * move to the last entry
10389 middle-page M move to the middle of the page
10390 next-entry j move to the next entry
10391 next-line > scroll down one line
10392 next-page z move to the next page
10393 previous-entry k move to the previous entry
10394 previous-line < scroll up one line
10395 previous-page Z move to the previous page
10396 refresh ^L clear and redraw the screen
10397 search / search for a regular expression
10398 search-next n search for next match
10399 search-opposite not bound search for next match in opposite
10401 search-reverse ESC / search backwards for a regular
10403 select-entry RET select the current entry
10404 shell-escape ! run a program in a subshell
10405 tag-entry t toggle the tag on the current entry
10406 tag-prefix ; apply next command to tagged entries
10407 tag-prefix-cond not bound apply next function ONLY to tagged
10409 top-page H move to the top of the page
10410 what-key not bound display the keycode for a key press
10415 bounce-message b remail a message to another user
10416 change-folder c open a different folder
10417 change-folder-readonly ESC c open a different folder in read only
10419 check-traditional-pgp ESC P check for classic pgp
10420 clear-flag W clear a status flag from a message
10421 copy-message C copy a message to a file/mailbox
10422 create-alias a create an alias from a message
10423 senderdecode-copy ESC C decode a message and copy it
10425 decode-save ESC s decode a message and save it to a
10427 delete-message d delete the current entry
10428 delete-pattern D delete messages matching a pattern
10429 delete-subthread ESC d delete all messages in subthread
10430 delete-thread ^D delete all messages in thread
10431 display-address @ display full address of sender
10432 display-toggle-weed h display message and toggle header
10434 display-message RET display a message
10435 edit e edit the current message
10436 edit-type ^E edit the current message's
10438 exit x exit without saving changes
10439 extract-keys ^K extract PGP public keys
10440 fetch-mail G retrieve mail from POP server
10441 flag-message F toggle a message's 'important' flag
10442 forget-passphrase ^F wipe PGP passphrase from memory
10443 forward-message f forward a message with comments
10444 group-reply g reply to all recipients
10445 limit l show only messages matching a
10446 patternlist-reply L reply to specified mailing
10448 mail m compose a new mail message
10449 mail-key ESC k mail a PGP public key
10450 next-new not bound jump to the next new message
10451 next-new-then-unread TAB jump to the next new or unread message
10452 next-subthread ESC n jump to the next subthread
10453 next-thread ^N jump to the next thread
10454 next-undeleted j move to the next undeleted message
10455 next-unread not bound jump to the next unread message
10456 parent-message P jump to parent message in thread
10457 pipe-message | pipe message/attachment to a shell
10459 previous-new not bound jump to the previous new message
10460 previous-new-then-unread
10461 ESC TAB jump to the previous new or unread message
10463 previous-page Z move to the previous page
10464 previous-subthread ESC p jump to previous subthread
10465 previous-thread ^P jump to previous thread
10466 previous-undeleted k move to the last undelete message
10467 previous-unread not bound jump to the previous unread message
10468 print-message p print the current entry
10469 query Q query external program for addresses
10470 quit q save changes to mailbox and quit
10471 read-subthread ESC r mark the current subthread as read
10472 read-thread ^R mark the current thread as read
10473 recall-message R recall a postponed message
10474 reply r reply to a message
10475 resend-message ESC e resend message and preserve MIME
10477 save-message s save message/attachment to a file
10478 set-flag w set a status flag on a message
10479 show-version V show the Mutt-ng version number and
10481 show-limit ESC l show currently active limit pattern,
10483 sort-mailbox o sort messages
10484 sort-reverse O sort messages in reverse order
10485 sync-mailbox $ save changes to mailbox
10486 tag-pattern T tag messages matching a pattern
10487 tag-thread ESC t tag/untag all messages in the
10489 toggle-new N toggle a message's 'new' flag
10490 toggle-write % toggle whether the mailbox will be
10492 undelete-message u undelete the current entry
10493 undelete-pattern U undelete messages matching a pattern
10494 undelete-subthread ESC u undelete all messages in subthread
10495 undelete-thread ^U undelete all messages in thread
10496 untag-pattern ^T untag messages matching a pattern
10497 view-attachments v show MIME attachments
10502 bottom not bound jump to the bottom of the message
10503 bounce-message b remail a message to another user
10504 change-folder c open a different folder
10505 change-folder-readonly ESC c open a different folder in read only
10507 check-traditional-pgp ESC P check for classic pgp
10508 copy-message C copy a message to a file/mailbox
10509 create-alias a create an alias from a message
10510 senderdecode-copy ESC C decode a message and copy it
10512 decode-save ESC s decode a message and save it to a
10514 delete-message d delete the current entry
10515 delete-subthread ESC d delete all messages in subthread
10516 delete-thread ^D delete all messages in thread
10517 display-address @ display full address of sender
10518 display-toggle-weed h display message and toggle header
10520 edit e edit the current message
10521 edit-type ^E edit the current message's
10523 enter-command : enter a muttngrc command
10524 exit i return to the main-menu
10525 extract-keys ^K extract PGP public keys
10526 flag-message F toggle a message's 'important' flag
10527 forget-passphrase ^F wipe PGP passphrase from memory
10528 forward-message f forward a message with comments
10529 group-reply g reply to all recipients
10530 half-up not bound move up one-half page
10531 half-down not bound move down one-half page
10533 list-reply L reply to specified mailing list
10534 mail m compose a new mail message
10535 mail-key ESC k mail a PGP public key
10536 mark-as-new N toggle a message's 'new' flag
10537 next-line RET scroll down one line
10538 next-entry J move to the next entry
10539 next-new not bound jump to the next new message
10540 next-new-then-unread TAB jump to the next new or unread message
10541 next-page move to the next page
10542 next-subthread ESC n jump to the next subthread
10543 next-thread ^N jump to the next thread
10544 next-undeleted j move to the next undeleted message
10545 next-unread not bound jump to the next unread message
10546 parent-message P jump to parent message in thread
10547 pipe-message | pipe message/attachment to a shell
10549 previous-line BackSpace scroll up one line
10550 previous-entry K move to the previous entry
10551 previous-new not bound jump to the previous new message
10552 previous-new-then-unread
10553 not bound jump to the previous new or unread message
10554 previous-page - move to the previous page
10555 previous-subthread ESC p jump to previous subthread
10556 previous-thread ^P jump to previous thread
10557 previous-undeleted k move to the last undelete message
10558 previous-unread not bound jump to the previous unread message
10559 print-message p print the current entry
10560 quit Q save changes to mailbox and quit
10561 read-subthread ESC r mark the current subthread as read
10562 read-thread ^R mark the current thread as read
10563 recall-message R recall a postponed message
10564 redraw-screen ^L clear and redraw the screen
10565 reply r reply to a message
10566 save-message s save message/attachment to a file
10567 search / search for a regular expression
10568 search-next n search for next match
10569 search-opposite not bound search for next match in opposite
10571 search-reverse ESC / search backwards for a regular
10573 search-toggle \ toggle search pattern coloring
10574 shell-escape ! invoke a command in a subshell
10575 show-version V show the Mutt-ng version number and
10577 skip-quoted S skip beyond quoted text
10578 sync-mailbox $ save changes to mailbox
10579 tag-message t tag a message
10580 toggle-quoted T toggle display of quoted text
10581 top ^ jump to the top of the message
10582 undelete-message u undelete the current entry
10583 undelete-subthread ESC u undelete all messages in subthread
10584 undelete-thread ^U undelete all messages in thread
10585 view-attachments v show MIME attachments
10590 search / search for a regular expression
10591 search-next n search for next match
10592 search-reverse ESC / search backwards for a regular
10598 create-alias a create an alias from a message
10599 sendermail m compose a new mail message
10600 query Q query external program for addresses
10601 query-append A append new query results to current
10603 search / search for a regular expression
10604 search-next n search for next match
10605 search-opposite not bound search for next match in opposite
10607 search-reverse ESC / search backwards for a regular
10613 bounce-message b remail a message to another user
10614 collapse-parts v toggle display of subparts
10615 delete-entry d delete the current entry
10616 display-toggle-weed h display message and toggle header
10618 edit-type ^E edit the current entry's
10619 Content-Typeextract-keys ^K extract PGP public keys
10620 forward-message f forward a message with comments
10621 group-reply g reply to all recipients
10622 list-reply L reply to specified mailing list
10623 pipe-entry | pipe message/attachment to a shell
10625 print-entry p print the current entry
10626 reply r reply to a message
10627 resend-message ESC e resend message and preserve MIME
10629 save-entry s save message/attachment to a file
10630 undelete-entry u undelete the current entry
10631 view-attach RET view attachment using mailcap entry
10633 view-mailcap m force viewing of attachment using
10635 view-text T view attachment as text
10640 attach-file a attach a file(s) to this message
10641 attach-message A attach message(s) to this message
10642 attach-key ESC k attach a PGP public key
10643 copy-file C save message/attachment to a file
10644 detach-file D delete the current entry
10645 display-toggle-weed h display message and toggle header
10647 edit-bcc b edit the BCC list
10648 edit-cc c edit the CC list
10649 edit-description d edit attachment description
10650 edit-encoding ^E edit attachment transfer-encoding
10651 edit-fcc f enter a file to save a copy of this
10653 edit-from ESC f edit the from: field
10654 edit-file ^X e edit the file to be attached
10655 edit-headers E edit the message with headers
10656 edit e edit the message
10657 edit-mime m edit attachment using mailcap entry
10658 edit-reply-to r edit the Reply-To field
10659 edit-subject s edit the subject of this message
10660 edit-to t edit the TO list
10661 edit-type ^T edit attachment type
10662 filter-entry F filter attachment through a shell
10664 forget-passphrase ^F wipe PGP passphrase from memory
10665 ispell i run ispell on the message
10666 new-mime n compose new attachment using mailcap
10668 pgp-menu p show PGP options
10669 pipe-entry | pipe message/attachment to a shell
10671 postpone-message P save this message to send later
10672 print-entry l print the current entry
10673 rename-file R rename/move an attached file
10674 send-message y send the message
10675 toggle-unlink u toggle whether to delete file after
10677 view-attach RET view attachment using mailcap entry
10679 write-fcc w write the message to a folder
10684 delete-entry d delete the current entry
10685 undelete-entry u undelete the current entry
10690 change-dir c change directories
10691 check-new TAB check mailboxes for new mail
10692 enter-mask m enter a file mask
10693 search / search for a regular expression
10694 search-next n search for next match
10695 search-reverse ESC / search backwards for a regular
10697 select-new N select a new file in this directory
10698 sort o sort messages
10699 sort-reverse O sort messages in reverse order
10700 toggle-mailboxes TAB toggle whether to browse mailboxes
10702 view-file SPACE view file
10703 subscribe s subscribe to current mailbox (IMAP
10705 unsubscribe u unsubscribe to current mailbox (IMAP
10707 toggle-subscribed T toggle view all/subscribed mailboxes
10713 view-name % view the key's user id
10714 verify-key c verify a PGP public key
10719 backspace BackSpace delete the char in front of the
10721 backward-char ^B move the cursor one character to the
10723 backward-word ESC b move the cursor to the previous word
10724 bol ^A jump to the beginning of the line
10725 buffy-cycle Space cycle among incoming mailboxes
10726 capitalize-word ESC c uppercase the first character in the
10728 complete TAB complete filename or alias
10729 complete-query ^T complete address with query
10730 delete-char ^D delete the char under the cursor
10731 downcase-word ESC l lowercase all characters in current
10733 eol ^E jump to the end of the line
10734 forward-char ^F move the cursor one character to the
10736 forward-word ESC f move the cursor to the next word
10737 history-down not bound scroll down through the history list
10738 history-up not bound scroll up through the history list
10739 kill-eol ^K delete chars from cursor to end of
10741 kill-eow ESC d delete chars from cursor to end of
10743 kill-line ^U delete all chars on the line
10744 kill-word ^W delete the word in front of the
10746 quote-char ^V quote the next typed key
10747 transpose-chars not bound transpose character under cursor
10749 upcase-word ESC u uppercase all characters in current
10753 Chapter 8. Miscellany
10761 Kari Hurtta <kari.hurtta@fmi.fi> co-developed the original MIME >parsing
10762 code back in the ELM-ME days.
10764 The following people have been very helpful to the development of Mutt
10765 (sorted by surnames):
10767 o Vikas Agnihotri <vikasa@writeme.com>
10768 o Francois Berjon < Francois.Berjon@aar.alcatel-alsthom.fr>
10769 o Aric Blumer <aric@fore.com>, John Capo < jc@irbs.com >
10770 o David Champion <dgc@uchicago.edu>
10771 o Brendan Cully <brendan@kublai.com>
10772 o Liviu Daia <daia@stoilow.imar.ro>
10773 o Thomas E. Dickey <dickey@herndon4.his.com>
10774 o David DeSimone <fox@convex.hp.com>
10775 o Nickolay N. Dudorov <nnd@wint.itfs.nsk.su>
10776 o Ruslan Ermilov <ru@freebsd.org>
10777 o Edmund Grimley Evans <edmundo@rano.org>
10778 o Michael Finken <finken@conware.de>
10779 o Sven Guckes <guckes@math.fu-berlin.de>
10780 o Lars Hecking <lhecking@nmrc.ie>
10781 o Mark Holloman <holloman@nando.net>
10782 o Andreas Holzmann <holzmann@fmi.uni-passau.de>
10783 o Marco d'Itri <md@linux.it>
10784 o Björn Jacke <bjacke@suse.com>
10785 o Byrial Jensen <byrial@image.dk>
10786 o David Jeske <jeske@igcom.net>
10787 o Christophe Kalt <kalt@hugo.int-evry.fr>
10788 o Tommi Komulainen <Tommi.Komulainen@iki.fi>
10789 o Felix von Leitner (a.k.a ``Fefe'') < leitner@math.fu-berlin.de >
10790 o Brandon Long <blong@fiction.net>
10791 o Jimmy Mäkeä <jmy@flashback.net>
10792 o Lars Marowsky-Bree <lmb@pointer.in-minden.de>
10793 o Thomas ``Mike'' Michlmayr <mike@cosy.sbg.ac.at>
10794 o Andrew W. Nosenko <awn@bcs.zp.ua>
10795 o David O'Brien <obrien@Nuxi.cs.ucdavis.edu>
10796 o Clint Olsen <olsenc@ichips.intel.com>
10797 o Park Myeong Seok <pms@romance.kaist.ac.kr>
10798 o Thomas Parmelan <tom@ankh.fr.eu.org>
10799 o Ollivier Robert <roberto@keltia.freenix.fr>
10800 o Thomas Roessler <roessler@does-not-exist.org>
10801 o Roland Rosenfeld <roland@spinnaker.de>
10802 o TAKIZAWA Takashi <taki@luna.email.ne.jp>
10803 o Allain Thivillon <Allain.Thivillon@alma.fr>
10804 o Gero Treuner <gero@faveve.uni-stuttgart.de>
10805 o Vsevolod Volkov <vvv@lucky.net>
10806 o Ken Weinert <kenw@ihs.com>
10808 Mutt-ng is developed by the following people:
10810 o Andreas Krennmair <ak@synflood.at>
10811 o Nico Golde <nico@ngolde.de>
10812 o Rocco Rutte <pdmef@cs.tu-berlin.de>
10814 The following people have been very helpful to the development of Mutt-ng
10815 (sorted by surnames):
10817 o Christian Gall <cg@cgall.de>
10818 o Iain Lea <iain@bricbrac.de>
10819 o Andreas Kneib <akneib@gmx.net>
10820 o Carsten Schoelzki <cjs@weisshuhn.de>
10821 o Elimar Riesebieter <riesebie@lxtec.de>
10827 Configuration Variables
10829 abort_noattach, abort_noattach
10831 abort_nosubject, abort_nosubject
10833 abort_unmodified, abort_unmodified
10835 agent_string, agent_string
10837 alias_file, alias_file
10839 alias_format, alias_format
10841 allow_8bit, allow_8bit
10843 allow_ansi, allow_ansi
10845 arrow_cursor, arrow_cursor
10847 ascii_chars, ascii_chars
10853 assumed_charset, assumed_charset
10855 attach_format, attach_format
10857 attach_remind_regexp, attach_remind_regexp
10859 attach_sep, attach_sep
10861 attach_split, attach_split
10863 attribution, attribution
10875 bounce_delivered, bounce_delivered
10877 braille_friendly, braille_friendly
10879 certificate_file, certificate_file
10883 check_new, check_new
10885 collapse_unread, collapse_unread
10887 compose_format, compose_format
10889 config_charset, config_charset
10891 confirmappend, confirmappend
10893 confirmcreate, confirmcreate
10895 connect_timeout, connect_timeout
10897 content_type, content_type
10901 crypt_autoencrypt, crypt_autoencrypt
10903 crypt_autopgp, crypt_autopgp
10905 crypt_autosign, crypt_autosign
10907 crypt_autosmime, crypt_autosmime
10909 crypt_replyencrypt, crypt_replyencrypt
10911 crypt_replysign, crypt_replysign
10913 crypt_replysignencrypted, crypt_replysignencrypted
10915 crypt_timestamp, crypt_timestamp
10917 crypt_use_gpgme, crypt_use_gpgme
10919 crypt_verify_sig, crypt_verify_sig
10921 date_format, date_format
10923 debug_level, debug_level
10925 default_hook, default_hook
10929 delete_space, delete_space
10931 delete_untag, delete_untag
10933 digest_collapse, digest_collapse
10935 display_filter, display_filter
10937 dotlock_program, dotlock_program
10939 dsn_notify, dsn_notify
10941 dsn_return, dsn_return
10943 duplicate_threads, duplicate_threads
10947 editor_headers, editor_headers
10949 edit_headers, edit_headers
10951 encode_from, encode_from
10953 entropy_file, entropy_file
10955 envelope_from, envelope_from
10959 fast_reply, fast_reply
10961 fcc_attach, fcc_attach
10963 fcc_clear, fcc_clear
10965 file_charset, file_charset
10969 folder_format, folder_format
10971 followup_to, followup_to
10973 force_buffy_check, force_buffy_check
10975 force_name, force_name
10977 forward_decode, forward_decode
10979 forward_decrypt, forward_decrypt
10981 forward_edit, forward_edit
10983 forward_format, forward_format
10985 forward_quote, forward_quote
10989 gecos_mask, gecos_mask
10995 header_cache, header_cache
10997 header_cache_compress, header_cache_compress
11001 hidden_host, hidden_host
11003 hide_limited, hide_limited
11005 hide_missing, hide_missing
11007 hide_thread_subject, hide_thread_subject
11009 hide_top_limited, hide_top_limited
11011 hide_top_missing, hide_top_missing
11015 honor_followup_to, honor_followup_to
11019 ignore_list_reply_to, ignore_list_reply_to
11021 imap_authenticators, imap_authenticators
11023 imap_check_subscribed, imap_check_subscribed
11025 imap_delim_chars, imap_delim_chars
11027 imap_headers, imap_headers
11029 imap_home_namespace, imap_home_namespace
11031 imap_keepalive, imap_keepalive
11033 imap_list_subscribed, imap_list_subscribed
11035 imap_login, imap_login
11037 imap_mail_check, imap_mail_check
11039 imap_pass, imap_pass
11041 imap_passive, imap_passive
11043 imap_peek, imap_peek
11045 imap_reconnect, imap_reconnect
11047 imap_servernoise, imap_servernoise
11049 imap_user, imap_user
11051 implicit_autoview, implicit_autoview
11055 include_onlyfirst, include_onlyfirst
11057 indent_string, indent_string
11059 index_format, index_format
11063 keep_flagged, keep_flagged
11065 list_reply, list_reply
11069 mailcap_path, mailcap_path
11071 mailcap_sanitize, mailcap_sanitize
11073 maildir_header_cache_verify, maildir_header_cache_verify
11075 maildir_trash, maildir_trash
11077 mail_check, mail_check
11085 max_display_recips, max_display_recips
11087 max_line_length, max_line_length
11091 mbox_type, mbox_type
11093 menu_context, menu_context
11095 menu_move_off, menu_move_off
11097 menu_scroll, menu_scroll
11099 message_format, message_format
11107 mh_seq_flagged, mh_seq_flagged
11109 mh_seq_replied, mh_seq_replied
11111 mh_seq_unseen, mh_seq_unseen
11113 mime_forward, mime_forward
11115 mime_forward_decode, mime_forward_decode
11117 mime_forward_rest, mime_forward_rest
11119 mixmaster, mixmaster
11121 mix_entry_format, mix_entry_format
11125 msgid_format, msgid_format
11127 muttng_bindir, muttng_bindir
11129 muttng_docdir, muttng_docdir
11131 muttng_folder_name, muttng_folder_name
11133 muttng_folder_path, muttng_folder_path
11135 muttng_hcache_backend, muttng_hcache_backend
11137 muttng_pwd, muttng_pwd
11139 muttng_revision, muttng_revision
11141 muttng_sysconfdir, muttng_sysconfdir
11143 muttng_version, muttng_version
11145 narrow_tree, narrow_tree
11149 nntp_ask_followup_to, nntp_ask_followup_to
11151 nntp_ask_x_comment_to, nntp_ask_x_comment_to
11153 nntp_cache_dir, nntp_cache_dir
11155 nntp_catchup, nntp_catchup
11157 nntp_context, nntp_context
11159 nntp_followup_to_poster, nntp_followup_to_poster
11161 nntp_group_index_format, nntp_group_index_format
11163 nntp_host, nntp_host
11165 nntp_inews, nntp_inews
11167 nntp_load_description, nntp_load_description
11169 nntp_mail_check, nntp_mail_check
11171 nntp_mime_subject, nntp_mime_subject
11173 nntp_newsrc, nntp_newsrc
11175 nntp_pass, nntp_pass
11177 nntp_post_moderated, nntp_post_moderated
11179 nntp_reconnect, nntp_reconnect
11181 nntp_save_unsubscribed, nntp_save_unsubscribed
11183 nntp_show_new_news, nntp_show_new_news
11185 nntp_show_only_unread, nntp_show_only_unread
11187 nntp_user, nntp_user
11189 nntp_x_comment_to, nntp_x_comment_to
11191 operating_system, operating_system
11195 pager_context, pager_context
11197 pager_format, pager_format
11199 pager_index_lines, pager_index_lines
11201 pager_stop, pager_stop
11203 pgp_autoinline, pgp_autoinline
11205 pgp_auto_decode, pgp_auto_decode
11207 pgp_check_exit, pgp_check_exit
11209 pgp_clearsign_command, pgp_clearsign_command
11211 pgp_decode_command, pgp_decode_command
11213 pgp_decrypt_command, pgp_decrypt_command
11215 pgp_encrypt_only_command, pgp_encrypt_only_command
11217 pgp_encrypt_sign_command, pgp_encrypt_sign_command
11219 pgp_entry_format, pgp_entry_format
11221 pgp_export_command, pgp_export_command
11223 pgp_getkeys_command, pgp_getkeys_command
11225 pgp_good_sign, pgp_good_sign
11227 pgp_ignore_subkeys, pgp_ignore_subkeys
11229 pgp_import_command, pgp_import_command
11231 pgp_list_pubring_command, pgp_list_pubring_command
11233 pgp_list_secring_command, pgp_list_secring_command
11235 pgp_long_ids, pgp_long_ids
11237 pgp_mime_auto, pgp_mime_auto
11239 pgp_replyinline, pgp_replyinline
11241 pgp_retainable_sigs, pgp_retainable_sigs
11243 pgp_show_unusable, pgp_show_unusable
11245 pgp_sign_as, pgp_sign_as
11247 pgp_sign_command, pgp_sign_command
11249 pgp_sort_keys, pgp_sort_keys
11251 pgp_strict_enc, pgp_strict_enc
11253 pgp_timeout, pgp_timeout
11255 pgp_use_gpg_agent, pgp_use_gpg_agent
11257 pgp_verify_command, pgp_verify_command
11259 pgp_verify_key_command, pgp_verify_key_command
11261 pipe_decode, pipe_decode
11265 pipe_split, pipe_split
11267 pop_authenticators, pop_authenticators
11269 pop_auth_try_all, pop_auth_try_all
11271 pop_delete, pop_delete
11277 pop_mail_check, pop_mail_check
11281 pop_reconnect, pop_reconnect
11287 postponed, postponed
11289 post_indent_string, post_indent_string
11291 preconnect, preconnect
11295 print_command, print_command
11297 print_decode, print_decode
11299 print_split, print_split
11301 prompt_after, prompt_after
11303 query_command, query_command
11307 quote_empty, quote_empty
11309 quote_quoted, quote_quoted
11311 quote_regexp, quote_regexp
11315 read_only, read_only
11323 reply_regexp, reply_regexp
11325 reply_self, reply_self
11331 reverse_alias, reverse_alias
11333 reverse_name, reverse_name
11335 reverse_realname, reverse_realname
11337 rfc2047_parameters, rfc2047_parameters
11339 save_address, save_address
11341 save_empty, save_empty
11343 save_name, save_name
11347 score_threshold_delete, score_threshold_delete
11349 score_threshold_flag, score_threshold_flag
11351 score_threshold_read, score_threshold_read
11355 sendmail_wait, sendmail_wait
11357 send_charset, send_charset
11361 sidebar_boundary, sidebar_boundary
11363 sidebar_delim, sidebar_delim
11365 sidebar_newmail_only, sidebar_newmail_only
11367 sidebar_number_format, sidebar_number_format
11369 sidebar_shorten_hierarchy, sidebar_shorten_hierarchy
11371 sidebar_visible, sidebar_visible
11373 sidebar_width, sidebar_width
11375 signature, signature
11377 signoff_string, signoff_string
11379 sig_dashes, sig_dashes
11381 sig_on_top, sig_on_top
11383 simple_search, simple_search
11385 sleep_time, sleep_time
11387 smart_wrap, smart_wrap
11391 smime_ask_cert_label, smime_ask_cert_label
11393 smime_ca_location, smime_ca_location
11395 smime_certificates, smime_certificates
11397 smime_decrypt_command, smime_decrypt_command
11399 smime_decrypt_use_default_key, smime_decrypt_use_default_key
11401 smime_default_key, smime_default_key
11403 smime_encrypt_command, smime_encrypt_command
11405 smime_encrypt_with, smime_encrypt_with
11407 smime_get_cert_command, smime_get_cert_command
11409 smime_get_cert_email_command, smime_get_cert_email_command
11411 smime_get_signer_cert_command, smime_get_signer_cert_command
11413 smime_import_cert_command, smime_import_cert_command
11415 smime_is_default, smime_is_default
11417 smime_keys, smime_keys
11419 smime_pk7out_command, smime_pk7out_command
11421 smime_sign_command, smime_sign_command
11423 smime_sign_opaque_command, smime_sign_opaque_command
11425 smime_timeout, smime_timeout
11427 smime_verify_command, smime_verify_command
11429 smime_verify_opaque_command, smime_verify_opaque_command
11431 smtp_envelope, smtp_envelope
11433 smtp_host, smtp_host
11435 smtp_pass, smtp_pass
11437 smtp_port, smtp_port
11439 smtp_user, smtp_user
11441 smtp_use_tls, smtp_use_tls
11445 sort_alias, sort_alias
11449 sort_browser, sort_browser
11453 spam_separator, spam_separator
11455 spoolfile, spoolfile
11457 ssl_ca_certificates_file, ssl_ca_certificates_file
11459 ssl_client_cert, ssl_client_cert
11461 ssl_force_tls, ssl_force_tls
11463 ssl_min_dh_prime_bits, ssl_min_dh_prime_bits
11465 ssl_starttls, ssl_starttls
11467 ssl_usesystemcerts, ssl_usesystemcerts
11469 ssl_use_sslv2, ssl_use_sslv2
11471 ssl_use_sslv3, ssl_use_sslv3
11473 ssl_use_tlsv1, ssl_use_tlsv1
11475 status_chars, status_chars
11477 status_format, status_format
11479 status_on_top, status_on_top
11481 strict_mailto, strict_mailto
11483 strict_mime, strict_mime
11485 strict_threads, strict_threads
11487 strip_was, strip_was
11489 strip_was_regex, strip_was_regex
11491 stuff_quoted, stuff_quoted
11495 text_flowed, text_flowed
11497 thorough_search, thorough_search
11499 thread_received, thread_received
11515 uncollapse_jump, uncollapse_jump
11517 use_8bitmime, use_8bitmime
11519 use_domain, use_domain
11533 wrapmargin, wrapmargin
11535 wrap_search, wrap_search
11537 write_bcc, write_bcc
11539 write_inc, write_inc
11541 xterm_icon, xterm_icon
11543 xterm_leave, xterm_leave
11545 xterm_set_titles, xterm_set_titles
11547 xterm_title, xterm_title