The Mutt E-Mail Client by Michael Elkins v0.79, 11 July 1997 ``All mail clients suck. This one just sucks less.'' -me, circa 1995 11.. CCoommmmaanndd lliinnee ooppttiioonnss Running mutt with no arguments will make Mutt attempt to read your spool mailbox. However, it is possible to read other mailboxes and to send messages from the command line as well. -a attach a file to a message -c specify a carbon-copy (Cc) address -F specify an alternate file to read initialization commands -f specify a mailbox to load -h print help on command line options -H specify a draft file from which to read a header and body -i specify a file to include in a message composition -n do not read the system Muttrc -m specify a default mailbox type -p recall a postponed message -R open mailbox in read-only mode -s specify a subject (enclose in quotes if it contains spaces) -v show version number and compile-time definitions -x simulate the mailx(1) compose mode -z exit immediately if there are no messages in the mailbox -Z open the first folder with new message,exit immediately if none To read messages in a mailbox mutt [ -nz ] [ -F _m_u_t_t_r_c ] [ -m _t_y_p_e ] [ -f _m_a_i_l_b_o_x ] To compose a new message mutt [ -n ] [ -F _m_u_t_t_r_c ] [ -a _f_i_l_e ] [ -c _a_d_d_r_e_s_s ] [ -i _f_i_l_e_n_a_m_e ] [ -s _s_u_b_j_e_c_t ] _a_d_d_r_e_s_s [ _a_d_d_r_e_s_s ... ] Mutt also supports a ``batch'' mode to send prepared messages. Simply redirect input from the file you wish to send. For example, mutt -s "data set for run #2" professor@bigschool.edu < ~/run2.dat This command will send a message to ``professor@bigschool.edu'' with a subject of ``data set for run #2''. In the body of the message will be the contents of the file ``~/run2.dat''. 22.. GGeettttiinngg SSttaarrtteedd This section is intended as a brief overview of how to use Mutt. There are many other features which are described elsewhere in the manual. The keybindings described in this section are the defaults as distributed. Your local system administrator may have altered the defaults for your site. You can always type ``?'' in any menu to display the current bindings. 22..11.. MMoovviinngg AArroouunndd iinn MMeennuuss Information is presented in menus, very similar to ELM. Here is a table showing the common keys used to navigate menus in Mutt. j or Down move to the next entry k or Up move to the previous entry z or PageDn go to the next page Z or PageUp go to the previous page = jump to the first entry * jump to the last entry q exit the current menu ? list all keybindings for the current menu 22..22.. EEddiittiinngg IInnppuutt FFiieellddss Mutt has a builtin line editor which is used as the primary way to input textual data such as email addresses or filenames. The keys used to move around while editing are very similar to those of Emacs. ^A move to the start of the line ^B or move back one char ^D delete the char under the cursor ^E move to the end of the line ^F or move forward one char ^G abort ^K delete to the end of the line ^U delete entire line complete filename (only when prompting for a file) recall previous string from history recall next string from history finish editing 22..33.. MMaaiillbbooxx FFoorrmmaattss Mutt supports reading and writing of four different mailbox formats: mbox, MMDF, MH and Maildir. The mailbox type is autodetected, so there is no need to use a flag for different mailbox types. mmbbooxx. This is the most widely used mailbox format for UNIX. All messages are stored in a single file. Each message has a line of the form: From me@cs.hmc.edu Fri, 11 Apr 1997 11:44:56 PST to denote the start of a new message (this is often referred to as the ``From_'' line). MMMMDDFF. This is a variant of the _m_b_o_x format. Each message is surrounded by lines containing ``^A^A^A^A'' (four control-A's). MMHH. A radical departure from _m_b_o_x and _M_M_D_F, a mailbox consists of a directory and each message is stored in a separate file. The filename indicates the message number (however, this is may not correspond to the message number Mutt displays). Deleted messages are renamed with a comma (,) prepended to the filename. NNoottee:: Mutt detects this type of mailbox by looking for either .mh_sequences or .xmhcache (needed to distinguish normal directories from MH mailboxes). MMaaiillddiirr. The newest of the mailbox formats, used by the Qmail MTA (a replacement for sendmail). Similar to _M_H, except that it adds three subdirectories of the mailbox: _t_m_p, _n_e_w and _c_u_r. Filenames for the messages are chosen in such a way they are unique, even when two programs are writing the mailbox over NFS, which means that no file locking is needed. 22..44.. MMaaiillbbooxx SShhoorrttccuuttss There are a number of built in shortcuts which refer to specific mailboxes. These shortcuts can be used anywhere you are prompted for a file or mailbox path. +o ! -- refers to your spool (incoming) mailbox +o > -- refers to your $mbox file +o < -- refers to your $record file +o ~ -- refers to your home directory +o = or + -- refers to your $folder directory 22..55.. RReeaaddiinngg MMaaiill Similar to many other mail clients, there are two modes in which mail is read in Mutt. The first is the index of messages in the mailbox, which is called the ``index'' in Mutt. The second mode is the display of the message contents. This is called the ``pager.'' The next few sections describe the functions provided in each of these modes. 22..55..11.. TThhee MMeessssaaggee IInnddeexx c change-folder change to a different mailbox C copy-message D delete-pattern delete messages matching a pattern d delete-message F flag-message mark as important J next-message K previous-message l limit show messages matching a pattern N mark-as-new mark message as new o sort-mailbox change the current sort method O sort-reverse reverse sort the mailbox q quit save changes and exit s save-message t tag-message u undelete-message v view-attachments x exit abort changes and exit display-message jump-new jump to the next new message $ sync-mailbox save changes to mailbox % display-address show the author's full e-mail address / search ESC / search-reverse ^L redraw clear and redraw the screen ^T tag-pattern tag messages matching a pattern ^U undelete-pattern undelete messages matching a pattern 22..55..11..11.. SSttaattuuss FFllaaggss In addition to who sent the message and the subject, a short summary of the disposition of each message is printed beside the message number. Zero or more of the following ``flags'' may appear, which mean: D message is deleted K contains a PGP public key M requires mailcap to view N message is new O message is old P message is PGP encrypted r message has been replied to S message is PGP signed ! message is flagged * message is tagged Some of the status flags can be turned on or off using +o sseett--ffllaagg (default: w) +o cclleeaarr--ffllaagg (default: W) 22..55..22.. TThhee PPaaggeerr By default, Mutt uses its builtin pager to display the body of messages. The pager is very similar to the Unix program _l_e_s_s though not nearly as featureful. go down one line display the next page (or next message if at the end of a message) - go back to the previous page n display the next message ? show keybindings / search for a regular expression (pattern) In addition, many of the functions from the _i_n_d_e_x are available in the pager, such as _d_e_l_e_t_e_-_m_e_s_s_a_g_e or _c_o_p_y_-_m_e_s_s_a_g_e (this is one advantage over using an external pager to view messages). 22..66.. UUssiinngg TTaaggss Sometimes it is desirable to perform an operation on a group of messages all at once rather than one at a time. An example might be to save messages to a mailing list to a separate folder, or to delete all messages with a given subject. To tag all messages matching a pattern, use the tag-pattern function, which is bound to ``control-T'' by default. Or you can select individual messages by hand using the ``tag-message'' function, which is bound to ``t'' by default. Once you have tagged the desired messages, you can use the ``tag- prefix'' operator, which is the ``;'' (semicolon) key by default. When the ``tag-prefix'' operator is used, the nneexxtt operation will be applied to all tagged messages if that operation can be used in that manner. 22..77.. HHaannddlliinngg MMaaiilliinngg LLiissttss Mutt has a few configuration options that make dealing with large amounts of mail easier. The first thing you must do is to let Mutt know what addresses you consider to be mailing lists (technically this does not have to be a mailing list, but that is what it is most often used for). This is accomplished through the use of the ``lists'' command in your muttrc. Now that Mutt knows what your mailing lists are, it can do several things, the first of which is the ability to show the list name in the _i_n_d_e_x menu display. This is useful to distinguish between personal and list mail in the same mailbox. In the ``hdr_format'' variable, the escape ``%L'' will return the string ``To '' when ``list'' appears in the ``To'' field, and ``Cc '' when it appears in the ``Cc'' field (otherwise it returns the name of the author). Often times the ``To'' and ``Cc'' fields in mailing list messages tend to get quite large. Most people do not bother to remove the author of the message they are reply to from the list, resulting in two or more copies being sent to that person. The ``list-reply'' function, which by default is bound to ``L'' in the _i_n_d_e_x menu and _p_a_g_e_r, helps reduce the clutter by only replying to the mailing list addresses instead of all recipients. The other method some mailing list admins use is to generate a ``Reply-To'' field which points back to the mailing list address rather than the author of the message. This can create problems when trying to reply directly to the author in private, since most mail clients will automatically reply to the address given in the ``Reply- To'' field. Mutt uses the ``reply_to'' variable to help decide which address to use. If set, you will be prompted as to whether or not you would like to use the address given in the ``Reply-To'' field, or reply directly to the address given in the ``From'' field. When unset, the ``Reply-To'' field will be used when present. Lastly, Mutt has the ability to ``sort'' the mailbox into ``threads''. A thread is a group of messages which all relate to the same subject. This is usually organized into a tree-like structure where a message and all of its replies are represented graphically. If you've ever used a threaded news client, this is the same concept. It makes dealing with large volume mailing lists easier because you can easily delete uninteresting threads and quickly find topics of value. 22..88.. TThhrreeaaddeedd MMooddee When the mailbox is ``sorted'' by _t_h_r_e_a_d_s, there are a few additional functions available in the _i_n_d_e_x and _p_a_g_e_r modes. ^D delete-thread delete all messages in the current thread ^N next-thread jump to the start of the next thread ^P previous-thread jump to the start of the previous thread See also: ``$strict_threads''. 22..99.. MMiisscceellllaanneeoouuss FFuunnccttiioonnss bbrroowwssee--uurrll (default: ^B) Uses the regular expression set by ``url_regexp'' to extract all matching URLs in the header _a_n_d body of the current message. If more than one match occurs, the _u_r_l menu is brought up and the user may select which to browse. The program used to view the URL is specified by the ``web_browser'' variable (see for an example of calling different programs based on the URL method). ccrreeaattee--aalliiaass (default: a) Creates a new alias based upon the current message (or prompts for a new one). Once editing is complete, an ``alias'' command is added to the file specified by the ``$alias_file'' variable for future use. ddiissppllaayy--hheeaaddeerrss (default: h) Toggles the weeding of message header fields specified by ``ignore'' commands. eenntteerr--ccoommmmaanndd (default: ``:'') This command is used to execute any command you would normally put in a configuration file. A common use is to check the settings of variables, or in conjunction with ``macros'' to change settings on the fly. lliisstt--rreeppllyy (default: L) Reply to the current or tagged message(s) by extracting any addresses which match the addresses given by the ``lists'' command. Using this when replying to messages posted to mailing lists help avoid duplicate copies being sent to the author of the message you are replying to. ttooggggllee--qquuootteedd (default: T) The _p_a_g_e_r uses the ``$quote_regexp'' variable to detect quoted text when displaying the body of the message. This function toggles the display of the quoted material in the message. It is particularly useful when are interested in just the response and there is a large amount of quoted text in the way. 22..1100.. SSeennddiinngg MMaaiill The following bindings are available in the _i_n_d_e_x for sending messages. m compose a new message r reply to sender g reply to all recipients f forward message b bounce (remail) message L reply to mailing list address Mutt will then enter the _c_o_m_p_o_s_e menu and prompt you for the recipients to place on the ``To:'' header field. Next, it will ask you for the ``Subject:'' field for the message, providing a default if you are replying to or forwarding a message. Once you have finished editing the body of your mail message, you are returned to the _c_o_m_p_o_s_e menu. The following options are available: a attach-file attach a file d edit-description edit description on attachment D detach-file detach a file t edit-type edit the To field c edit-cc edit the Cc field b edit-bcc edit the Bcc field s send-message send the message S edit-subject edit the Subject f edit-fcc specify an ``Fcc'' mailbox p pgp-menu select PGP options (US version only) P postpone-message postpone this message until later q quit quit (abort) sending the message i ispell check spelling (if available on your system) 22..1111.. PPoossttppoonniinngg MMaaiill At times it is desirable to delay sending a message that you have already begun to compose. When the _p_o_s_t_p_o_n_e_-_m_e_s_s_a_g_e function is used in the _c_o_m_p_o_s_e menu, the body of your message and information about attachments are stored in the mailbox specified by the ``$postponed'' variable. This means that you can recall the message even if you exit Mutt and then restart it at a later time. Once a message is posponed, there are several ways to resume it. From the command line you can use the ``-p'' option, or if you _c_o_m_p_o_s_e a new message from the _i_n_d_e_x or _p_a_g_e_r you will be prompted if postponed messages exist. If multiple messages are currently postponed, the _p_o_s_t_p_o_n_e_d menu will pop up and you can select which message you would like to resume. 33.. CCoonnffiigguurraattiioonn While the default configuration (or ``preferences'') make Mutt usable right out of the box, it is often desirable to tailor Mutt to suit your own tastes. When Mutt is first invoked, it will attempt to read the ``system'' configuration file (defaults set by your local system administrator), unless the ``-n'' command line option is specified. This file is typically /usr/local/share/Muttrc or /usr/local/lib/Muttrc. Next, it looks for a file in your home directory named .muttrc. In this file is where you place commands to configure Mutt. 33..11.. SSyynnttaaxx ooff IInniittiiaalliizzaattiioonn FFiilleess An initialization file consists of a series of commands, each on its own line. The hash mark, or pound sign (``#''), is used as a ``comment'' character. You can use it to annotate your initialization file. All text after the comment character to the end of the line is ignored. For example, my_hdr X-Disclaimer: Why are you listening to me? # This is a comment \ quotes the next character, just as in shells such as bash and zsh. For example, if want to put quotes ``"'' inside of a string, you can use ``\'' to force the next character to be a literal instead of interpreted character. set realname='Michael \'MuttDude\' Elkins' ``\\'' means to insert a literal ``\'' into the line. ``\n'' and ``\r'' have their usual C meanings of linefeed and carriage-return, respectively. It is also possible to substitute the output of a Unix command in an initialization file. This is accomplished by enclosing the command in backquotes (``). For example, my_hdr X-Operating-System: `uname -a` The output of the Unix command ``uname -a'' will be substituted before the line is parsed. Note that since initialization files are line oriented, only the first line of output from the Unix command will be substituted. 33..22.. AAlliiaasseess Usage: alias _k_e_y _a_d_d_r_e_s_s [ , _a_d_d_r_e_s_s, ... ] It's usually very cumbersome to remember or type out the address of someone you are communicating with. Mutt allows you to create ``aliases'' which map a short string to a full address. NNoottee:: if you want to create an alias for a group (by specifying more than one address), you mmuusstt separate the addresses with a comma (``,''). To remove an alias or aliases: unalias _a_d_d_r [ _a_d_d_r _._._. ] alias muttdude me@cs.hmc.edu (Michael Elkins) alias theguys manny, moe, jack 33..33.. SSppeecciiffyy aann aalltteerrnnaattee ee--mmaaiill aaddddrreessss Usage: alternates _a_d_d_r_e_s_s [ _a_d_d_r_e_s_s ... ] When displaying the contents of a mailbox, Mutt attempts to indicate messages which are addressed to you (as opposed to mail from lists). Often times you might receive mail at an address that Mutt doesn't understand as being yours. The alternates command allows you to specify _a_l_t_e_r_n_a_t_e addresses where you receive mail. If your network is such that you can receive mail at any number of hosts in a subnetwork, it can be burdensome to list all possible addresses. In this case, you can make use of the wildcard character (``*'') to match any possibility. The wildcard character mmuusstt be the first character in the domain part of the address (the part _a_f_t_e_r the at sign (``@''). For example, alternates joe@*.bigcompany.com This example would make any host in the ``bigcompany.com'' domain match. 33..44.. CChhaannggiinngg tthhee ddeeffaauulltt kkeeyy bbiinnddiinnggss Usage: bind _m_a_p _k_e_y _f_u_n_c_t_i_o_n This command allows you to change the default key bindings (operation invoked when pressing a key). _k_e_y is the key (or key sequence) you wish to bind. To specify a control character, use the sequence _\_C_x, where _x is the letter of the control character (for example, to specify control-A use ``\Ca''). Note that the case of _x as well as _\_C is ignored, so that _\_C_A_, _\_C_a_, _\_c_A and _\_c_a are all equivalent. In addition, _k_e_y may consist of: \t tab \r carriage return \n newline \e escape up up arrow down down arrow left left arrow right right arrow pageup Page Up pagedown Page Down backspace Backspace delete Delete insert Insert _k_e_y does not need to be enclosed in quotes unless it contains a space (`` ''). _f_u_n_c_t_i_o_n specifies which action to take when _k_e_y is pressed. _m_a_p specifies in which menu the binding belongs. The currently defined maps are: +o alias +o attach +o browser +o index +o compose +o pager +o url You will probably only want to customize the bindings for _i_n_d_e_x and _p_a_g_e_r. 33..55.. SSeettttiinngg vvaarriiaabblleess bbaasseedd uuppoonn mmaaiillbbooxx Usage: folder-hook _p_a_t_t_e_r_n _c_o_m_m_a_n_d It is often desirable to change settings based on which mailbox you are reading. The folder-hook command provides a method by which you can execute any configuration command. _p_a_t_t_e_r_n is a regular expression specifying which mailboxes to execute _c_o_m_m_a_n_d for (NNOOTTEE:: _c_o_m_m_a_n_d MUST be enclosed in either single or double quotes, or Mutt will be unable to parse the command). If a mailbox matches multiple folder-hook's, they are executed in the order given in the muttrc. Note that the settings are _n_o_t restored when you leave the mailbox. For example, a command action to perform is to change the sorting method based upon the mailbox being read: folder-hook mutt "set sort=threads" However, the sorting method is not restored to its previous value when reading a different mailbox. To specify a _d_e_f_a_u_l_t command, use the pattern ``.'': folder-hook . "set sort=date-sent" 33..66.. SSppeecciiffyyiinngg aalltteerrnnaattee llooccaall hhoossttss Usage: localsite _a_d_d_r_e_s_s [ _a_d_d_r_e_s_s _._._. ] Mutt gives you the ability to use a different signature file based on whether you are sending a message to a local organization or to a remote site. The localsite command allows you to specify hosts that are to be considered part of your local organization, thus using the ``local_sig'' variable. 33..77.. KKeeyybbooaarrdd mmaaccrrooss Usage: macro _m_e_n_u _k_e_y _s_e_q_u_e_n_c_e Macros are useful when you would like a single key to perform a series of actions. When you press _k_e_y in menu _m_e_n_u, Mutt will behave as if you had typed _s_e_q_u_e_n_c_e. So if you have a common sequence of commands you type, you can create a macro to execute those commands with a single key. 33..88.. UUssiinngg ccoolloorr aanndd mmoonnoo vviiddeeoo aattttrriibbuutteess Usage: color _o_b_j_e_c_t _f_o_r_e_g_r_o_u_n_d _b_a_c_k_g_r_o_u_n_d [ _r_e_g_e_x_p ] If your terminal supports color, you can spice up Mutt by creating your own color scheme. To define the color of an object (type of information), you must specify both a foreground color aanndd a background color (it is not possible to only specify one or the other). _o_b_j_e_c_t can be one of: +o attachment +o body (match _r_e_g_e_x_p in the body of messages) +o bold (hiliting bold patterns in the body of messages) +o error (error messages printed by Mutt) +o header (match _r_e_g_e_x_p in the message header) +o hdrdefault (default color of the message header in the pager) +o indicator (arrow or bar used to indicate the current item in a menu) +o markers (the ``+'' markers at the beginning of wrapped lines in the pager) +o message (informational messages) +o normal +o quoted (text preceded by ``>'' in the body of a message) +o search (hiliting of words in the pager) +o signature +o status (mode lines used to display info about the mailbox or message) +o tilde (the ``~'' used to pad blank lines in the pager) +o tree (thread tree drawn in the message index and attachment menu) +o underline (hiliting underlined patterns in the body of messages) _f_o_r_e_g_r_o_u_n_d and _b_a_c_k_g_r_o_u_n_d can be one of the following: +o white +o black +o green +o magenta +o blue +o cyan +o yellow +o red _f_o_r_e_g_r_o_u_n_d can optionally be prefixed with the keyword bright to make the foreground color boldfaced (e.g., brightred). If your terminal does not support color, it is still possible change the video attributes through the use of the ``mono'' command: Usage: mono _<_o_b_j_e_c_t_> _<_a_t_t_r_i_b_u_t_e_> where _a_t_t_r_i_b_u_t_e is one of the following: +o none +o bold +o underline +o reverse 33..99.. IIggnnoorriinngg ((wweeeeddiinngg)) uunnwwaanntteedd mmeessssaaggee hheeaaddeerrss Usage: [un]ignore _p_a_t_t_e_r_n [ _p_a_t_t_e_r_n ... ] Messages often have many header fields added by automatic processing systems, or which may not seem useful to display on the screen. This command allows you to specify header fields which you don't normally want to see. You do not need to specify the full header field name. For example, ``ignore content-'' will ignore all header fields that begin with the pattern ``content-''. To remove a previously added token from the list, use the ``unignore'' command. Note that if you do ``ignore x-'' it is not possible to ``unignore x-mailer,'' for example. The ``unignore'' command does nnoott make Mutt display headers with the given pattern. ``unignore *'' will remove all tokens from the ignore list. 33..1100.. MMaaiilliinngg lliissttss Usage: [un]lists _a_d_d_r_e_s_s [ _a_d_d_r_e_s_s ... ] Mutt has a few nice features for ``handling mailing lists''. In order to take advantage of them, you must specify which addresses belong to mailing lists. It is important to note that you should nneevveerr specify the domain name ( the part after the ``@'') with the lists command. You should only specify the ``mailbox'' portion of the address (the part before the ``@''). For example, if you've subscribed to the Mutt mailing list, you will receive mail addressed to _m_u_t_t_-_u_s_e_r_s_@_c_s_._h_m_c_._e_d_u. So, to tell Mutt that this is a mailing list, you would add ``lists mutt-users'' to your initialization file. The ``unlists'' command is to remove a token from the list of mailing- lists. Use ``unlists *'' to remove all tokens. 33..1111.. UUssiinngg MMuullttiippllee ssppooooll mmaaiillbbooxxeess Usage: mbox-hook _p_a_t_t_e_r_n _m_a_i_l_b_o_x This command is used to move read messages from a specified mailbox to a different mailbox automatically when you quit or change folders. _p_a_t_t_e_r_n is a regular expression specifying the mailbox to treat as a ``spool'' mailbox and _m_a_i_l_b_o_x specifies where mail should be saved when read. Unlike some of the other _h_o_o_k commands, only the _f_i_r_s_t matching pattern is used (it is not possible to save read mail in more than a single mailbox). 33..1122.. DDeeffiinniinngg mmaaiillbbooxxeess wwhhiicchh rreecceeiivvee mmaaiill Usage: mailboxes _f_i_l_e_n_a_m_e [ _f_i_l_e_n_a_m_e ... ] This command specifies folders which can receive mail and which will be checked for new messages. By default, the main menu status bar displays how many of these folders have new messages. When changing folders, pressing _s_p_a_c_e will cycle through folders with new mail. 33..1133.. UUsseerr ddeeffiinneedd hheeaaddeerrss Usage: my_hdr _s_t_r_i_n_g unmy_hdr _f_i_e_l_d [ _f_i_e_l_d ... ] The ``my_hdr'' command allows you to create your own header fields which will be added to every message you send. For example, if you would like to add an ``Organization:'' header field to all of your outgoing messages, you can put the command my_hdr Organization: A Really Big Company, Anytown, USA in your .muttrc. NNoottee:: space characters are _n_o_t allowed between the keyword and the colon (``:''). The standard for electronic mail (RFC822) says that space is illegal there, so Mutt enforces the rule. If you would like to add a header field to a single message, you should either set the ``edit_hdrs'' variable, or use the _e_d_i_t_-_h_e_a_d_e_r_s function (default: ``E'') in the send-menu so that you can edit the header of your message along with the body. To remove user defined header fields, use the ``unmy_hdr'' command. You may specify an asterisk (``*'') to remove all header fields, or the fields to remove. For example, to remove all ``To'' and ``Cc'' header fields, you could use: unmy_hdr to cc 33..1144.. SSppeecciiffyy DDeeffaauulltt SSaavvee FFiilleennaammeess Usage: save-hook _r_e_g_e_x_p _f_i_l_e_n_a_m_e Mutt attempts to determine a default filename when saving message based upon defined ``mailing lists'' or who the message is from. The save-hook command is used to override this default. Messages which are from addresses matching _r_e_g_e_x_p will use the _f_i_l_e_n_a_m_e as the default. For example, if you want to save mail from a specific person, you could add save-hook me@(turing\.)?cs\.hmc.edu +elkins or if you wanted to specify a default for all mail from a certain domain, you could use save-hook aol\.com +spam 33..1155.. CChhaannggee sseettttiinnggss bbaasseedd uuppoonn mmeessssaaggee rreecciippiieennttss Usage: send-hook _r_e_g_e_x_p _c_o_m_m_a_n_d This command can be using to execute arbitrary configuration commands based upon recipients of the message. _r_e_g_e_x_p is a regular expression matching the desired address. _c_o_m_m_a_n_d is executed when _r_e_g_e_x_p matches recipients of the message. When multiple matches occur, commands are executed in the order they are specified in the muttrc. Example: send-hook mutt "set mime_fwd signature=''" NNoottee:: the send-hook's are only executed ONCE after getting the initial list of recipients. Adding a recipient after replying or editing the message will NOT cause any send-hook to be executed. 33..1166.. SSeettttiinngg vvaarriiaabblleess Usage: set [no]_v_a_r_i_a_b_l_e[=_v_a_l_u_e] [ _v_a_r_i_a_b_l_e ... ] This command is used to set (and unset) ``configuration variables''. There are four basic types of variables: boolean, number, string and quadoption. _b_o_o_l_e_a_n variables can be _s_e_t (true) or _u_n_s_e_t (false). _n_u_m_b_e_r variables can be assigned a positive integer value. _s_t_r_i_n_g variables consist of any number of printable characters. _s_t_r_i_n_g_s must be enclosed in quotes if they contain spaces or tabs. You may also use the ``C'' escape sequences \\nn and \\tt for newline and tab, respectively. _q_u_a_d_o_p_t_i_o_n variables are used to control whether or not to be prompted for certain actions, or to specify a default action. A value of _y_e_s will cause the action to be carried out automatically as if you had answered yes to the question. Similarly, a value of _n_o will cause the the action to be carried out as if you had answered ``no.'' A value of _a_s_k_-_y_e_s will cause a prompt with a default answer of ``yes'' and _a_s_k_-_n_o will provide a default answer of ``no.'' Prefixing a variable with ``no'' will unset it. Example: set noaskbcc. For _b_o_o_l_e_a_n variables, you may optionally prefix the variable name with inv to toggle the value (on or off). This is useful when writing macros. Example: set invsmart_wrap. Using the enter-command function in the _i_n_d_e_x menu, you can query the value of a variable by prefixing the name of the variable with a question mark: set ?allow_8bit The question mark is actually only required for boolean variables. 33..1166..11.. RReeaaddiinngg iinniittiiaalliizzaattiioonn ccoommmmaannddss ffrroomm aannootthheerr ffiillee Usage: source _f_i_l_e_n_a_m_e This command allows the inclusion of initialization commands from other files. For example, I place all of my aliases in ~/.mail_aliases so that I can make my ~/.muttrc readable and keep my aliases private. If the filename begins with a tilde (``~''), it will be expanded to the path of your home directory. 33..1177.. CCoonnffiigguurraattiioonn vvaarriiaabblleess 33..1177..11.. aabboorrtt__uunnmmooddiiffiieedd Type: quadoption Default: yes If set to _y_e_s, composition will automatically abort after editing the message body if no changes are made to the file (this check only happens after the _f_i_r_s_t edit of the file). When set to _n_o, composition will never be aborted. 33..1177..22.. aalliiaass__ffiillee Type: string Default: ~/.muttrc The default file in which to save aliases created by the ``create- alias'' function. NNoottee:: Mutt will not automatically source this file; you must explicitly use the ``source'' command for it to be executed. 33..1177..33.. aallllooww__88bbiitt Type: boolean Default: set Controls whether 8-bit data is converted to 7-bit using either Quoted- Printable or Base64 encoding when sending mail. 33..1177..44.. aarrrrooww__ccuurrssoorr Type: boolean Default: unset When set, an arrow (``->'') will be used to indicate the current entry in menus instead of hiliting the whole line. On slow network or modem links this will make response faster because there is less that has to be redrawn on the screen when moving to the next or previous entries in the menu. 33..1177..55.. aasskkbbcccc Type: boolean Default: unset If set, Mutt will prompt you for blind-carbon-copy (Bcc) recipients before editing an outgoing message. 33..1177..66.. aasskkcccc Type: boolean Default: unset If set, Mutt will prompt you for carbon-copy (Cc) recipients before editing the body of an outgoing message. 33..1177..77.. aattttrriibbuuttiioonn Type: format string Default: "On %M %N, %n wrote:" This is the string that will precede a message which has been included in a reply. For a full listing of defined escape sequences (%M, etc.), see the section on ``hdr_format''. 33..1177..88.. aauuttooeeddiitt Type: boolean Default: unset When set, Mutt will skip the initial send-menu and allow you to immediately begin editing the body of your message when replying to another message. The send-menu may still be accessed once you have finished editing the body of your message. If the ``edit_hdrs'' variable is also set, the initial prompts in the send-menu are always skipped, even when composing a new message. 33..1177..99.. aauuttoo__ttaagg Type: boolean Default: unset When set, functions in the _i_n_d_e_x menu which affect a message will be applied to all tagged messages (if there are any). When unset, you must first use the tag-prefix function (default: ";") to make the next function apply to all tagged messages. 33..1177..1100.. cchhaarrsseett Type: string Default: iso-8859-1 Character set your terminal uses to display and enter textual data. This information is required to properly label outgoing messages which contain 8-bit characters so that receiving parties can display your messages in the correct character set. 33..1177..1111.. cchheecckk__nneeww Type: boolean Default: set NNoottee:: this option only affects _m_a_i_l_d_i_r and _M_H style mailboxes. When _s_e_t, Mutt will check for new mail delivered while the mailbox is open. Especially with MH mailboxes, this operation can take quite some time since it involves scanning the directory and checking each file to see if it has already been looked at. If _c_h_e_c_k___n_e_w is _u_n_s_e_t, no check for new mail is performed while the mailbox is open. 33..1177..1122.. ccooppyy Type: quadoption Default: yes This variable controls whether or not copies of your outgoing messages will be saved for later references. Also see ``record'', ``save_name'', ``force_name'' and ``save-hook''. 33..1177..1133.. ddaattee__ffoorrmmaatt Type: string Default: "!%a, %b %d, %Y at %I:%M:%S%p" This variable controls the format of the date printed by the ``%d'' sequence in ``hdr_format''. This is passed to the _s_t_r_f_t_i_m_e call to process the date. See the man page for _s_t_r_f_t_i_m_e_(_3_) for the proper syntax. Unless the first character in the string is a bang (``!''), the month and week day names are expanded according to the locale specified in the variable ``locale''. If the first character in the string is a bang, the bang is discarded, and the month and week day names in the rest of the string are expanded in the _C locale (that is in US English). 33..1177..1144.. ddeelleettee Type: quadoption Default: ask-yes Controls whether or not messages are really deleted when closing or synchronizing a mailbox. If set to _y_e_s, messages marked for deleting will automatically be purged without prompting. If set to _n_o, messages marked for deletion will be kept in the mailbox. 33..1177..1155.. ddssnn__nnoottiiffyy Type: string Default: "failure,delay" If Mutt was compiled with support for DSN, this variable sets the request for when notification is returned. The string consists of a comma separated list (no spaces!) of one or more of the following: _n_e_v_e_r, to never request notification, _f_a_i_l_u_r_e, to request notification on transmission failure, _d_e_l_a_y, to be notified of message delays, _s_u_c_c_e_s_s, to be notified of successful transmission. 33..1177..1166.. ddssnn__rreettuurrnn Type: string Default: "hdrs" This variable controls how much of your message is returned in DSN messages. It may be set to either _h_d_r_s to return just the message header, or _f_u_l_l to return the full message. 33..1177..1177.. eeddiitt__hhddrrss Type: boolean Default: unset This option allows you to edit the header of your outgoing messages along with the body of your message. 33..1177..1188.. eeddiittoorr Type: String Default: value of environment variable $VISUAL, $EDITOR, or "vi" This variable specifies which editor to use when composing messages. 33..1177..1199.. eessccaappee Type: string Default: ~ Escape character to use for functions in the builtin editor. 33..1177..2200.. ffaasstt__rreeppllyy Type: boolean Default: unset When set, the initial prompt for recipients and subject are skipped when replying to messages. NNoottee:: this variable has no effect when the ``autoedit'' variable is set. 33..1177..2211.. ffcccc__aattttaacchh Type: boolean Default: set This variable controls whether or not attachments on outgoing messages are saved along with the main body of your message. 33..1177..2222.. ffoollddeerr Type: String Default: ~/Mail Specifies where your mailboxes can be found. 33..1177..2233.. ffoorrccee__nnaammee Type: Boolean Default: unset This variable is similar to ``save_name'', except that Mutt will store a copy of your outgoing message by the username of the address you are sending to even if that mailbox does not exist. Also see the ``record'' variable. 33..1177..2244.. ffoorrww__ffoorrmmaatt Type: format string Default: "[%a: %s]" This variable controls the default subject when forwarding a message. It uses the same format sequences as the ``hdr_format'' variable. 33..1177..2255.. hhddrr__ffoorrmmaatt Type: format string Default: "%4C %Z %{%b %d} %-15.15L (%4l) %s" This variable allows you to customize the message index display to your personal taste. ``Format strings'' are similar to the strings used in the ``C'' function printf to format output (see the man page for more detail). The following sequences are defined in Mutt: %a address of the author %c number of characters (bytes) in the message %C current message number %d date and time of the message in the format specified by ``date_format'' %f entire From: line (address + real name) %F entire From: line, unless from self %i message-id of the current message %l number of lines in the message %L list-from function %n real (personal) name of author %s subject of the message %S status of the message (N/D/!/*/r) %T total number of message in the mailbox %t the appropriate character from the $to_chars string %u user (login) name of the author %Z message status flags %{fmt} the date and time of the message is converted to sender's time zone, and ``fmt'' is expanded by the system call ``strftime''; a leading bang disables locales %[fmt] the date and time of the message is converted to the local time zone, and ``fmt'' is expanded by the system call ``strftime''; a leading bang disables locales %>X right justify the rest of the string and pad with character "X" %|X pad to the end of the line with character "X" 33..1177..2266.. hheeaaddeerr Type: boolean Default: unset When set, this variable causes Mutt to include the _f_u_l_l header of the message you are replying to into the edit buffer. 33..1177..2277.. hheellpp Type: boolean Default: set When set, help lines describing the bindings for the major functions provided by each menu are displayed on the first line of the screen. _N_o_t_e_: The binding will not be displayed correctly if the function is bound to a sequence rather than a single keystroke. Also, the help line may not be updated if a binding is changed while Mutt is running. Since this variable is primarily aimed at new users, neither of these should present a major problem. 33..1177..2288.. hhiissttoorryy Type: number Default: 10 This variable controls the size (in number of strings remembered) of the string history buffer. 33..1177..2299.. hhoolldd Type: boolean Default: set If set, this causes Mutt nnoott to move read messages from your ``spoolfile'' file to your ``mbox'' file. 33..1177..3300.. hhoossttnnaammee Type: string Default: varies Specifies the hostname to use after the ``@'' in local e-mail addresses. This overrides the compile time definition obtained from /etc/resolv.conf. 33..1177..3311.. iinn__rreeppllyy__ttoo Type: format string Default: "%i; from \"%n\" on %{!%a, %b %d, %Y at %I:%M:%S%p}" This specifies the format of the In-Reply-To: header field added when replying to a message. 33..1177..3322.. iinncclluuddee Type: quadoption Default: ask-yes Controls whether or not a copy of the message(s) you are replying to is included in your reply. 33..1177..3333.. iinnddeenntt__ssttrr Type: format string Default: "> " Specifies the string to prepend to each line of text quoted in a message to which you are replying. You are strongly encouraged not to change this value, as it tends to agitate the more fanatical netizens. 33..1177..3344.. iissppeellll Type: string Default: "ispell" How to invoke ispell (GNU's spell-checking software). 33..1177..3355.. llooccaall__ssiigg Type: string Default: none The filename of your signature file which should be copied into the message buffer when the recipients are all local. NNoottee:: setting this variable overrides the value of ``signature''. Also see the ``remote_sig'' variable. 33..1177..3366.. llooccaallee Type: string Default: "C" The locale used by _s_t_r_f_t_i_m_e_(_3_) to format dates. Legal values are the strings your system accepts for the locale variable _L_C___T_I_M_E. 33..1177..3377.. mmaaiillccaapp__ppaatthh Type: string Default: $MAILCAPS or ~/.mailcap:/usr/local/share/mailcap:/etc/mailcap:/usr/etc/mailcap:/usr/local/etc/mailcap This variable specifies which files took consult when attempting to display MIME bodies not directly supported by Mutt. 33..1177..3388.. mmaarrkk__oolldd Type: Boolean Default: set Controls whether or not Mutt makes the distinction between _n_e_w messages and _o_l_d uunnrreeaadd messages. By default, Mutt will mark new messages as old if you exit a mailbox without reading them. The next time you start Mutt, the messages will show up with an "O" next to them in the index menu, indicating that they are old. In order to make Mutt treat all unread messages as new only, you can unset this variable. 33..1177..3399.. mmaarrkkeerrss Type: boolean Default: set Controls the display of wrapped lines in the internal pager. If set, a ``+'' marker is displayed at the beginning of wrapped lines. Also see the ``smart_wrap'' variable. 33..1177..4400.. mmaasskk Type: string Default: "^(\.\.$|[^.])" A regular expression used in the file browser. Files whose names don't match this mask will not be shown. 33..1177..4411.. mmbbooxx Type: String Default: +inbox This specifies the folder into which read mail in your ``spoolfile'' folder will be appended. 33..1177..4422.. mmbbooxx__ttyyppee Type: String Default: mbox The default mailbox type used when creating new folders. May be any of mbox, MMDF, MH and Maildir. 33..1177..4433.. mmeettoooo Type: boolean Default: unset If set, Mutt will nnoott remove your address from the list of recipients when replying to a message. 33..1177..4444.. mmiimmee__ffwwdd Type: boolean Default: unset When set, the message you are forwarding will be attached as a separate MIME part instead of included in the main body of the message. This is useful for forwarding MIME messages so the receiver can properly view the message. 33..1177..4455.. mmoovvee Type: quadoption Default: ask-no If the ``hold'' variable is unset, you will be asked to confirm moving read messages from your spool mailbox to your ``mbox'' mailbox. 33..1177..4466.. nnoo__hhddrrss Type: boolean Default: unset When set, the header fields normally added by the ``my_hdr'' command are not created. This variable _m_u_s_t be set before composing a new message or replying in order to take effect. If unset, the user defined header fields are added to every new message (except when sending in batch mode). 33..1177..4477.. ppaaggeerr Type: string Default: internal This variable specifies which pager you would like to use to view messages. 33..1177..4488.. ppaaggeerr__ccoonntteexxtt Type: number Default: 0 This variable controls the number of lines of context that are given when displaying the next or previous page in the internal-pager. By default, Mutt will display the line after the last one on the screen at the top of the next page (0 lines of context). 33..1177..4499.. ppaaggeerr__ffoorrmmaatt Type: format string Default: "%S %C/%T: %-20.20n %s" This variable controls the format of the one-line message ``status'' displayed before each message in either the internal or an external pager. The valid sequences are listed in the ``hdr_format'' section. 33..1177..5500.. ppaaggeerr__ssttoopp Type: boolean Default: unset When set, the internal-pager will nnoott move to the next message when you are at the end of a message and invoke the _n_e_x_t_-_p_a_g_e function. 33..1177..5511.. ppggpp Type: string Default: system dependent This variable allows you to override the compile time definition of where the PGP binary resides on your system. 33..1177..5522.. ppggpp__aauuttoossiiggnn Type: boolean Default: unset Setting this variable will cause Mutt to always attempt to PGP/MIME sign outgoing messages. This can be overridden by use of the _p_g_p_- _m_e_n_u, when signing is not required or encryption is requested as well. 33..1177..5533.. ppggpp__eennccrryyppttsseellff Type: boolean Default: set If set, the PGP _+_e_n_c_r_y_p_t_t_o_s_e_l_f flag is used when encrypting messages. 33..1177..5544.. ppggpp__rreeppllyyppggpp Type: boolean Default: unset If set, automatically PGP encrypt replies to messages which are encrypted. 33..1177..5555.. ppggpp__ssiiggnn__aass Type: string Default: unset If you have more than one key pair, this option allows you to specify which of your private keys to use. It is recommended that you use the keyid form to specify your key (e.g., ``0xABCDEFGH''). 33..1177..5566.. ppggpp__ttiimmeeoouutt Type: number Default: 500 The number of seconds after which a cached passphrase will expire if not used. 33..1177..5577.. ppiippee__ddeeccooddee Type: boolean Default: unset Used in connection with the _p_i_p_e_-_m_e_s_s_a_g_e command. When unset, Mutt will pipe the messages without any preprocessing. When set, Mutt will weed headers and will attempt to PGP/MIME decode the messages first. 33..1177..5588.. ppiippee__sseepp Type: string Default: newline The separator to add between messages when piping a list of tagged messages to an external Unix command. 33..1177..5599.. ppiippee__sspplliitt Type: boolean Default: unset Used in connection with the _p_i_p_e_-_m_e_s_s_a_g_e command and the ``tag- prefix'' operator. If this variable is unset, when piping a list of tagged messages Mutt will concatenate the messages and will pipe them as a single folder. When set, Mutt will pipe the messages one by one. In both cases the the messages are piped in the current sorted order, and the ``pipe_sep'' separator is added after each message. 33..1177..6600.. ppooiinntt__nneeww Type: boolean Default: set This variable controls whether mutt will position you at the first new (or unread) message in the mailbox when the mailbox is first opened. 33..1177..6611.. ppoopp__ddeelleettee Type: boolean Default: unset If set, Mutt will delete successfully downloaded messages from the POP server when using the fetch-mail function. When unset, Mutt will download messages but also leave them on the POP server. 33..1177..6622.. ppoopp__hhoosstt Type: string Default: none The name or address of your POP3 server. 33..1177..6633.. ppoopp__ppaassss Type: string Default: unset Specifies the password for you POP account. If unset, Mutt will prompt you for your password when you invoke the fetch-mail function. WWaarrnniinngg: you should only use this option when you are on a fairly secure machine, because the superuser can read your muttrc even if you are the only one who can read the file. 33..1177..6644.. ppoopp__ppoorrtt Type: number Default: 110 This variable specifies which port your POP server is listening on. 33..1177..6655.. ppoopp__uusseerr Type: string Default: login name on local system Your login name on the POP3 server. 33..1177..6666.. ppoosstt__iinnddeenntt__ssttrr Type: format string Default: none Similar to the ``attribution'' variable, Mutt will append this string after the inclusion of a message which is being replied to. 33..1177..6677.. ppoossttppoonnee Type: quadoption Default: ask-yes Controls whether or not messages are saved in the ``postponed'' mailbox when you elect not to send immediately. 33..1177..6688.. ppoossttppoonneedd Type: string Default: ~/postponed Mutt allows you to indefinitely ``postpone sending a message'' which you are editing. When you choose to postpone a message, Mutt saves it in the folder specified by this variable. Also see the ``postpone'' variable. 33..1177..6699.. pprriinntt Type: quadoption Default: ask-no Controls whether or not Mutt asks for confirmation before printing. This is useful for people (like me) who accidentally hit ``p'' often. 33..1177..7700.. pprriinntt__ccmmdd Type: string Default: lpr This specifies the command that should be used to print messages. 33..1177..7711.. pprroommpptt__aafftteerr Type: boolean Default: set If you use an _e_x_t_e_r_n_a_l ``pager'', setting this variable will cause Mutt to prompt you for a command when the pager exits rather than returning to the index menu. If unset, Mutt will return to the index menu when the external pager exits. 33..1177..7722.. qquuoottee__rreeggeexxpp Type: string Default: "^[>|#:}] " A regular expression used in the internal-pager to determine quoted sections of text in the body of a message. 33..1177..7733.. rreeaadd__iinncc Type: number Default: 10 If set to a value greater than 0, Mutt will display which message it is currently on when reading a mailbox. The message is printed after _r_e_a_d___i_n_c messages have been read (e.g., if set to 25, Mutt will print a message when it reads message 25, and then again when it gets to message 50). This variable is meant to indicate progress when reading large mailboxes which may take some time. When set to 0, only a single message will appear before the reading the mailbox. Also see the ``write_inc'' variable. 33..1177..7744.. rreeaallnnaammee Type: string Default: GCOS field from /etc/passwd This variable specifies what "real" or "personal" name should be used when sending messages. 33..1177..7755.. rreeccaallll Type: quadoption Default: ask-yes Controls whether or not you are prompted to recall postponed messages when composing a new message. Also see ``postponed'' 33..1177..7766.. rreeccoorrdd Type: string Default: none This specifies the file into which your outgoing messages should be appended. (This is meant as the primary method for saving a copy of your messages, but another way to do this is using the ``my_hdr'' command to create a _B_c_c_: field with your email address in it.) The value of _$_r_e_c_o_r_d is overridden by the ``force_name'' and ``save_name'' variables. 33..1177..7777.. rreemmoottee__ssiigg Type: string Default: none The filename of the signature file which should be appended to the message buffer when the destination of the message is a remote host. NNoottee:: setting this variable overrides the value of ``signature''. Also see the ``local_sig'' variable. 33..1177..7788.. rreeppllyy__ttoo Type: quadoption Default: ask-yes If set, Mutt will ask you if you want to use the address listed in the Reply-To header field when replying to a message. If you answer no, it will use the address in the From: header field instead. This option is useful for reading a mailing list that sets the Reply-To header field to the list address and you want to send a private message to the author of a message. 33..1177..7799.. rreessoollvvee Type: boolean Default: set When set, the cursor will be automatically advanced to the next (possibly undeleted) message whenever a command that modifies the current message is executed. 33..1177..8800.. rreevveerrssee__aalliiaass Type: boolean Default: unset This variable controls whether or not mutt will display the "personal" name from your aliases in the index menu if it finds an alias that matches the message's sender. For example, if you have the following alias: alias juser abd30425@somewhere.net (Joe User) and then you receive mail which contains the following header: From: abd30425@somewhere.net It would be displayed in the index menu as ``Joe User'' instead of ``abd30425@somewhere.net.'' This is useful when the person's e-mail address is not human friendly (like Compu$erve addresses). 33..1177..8811.. ssaavvee__eemmppttyy Type: boolean Default: set When unset, mailboxes which contain no saved messages will be removed when closed (the exception is ``spoolfile'' which is never removed). If set, mailboxes are never removed. 33..1177..8822.. ssaavvee__nnaammee Type: boolean Default: unset This variable controls how copies of outgoing messages are saved. When set, a check is made to see if a mailbox specified by the recipient address exists (this is done by searching for a ``save- hook'' or a mailbox in the ``folder'' directory with the _u_s_e_r_n_a_m_e part of the recipient address). If the mailbox exists, the outgoing message will be saved to that mailbox, otherwise the message is saved to the ``record'' mailbox. Also see the ``force_name'' variable. 33..1177..8833.. sseennddmmaaiill Type: string Default: /usr/lib/sendmail -t -oi -oem Specifies the program and arguments used to deliver mail sent by Mutt. 33..1177..8844.. sshheellll Type: string Default: retrieved from passwd file Command to use when spawning a subshell. 33..1177..8855.. ssiigg__ddaasshheess Type: boolean Default: set If set, a line containing ``-- '' will be inserted before your ``signature''. It is strongly recommended that you not unset this variable unless your ``signature'' contains just your name. The reason for this is because many software packages use ``-- \n'' to detect your signature. For example, Mutt has the ability to hilite the signature in a different color in the builtin pager. 33..1177..8866.. ssiiggnnaattuurree Type: string Default: ~/.signature Specifies the filename of your signature, which is appended to all outgoing messages. If the filename ends with a pipe (``|''), it is assumed that filename is a shell command and input should be read from its stdout. NNoottee:: This variable is overridden by both the ``remote_sig'' and ``local_sig'' commands. 33..1177..8877.. ssmmaarrtt__wwrraapp Type: boolean Default: set Controls the display of lines longer then the screen width in the internal pager. If set, long lines are wrapped at a word boundary. If unset, lines are simply wrapped at the screen edge. Also see the ``markers'' variable. 33..1177..8888.. ssoorrtt Type: string Default: date-sent Specifies how to sort messages in the _i_n_d_e_x menu. Valid values are +o date-sent +o date-received +o from +o mailbox-order (unsorted) +o subject +o threads You may optionally use the reverse- prefix to specify reverse sorting order (example: set sort=reverse-date-sent). NNoottee:: there is no ``reverse-threads'' sorting available. 33..1177..8899.. ssoorrtt__bbrroowwsseerr Type: string Specifies how to sort entries in the file browser. By default, the entries are sorted alphabetically. Valid values: +o date +o alpha (alphabetically) You may optionally use the reverse- prefix to specify reverse sorting order (example: set sort_browser=reverse-date). 33..1177..9900.. ssppoooollffiillee Type: string Default: most likely /var/mail/$USER or /usr/spool/mail/$USER If your spool mailbox is in a non-default place where Mutt cannot find it, you can specify its location with this variable. Mutt will automatically set this variable to the value of the environment variable $MAIL if it is not set. 33..1177..9911.. ssttaattuuss__ffoorrmmaatt Type: string Default: "-%r-Mutt: %f [%?M/?%m msgs, %?n new, ?%?d del, ?%?F flag, ?%?t tag, ?%?p post, ?%?b inc, ?%l bytes]---(%s)%|-" Controls the format of the status line displayed in the _i_n_d_e_x menu. This string is similar to ``hdr_format'', but has its own set of printf()-like sequences: %b number of mailboxes with new mail %d number of deleted messages %h local hostname %f the full pathname of the current mailbox %l size (in bytes) of the current mailbox %m the number of messages in the mailbox %M the number of messages shown (i.e., which match the current limit) %n number of new messages in the mailbox %p number of postponed messages %r modified/read-only indicator %s current sorting mode %t number of tagged messages %v Mutt version string %>X right justify the rest of the string and pad with "X" %|X pad to the end of the line with "X" It is also possible to optionally print a variable if it is non-zero. For example, you might want to display a message about how many new messages there are only if there actually are new messages. To optionally print a variable, use: %?...? Immediately after the first question mark (?) you should place the normal sequence from the above table (_w_i_t_h_o_u_t the %). You may then add an optional string to it. Here are some examples: %?n new? %?t tagged? %?m shown? This will print ``N new'' iiff ``N'' is not zero, otherwise it will ignore everything between the question marks that surround it. The same goes for the other examples on that line. 33..1177..9922.. ssttaattuuss__oonn__ttoopp Type: boolean Default: unset Setting this variable causes the ``status_format'' to be displayed on the first line of the screen rather than near the bottom. 33..1177..9933.. ssttrriicctt__tthhrreeaaddss Type: boolean Default: unset If set, threading will only make use of the ``In-Reply-To'' and ``References'' fields when ``sorting'' by message threads. By default, messages with the same subject are grouped together in ``pseudo threads.'' This may not always be desirable, such as in a personal mailbox where you might have several unrelated messages with the subject ``hi'' which will get grouped together. 33..1177..9944.. tthhrreeaadd__cchhaarrss Type: string Default: unset Overrides the characters used to display the thread trees when the current sort method is _t_h_r_e_a_d_s. The first character is used for "lower left corner", the second for "left tee", the third for "horizontal line" and the fourth for "vertical line". 33..1177..9955.. ttiillddee Type: boolean Default: unset When set, the internal-pager will pad blank lines to the bottom of the screen with a tilde (~). 33..1177..9966.. ttiimmeeoouutt Type: number Default: 600 This variable controls the _n_u_m_b_e_r _o_f _s_e_c_o_n_d_s Mutt will wait for a key to be pressed in the main menu before timing out and checking for new mail. A value of zero or less will cause Mutt not to ever time out. 33..1177..9977.. ttmmppddiirr Type: string Default: /tmp This variable allows you to specify where Mutt will place its temporary files needed for displaying and composing messages. 33..1177..9988.. ttoo__cchhaarrss Type: string Default: " +TCF" Controls the character used to indicate mail addressed to you. The first character is the one used when the mail is NOT addressed to your address (default: space). The second is used when you are the only recipient of the message (default: +). The third is when your address appears in the TO header field, but you are not the only recipient of the message (default: T). The fourth character is used when your address is specified in the CC header field, but you are not the only recipient. The fifth character is used to indicate mail that was sent by _y_o_u. 33..1177..9999.. uurrll__rreeggeexxpp Type: string Default: "((http|ftp)://|mailto:)[^ \n\t]*[^., \n\t>]" Specifies the regular expression used to extract URLs from message bodies in the browse-url menu. 33..1177..110000.. uussee__mmaaiillccaapp Type: quad-option Default: ask If set to ``yes'', always try to use a mailcap entry to display a MIME part that Mutt can't understand what to do with. If ``ask'', prompt as to whether to display as text or to use a mailcap entry. If ``no'', always view unsupported MIME types as text. 33..1177..110011.. vveerriiffyy__ssiigg Type: quad-option Default: yes If ``yes'', always attempt to verify PGP/MIME signatures. If ``ask'', ask whether or not to verify the signature. If ``no'', never attempt to verify PGP/MIME signatures. 33..1177..110022.. vviissuuaall Type: string Default: $VISUAL Specifies the visual editor to invoke when the _v command is given in the builtin editor. 33..1177..110033.. wweebb__bbrroowwsseerr Type: string Default: unset Command to start a textmode WWW browser on a URL. This command will be invoked by the browse-url function. The sequence ``%s'' is replaced by the URL. If no ``%s'' is given, the URL will be appended to the command. Example: set web_browser="lynx %s" 33..1177..110044.. wwrriittee__iinncc Type: number Default: 10 When writing a mailbox, a message will be printed every _w_r_i_t_e___i_n_c messages to indicate progress. If set to 0, only a single message will be displayed before writing a mailbox. Also see the ``read_inc'' variable. 44.. SSeeaarrcchhiinngg Many of Mutt's commands allow you to specify a pattern to match (limit, tag-pattern, delete-pattern, etc.). There are several ways to select messages: ~b PATTERN messages which contain PATTERN in the message body ~c USER messages carbon-copied to USER ~d [MIN]-[MAX] messages with ``date-sent'' in a Date range ~f USER messages originating from USER ~i ID message which match ID in the ``Message-ID'' field ~r [MIN]-[MAX] messages with ``date-received'' in a Date range ~s SUBJECT messages having SUBJECT in the ``Subject'' field. ~t USER messages addressed to USER all all messages del deleted messages flag flagged messages new new messages old old messages read read messages repl messages which have been replied to tag tagged messages thread the current thread of messages unread unread messages M-N messages in the range ``M'' through ``N'' M- messages ``M'' and above -N messages ``N'' and below Logical AND is performed by specifying more than one criterion. For example: ~t mutt ~f elkins would select messages which contain the word ``mutt'' in the list of recipients aanndd that have the word ``elkins'' in the ``From'' header field. Mutt also recognizes the following operators to create more complex search patterns: +o ! -- logical NOT operator +o | -- logical OR operator +o () -- logical grouping operator Here is an example illustrating a complex search pattern. This pattern will select all messages which do not contain ``mutt'' in the ``To'' or ``Cc'' field and which are from ``elkins''. !(~t mutt|~c mutt) ~f elkins 44..11.. SSeeaarrcchhiinngg bbyy DDaattee All dates mmuusstt be in DD/MM/YY format (month and year are optional, defaulting to the current month and year). An example of a valid range of dates is: Limit to messages matching: ~d 20/1/95-31/10 If you omit the minimum (first) date, and just specify ``-DD/MM/YY'', all messages _b_e_f_o_r_e the given date will be selected. If you omit the maximum (second) date, and specify ``DD/MM/YY-'', all messages _a_f_t_e_r the given date will be selected. If you specify a single date with no dash (``-''), only messages sent on the given date will be selected. 55.. MMuutttt''ss MMIIMMEE SSuuppppoorrtt Quite a bit of effort has been made to make Mutt the premier text-mode MIME MUA. Every effort has been made to provide the functionality that the discerning MIME user requires, and the conformance to the standards wherever possible. When configuring Mutt for MIME, there are two extra types of configuration files which Mutt uses. One is the mime.types file, which contains the mapping of file extensions to IANA MIME types. The other is the mailcap file, which specifies the external commands to use for handling specific MIME types. 55..11.. MMIIMMEE TTyyppee ccoonnffiigguurraattiioonn wwiitthh mime.types When you add an attachment to your mail message, Mutt searches your personal mime.types file at ${HOME}/.mime.types, and then the system mime.types file at SHAREDIR/mime.types. SHAREDIR is defined at compilation time, and can be determined by typing mutt -v from the command line. The mime.types file consist of lines containing a MIME type and a space separated list of extensions. For example: application/postscript ps eps application/pgp pgp audio/x-aiff aif aifc aiff A sample mime.types file comes with the mutt distribution, and should contain most of the MIME types you are likely to use. If mutt can not determine the mime type by the extension of the file you attach, it will look at the file. If the file is free of binary information, mutt will assume that the file is plain text, and mark it as text/plain. If the file contains binary information, then mutt will mark it as application/octect-stream. You can change the MIME type that mutt assigns to an attachment by using the edit-type command from the compose menu (default: ^T). When typing in the MIME type, mutt requires that major type be one of the 5 types: application, text, image, video, or audio. If you attempt to use a different major type, mutt will abort the change. 55..22.. MMIIMMEE VViieewweerr ccoonnffiigguurraattiioonn wwiitthh mailcap Mutt supports RFC 1524 MIME Configuration, in particular the Unix specific format specified in Appendix A of RFC 1524. This file format is commonly refered to as the mailcap format. Many MIME compliant programs utilize the mailcap format, allowing you to specify handling for all MIME types in one place for all programs. Programs known to use this format include Netscape, MosaicX, lynx and metamail. In order to handle various MIME types that mutt can not handle internally, mutt parses a series of external configuration files to find an external handler. The default search string for these files is a colon delimited list set to ${HOME}/.mailcap:SHAREDIR/mailcap:/etc/mailcap:/usr/etc/mailcap:/usr/local/etc/mailcap where $HOME is your home directory and SHAREDIR is the shared direc- tory defined at compile time (visible from mutt -v). In particular, the metamail distribution will install a mailcap file, usually as /usr/local/etc/mailcap, which contains some baseline entries. 55..22..11.. TThhee BBaassiiccss ooff tthhee mmaaiillccaapp ffiillee A mailcap file consists of a series of lines which are comments, blank, or definitions. A comment line consists of a # character followed by anything you want. A blank line is blank. A definition line consists of a content type, a view command, and any number of optional fields. Each field of a definition line is divided by a semicolon ';' character. The content type is specified in the MIME standard type/subtype method. For example, text/plain, text/html, image/gif, etc. In addition, the mailcap format includes two formats for wildcards, one using the special '*' subtype, the other is the implicit wild, where you only include the major type. For example, image/*, or video, will match all image types and video types, respectively. The view command is a Unix command for viewing the type specified. There are two different types of commands supported. The default is to send the body of the MIME message to the command on stdin. You can change this behaviour by using %s as a parameter to your view command. This will cause mutt to save the body of the MIME message to a temporary file, and then call the view command with the %s replaced by the name of the temporary file. In both cases, mutt will turn over the terminal to the view program until the program quits, at which time mutt will remove the temporary file if it exists. So, in the simplest form, you can send a text/plain message to the external pager more on stdin: text/plain; more Or, you could send the message as a file: text/plain; more %s Perhaps you would like to use lynx to interactively view a text/html message: text/html; lynx %s In this case, lynx does not support viewing a file from stdin, so you must use the %s syntax. _N_o_t_e_: _S_o_m_e _o_l_d_e_r _v_e_r_s_i_o_n_s _o_f _l_y_n_x _c_o_n_t_a_i_n _a _b_u_g _w_h_e_r_e _t_h_e_y _w_i_l_l _c_h_e_c_k _t_h_e _m_a_i_l_c_a_p _f_i_l_e _f_o_r _a _v_i_e_w_e_r _f_o_r _t_e_x_t_/_h_t_m_l_. _T_h_e_y _w_i_l_l _f_i_n_d _t_h_e _l_i_n_e _w_h_i_c_h _c_a_l_l_s _l_y_n_x_, _a_n_d _r_u_n _i_t_. _T_h_i_s _c_a_u_s_e_s _l_y_n_x _t_o _c_o_n_t_i_n_o_u_s_l_y _s_p_a_w_n _i_t_s_e_l_f _t_o _v_i_e_w _t_h_e _o_b_j_e_c_t_. On the other hand, maybe you don't want to use lynx interactively, you just want to have it convert the text/html to text/plain, then you can use: text/html; lynx -dump %s | more Perhaps you wish to use lynx to view text/html files, and a pager on all other text formats, then you would use the following: text/html; lynx %s text/*; more This is the simplest form of a mailcap file. 55..22..22.. AAddvvaanncceedd mmaaiillccaapp UUssaaggee 55..22..22..11.. OOppttiioonnaall FFiieellddss In addition to the required content-type and view command fields, you can add semi-colon ';' separated fields to set flags and other options. Mutt recognizes the following optional fields: ccooppiioouussoouuttppuutt This flag tells mutt that the command passes possibly large amounts of text on stdout. This causes mutt to invoke a pager (either the internal pager or the external pager defined by the pager variable) on the output of the view command. One could use this to replace the pipe to more in the lynx -dump example in the Basic section: text/html; lynx -dump %s ; copiousoutput This will cause lynx to format the text/html output as text/plain and mutt will use your standard pager to display the results. nneeeeddsstteerrmmiinnaall Mutt recognizes this flag, but does nothing with it as it assumes that an entry requires the terminal. This flag is more useful for programs which don't run in a terminal such as Netscape and MosaicX. ccoommppoossee==<> Mutt recognizes this flag, but doesn't currently use it, instead calling the edit command to create messages instead. pprriinntt==<> This flag specifies the command to use to print a specific MIME type. Mutt supports this from the attachment and compose menus. eeddiitt==<> This flag specifies the command to use to edit a specific MIME type. Mutt supports this from the compose menu, and also uses it to compose new attachments. Mutt will default to the defined editor for text attachmments. nnaammeetteemmppllaattee==<> This field specifies the format for the file denoted by %s in the command fields. Certain programs will require a certain file extension, for instance, to correctly view a file. For instance, lynx will only interpret a file as text/html if the file ends in .html. So, you would specify lynx as a text/html viewer with a line in the mailcap file like: text/html; lynx %s; nametemplate=%s.html tteesstt==<> This field specifies a command to run to test whether this mailcap entry should be used. The command is defined with the command expansion rules defined in the next section. If the command returns 0, then the test passed, and mutt uses this entry. If the command returns non-zero, then the test failed, and mutt continues searching for the right entry. _N_o_t_e_: _t_h_e _c_o_n_t_e_n_t_-_t_y_p_e _m_u_s_t _m_a_t_c_h _b_e_f_o_r_e _m_u_t_t _p_e_r_f_o_r_m_s _t_h_e _t_e_s_t_. For example: text/html; netscape -remote 'openURL(%s)' ; test=RunningX text/html; lynx %s In this example, mutt will run the program RunningX which will return 0 if the X Window manager is running, and non-zero if it isn't. If RunningX returns 0, then mutt will call netscape to dis- play the text/html object. If RunningX doesn't return 0, then mutt will go on to the next entry and use lynx to display the text/html object. 55..22..22..22.. SSeeaarrcchh OOrrddeerr When searching for an entry in the mailcap file, mutt will search for the most useful entry for its purpose. For instance, if you are attempting to print an image/gif, and you have the following entries in your mailcap file, mutt will search for an entry with the print command: image/*; xv %s image/gif; ; print= anytopnm %s | pnmtops | lpr; \ nametemplate=%s.gif Mutt will skip the image/* entry and use the image/gif entry with the print command. In addition, you can use this with ``Autoview'' to denote two commands for viewing an attachment, one to be viewed automatically, the other to be viewed interactively from the attachment menu. In addition, you can then use the test feature to determine which viewer to use interactively depending on your environment. text/html; netscape -remote 'openURL(%s)' ; test=RunningX text/html; lynx %s; nametemplate=%s.html text/html; lynx -dump %s; nametemplate=%s.html; copiousoutput For ``Autoview'', mutt will choose the third entry because of the copiousoutput tag. For interactive viewing, mutt will run the program RunningX to determine if it should use the first entry. If the pro- gram returns non-zero, mutt will use the second entry for interactive viewing. 55..22..22..33.. CCoommmmaanndd EExxppaannssiioonn The various commands defined in the mailcap files are passed to the /bin/sh shell using the system() function. Before the command is passed to /bin/sh -c, it is parsed to expand various special parameters with information from mutt. The keywords mutt expands are: %%ss As seen in the basic mailcap section, this variable is expanded to a filename specified by the calling program. This file contains the body of the message to view/print/edit or where the composing program should place the results of composition. In addition, the use of this keyword causes mutt to not pass the body of the message to the view/print/edit program on stdin. %%tt Mutt will expand %t to the text representation of the content type of the message in the same form as the first parameter of the mailcap definition line, ie text/html or image/gif. %%{{<>}} Mutt will expand this to the value of the specified parameter from the Content-Type: line of the mail message. For instance, if Your mail message contains: Content-Type: text/plain; charset=iso-8859-1 then mutt will expand %{charset} to iso-8859-1. The default meta- mail mailcap file uses this feature to test the charset to spawn an xterm using the right charset to view the message. This will be replaced by a % Mutt does not currently support the %F and %n keywords specified in RFC 1524. The main purpose of these parameters is for multipart mes- sages, which is handled internally by mutt. 55..22..33.. EExxaammppllee mmaaiillccaapp ffiilleess This mailcap file is fairly simple and standard: ______________________________________________________________________ # I'm always running X :) video/*; xanim %s > /dev/null image/*; xv %s > /dev/null # I'm always running netscape (if my computer had more memory, maybe) text/html; netscape -remote 'openURL(%s)' ______________________________________________________________________ This mailcap file shows quite a number of examples: ______________________________________________________________________ # Use xanim to view all videos Xanim produces a header on startup, # send that to /dev/null so I don't see it video/*; xanim %s > /dev/null # Send html to a running netscape by remote text/html; netscape -remote 'openURL(%s)'; test=RunningNetscape # If I'm not running netscape but I am running X, start netscape on the # object text/html; netscape %s; test=RunningX # Else use lynx to view it as text text/html; lynx %s # This version would convert the text/html to text/plain text/html; lynx -dump %s; copiousoutput # enriched.sh converts text/enriched to text/html and then uses # lynx -dump to convert it to text/plain text/enriched; enriched.sh ; copiousoutput # I use enscript to print text in two columns to a page text/*; more %s; print=enscript -2Gr %s # Netscape adds a flag to tell itself to view jpegs internally image/jpeg;xv %s; x-mozilla-flags=internal # Use xv to view images if I'm running X # In addition, this uses the \ to extend the line and set my editor # for images image/*;xv %s; test=RunningX; \ edit=xpaint %s # Convert images to text using the netpbm tools image/*; (anytopnm %s | pnmscale -xysize 80 46 | ppmtopgm | pgmtopbm | pbmtoascii -1x2 ) 2>&1 ; copiousoutput # Send excel spreadsheets to my NT box application/ms-excel; open.pl %s ______________________________________________________________________ 55..33.. UUssiinngg MMIIMMEE iinn MMuutttt There are three areas/menus in mutt which deal with MIME, they are the pager (while viewing a message), the attachment menu and the compose menu. 55..33..11.. VViieewwiinngg MMIIMMEE mmeessssaaggeess iinn tthhee ppaaggeerr When you select a message from the index and view it in the pager, mutt decodes the message to a text representation. Mutt internally supports a number of MIME types, including text/plain, text/enriched, message/rfc822, and message/news. In addition, the export controlled version of mutt recognizes a variety of PGP MIME types, including PGP/MIME and application/pgp. Mutt will denote attachments with a couple lines describing them. These lines are of the form: [-- Attachment #1: Description --] [-- Type: text/plain, Encoding: 7bit, Size: 10000 --] Where the Description is the description or filename given for the attachment, and the Encoding is one of 7bit/8bit/quoted-print- able/base64/binary. If mutt cannot deal with a MIME type, it will display a message like: [-- image/gif is unsupported (use 'v' to view this part) --] 55..33..22.. TThhee AAttttaacchhmmeenntt MMeennuu attachment menu for a message. The attachment menu displays a list of the attachments in a message. From the attachment menu, one can save, print, pipe, and view attachments. You can view attachments as text, or view them using the mailcap viewer definition. See the help on the attachment menu for more information. 55..33..33.. TThhee CCoommppoossee MMeennuu The compose menu is the menu you see before you send a message. It allows you to edit the recipient list, the subject, and other aspects of your message. It also contains a list of the attachments of your message, including the main body. From this menu, you can print, copy, filter, edit, compose, and rename an attachment, as well as modifying the attachment information, noteably the type, encoding and description. Attachments appear as follows: - 1 /tmp/mutt.pdxrs056.56360.3 [text/plain, 7bit, 1K] 2 ~/src/mutt-0.74.tar.gz [applica/x-gunzip, base64, 359K] The '-' denotes that mutt will delete the file after sending the message. It can be toggled with the toggle-unlink command (default: u). The next field is the filename, which can be changed with the rename-file command (default: R). The next field is the MIME content- type, and can be changed with the edit-type command (default: ^T). The next field is the encoding for the attachment, which allows a binary message to be encoded for transmission on 7bit links. It can be changed with the edit-encoding command (default: ^E). The next field is the size of the attachment, rounded to kilobytes or megabytes. The final field is the description of the attachment, and can be changed with the edit-description command (default: d). 55..44.. MMIIMMEE AAuuttoovviieeww In addition to explicitly telling mutt to view an attachment with the MIME viewer defined in the mailcap file, mutt has support for automatically viewing MIME attachments while in the pager. To work, you must define a viewer in the mailcap file which uses the copiousoutput option to denote that it is non-interactive. Usually, you also use the entry to convert the attachment to a text representation which you can view in the pager. You then use the auto_view muttrc command to list the content-types that you wish to view automatically. For instance, if you set auto_view to: auto_view text/html text/enriched application/x-gunzip application/postscript image/gif application/x-tar-gz Mutt could use the following mailcap entries to automatically view attachmments of these types. text/html; lynx -dump %s; copiousoutput; nametemplate=%s.html text/enriched; enriched.sh ; copiousoutput image/*; anytopnm %s | pnmscale -xsize 80 -ysize 50 | ppmtopgm | pgmtopbm | pbmtoascii ; copiousoutput application/x-gunzip; gzcat; copiousoutput application/x-tar-gz; gunzip -c %s | tar -tf - ; copiousoutput application/postscript; ps2ascii %s; copiousoutput 66.. OOppttiioonnaall ffeeaattuurreess 66..11.. PPOOPP33 SSuuppppoorrtt If Mutt was compiled with POP3 support (by running the _c_o_n_f_i_g_u_r_e script with the _-_-_e_n_a_b_l_e_-_p_o_p flag), it has the ability to fetch your mail from a remote server for local browsing. When you invoke the _f_e_t_c_h_-_m_a_i_l function (default: G), Mutt attempts to connect to ``pop_host'' and authenticate by logging in as ``pop_user''. After the connection is established, you will be prompted for your password on the remote system. Once you have been authenticated, Mutt will fetch all your new mail and place it in the local ``spoolfile''. After this point, Mutt runs exactly as if the mail had always been local. 66..22.. DDeelliivveerryy SSttaattuuss NNoottiiffiiccaattiioonn ((DDSSNN)) SSuuppppoorrtt RFC1894 defines a set of MIME content types for relaying information about the status of electronic mail messages. These can be thought of as ``return receipts.'' Berkeley sendmail 8.7.x and 8.8.x currently has some command line options in which the mail client can make requests as to what type of status messages should be returned. To support this, there are two variables. ``dsn_notify'' is used to request receipts for different results (such as failed message, message delivered, etc.). ``dsn_return'' requests how much of your message should be returned with the receipt (headers or full message). Refer to the man page on sendmail for more details on DSN. 77.. MMiisscceellllaannyy 77..11.. CCooppyyrriigghhtt Mutt is Copyright (C) 1996,1997 Michael R. Elkins This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 77..22.. AAcckknnoowwlleeddggeemmeennttss Kari Hurrta co-developed the original MIME parsing code back in the ELM-ME days. The following people have been very helpful to the development of Mutt: Francois Berjon , Aric Blumer , John Capo , Liviu Daia , David DeSimone , Nickolay N. Dudorov , Michael Finken , Sven Guckes , Mark Holloman , Andreas Holzmann , David Jeske , Christophe Kalt , Felix von Leitner (a.k.a ``Fefe'') , Brandon Long , Lars Marowsky-Bree , Thomas ``Mike'' Michlmayr , David O'Brien , Clint Olsen , Park Myeong Seok , Thomas Parmelan , Ollivier Robert , Allain Thivillon , Ken Weinert 77..33.. AAbboouutt tthhiiss ddooccuummeenntt This document was written in SGML, and then rendered using the LinuxDoc-SGML package. For more information, see the LinuxDoc-SGML Home Page .