+ The Mutt Next Generation E-Mail Client
- T\bTh\bhe\be M\bMu\but\btt\bt N\bNe\bex\bxt\bt G\bGe\ben\bne\ber\bra\bat\bti\bio\bon\bn E\bE-\b-M\bMa\bai\bil\bl C\bCl\bli\bie\ben\bnt\bt
+ Andreas Krennmair
- by Andreas Krennmair <ak@synflood.at> and others
- originally based on _\bm_\bu_\bt_\bt by Michael Elkins <me@cs.hmc.edu> and others
+ <ak@synflood.at>
- version devel
+ Michael Elkins
- A\bAb\bbs\bst\btr\bra\bac\bct\bt
+ <me@cs.hmc.edu>
- Michael Elinks on mutt, circa 1995: ``All mail clients suck. This one just
- sucks less.'' - Sven Guckes on mutt, ca. 2003: ``But it still sucks!''
+ version devel-r541
- _\b1_\b. _\bI_\bn_\bt_\br_\bo_\bd_\bu_\bc_\bt_\bi_\bo_\bn
+ Abstract
- _\b1_\b._\b1 _\bO_\bv_\be_\br_\bv_\bi_\be_\bw
+ Michael Elinks on mutt, circa 1995: ``All mail clients suck. This one just
+ sucks less.''
- M\bMu\but\btt\bt-\b-n\bng\bg is a small but very powerful text-based MIME mail client. Mutt-ng is
- highly configurable, and is well suited to the mail power user with advanced
- features like key bindings, keyboard macros, mail threading, regular expression
- searches and a powerful pattern matching language for selecting groups of mes-
- sages.
+ Sven Guckes on mutt, ca. 2003: ``But it still sucks!''
- This documentation additionally contains documentation to M\bMu\but\btt\bt-\b-N\bNG\bG, a fork from
- Mutt with the goal to fix all the little annoyances of Mutt, to integrate all
- the Mutt patches that are floating around in the web, and to add other new fea-
- tures. Features specific to Mutt-ng will be discussed in an extra section.
- Don't be confused when most of the documentation talk about Mutt and not Mutt-
- ng, Mutt-ng contains all Mutt features, plus many more.
+ --------------------------------------------------------------------------
- _\b1_\b._\b2 _\bM_\bu_\bt_\bt_\b-_\bn_\bg _\bH_\bo_\bm_\be _\bP_\ba_\bg_\be
+ Table of Contents
- http://www.muttng.org
+ 1. Introduction
- _\b1_\b._\b3 _\bM_\ba_\bi_\bl_\bi_\bn_\bg _\bL_\bi_\bs_\bt_\bs
+ 1. Overview
- +\bo mutt-ng-users@lists.berlios.de -- This is where the mutt-ng user support
- happens.
+ 2. Mutt-ng Home Page
- The Mutt Next Generation E-Mail Client 1
+ 3. Mailing Lists
- The Mutt Next Generation E-Mail Client 2
+ 4. Software Distribution Sites
- +\bo mutt-ng-devel@lists.berlios.de -- The development mailing list for mutt-ng
+ 5. IRC
- _\b1_\b._\b4 _\bS_\bo_\bf_\bt_\bw_\ba_\br_\be _\bD_\bi_\bs_\bt_\br_\bi_\bb_\bu_\bt_\bi_\bo_\bn _\bS_\bi_\bt_\be_\bs
+ 6. Weblog
- So far, there are no official releases of Mutt-ng, but you can download daily
- snapshots from http://mutt-ng.berlios.de/snapshots/
+ 7. Copyright
- _\b1_\b._\b5 _\bI_\bR_\bC
+ 8. Manual Conventions
- Visit channel _\b#_\bm_\bu_\bt_\bt_\bn_\bg on irc.freenode.net (www.freenode.net) to chat with other
- people interested in Mutt-ng.
+ 2. Getting Started
- _\b1_\b._\b6 _\bW_\be_\bb_\bl_\bo_\bg
+ 1. Basic Concepts
- If you want to read fresh news about the latest development in Mutt-ng, and get
- informed about stuff like interesting, Mutt-ng-related articles and packages
- for your favorite distribution, you can read and/or subscribe to our Mutt-ng
- development weblog.
+ 1.1. Screens and Menus
- _\b1_\b._\b7 _\bC_\bo_\bp_\by_\br_\bi_\bg_\bh_\bt
+ 1.2. Configuration
- Mutt is Copyright (C) 1996-2000 Michael R. Elkins <me@cs.hmc.edu> and others
+ 1.3. Functions
- 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 ver-
- sion.
+ 1.4. Interaction
- 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.
+ 1.5. Modularization
- 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., 59 Temple
- Place - Suite 330, Boston, MA 02111, USA.
+ 1.6. Patterns
- _\b2_\b. _\bG_\be_\bt_\bt_\bi_\bn_\bg _\bS_\bt_\ba_\br_\bt_\be_\bd
+ 2. Screens and Menus
- _\b2_\b._\b1 _\bB_\ba_\bs_\bi_\bc _\bC_\bo_\bn_\bc_\be_\bp_\bt_\bs
+ 2.1. Index
- The Mutt Next Generation E-Mail Client 3
+ 2.2. Pager
- _\b2_\b._\b1_\b._\b1 _\bS_\bc_\br_\be_\be_\bn_\bs _\ba_\bn_\bd _\bM_\be_\bn_\bu_\bs
+ 2.3. File Browser
- mutt-ng offers different screens of which every has its special purpose:
+ 2.4. Sidebar
- +\bo The _\bi_\bn_\bd_\be_\bx displays the contents of the currently opened mailbox.
+ 2.5. Help
- +\bo The _\bp_\ba_\bg_\be_\br is responsible for displaying messages, that is, the header, the
- body and all attached parts.
+ 2.6. Compose Menu
- +\bo The _\bf_\bi_\bl_\be _\bb_\br_\bo_\bw_\bs_\be_\br offers operations on and displays information of all
- folders mutt-ng should watch for mail.
+ 2.7. Alias Menu
- +\bo The _\bs_\bi_\bd_\be_\bb_\ba_\br offers a permanent view of which mailboxes contain how many
- total, new and/or flagged mails.
+ 2.8. Attachment Menu
- +\bo The _\bh_\be_\bl_\bp _\bs_\bc_\br_\be_\be_\bn lists for all currently available commands how to invoke
- them as well as a short description.
+ 2.9. Key Menu
- +\bo The _\bc_\bo_\bm_\bp_\bo_\bs_\be menu is a comfortable interface take last actions before send-
- ing mail: change subjects, attach files, remove attachements, etc.
+ 3. Moving Around in Menus
- +\bo The _\ba_\bt_\bt_\ba_\bc_\bh_\be_\bm_\be_\bn_\bt menu gives a summary and the tree structure of the
- attachements of the current message.
+ 4. Editing Input Fields
- +\bo The _\ba_\bl_\bi_\ba_\bs menu lists all or a fraction of the aliases a user has defined.
+ 5. Reading Mail - The Index and Pager
- +\bo The _\bk_\be_\by menu used in connection with encryption lets users choose the
- right key to encrypt with.
+ 5.1. The Message Index
- When mutt-ng is started without any further options, it'll open the users
- default mailbox and display the index.
+ 5.2. The Pager
- _\b2_\b._\b1_\b._\b2 _\bC_\bo_\bn_\bf_\bi_\bg_\bu_\br_\ba_\bt_\bi_\bo_\bn
+ 5.3. Threaded Mode
- Mutt-ng does _\bn_\bo_\bt feature an internal configuration interface or menu due to the
- simple fact that this would be too complex to handle (currently there are sev-
- eral _\bh_\bu_\bn_\bd_\br_\be_\bd variables which fine-tune the behaviour.)
+ 5.4. Miscellaneous Functions
- Mutt-ng is configured using configuration files which allow users to add com-
- ments or manage them via version control systems to ease maintenance.
+ 6. Sending Mail
- Also, mutt-ng comes with a shell script named grml-muttng kindly contributed by
- users which really helps and eases the creation of a user's configuration file.
- When downloading the source code via a snapshot or via subversion, it can be
- found in the contrib directory.
+ 6.1. Composing new messages
- _\b2_\b._\b1_\b._\b3 _\bF_\bu_\bn_\bc_\bt_\bi_\bo_\bn_\bs
+ 6.2. Replying
- Mutt-ng offers great flexibility due to the use of functions: internally, every
- action a user can make mutt-ng perform is named ``function.'' Those functions
+ 6.3. Editing the message header
- The Mutt Next Generation E-Mail Client 4
+ 6.4. Using Mutt-ng with PGP
- are assigned to keys (or even key sequences) and may be completely adjusted to
- user's needs. The basic idea is that the impatient users get a very intuitive
- interface to start off with and advanced users virtually get no limits to
- adjustments.
+ 6.5. Sending anonymous messages via mixmaster
- _\b2_\b._\b1_\b._\b4 _\bI_\bn_\bt_\be_\br_\ba_\bc_\bt_\bi_\bo_\bn
+ 7. Forwarding and Bouncing Mail
- Mutt-ng has two basic concepts of user interaction:
+ 8. Postponing Mail
- 1. There is one dedicated line on the screen used to query the user for
- input, issue any command, query variables and display error and informa-
- tional messages. As for every type of user input, this requires manual
- action leading to the need of input.
+ 3. Configuration
- 2. The automatized interface for interaction are the so called _\bh_\bo_\bo_\bk_\bs. Hooks
- specify actions the user wants to be performed at well-defined situa-
- tions: what to do when entering which folder, what to do when displaying
- or replying to what kind of message, etc. These are optional, i.e. a user
- doesn't need to specify them but can do so.
+ 1. Locations of Configuration Files
- _\b2_\b._\b1_\b._\b5 _\bM_\bo_\bd_\bu_\bl_\ba_\br_\bi_\bz_\ba_\bt_\bi_\bo_\bn
+ 2. Basic Syntax of Initialization Files
- Although mutt-ng has many functionality built-in, many features can be dele-
- gated to external tools to increase flexibility: users can define programs to
- filter a message through before displaying, users can use any program they want
- for displaying a message, message types (such as PDF or PostScript) for which
- mutt-ng doesn't have a built-in filter can be rendered by arbitrary tools and
- so forth. Although mutt-ng has an alias mechanism built-in, it features using
- external tools to query for nearly every type of addresses from sources like
- LDAP, databases or just the list of locally known users.
+ 3. Expansion within variables
- _\b2_\b._\b1_\b._\b6 _\bP_\ba_\bt_\bt_\be_\br_\bn_\bs
+ 3.1. Commands' Output
- Mutt-ng has a built-in pattern matching ``language'' which is as widely used as
- possible to present a consistent interface to users. The same ``pattern terms''
- can be used for searching, scoring, message selection and much more.
+ 3.2. Environment Variables
- _\b2_\b._\b2 _\bS_\bc_\br_\be_\be_\bn_\bs _\ba_\bn_\bd _\bM_\be_\bn_\bu_\bs
+ 3.3. Configuration Variables
- _\b2_\b._\b2_\b._\b1 _\bI_\bn_\bd_\be_\bx
+ 3.4. Self-Defined Variables
- The index is the screen that you usually see first when you start mutt-ng. It
- gives an overview over your emails in the currently opened mailbox. By default,
- this is your system mailbox. The information you see in the index is a list of
+ 3.5. Pre-Defined Variables
- The Mutt Next Generation E-Mail Client 5
+ 3.6. Type Conversions
- emails, each with its number on the left, its flags (new email, important
- email, email that has been forwarded or replied to, tagged email, ...), the
- date when email was sent, its sender, the email size, and the subject. Addi-
- tionally, the index also shows thread hierarchies: when you reply to an email,
- and the other person replies back, you can see the other's person email in a
- "sub-tree" below. This is especially useful for personal email between a group
- of people or when you've subscribed to mailing lists.
+ 4. Defining/Using aliases
- _\b2_\b._\b2_\b._\b2 _\bP_\ba_\bg_\be_\br
+ 5. Changing the default key bindings
- The pager is responsible for showing the email content. On the top of the pager
- you have an overview over the most important email headers like the sender, the
- recipient, the subject, and much more information. How much information you
- actually see depends on your configuration, which we'll describe below.
+ 6. Defining aliases for character sets
- Below the headers, you see the email body which usually contains the message.
- If the email contains any attachments, you will see more information about them
- below the email body, or, if the attachments are text files, you can view them
- directly in the pager.
+ 7. Setting variables based upon mailbox
- To give the user a good overview, it is possible to configure mutt-ng to show
- different things in the pager with different colors. Virtually everything that
- can be described with a regular expression can be colored, e.g. URLs, email
- addresses or smileys.
+ 8. Keyboard macros
- _\b2_\b._\b2_\b._\b3 _\bF_\bi_\bl_\be _\bB_\br_\bo_\bw_\bs_\be_\br
+ 9. Using color and mono video attributes
- The file browser is the interface to the local or remote file system. When
- selecting a mailbox to open, the browser allows custom sorting of items, limit-
- ing the items shown by a regular expression and a freely adjustable format of
- what to display in which way. It also allows for easy navigation through the
- file system when selecting file(s) to attach to a message, select multiple
- files to attach and many more.
-
- _\b2_\b._\b2_\b._\b4 _\bS_\bi_\bd_\be_\bb_\ba_\br
-
- The sidebar comes in handy to manage mails which are spread over different
- folders. All folders users setup mutt-ng to watch for new mail will be listed.
- The listing includes not only the name but also the number of total messages,
- the number of new and flagged messages. Items with new mail may be colored dif-
- ferent from those with flagged mail, items may be shortened or compress if
- they're they to long to be printed in full form so that by abbreviated names,
- user still now what the name stands for.
+ 10. Ignoring (weeding) unwanted message headers
- _\b2_\b._\b2_\b._\b5 _\bH_\be_\bl_\bp
+ 11. Alternative addresses
- The Mutt Next Generation E-Mail Client 6
+ 12. Format = Flowed
- The help screen is meant to offer a quick help to the user. It lists the cur-
- rent configuration of key bindings and their associated commands including a
- short description, and currently unbound functions that still need to be asso-
- ciated with a key binding (or alternatively, they can be called via the mutt-ng
- command prompt).
-
- _\b2_\b._\b2_\b._\b6 _\bC_\bo_\bm_\bp_\bo_\bs_\be _\bM_\be_\bn_\bu
-
- The compose menu features a split screen containing the information which
- really matter before actually sending a message by mail or posting an article
- to a newsgroup: who gets the message as what (recipient, newsgroup, who gets
- what kind of copy). Additionally, users may set security options like deciding
- whether to sign, encrypt or sign and encrypt a message with/for what keys.
-
- Also, it's used to attach messages, news articles or files to a message, to re-
- edit any attachment including the message itself.
-
- _\b2_\b._\b2_\b._\b7 _\bA_\bl_\bi_\ba_\bs _\bM_\be_\bn_\bu
-
- The alias menu is used to help users finding the recipients of messages. For
- users who need to contact many people, there's no need to remember addresses or
- names completely because it allows for searching, too. The alias mechanism and
- thus the alias menu also features grouping several addresses by a shorter nick-
- name, the actual alias, so that users don't have to select each single recipi-
- ent manually.
-
- _\b2_\b._\b2_\b._\b8 _\bA_\bt_\bt_\ba_\bc_\bh_\bm_\be_\bn_\bt _\bM_\be_\bn_\bu
-
- As will be later discussed in detail, mutt-ng features a good and stable MIME
- implementation, that is, is greatly supports sending and receiving messages of
- arbitrary type. The attachment menu displays a message's structure in detail:
- what content parts are attached to which parent part (which gives a true tree
- structure), which type is of what type and what size. Single parts may saved,
- deleted or modified to offer great and easy access to message's internals.
-
- _\b2_\b._\b2_\b._\b9 _\bK_\be_\by _\bM_\be_\bn_\bu
-
- FIXME
-
- _\b2_\b._\b3 _\bM_\bo_\bv_\bi_\bn_\bg _\bA_\br_\bo_\bu_\bn_\bd _\bi_\bn _\bM_\be_\bn_\bu_\bs
-
- Information is presented in menus, very similar to ELM. Here is a table
-
- The Mutt Next Generation E-Mail Client 7
-
- showing the common keys used to navigate menus in Mutt-ng.
-
- j or Down next-entry move to the next entry
- k or Up previous-entry move to the previous entry
- z or PageDn page-down go to the next page
- Z or PageUp page-up go to the previous page
- = or Home first-entry jump to the first entry
- * or End last-entry jump to the last entry
- q quit exit the current menu
- ? help list all key bindings for the current menu
-
- _\b2_\b._\b4 _\bE_\bd_\bi_\bt_\bi_\bn_\bg _\bI_\bn_\bp_\bu_\bt _\bF_\bi_\be_\bl_\bd_\bs
-
- Mutt-ng 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 or <Home> bol move to the start of the line
- ^B or <Left> backward-char move back one char
- Esc B backward-word move back one word
- ^D or <Delete> delete-char delete the char under the cursor
- ^E or <End> eol move to the end of the line
- ^F or <Right> forward-char move forward one char
- Esc F forward-word move forward one word
- <Tab> complete complete filename or alias
- ^T complete-query complete address with query
- ^K kill-eol delete to the end of the line
- ESC d kill-eow delete to the end of the word
- ^W kill-word kill the word in front of the cursor
- ^U kill-line delete entire line
- ^V quote-char quote the next typed key
- <Up> history-up recall previous string from history
- <Down> history-down recall next string from history
- <BackSpace> backspace kill the char in front of the cursor
- Esc u upcase-word convert word to upper case
- Esc l downcase-word convert word to lower case
- Esc c capitalize-word capitalize the word
- ^G n/a abort
- <Return> n/a finish editing
-
- You can remap the _\be_\bd_\bi_\bt_\bo_\br functions using the _\bb_\bi_\bn_\bd (section 3.4 , page 24) com-
- mand. For example, to make the _\bD_\be_\bl_\be_\bt_\be key delete the character in front of the
- cursor rather than under, you could use
-
- bind editor <delete> backspace
-
- The Mutt Next Generation E-Mail Client 8
+ 12.1. Introduction
- _\b2_\b._\b5 _\bR_\be_\ba_\bd_\bi_\bn_\bg _\bM_\ba_\bi_\bl _\b- _\bT_\bh_\be _\bI_\bn_\bd_\be_\bx _\ba_\bn_\bd _\bP_\ba_\bg_\be_\br
+ 12.2. Receiving: Display Setup
- Similar to many other mail clients, there are two modes in which mail is read
- in Mutt-ng. The first is the index of messages in the mailbox, which is called
- the ``index'' in Mutt-ng. The second mode is the display of the message con-
- tents. This is called the ``pager.''
+ 12.3. Sending
- The next few sections describe the functions provided in each of these modes.
+ 12.4. Additional Notes
- _\b2_\b._\b5_\b._\b1 _\bT_\bh_\be _\bM_\be_\bs_\bs_\ba_\bg_\be _\bI_\bn_\bd_\be_\bx
+ 13. Mailing lists
- c change to a different mailbox
- ESC c change to a folder in read-only mode
- C copy the current message to another mailbox
- ESC C decode a message and copy it to a folder
- ESC s decode a message and save it to a folder
- D delete messages matching a pattern
- d delete the current message
- F mark as important
- l show messages matching a pattern
- N mark message as new
- o change the current sort method
- O reverse sort the mailbox
- q save changes and exit
- s save-message
- T tag messages matching a pattern
- t toggle the tag on a message
- ESC t toggle tag on entire message thread
- U undelete messages matching a pattern
- u undelete-message
- v view-attachments
- x abort changes and exit
- <Return> display-message
- <Tab> jump to the next new message
- @ show the author's full e-mail address
- $ save changes to mailbox
- / search
- ESC / search-reverse
- ^L clear and redraw the screen
- ^T untag messages matching a pattern
-
- _\b2_\b._\b5_\b._\b1_\b._\b1 _\bS_\bt_\ba_\bt_\bu_\bs _\bF_\bl_\ba_\bg_\bs
-
- 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 (is marked for deletion)
-
- d
- message have attachments marked for deletion
-
- The Mutt Next Generation E-Mail Client 9
-
- K
- contains a PGP public key
-
- N
- message is new
-
- O
- message is old
-
- P
- message is PGP encrypted
-
- r
- message has been replied to
-
- S
- message is signed, and the signature is succesfully verified
-
- s
- message is signed
-
- !
- message is flagged
-
- *
- message is tagged
-
- Some of the status flags can be turned on or off using
-
- +\bo s\bse\bet\bt-\b-f\bfl\bla\bag\bg (default: w)
-
- +\bo c\bcl\ble\bea\bar\br-\b-f\bfl\bla\bag\bg (default: W)
-
- Furthermore, the following flags reflect who the message is addressed to. They
- can be customized with the _\b$_\bt_\bo_\b__\bc_\bh_\ba_\br_\bs (section 7.4.327 , page 167) variable.
-
- +
- message is to you and you only
-
- T
- message is to you, but also to or cc'ed to others
-
- C
- message is cc'ed to you
-
- F
- message is from you
-
- L
- message is sent to a subscribed mailing list
-
- _\b2_\b._\b5_\b._\b2 _\bT_\bh_\be _\bP_\ba_\bg_\be_\br
-
- By default, Mutt-ng uses its builtin pager to display the body of messages.
-
- The Mutt Next Generation E-Mail Client 10
-
- The pager is very similar to the Unix program _\bl_\be_\bs_\bs though not nearly as fea-
- tureful.
-
- <Return> go down one line
- <Space> display the next page (or next message if at the end of a message)
- - go back to the previous page
- n search for next match
- S skip beyond quoted text
- T toggle display of quoted text
- ? show key bindings
- / search for a regular expression (pattern)
- ESC / search backwards for a regular expression
- \ toggle search pattern coloring
- ^ jump to the top of the message
-
- In addition, many of the functions from the _\bi_\bn_\bd_\be_\bx are available in the pager,
- such as _\bd_\be_\bl_\be_\bt_\be_\b-_\bm_\be_\bs_\bs_\ba_\bg_\be or _\bc_\bo_\bp_\by_\b-_\bm_\be_\bs_\bs_\ba_\bg_\be (this is one advantage over using an
- external pager to view messages).
+ 14. Using Multiple spool mailboxes
- Also, the internal pager supports a couple other advanced features. For one, it
- will accept and translate the ``standard'' nroff sequences for bold and under-
- line. These sequences are a series of either the letter, backspace (^H), the
- letter again for bold or the letter, backspace, ``_'' for denoting underline.
- Mutt-ng will attempt to display these in bold and underline respectively if
- your terminal supports them. If not, you can use the bold and underline _\bc_\bo_\bl_\bo_\br
- (section 3.8 , page 28) objects to specify a color or mono attribute for them.
+ 15. Defining mailboxes which receive mail
- Additionally, the internal pager supports the ANSI escape sequences for charac-
- ter attributes. Mutt-ng translates them into the correct color and character
- settings. The sequences Mutt-ng supports are:
+ 16. User defined headers
- ESC [ Ps;Ps;Ps;...;Ps m
- where Ps =
- 0 All Attributes Off
- 1 Bold on
- 4 Underline on
- 5 Blink on
- 7 Reverse video on
- 3x Foreground color is x
- 4x Background color is x
+ 17. Defining the order of headers when viewing messages
- Colors are
- 0 black
- 1 red
- 2 green
- 3 yellow
- 4 blue
- 5 magenta
- 6 cyan
- 7 white
+ 18. Specify default save filename
- The Mutt Next Generation E-Mail Client 11
+ 19. Specify default Fcc: mailbox when composing
- Mutt-ng uses these attributes for handling text/enriched messages, and they can
- also be used by an external _\ba_\bu_\bt_\bo_\bv_\bi_\be_\bw (section 5.4 , page 76) script for high-
- lighting purposes. N\bNo\bot\bte\be:\b: If you change the colors for your display, for exam-
- ple by changing the color associated with color2 for your xterm, then that
- color will be used instead of green.
+ 20. Specify default save filename and default Fcc: mailbox at
+ once
- _\b2_\b._\b5_\b._\b3 _\bT_\bh_\br_\be_\ba_\bd_\be_\bd _\bM_\bo_\bd_\be
+ 21. Change settings based upon message recipients
- When the mailbox is _\bs_\bo_\br_\bt_\be_\bd (section 7.4.295 , page 157) by _\bt_\bh_\br_\be_\ba_\bd_\bs, there are
- a few additional functions available in the _\bi_\bn_\bd_\be_\bx and _\bp_\ba_\bg_\be_\br modes.
+ 22. Change settings before formatting a message
- ^D delete-thread delete all messages in the current thread
- ^U undelete-thread undelete 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
- ^R read-thread mark the current thread as read
- ESC d delete-subthread delete all messages in the current subthread
- ESC u undelete-subthread undelete all messages in the current subthread
- ESC n next-subthread jump to the start of the next subthread
- ESC p previous-subthread jump to the start of the previous subthread
- ESC r read-subthread mark the current subthread as read
- ESC t tag-thread toggle the tag on the current thread
- ESC v collapse-thread toggle collapse for the current thread
- ESC V collapse-all toggle collapse for all threads
- P parent-message jump to parent message in thread
-
- N\bNo\bot\bte\be:\b: Collapsing a thread displays only the first message in the thread and
- hides the others. This is useful when threads contain so many messages that you
- can only see a handful of threads on the screen. See %M in _\b$_\bi_\bn_\bd_\be_\bx_\b__\bf_\bo_\br_\bm_\ba_\bt (sec-
- tion 7.4.113 , page 113). For example, you could use "%?M?(#%03M)&(%4l)?" in
- _\b$_\bi_\bn_\bd_\be_\bx_\b__\bf_\bo_\br_\bm_\ba_\bt (section 7.4.113 , page 113) to optionally display the number of
- hidden messages if the thread is collapsed.
-
- See also: _\b$_\bs_\bt_\br_\bi_\bc_\bt_\b__\bt_\bh_\br_\be_\ba_\bd_\bs (section 7.4.316 , page 165).
-
- _\b2_\b._\b5_\b._\b4 _\bM_\bi_\bs_\bc_\be_\bl_\bl_\ba_\bn_\be_\bo_\bu_\bs _\bF_\bu_\bn_\bc_\bt_\bi_\bo_\bn_\bs
-
- c\bcr\bre\bea\bat\bte\be-\b-a\bal\bli\bia\bas\bs
- (default: a)
-
- Creates a new alias based upon the current message (or prompts for a new one).
- Once editing is complete, an _\ba_\bl_\bi_\ba_\bs (section 3.3 , page 23) command is added to
- the file specified by the _\b$_\ba_\bl_\bi_\ba_\bs_\b__\bf_\bi_\bl_\be (section 7.4.4 , page 87) variable for
- future use. N\bNo\bot\bte\be:\b: Specifying an _\b$_\ba_\bl_\bi_\ba_\bs_\b__\bf_\bi_\bl_\be (section 7.4.4 , page 87) does not
- add the aliases specified there-in, you must also _\bs_\bo_\bu_\br_\bc_\be (section 3.28 , page
- 43) the file.
-
- c\bch\bhe\bec\bck\bk-\b-t\btr\bra\bad\bdi\bit\bti\bio\bon\bna\bal\bl-\b-p\bpg\bgp\bp
- (default: ESC P)
-
- This function will search the current message for content signed or encrypted
- with PGP the "traditional" way, that is, without proper MIME tagging.
-
- The Mutt Next Generation E-Mail Client 12
-
- Technically, this function will temporarily change the MIME content types of
- the body parts containing PGP data; this is similar to the _\be_\bd_\bi_\bt_\b-_\bt_\by_\bp_\be (section
- 2.5.4 , page 12) function's effect.
-
- d\bdi\bis\bsp\bpl\bla\bay\by-\b-t\bto\bog\bgg\bgl\ble\be-\b-w\bwe\bee\bed\bd
- (default: h)
-
- Toggles the weeding of message header fields specified by _\bi_\bg_\bn_\bo_\br_\be (section
- 3.9 , page 30) commands.
-
- e\bed\bdi\bit\bt
- (default: e)
-
- This command (available in the ``index'' and ``pager'') allows you to edit the
- raw current message as it's present in the mail folder. After you have fin-
- ished editing, the changed message will be appended to the current folder, and
- the original message will be marked for deletion.
-
- e\bed\bdi\bit\bt-\b-t\bty\byp\bpe\be
-
- (default: ^E on the attachment menu, and in the pager and index menus; ^T on
- the compose menu)
-
- This command is used to temporarily edit an attachment's content type to fix,
- for instance, bogus character set parameters. When invoked from the index or
- from the pager, you'll have the opportunity to edit the top-level attachment's
- content type. On the _\ba_\bt_\bt_\ba_\bc_\bh_\bm_\be_\bn_\bt _\bm_\be_\bn_\bu (section 5.1.2 , page 68), you can
- change any attachment's content type. These changes are not persistent, and get
- lost upon changing folders.
-
- Note that this command is also available on the _\bc_\bo_\bm_\bp_\bo_\bs_\be _\bm_\be_\bn_\bu (section 5.1.3 ,
- page 69). There, it's used to fine-tune the properties of attachments you are
- going to send.
+ 23. Choosing the cryptographic key of the recipient
- e\ben\bnt\bte\ber\br-\b-c\bco\bom\bmm\bma\ban\bnd\bd
- (default: ``:'')
+ 24. Adding key sequences to the keyboard buffer
- This command is used to execute any command you would normally put in a config-
- uration file. A common use is to check the settings of variables, or in con-
- junction with _\bm_\ba_\bc_\br_\bo_\bs (section 3.7 , page 27) to change settings on the fly.
+ 25. Executing functions
- e\bex\bxt\btr\bra\bac\bct\bt-\b-k\bke\bey\bys\bs
- (default: ^K)
+ 26. Message Scoring
- This command extracts PGP public keys from the current or tagged message(s) and
- adds them to your PGP public key ring.
+ 27. Spam detection
- f\bfo\bor\brg\bge\bet\bt-\b-p\bpa\bas\bss\bsp\bph\bhr\bra\bas\bse\be
- (default: ^F)
+ 28. Setting variables
- This command wipes the passphrase(s) from memory. It is useful, if you mis-
- spelled the passphrase.
+ 29. Reading initialization commands from another file
- The Mutt Next Generation E-Mail Client 13
+ 30. Removing hooks
- l\bli\bis\bst\bt-\b-r\bre\bep\bpl\bly\by
- (default: L)
+ 31. Sharing Setups
- Reply to the current or tagged message(s) by extracting any addresses which
- match the regular expressions given by the _\bl_\bi_\bs_\bt_\bs _\bo_\br _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be (section 3.12 ,
- page 33) commands, but also honor any Mail-Followup-To header(s) if the
- _\b$_\bh_\bo_\bn_\bo_\br_\b__\bf_\bo_\bl_\bl_\bo_\bw_\bu_\bp_\b__\bt_\bo (section 7.4.91 , page 108) configuration variable is set.
- Using this when replying to messages posted to mailing lists helps avoid dupli-
- cate copies being sent to the author of the message you are replying to.
+ 31.1. Character Sets
- p\bpi\bip\bpe\be-\b-m\bme\bes\bss\bsa\bag\bge\be
- (default: |)
+ 31.2. Modularization
- Asks for an external Unix command and pipes the current or tagged message(s) to
- it. The variables _\b$_\bp_\bi_\bp_\be_\b__\bd_\be_\bc_\bo_\bd_\be (section 7.4.204 , page 136), _\b$_\bp_\bi_\bp_\be_\b__\bs_\bp_\bl_\bi_\bt
- (section 7.4.206 , page 137), _\b$_\bp_\bi_\bp_\be_\b__\bs_\be_\bp (section 7.4.205 , page 137) and
- _\b$_\bw_\ba_\bi_\bt_\b__\bk_\be_\by (section 7.4.339 , page 169) control the exact behavior of this
- function.
+ 31.3. Conditional parts
- r\bre\bes\bse\ben\bnd\bd-\b-m\bme\bes\bss\bsa\bag\bge\be
- (default: ESC e)
+ 32. Obsolete Variables
- With resend-message, mutt takes the current message as a template for a new
- message. This function is best described as "recall from arbitrary folders".
- It can conveniently be used to forward MIME messages while preserving the orig-
- inal mail structure. Note that the amount of headers included here depends on
- the value of the _\b$_\bw_\be_\be_\bd (section 7.4.340 , page 170) variable.
+ 4. Advanced Usage
- This function is also available from the attachment menu. You can use this to
- easily resend a message which was included with a bounce message as a mes-
- sage/rfc822 body part.
+ 1. Regular Expressions
- s\bsh\bhe\bel\bll\bl-\b-e\bes\bsc\bca\bap\bpe\be
- (default: !)
+ 2. Patterns
- Asks for an external Unix command and executes it. The _\b$_\bw_\ba_\bi_\bt_\b__\bk_\be_\by (section
- 7.4.339 , page 169) can be used to control whether Mutt-ng will wait for a key
- to be pressed when the command returns (presumably to let the user read the
- output of the command), based on the return status of the named command.
+ 2.1. Complex Patterns
- t\bto\bog\bgg\bgl\ble\be-\b-q\bqu\buo\bot\bte\bed\bd
- (default: T)
+ 2.2. Patterns and Dates
- The _\bp_\ba_\bg_\be_\br uses the _\b$_\bq_\bu_\bo_\bt_\be_\b__\br_\be_\bg_\be_\bx_\bp (section 7.4.229 , page 142) variable to
- detect quoted text when displaying the body of the message. This function tog-
- gles 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.
-
- s\bsk\bki\bip\bp-\b-q\bqu\buo\bot\bte\bed\bd
- (default: S)
-
- This function will go to the next line of non-quoted text which come after a
- line of quoted text in the internal pager.
-
- The Mutt Next Generation E-Mail Client 14
-
- _\b2_\b._\b6 _\bS_\be_\bn_\bd_\bi_\bn_\bg _\bM_\ba_\bi_\bl
-
- The following bindings are available in the _\bi_\bn_\bd_\be_\bx for sending messages.
-
- m compose compose a new message
- r reply reply to sender
- g group-reply reply to all recipients
- L list-reply reply to mailing list address
- f forward forward message
- b bounce bounce (remail) message
- ESC k mail-key mail a PGP public key to someone
-
- Bouncing a message sends the message as is to the recipient you specify. For-
- warding a message allows you to add comments or modify the message you are for-
- warding. These items are discussed in greater detail in the next chapter
- _\b`_\b`_\bF_\bo_\br_\bw_\ba_\br_\bd_\bi_\bn_\bg _\ba_\bn_\bd _\bB_\bo_\bu_\bn_\bc_\bi_\bn_\bg _\bM_\ba_\bi_\bl_\b'_\b' (section 2.7 , page 20).
-
- _\b2_\b._\b6_\b._\b1 _\bC_\bo_\bm_\bp_\bo_\bs_\bi_\bn_\bg _\bn_\be_\bw _\bm_\be_\bs_\bs_\ba_\bg_\be_\bs
-
- When you want to send an email using mutt-ng, simply press m on your keyboard.
- Then, mutt-ng asks for the recipient via a prompt in the last line:
-
- To:
-
- After you've finished entering the recipient(s), press return. If you want to
- send an email to more than one recipient, separate the email addresses using
- the comma ",". Mutt-ng then asks you for the email subject. Again, press return
- after you've entered it. After that, mutt-ng got the most important information
- from you, and starts up an editor where you can then enter your email.
-
- The editor that is called is selected in the following way: you can e.g. set it
- in the mutt-ng configuration:
-
- set editor = "vim +/^$/ -c ':set tw=72'"
- set editor = "nano"
- set editor = "emacs"
-
- If you don't set your preferred editor in your configuration, mutt-ng first
- looks whether the environment variable $VISUAL is set, and if so, it takes its
- value as editor command. Otherwise, it has a look at $EDITOR and takes its
- value if it is set. If no editor command can be found, mutt-ng simply assumes
- vi to be the default editor, since it's the most widespread editor in the Unix
- world and it's pretty safe to assume that it is installed and available.
-
- When you've finished entering your message, save it and quit your editor. Mutt-
- ng will then present you with a summary screen, the compose menu. On the top,
- you see a summary of the most important available key commands. Below that,
- you see the sender, the recipient(s), Cc and/or Bcc recipient(s), the subject,
-
- The Mutt Next Generation E-Mail Client 15
-
- the reply-to address, and optionally information where the sent email will be
- stored and whether it should be digitally signed and/or encrypted.
-
- Below that, you see a list of "attachments". The mail you've just entered
- before is also an attachment, but due to its special type (it's plain text), it
- will be displayed as the normal message on the receiver's side.
-
- At this point, you can add more attachments, pressing a, you can edit the
- recipient addresses, pressing t for the "To:" field, c for the "Cc:" field, and
- b for the "Bcc: field. You can also edit the subject the subject by simply
- pressing s or the email message that you've entered before by pressing e. You
- will then again return to the editor. You can even edit the sender, by pressing
- <esc>f, but this shall only be used with caution.
+ 3. Format Strings
- Alternatively, you can configure mutt-ng in a way that most of the above set-
- tings can be edited using the editor. Therefore, you only need to add the fol-
- lowing to your configuration:
+ 3.1. Introduction
- set edit_headers
+ 3.2. Conditional Expansion
- Once you have finished editing the body of your mail message, you are returned
- to the _\bc_\bo_\bm_\bp_\bo_\bs_\be menu. The following options are available:
-
- a attach-file attach a file
- A attach-message attach message(s) to the message
- ESC k attach-key attach a PGP public key
- d edit-description edit description on attachment
- D detach-file detach a file
- t edit-to edit the To field
- ESC f edit-from edit the From field
- r edit-reply-to edit the Reply-To field
- c edit-cc edit the Cc field
- b edit-bcc edit the Bcc field
- y send-message send the message
- s edit-subject edit the Subject
- S smime-menu select S/MIME options
- f edit-fcc specify an ``Fcc'' mailbox
- p pgp-menu select PGP options
- P postpone-message postpone this message until later
- q quit quit (abort) sending the message
- w write-fcc write the message to a folder
- i ispell check spelling (if available on your system)
- ^F forget-passphrase wipe passphrase(s) from memory
+ 3.3. Modifications and Padding
- N\bNo\bot\bte\be:\b: The attach-message function will prompt you for a folder to attach mes-
- sages from. You can now tag messages in that folder and they will be attached
- to the message you are sending. Note that certain operations like composing a
- new mail, replying, forwarding, etc. are not permitted when you are in that
- folder. The %r in _\b$_\bs_\bt_\ba_\bt_\bu_\bs_\b__\bf_\bo_\br_\bm_\ba_\bt (section 7.4.312 , page 162) will change to a
- 'A' to indicate that you are in attach-message mode.
+ 4. Using Tags
- The Mutt Next Generation E-Mail Client 16
+ 5. Using Hooks
- _\b2_\b._\b6_\b._\b2 _\bR_\be_\bp_\bl_\by_\bi_\bn_\bg
+ 5.1. Message Matching in Hooks
- _\b2_\b._\b6_\b._\b2_\b._\b1 _\bS_\bi_\bm_\bp_\bl_\be _\bR_\be_\bp_\bl_\bi_\be_\bs
+ 6. Using the sidebar
- When you want to reply to an email message, select it in the index menu and
- then press r. Mutt-ng's behaviour is then similar to the behaviour when you
- compose a message: first, you will be asked for the recipient, then for the
- subject, and then, mutt-ng will start the editor with the quote attribution and
- the quoted message. This can e.g. look like the example below.
+ 7. External Address Queries
- On Mon, Mar 07, 2005 at 05:02:12PM +0100, Michael Svensson wrote:
- > Bill, can you please send last month's progress report to Mr.
- > Morgan? We also urgently need the cost estimation for the new
- > production server that we want to set up before our customer's
- > project will go live.
+ 8. Mailbox Formats
- You can start editing the email message. It is strongly recommended to put your
- answer _\bb_\be_\bl_\bo_\bw the quoted text and to only quote what is really necessary and
- that you refer to. Putting your answer on top of the quoted message, is,
- although very widespread, very often not considered to be a polite way to
- answer emails.
+ 9. Mailbox Shortcuts
- The quote attribution is configurable, by default it is set to
+ 10. Handling Mailing Lists
- set attribution = "On %d, %n wrote:"
+ 11. Editing threads
- It can also be set to something more compact, e.g.
+ 11.1. Linking threads
- set attribution = "attribution="* %n <%a> [%(%y-%m-%d %H:%M)]:"
+ 11.2. Breaking threads
- The example above results in the following attribution:
+ 12. Delivery Status Notification (DSN) Support
- * Michael Svensson <svensson@foobar.com> [05-03-06 17:02]:
- > Bill, can you please send last month's progress report to Mr.
- > Morgan? We also urgently need the cost estimation for the new
- > production server that we want to set up before our customer's
- > project will go live.
+ 13. POP3 Support (OPTIONAL)
- Generally, try to keep your attribution short yet information-rich. It is _\bn_\bo_\bt
- the right place for witty quotes, long "attribution" novels or anything like
- that: the right place for such things is - if at all - the email signature at
- the very bottom of the message.
+ 14. IMAP Support (OPTIONAL)
- When you're done with writing your message, save and quit the editor. As
- before, you will return to the compose menu, which is used in the same way as
+ 14.1. The Folder Browser
- The Mutt Next Generation E-Mail Client 17
+ 14.2. Authentication
- before.
+ 15. NNTP Support (OPTIONAL)
- _\b2_\b._\b6_\b._\b2_\b._\b2 _\bG_\br_\bo_\bu_\bp _\bR_\be_\bp_\bl_\bi_\be_\bs
+ 15.1. Again: Scoring
- In the situation where a group of people uses email as a discussion, most of
- the emails will have one or more recipients, and probably several "Cc:" recipi-
- ents. The group reply functionality ensures that when you press g instead of r
- to do a reply, each and every recipient that is contained in the original mes-
- sage will receive a copy of the message, either as normal recipient or as "Cc:"
- recipient.
+ 16. SMTP Support (OPTIONAL)
- _\b2_\b._\b6_\b._\b2_\b._\b3 _\bL_\bi_\bs_\bt _\bR_\be_\bp_\bl_\bi_\be_\bs
+ 17. Managing multiple IMAP/POP/NNTP accounts (OPTIONAL)
- When you use mailing lists, it's generally better to send your reply to a mes-
- sage only to the list instead of the list and the original author. To make this
- easy to use, mutt-ng features list replies.
+ 18. Start a WWW Browser on URLs (EXTERNAL)
- To do a list reply, simply press L. If the email contains a Mail-Followup-To:
- header, its value will be used as reply address. Otherwise, mutt-ng searches
- through all mail addresses in the original message and tries to match them a
- list of regular expressions which can be specified using the lists command. If
- any of the regular expression matches, a mailing list address has been found,
- and it will be used as reply address.
+ 19. Compressed folders Support (OPTIONAL)
- lists linuxevent@luga\.at vuln-dev@ mutt-ng-users@
+ 19.1. Open a compressed mailbox for reading
- Nowadays, most mailing list software like GNU Mailman adds a Mail-Followup-To:
- header to their emails anyway, so setting lists is hardly ever necessary in
- practice.
+ 19.2. Write a compressed mailbox
- _\b2_\b._\b6_\b._\b3 _\bE_\bd_\bi_\bt_\bi_\bn_\bg _\bt_\bh_\be _\bm_\be_\bs_\bs_\ba_\bg_\be _\bh_\be_\ba_\bd_\be_\br
+ 19.3. Append a message to a compressed mailbox
- When editing the header of your outgoing message, there are a couple of special
- features available.
+ 19.4. Encrypted folders
- If you specify
+ 5. Mutt-ng's MIME Support
- Fcc: _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be
+ 1. Using MIME in Mutt
- Mutt-ng will pick up _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be just as if you had used the _\be_\bd_\bi_\bt_\b-_\bf_\bc_\bc function in
- the _\bc_\bo_\bm_\bp_\bo_\bs_\be menu.
+ 1.1. Viewing MIME messages in the pager
- You can also attach files to your message by specifying
+ 1.2. The Attachment Menu
- The Mutt Next Generation E-Mail Client 18
+ 1.3. The Compose Menu
- Attach: _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be [ _\bd_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn ]
+ 2. MIME Type configuration with mime.types
- where _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be is the file to attach and _\bd_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn is an optional string to
- use as the description of the attached file.
+ 3. MIME Viewer configuration with mailcap
- When replying to messages, if you remove the _\bI_\bn_\b-_\bR_\be_\bp_\bl_\by_\b-_\bT_\bo_\b: field from the header
- field, Mutt-ng will not generate a _\bR_\be_\bf_\be_\br_\be_\bn_\bc_\be_\bs_\b: field, which allows you to cre-
- ate a new message thread.
+ 3.1. The Basics of the mailcap file
- Also see _\be_\bd_\bi_\bt_\b__\bh_\be_\ba_\bd_\be_\br_\bs (section 7.4.57 , page 100).
+ 3.2. Secure use of mailcap
- _\b2_\b._\b6_\b._\b4 _\bU_\bs_\bi_\bn_\bg _\bM_\bu_\bt_\bt_\b-_\bn_\bg _\bw_\bi_\bt_\bh _\bP_\bG_\bP
+ 3.3. Advanced mailcap Usage
- If you want to use PGP, you can specify
+ 3.4. Example mailcap files
- Pgp: [ E | S | S_\b<_\bi_\bd_\b> ]
+ 4. MIME Autoview
- ``E'' encrypts, ``S'' signs and ``S<id>'' signs with the given key, setting
- _\b$_\bp_\bg_\bp_\b__\bs_\bi_\bg_\bn_\b__\ba_\bs (section 7.4.196 , page 135) permanently.
+ 5. MIME Multipart/Alternative
- If you have told mutt to PGP encrypt a message, it will guide you through a key
- selection process when you try to send the message. Mutt-ng will not ask you
- any questions about keys which have a certified user ID matching one of the
- message recipients' mail addresses. However, there may be situations in which
- there are several keys, weakly certified user ID fields, or where no matching
- keys can be found.
+ 6. Attachment Searching and Counting
- In these cases, you are dropped into a menu with a list of keys from which you
- can select one. When you quit this menu, or mutt can't find any matching keys,
- you are prompted for a user ID. You can, as usually, abort this prompt using
- ^G. When you do so, mutt will return to the compose screen.
+ 7. MIME Lookup
- Once you have successfully finished the key selection, the message will be
- encrypted using the selected public keys, and sent out.
+ 6. Security Considerations
- Most fields of the entries in the key selection menu (see also _\b$_\bp_\bg_\bp_\b__\be_\bn_\bt_\br_\by_\b__\bf_\bo_\br_\b-
- _\bm_\ba_\bt (section 7.4.183 , page 132)) have obvious meanings. But some explana-
- tions on the capabilities, flags, and validity fields are in order.
+ 1. Passwords
- The flags sequence (%f) will expand to one of the following flags:
+ 2. Temporary Files
- R The key has been revoked and can't be used.
- X The key is expired and can't be used.
- d You have marked the key as disabled.
- c There are unknown critical self-signature
- packets.
+ 3. Information Leaks
- The capabilities field (%c) expands to a two-character sequence representing a
- key's capabilities. The first character gives the key's encryption capabili-
- ties: A minus sign (-\b-) means that the key cannot be used for encryption. A dot
- (.\b.) means that it's marked as a signature key in one of the user IDs, but may
+ 3.1. Message-ID: headers
- The Mutt Next Generation E-Mail Client 19
+ 3.2. mailto:-style links
- also be used for encryption. The letter e\be indicates that this key can be used
- for encryption.
+ 4. External applications
- The second character indicates the key's signing capabilities. Once again, a
- ``-\b-'' implies ``not for signing'', ``.\b.'' implies that the key is marked as an
- encryption key in one of the user-ids, and ``s\bs'' denotes a key which can be
- used for signing.
+ 4.1. mailcap
- Finally, the validity field (%t) indicates how well-certified a user-id is. A
- question mark (?\b?) indicates undefined validity, a minus character (-\b-) marks an
- untrusted association, a space character means a partially trusted association,
- and a plus character (+\b+) indicates complete validity.
+ 4.2. Other
- _\b2_\b._\b6_\b._\b5 _\bS_\be_\bn_\bd_\bi_\bn_\bg _\ba_\bn_\bo_\bn_\by_\bm_\bo_\bu_\bs _\bm_\be_\bs_\bs_\ba_\bg_\be_\bs _\bv_\bi_\ba _\bm_\bi_\bx_\bm_\ba_\bs_\bt_\be_\br
+ 7. Reference
- You may also have configured mutt to co-operate with Mixmaster, an anonymous
- remailer. Mixmaster permits you to send your messages anonymously using a
- chain of remailers. Mixmaster support in mutt is for mixmaster version 2.04
- (beta 45 appears to be the latest) and 2.03. It does not support earlier ver-
- sions or the later so-called version 3 betas, of which the latest appears to be
- called 2.9b23.
+ 1. Command line options
- To use it, you'll have to obey certain restrictions. Most important, you can-
- not use the Cc and Bcc headers. To tell Mutt-ng to use mixmaster, you have to
- select a remailer chain, using the mix function on the compose menu.
+ 2. Patterns
- The chain selection screen is divided into two parts. In the (larger) upper
- part, you get a list of remailers you may use. In the lower part, you see the
- currently selected chain of remailers.
+ 3. Configuration Commands
- You can navigate in the chain using the chain-prev and chain-next functions,
- which are by default bound to the left and right arrows and to the h and l keys
- (think vi keyboard bindings). To insert a remailer at the current chain posi-
- tion, use the insert function. To append a remailer behind the current chain
- position, use select-entry or append. You can also delete entries from the
- chain, using the corresponding function. Finally, to abandon your changes,
- leave the menu, or accept them pressing (by default) the Return key.
+ 4. Configuration variables
- Note that different remailers do have different capabilities, indicated in the
- %c entry of the remailer menu lines (see _\b$_\bm_\bi_\bx_\b__\be_\bn_\bt_\br_\by_\b__\bf_\bo_\br_\bm_\ba_\bt (section 7.4.143 ,
- page 121)). Most important is the ``middleman'' capability, indicated by a
- capital ``M'': This means that the remailer in question cannot be used as the
- final element of a chain, but will only forward messages to other mixmaster
- remailers. For details on the other capabilities, please have a look at the
- mixmaster documentation.
+ 5. Functions
- _\b2_\b._\b7 _\bF_\bo_\br_\bw_\ba_\br_\bd_\bi_\bn_\bg _\ba_\bn_\bd _\bB_\bo_\bu_\bn_\bc_\bi_\bn_\bg _\bM_\ba_\bi_\bl
+ 5.1. generic
- The Mutt Next Generation E-Mail Client 20
+ 5.2. index
- Often, it is necessary to forward mails to other people. Therefore, mutt-ng
- supports forwarding messages in two different ways.
+ 5.3. pager
- The first one is regular forwarding, as you probably know it from other mail
- clients. You simply press f, enter the recipient email address, the subject of
- the forwarded email, and then you can edit the message to be forwarded in the
- editor. The forwarded message is separated from the rest of the message via the
- two following markers:
+ 5.4. alias
- ----- Forwarded message from Lucas User <luser@example.com> -----
+ 5.5. query
- From: Lucas User <luser@example.com>
- Date: Thu, 02 Dec 2004 03:08:34 +0100
- To: Michael Random <mrandom@example.com>
- Subject: Re: blackmail
+ 5.6. attach
- Pay me EUR 50,000.- cash or your favorite stuffed animal will die
- a horrible death.
+ 5.7. compose
- ----- End forwarded message -----
+ 5.8. postpone
- When you're done with editing the mail, save and quit the editor, and you will
- return to the compose menu, the same menu you also encounter when composing or
- replying to mails.
+ 5.9. browser
- The second mode of forwarding emails with mutt-ng is the so-called _\bb_\bo_\bu_\bn_\bc_\bi_\bn_\bg:
- when you bounce an email to another address, it will be sent in practically the
- same format you send it (except for headers that are created during transport-
- ing the message). To bounce a message, press b and enter the recipient email
- address. By default, you are then asked whether you really want to bounce the
- message to the specified recipient. If you answer with yes, the message will
- then be bounced.
+ 5.10. pgp
- To the recipient, the bounced email will look as if he got it like a regular
- email where he was Bcc: recipient. The only possibility to find out whether it
- was a bounced email is to carefully study the email headers and to find out
- which host really sent the email.
+ 5.11. editor
- _\b2_\b._\b8 _\bP_\bo_\bs_\bt_\bp_\bo_\bn_\bi_\bn_\bg _\bM_\ba_\bi_\bl
+ 5.12. sidebar
- At times it is desirable to delay sending a message that you have already begun
- to compose. When the _\bp_\bo_\bs_\bt_\bp_\bo_\bn_\be_\b-_\bm_\be_\bs_\bs_\ba_\bg_\be function is used in the _\bc_\bo_\bm_\bp_\bo_\bs_\be menu,
- the body of your message and attachments are stored in the mailbox specified by
- the _\b$_\bp_\bo_\bs_\bt_\bp_\bo_\bn_\be_\bd (section 7.4.218 , page 140) variable. This means that you can
- recall the message even if you exit Mutt-ng and then restart it at a later
- time.
+ A. Acknowledgments
- Once a message is postponed, there are several ways to resume it. From the
- command line you can use the ``-p'' option, or if you _\bc_\bo_\bm_\bp_\bo_\bs_\be a new message
+ B. Hacking Documentation
- The Mutt Next Generation E-Mail Client 21
+ Index
- from the _\bi_\bn_\bd_\be_\bx or _\bp_\ba_\bg_\be_\br you will be prompted if postponed messages exist. If
- multiple messages are currently postponed, the _\bp_\bo_\bs_\bt_\bp_\bo_\bn_\be_\bd menu will pop up and
- you can select which message you would like to resume.
+ List of Tables
- N\bNo\bot\bte\be:\b: If you postpone a reply to a message, the reply setting of the message is
- only updated when you actually finish the message and send it. Also, you must
- be in the same folder with the message you replied to for the status of the
- message to be updated.
+ 2.1. Most commonly used movement bindings
- See also the _\b$_\bp_\bo_\bs_\bt_\bp_\bo_\bn_\be (section 7.4.217 , page 139) quad-option.
+ 2.2. Line Editor Functions
- _\b3_\b. _\bC_\bo_\bn_\bf_\bi_\bg_\bu_\br_\ba_\bt_\bi_\bo_\bn
+ 2.3. Most commonly used Index Bindings
- _\b3_\b._\b1 _\bL_\bo_\bc_\ba_\bt_\bi_\bo_\bn_\bs _\bo_\bf _\bC_\bo_\bn_\bf_\bi_\bg_\bu_\br_\ba_\bt_\bi_\bo_\bn _\bF_\bi_\bl_\be_\bs
+ 2.4. Most commonly used Pager Bindings
- While the default configuration (or ``preferences'') make Mutt-ng usable right
- out of the box, it is often desirable to tailor Mutt-ng to suit your own
- tastes. When Mutt-ng is first invoked, it will attempt to read the ``system''
- configuration file (defaults set by your local system administrator), unless
- the ``-n'' _\bc_\bo_\bm_\bm_\ba_\bn_\bd _\bl_\bi_\bn_\be (section 7.1 , page 80) option is specified. This
- file is typically /usr/local/share/muttng/Muttngrc or /etc/Muttngrc, Mutt-ng
- users will find this file in /usr/local/share/muttng/Muttrc or /etc/Muttngrc.
- Mutt will next look for a file named .muttrc in your home directory, Mutt-ng
- will look for .muttngrc. If this file does not exist and your home directory
- has a subdirectory named .mutt, mutt try to load a file named .muttng/muttngrc.
+ 2.5. ANSI Escape Sequences
- .muttrc (or .muttngrc for Mutt-ng) is the file where you will usually place
- your _\bc_\bo_\bm_\bm_\ba_\bn_\bd_\bs (section 7.3 , page 83) to configure Mutt-ng.
+ 2.6. ANSI Colors
- _\b3_\b._\b2 _\bS_\by_\bn_\bt_\ba_\bx _\bo_\bf _\bI_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\ba_\bt_\bi_\bo_\bn _\bF_\bi_\bl_\be_\bs
+ 2.7. Most commonly used thread-related bindings
- An initialization file consists of a series of _\bc_\bo_\bm_\bm_\ba_\bn_\bd_\bs (section 7.3 , page
- 83). Each line of the file may contain one or more commands. When multiple
- commands are used, they must be separated by a semicolon (;).
+ 2.8. Most commonly used Mail Composition Bindings
- set realname='Mutt-ng user' ; ignore x-
+ 2.9. Most commonly used Compose Menu Bindings
- 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,
+ 2.10. PGP Key Menu Flags
- my_hdr X-Disclaimer: Why are you listening to me? # This is a comment
+ 3.1. Alternative Key Names
- Single quotes (') and double quotes (') can be used to quote strings which
+ 7.1. Reference: Command Line Options
- The Mutt Next Generation E-Mail Client 22
+ 7.2. Reference: Patterns
- contain spaces or other special characters. The difference between the two
- types of quotes is similar to that of many popular shell programs, namely that
- a single quote is used to specify a literal string (one that is not interpreted
- for shell variables or quoting with a backslash [see next paragraph]), while
- double quotes indicate a string for which should be evaluated. For example,
- backtics are evaluated inside of double quotes, but n\bno\bot\bt for single quotes.
+ 7.3. Reference: Obsolete Variables
- \ quotes the next character, just as in shells such as bash and zsh. For exam-
- ple, 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.
+ 7.4. Reference: Default Generic Function Bindings
- set realname="Michael \"MuttDude\" Elkins"
+ 7.5. Reference: Default Index Function Bindings
- ``\\'' means to insert a literal ``\'' into the line. ``\n'' and ``\r'' have
- their usual C meanings of linefeed and carriage-return, respectively.
+ 7.6. Reference: Default Pager Function Bindings
- A \ at the end of a line can be used to split commands over multiple lines,
- provided that the split points don't appear in the middle of command names.
+ 7.7. Reference: Default Alias Menu Function Bindings
- Please note that, unlike the various shells, mutt-ng interprets a ``\'' at the
- end of a line also in comments. This allows you to disable a command split over
- multiple lines with only one ``#''.
+ 7.8. Reference: Default Query Menu Function Bindings
- # folder-hook . \
- set realname="Michael \"MuttDude\" Elkins"
+ 7.9. Reference: Default Attachment Menu Function Bindings
- When testing your config files, beware the following caveat. The backslash at
- the end of the commented line extends the current line with the next line -
- then referred to as a ``continuation line''. As the first line is commented
- with a hash (#) all following continuation lines are also part of a comment and
- therefore are ignored, too. So take care of comments when continuation lines
- are involved within your setup files!
+ 7.10. Reference: Default Compose Menu Function Bindings
- Abstract example:
+ 7.11. Reference: Default Postpone Menu Function Bindings
- line1\
- line2a # line2b\
- line3\
- line4
- line5
+ 7.12. Reference: Default Browser Menu Function Bindings
- line1 ``continues'' until line4. however, the part after the # is a comment
- which includes line3 and line4. line5 is a new line of its own and thus is
- interpreted again.
+ 7.13. Reference: Default PGP Menu Function Bindings
- It is also possible to substitute the output of a Unix command in an initial-
- ization file. This is accomplished by enclosing the command in backquotes
- (``). For example,
+ 7.14. Reference: Default Editor Function Bindings
- The Mutt Next Generation E-Mail Client 23
+ 7.15. Referene: Default Sidebar Function Bindings
- my_hdr X-Operating-System: `uname -a`
+Chapter 1. Introduction
- 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.
+ Table of Contents
- UNIX environments can be accessed like the way it is done in shells like sh and
- bash: Prepend the name of the environment by a ``$''. For example,
+ 1. Overview
- set record=+sent_on_$HOSTNAME
+ 2. Mutt-ng Home Page
- This also applies for all configuration variables known to mutt-ng, for example
+ 3. Mailing Lists
- set imap_home_namespace = $folder
+ 4. Software Distribution Sites
- The commands understood by mutt are explained in the next paragraphs. For a
- complete list, see the _\bc_\bo_\bm_\bm_\ba_\bn_\bd _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be (section 7.3 , page 83).
+ 5. IRC
- _\b3_\b._\b3 _\bD_\be_\bf_\bi_\bn_\bi_\bn_\bg_\b/_\bU_\bs_\bi_\bn_\bg _\ba_\bl_\bi_\ba_\bs_\be_\bs
+ 6. Weblog
- Usage: alias _\bk_\be_\by _\ba_\bd_\bd_\br_\be_\bs_\bs [ , _\ba_\bd_\bd_\br_\be_\bs_\bs, ... ]
+ 7. Copyright
- It's usually very cumbersome to remember or type out the address of someone you
- are communicating with. Mutt-ng allows you to create ``aliases'' which map a
- short string to a full address.
+ 8. Manual Conventions
- N\bNo\bot\bte\be:\b: if you want to create an alias for a group (by specifying more than one
- address), you m\bmu\bus\bst\bt separate the addresses with a comma (``,'').
+1. Overview
- To remove an alias or aliases (``*'' means all aliases):
+ Mutt-ng is a small but very powerful text-based MIME mail client. Mutt-ng
+ is highly configurable, and is well suited to the mail power user with
+ advanced features like key bindings, keyboard macros, mail threading,
+ regular expression searches and a powerful pattern matching language for
+ selecting groups of messages.
- unalias [ * | _\bk_\be_\by _\b._\b._\b. ]
+ This documentation additionally contains documentation to Mutt-NG ,a fork
+ from Mutt with the goal to fix all the little annoyances of Mutt, to
+ integrate all the Mutt patches that are floating around in the web, and to
+ add other new features. Features specific to Mutt-ng will be discussed in
+ an extra section. Don't be confused when most of the documentation talk
+ about Mutt and not Mutt-ng, Mutt-ng contains all Mutt features, plus many
+ more.
- alias muttdude me@cs.hmc.edu (Michael Elkins)
- alias theguys manny, moe, jack
+2. Mutt-ng Home Page
- Unlike other mailers, Mutt-ng doesn't require aliases to be defined in a spe-
- cial file. The alias command can appear anywhere in a configuration file, as
- long as this file is _\bs_\bo_\bu_\br_\bc_\be_\bd (section 3.28 , page 43). Consequently, you can
- have multiple alias files, or you can have all aliases defined in your muttrc.
+ <http://www.muttng.org/>
- On the other hand, the _\bc_\br_\be_\ba_\bt_\be_\b-_\ba_\bl_\bi_\ba_\bs (section 2.5.4 , page 11) function can use
- only one file, the one pointed to by the _\b$_\ba_\bl_\bi_\ba_\bs_\b__\bf_\bi_\bl_\be (section 7.4.4 , page 87)
- variable (which is ~/.muttrc by default). This file is not special either, in
- the sense that Mutt-ng will happily append aliases to any file, but in order
- for the new aliases to take effect you need to explicitly _\bs_\bo_\bu_\br_\bc_\be (section
- 3.28 , page 43) this file too.
+3. Mailing Lists
- The Mutt Next Generation E-Mail Client 24
+ o <mutt-ng-users@lists.berlios.de>: This is where the mutt-ng user
+ support happens.
- For example:
+ o <mutt-ng-devel@lists.berlios.de>: The development mailing list for
+ mutt-ng
- source /usr/local/share/Mutt-ng.aliases
- source ~/.mail_aliases
- set alias_file=~/.mail_aliases
+4. Software Distribution Sites
- To use aliases, you merely use the alias at any place in mutt where mutt
- prompts for addresses, such as the _\bT_\bo_\b: or _\bC_\bc_\b: prompt. You can also enter
- aliases in your editor at the appropriate headers if you have the _\b$_\be_\bd_\bi_\bt_\b__\bh_\be_\ba_\bd_\be_\br_\bs
- (section 7.4.57 , page 100) variable set.
+ So far, there are no official releases of Mutt-ng, but you can download
+ daily snapshots from <http://mutt-ng.berlios.de/snapshots/>
- In addition, at the various address prompts, you can use the tab character to
- expand a partial alias to the full alias. If there are multiple matches, mutt
- will bring up a menu with the matching aliases. In order to be presented with
- the full list of aliases, you must hit tab with out a partial alias, such as at
- the beginning of the prompt or after a comma denoting multiple addresses.
+5. IRC
- In the alias menu, you can select as many aliases as you want with the _\bs_\be_\bl_\be_\bc_\bt_\b-
- _\be_\bn_\bt_\br_\by key (default: RET), and use the _\be_\bx_\bi_\bt key (default: q) to return to the
- address prompt.
+ Visit channel #muttng on irc.freenode.net (www.freenode.net) to chat with
+ other people interested in Mutt-ng.
- _\b3_\b._\b4 _\bC_\bh_\ba_\bn_\bg_\bi_\bn_\bg _\bt_\bh_\be _\bd_\be_\bf_\ba_\bu_\bl_\bt _\bk_\be_\by _\bb_\bi_\bn_\bd_\bi_\bn_\bg_\bs
+6. Weblog
- Usage: bind _\bm_\ba_\bp _\bk_\be_\by _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn
+ If you want to read fresh news about the latest development in Mutt-ng,
+ and get informed about stuff like interesting, Mutt-ng-related articles
+ and packages for your favorite distribution, you can read and/or subscribe
+ to our Mutt-ng development weblog.
- This command allows you to change the default key bindings (operation invoked
- when pressing a key).
+7. Copyright
- _\bm_\ba_\bp specifies in which menu the binding belongs. Multiple maps may be speci-
- fied by separating them with commas (no additional whitespace is allowed). The
- currently defined maps are:
+ Mutt is Copyright (C) 1996-2000 Michael R. Elkins <me@cs.hmc.edu> and
+ others
- generic
- This is not a real menu, but is used as a fallback for all of the
- other menus except for the pager and editor modes. If a key is not
- defined in another menu, Mutt-ng will look for a binding to use in
- this menu. This allows you to bind a key to a certain function in
- multiple menus instead of having multiple bind statements to accom-
- plish the same task.
+ 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.
- alias
- The alias menu is the list of your personal aliases as defined in
- your muttrc. It is the mapping from a short alias name to the full
- email address(es) of the recipient(s).
+ 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.
- attach
- The attachment menu is used to access the attachments on received
- messages.
+ 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., 51
+ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- The Mutt Next Generation E-Mail Client 25
+8. Manual Conventions
- browser
- The browser is used for both browsing the local directory struc-
- ture, and for listing all of your incoming mailboxes.
+ This manual contains several (hopefully consistent) conventions to
+ specially layout different items in different fashions.
- editor
- The editor is the line-based editor the user enters text data.
+ o Configuration and environment variables will be printed in a
+ typewriter font and both prefixed with a dollar sign as it's common
+ for UNIX-like environments. Configuration variables are lower-case
+ only while environment variables are upper-case only. $imap_mail_check
+ is a configuration variable while $EDITOR is an environment variable.
- index
- The index is the list of messages contained in a mailbox.
+ o Muttng-specific functions are enclosed in <> and printed in a
+ typewriter font, too, as in <sync-mailbox>.
- compose
- The compose menu is the screen used when sending a new message.
+ o As common for UNIX-like environments, references to manual pages are
+ printed with the section enclosed in braces, as in vi(1) or
+ muttngrc(5). Execute man [section] [name] to view the manual page.
- pager
- The pager is the mode used to display message/attachment data, and
- help listings.
+ o Keys are presented in the following way: ordinary keys are just given
+ as-is, e.g. q. Control characters are prefixed with C- (e.g. the
+ screen can be redraw by pressing C-L) and E- for Escape, e.g. a folder
+ can be opened read-only with E-c.
- pgp
- The pgp menu is used to select the OpenPGP keys used for encrypting
- outgoing messages.
+ If, while reading this fine manual, you find any inconsistencies of
+ whatever kind, please contact the developers via
+ <mutt-ng-devel@lists.berlios.de> to report it.
- postpone
- The postpone menu is similar to the index menu, except is used when
- recalling a message the user was composing, but saved until later.
+Chapter 2. Getting Started
- _\bk_\be_\by is the key (or key sequence) you wish to bind. To specify a control char-
- acter, use the sequence _\b\_\bC_\bx, where _\bx is the letter of the control character
- (for example, to specify control-A use ``\Ca''). Note that the case of _\bx as
- well as _\b\_\bC is ignored, so that _\b\_\bC_\bA, _\b\_\bC_\ba, _\b\_\bc_\bA and _\b\_\bc_\ba are all equivalent. An
- alternative form is to specify the key as a three digit octal number prefixed
- with a ``\'' (for example _\b\_\b1_\b7_\b7 is equivalent to _\b\_\bc_\b?).
+ Table of Contents
- In addition, _\bk_\be_\by may consist of:
+ 1. Basic Concepts
- The Mutt Next Generation E-Mail Client 26
-
- \t tab
- <tab> tab
- <backtab> backtab / shift-tab
- \r carriage return
- \n newline
- \e escape
- <esc> 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
- <enter> Enter
- <return> Return
- <home> Home
- <end> End
- <space> Space bar
- <f1> function key 1
- <f10> function key 10
+ 1.1. Screens and Menus
- _\bk_\be_\by does not need to be enclosed in quotes unless it contains a space (`` '').
+ 1.2. Configuration
- _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn specifies which action to take when _\bk_\be_\by is pressed. For a complete
- list of functions, see the _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be (section 7.5 , page 171). The special
- function noop unbinds the specified key sequence.
+ 1.3. Functions
- _\b3_\b._\b5 _\bD_\be_\bf_\bi_\bn_\bi_\bn_\bg _\ba_\bl_\bi_\ba_\bs_\be_\bs _\bf_\bo_\br _\bc_\bh_\ba_\br_\ba_\bc_\bt_\be_\br _\bs_\be_\bt_\bs
+ 1.4. Interaction
- Usage: charset-hook _\ba_\bl_\bi_\ba_\bs _\bc_\bh_\ba_\br_\bs_\be_\bt
+ 1.5. Modularization
- Usage: iconv-hook _\bc_\bh_\ba_\br_\bs_\be_\bt _\bl_\bo_\bc_\ba_\bl_\b-_\bc_\bh_\ba_\br_\bs_\be_\bt
+ 1.6. Patterns
- The charset-hook command defines an alias for a character set. This is useful
- to properly display messages which are tagged with a character set name not
- known to mutt.
+ 2. Screens and Menus
- The iconv-hook command defines a system-specific name for a character set.
- This is helpful when your systems character conversion library insists on using
- strange, system-specific names for character sets.
+ 2.1. Index
- _\b3_\b._\b6 _\bS_\be_\bt_\bt_\bi_\bn_\bg _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be_\bs _\bb_\ba_\bs_\be_\bd _\bu_\bp_\bo_\bn _\bm_\ba_\bi_\bl_\bb_\bo_\bx
+ 2.2. Pager
- Usage: folder-hook [!]_\br_\be_\bg_\be_\bx_\bp _\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ 2.3. File Browser
- It is often desirable to change settings based on which mailbox you are
+ 2.4. Sidebar
- The Mutt Next Generation E-Mail Client 27
+ 2.5. Help
- reading. The folder-hook command provides a method by which you can execute
- any configuration command. _\br_\be_\bg_\be_\bx_\bp is a regular expression specifying in which
- mailboxes to execute _\bc_\bo_\bm_\bm_\ba_\bn_\bd before loading. If a mailbox matches multiple
- folder-hook's, they are executed in the order given in the muttrc.
+ 2.6. Compose Menu
- N\bNo\bot\bte\be:\b: if you use the ``!'' shortcut for _\b$_\bs_\bp_\bo_\bo_\bl_\bf_\bi_\bl_\be (section 7.4.301 , page
- 159) at the beginning of the pattern, you must place it inside of double or
- single quotes in order to distinguish it from the logical _\bn_\bo_\bt operator for the
- expression.
+ 2.7. Alias Menu
- Note that the settings are _\bn_\bo_\bt restored when you leave the mailbox. For exam-
- ple, a command action to perform is to change the sorting method based upon the
- mailbox being read:
+ 2.8. Attachment Menu
- folder-hook mutt set sort=threads
+ 2.9. Key Menu
- However, the sorting method is not restored to its previous value when reading
- a different mailbox. To specify a _\bd_\be_\bf_\ba_\bu_\bl_\bt command, use the pattern ``.'':
+ 3. Moving Around in Menus
- folder-hook . set sort=date-sent
+ 4. Editing Input Fields
- _\b3_\b._\b7 _\bK_\be_\by_\bb_\bo_\ba_\br_\bd _\bm_\ba_\bc_\br_\bo_\bs
+ 5. Reading Mail - The Index and Pager
- Usage: macro _\bm_\be_\bn_\bu _\bk_\be_\by _\bs_\be_\bq_\bu_\be_\bn_\bc_\be [ _\bd_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn ]
+ 5.1. The Message Index
- Macros are useful when you would like a single key to perform a series of
- actions. When you press _\bk_\be_\by in menu _\bm_\be_\bn_\bu, Mutt-ng will behave as if you had
- typed _\bs_\be_\bq_\bu_\be_\bn_\bc_\be. So if you have a common sequence of commands you type, you can
- create a macro to execute those commands with a single key.
+ 5.2. The Pager
- _\bm_\be_\bn_\bu is the _\bm_\ba_\bp (section 3.4 , page 24) which the macro will be bound. Multi-
- ple maps may be specified by separating multiple menu arguments by commas.
- Whitespace may not be used in between the menu arguments and the commas sepa-
- rating them.
+ 5.3. Threaded Mode
- _\bk_\be_\by and _\bs_\be_\bq_\bu_\be_\bn_\bc_\be are expanded by the same rules as the _\bk_\be_\by _\bb_\bi_\bn_\bd_\bi_\bn_\bg_\bs (section
- 3.4 , page 24). There are some additions however. The first is that control
- characters in _\bs_\be_\bq_\bu_\be_\bn_\bc_\be can also be specified as _\b^_\bx. In order to get a caret
- (`^'') you need to use _\b^_\b^. Secondly, to specify a certain key such as _\bu_\bp or to
- invoke a function directly, you can use the format _\b<_\bk_\be_\by _\bn_\ba_\bm_\be_\b> and _\b<_\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn
- _\bn_\ba_\bm_\be_\b>. For a listing of key names see the section on _\bk_\be_\by _\bb_\bi_\bn_\bd_\bi_\bn_\bg_\bs (section
- 3.4 , page 24). Functions are listed in the _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be (section
- 7.5 , page 171).
+ 5.4. Miscellaneous Functions
- The advantage with using function names directly is that the macros will work
- regardless of the current key bindings, so they are not dependent on the user
- having particular key definitions. This makes them more robust and portable,
- and also facilitates defining of macros in files used by more than one user
+ 6. Sending Mail
- The Mutt Next Generation E-Mail Client 28
+ 6.1. Composing new messages
- (eg. the system Muttngrc).
+ 6.2. Replying
- Optionally you can specify a descriptive text after _\bs_\be_\bq_\bu_\be_\bn_\bc_\be, which is shown in
- the help screens.
+ 6.3. Editing the message header
- N\bNo\bot\bte\be:\b: Macro definitions (if any) listed in the help screen(s), are silently
- truncated at the screen width, and are not wrapped.
+ 6.4. Using Mutt-ng with PGP
- _\b3_\b._\b8 _\bU_\bs_\bi_\bn_\bg _\bc_\bo_\bl_\bo_\br _\ba_\bn_\bd _\bm_\bo_\bn_\bo _\bv_\bi_\bd_\be_\bo _\ba_\bt_\bt_\br_\bi_\bb_\bu_\bt_\be_\bs
+ 6.5. Sending anonymous messages via mixmaster
- Usage: color _\bo_\bb_\bj_\be_\bc_\bt _\bf_\bo_\br_\be_\bg_\br_\bo_\bu_\bn_\bd _\bb_\ba_\bc_\bk_\bg_\br_\bo_\bu_\bn_\bd [ _\br_\be_\bg_\be_\bx_\bp ]
+ 7. Forwarding and Bouncing Mail
- Usage: color index _\bf_\bo_\br_\be_\bg_\br_\bo_\bu_\bn_\bd _\bb_\ba_\bc_\bk_\bg_\br_\bo_\bu_\bn_\bd _\bp_\ba_\bt_\bt_\be_\br_\bn
+ 8. Postponing Mail
- Usage: uncolor index _\bp_\ba_\bt_\bt_\be_\br_\bn [ _\bp_\ba_\bt_\bt_\be_\br_\bn ... ]
+1. Basic Concepts
- If your terminal supports color, you can spice up Mutt-ng by creating your own
- color scheme. To define the color of an object (type of information), you must
- specify both a foreground color a\ban\bnd\bd a background color (it is not possible to
- only specify one or the other).
+ 1.1. Screens and Menus
- _\bo_\bb_\bj_\be_\bc_\bt can be one of:
+ mutt-ng offers different screens of which every has its special purpose:
- +\bo attachment
+ o The index displays the contents of the currently opened mailbox.
- +\bo body (match _\br_\be_\bg_\be_\bx_\bp in the body of messages)
+ o The pager is responsible for displaying messages, that is, the header,
+ the body and all attached parts.
- +\bo bold (highlighting bold patterns in the body of messages)
+ o The file browser offers operations on and displays information of all
+ folders mutt-ng should watch for mail.
- +\bo error (error messages printed by Mutt-ng)
+ o The sidebar offers a permanent view of which mailboxes contain how
+ many total, new and/or flagged mails.
- +\bo header (match _\br_\be_\bg_\be_\bx_\bp in the message header)
+ o The help screen lists for all currently available commands how to
+ invoke them as well as a short description.
- +\bo hdrdefault (default color of the message header in the pager)
+ o The compose menu is a comfortable interface take last actions before
+ sending mail: change subjects, attach files, remove attachements, etc.
- +\bo index (match _\bp_\ba_\bt_\bt_\be_\br_\bn in the message index)
+ o The attachement menu gives a summary and the tree structure of the
+ attachements of the current message.
- +\bo indicator (arrow or bar used to indicate the current item in a menu)
+ o The alias menu lists all or a fraction of the aliases a user has
+ defined.
- +\bo markers (the ``+'' markers at the beginning of wrapped lines in the pager)
+ o The key menu used in connection with encryption lets users choose the
+ right key to encrypt with.
- +\bo message (informational messages)
+ When mutt-ng is started without any further options, it'll open the users
+ default mailbox and display the index.
- +\bo normal
+ 1.2. Configuration
- +\bo quoted (text matching _\b$_\bq_\bu_\bo_\bt_\be_\b__\br_\be_\bg_\be_\bx_\bp (section 7.4.229 , page 142) in the
- body of a message)
+ Mutt-ng does not feature an internal configuration interface or menu due
+ to the simple fact that this would be too complex to handle (currently
+ there are several hundred variables which fine-tune the behaviour.)
- +\bo quoted1, quoted2, ..., quotedN\bN (higher levels of quoting)
+ Mutt-ng is configured using configuration files which allow users to add
+ comments or manage them via version control systems to ease maintenance.
- +\bo search (highlighting of words in the pager)
+ Also, mutt-ng comes with a shell script named grml-muttng kindly
+ contributed by users which really helps and eases the creation of a user's
+ configuration file. When downloading the source code via a snapshot or via
+ subversion, it can be found in the contrib directory.
- The Mutt Next Generation E-Mail Client 29
+ 1.3. Functions
- +\bo signature
+ Mutt-ng offers great flexibility due to the use of functions: internally,
+ every action a user can make mutt-ng perform is named ``function.'' Those
+ functions are assigned to keys (or even key sequences) and may be
+ completely adjusted to user's needs. The basic idea is that the impatient
+ users get a very intuitive interface to start off with and advanced users
+ virtually get no limits to adjustments.
- +\bo status (mode lines used to display info about the mailbox or message)
+ 1.4. Interaction
- +\bo tilde (the ``~'' used to pad blank lines in the pager)
+ Mutt-ng has two basic concepts of user interaction:
- +\bo tree (thread tree drawn in the message index and attachment menu)
+ 1. There is one dedicated line on the screen used to query the user for
+ input, issue any command, query variables and display error and
+ informational messages. As for every type of user input, this requires
+ manual action leading to the need of input.
- +\bo underline (highlighting underlined patterns in the body of messages)
+ 2. The automatized interface for interaction are the so called hooks.
+ Hooks specify actions the user wants to be performed at well-defined
+ situations: what to do when entering which folder, what to do when
+ displaying or replying to what kind of message, etc. These are
+ optional, i.e. a user doesn't need to specify them but can do so.
- _\bf_\bo_\br_\be_\bg_\br_\bo_\bu_\bn_\bd and _\bb_\ba_\bc_\bk_\bg_\br_\bo_\bu_\bn_\bd can be one of the following:
+ 1.5. Modularization
- +\bo white
+ Although mutt-ng has many functionality built-in, many features can be
+ delegated to external tools to increase flexibility: users can define
+ programs to filter a message through before displaying, users can use any
+ program they want for displaying a message, message types (such as PDF or
+ PostScript) for which mutt-ng doesn't have a built-in filter can be
+ rendered by arbitrary tools and so forth. Although mutt-ng has an alias
+ mechanism built-in, it features using external tools to query for nearly
+ every type of addresses from sources like LDAP, databases or just the list
+ of locally known users.
- +\bo black
+ 1.6. Patterns
- +\bo green
+ Mutt-ng has a built-in pattern matching ``language'' which is as widely
+ used as possible to present a consistent interface to users. The same
+ ``pattern terms'' can be used for searching, scoring, message selection
+ and much more.
- +\bo magenta
+2. Screens and Menus
- +\bo blue
+ 2.1. Index
- +\bo cyan
+ The index is the screen that you usually see first when you start mutt-ng.
+ It gives an overview over your emails in the currently opened mailbox. By
+ default, this is your system mailbox. The information you see in the index
+ is a list of emails, each with its number on the left, its flags (new
+ email, important email, email that has been forwarded or replied to,
+ tagged email, ...), the date when email was sent, its sender, the email
+ size, and the subject. Additionally, the index also shows thread
+ hierarchies: when you reply to an email, and the other person replies
+ back, you can see the other's person email in a "sub-tree" below. This is
+ especially useful for personal email between a group of people or when
+ you've subscribed to mailing lists.
- +\bo yellow
+ 2.2. Pager
- +\bo red
+ The pager is responsible for showing the email content. On the top of the
+ pager you have an overview over the most important email headers like the
+ sender, the recipient, the subject, and much more information. How much
+ information you actually see depends on your configuration, which we'll
+ describe below.
- +\bo default
+ Below the headers, you see the email body which usually contains the
+ message. If the email contains any attachments, you will see more
+ information about them below the email body, or, if the attachments are
+ text files, you can view them directly in the pager.
+
+ To give the user a good overview, it is possible to configure mutt-ng to
+ show different things in the pager with different colors. Virtually
+ everything that can be described with a regular expression can be colored,
+ e.g. URLs, email addresses or smileys.
+
+ 2.3. File Browser
+
+ The file browser is the interface to the local or remote file system. When
+ selecting a mailbox to open, the browser allows custom sorting of items,
+ limiting the items shown by a regular expression and a freely adjustable
+ format of what to display in which way. It also allows for easy navigation
+ through the file system when selecting file(s) to attach to a message,
+ select multiple files to attach and many more.
+
+ 2.4. Sidebar
+
+ The sidebar comes in handy to manage mails which are spread over different
+ folders. All folders users setup mutt-ng to watch for new mail will be
+ listed. The listing includes not only the name but also the number of
+ total messages, the number of new and flagged messages. Items with new
+ mail may be colored different from those with flagged mail, items may be
+ shortened or compress if they're they to long to be printed in full form
+ so that by abbreviated names, user still now what the name stands for.
+
+ 2.5. Help
+
+ The help screen is meant to offer a quick help to the user. It lists the
+ current configuration of key bindings and their associated commands
+ including a short description, and currently unbound functions that still
+ need to be associated with a key binding (or alternatively, they can be
+ called via the mutt-ng command prompt).
+
+ 2.6. Compose Menu
+
+ The compose menu features a split screen containing the information which
+ really matter before actually sending a message by mail or posting an
+ article to a newsgroup: who gets the message as what (recipient,
+ newsgroup, who gets what kind of copy). Additionally, users may set
+ security options like deciding whether to sign, encrypt or sign and
+ encrypt a message with/for what keys.
+
+ Also, it's used to attach messages, news articles or files to a message,
+ to re-edit any attachment including the message itself.
+
+ 2.7. Alias Menu
+
+ The alias menu is used to help users finding the recipients of messages.
+ For users who need to contact many people, there's no need to remember
+ addresses or names completely because it allows for searching, too. The
+ alias mechanism and thus the alias menu also features grouping several
+ addresses by a shorter nickname, the actual alias, so that users don't
+ have to select each single recipient manually.
+
+ 2.8. Attachment Menu
+
+ As will be later discussed in detail, mutt-ng features a good and stable
+ MIME implementation, that is, is greatly supports sending and receiving
+ messages of arbitrary type. The attachment menu displays a message's
+ structure in detail: what content parts are attached to which parent part
+ (which gives a true tree structure), which type is of what type and what
+ size. Single parts may saved, deleted or modified to offer great and easy
+ access to message's internals.
+
+ 2.9. Key Menu
+
+ FIXME
+
+3. Moving Around in Menus
+
+ Information is presented in menus, very similar to ELM. Here is a
+ tableshowing the common keys used to navigate menus in Mutt-ng.
+
+ Table 2.1. Most commonly used movement bindings
+
+ Key Function Description
+ j or Down <next-entry> move to the next entry
+ k or Up <previous-entry> move to the previous entry
+ z or PageDn <page-down> go to the next page
+ Z or PageUp <page-up> go to the previous page
+ = or Home <first-entry> jump to the first entry
+ * or End <last-entry> jump to the last entry
+ q <quit> exit the current menu
+ ? <help> list all key bindings for the current menu
+
+4. Editing Input Fields
+
+ Mutt-ng 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.
+
+ Table 2.2. Line Editor Functions
+
+ Key Function Description
+ C-A or Home <bol> move to the start of the line
+ C-B or Left <backward-char> move back one char
+ E-B <backward-word> move back one word
+ C-D or Delete <delete-char> delete the char under the cursor
+ C-E or End <eol> move to the end of the line
+ C-F or Right <forward-char> move forward one char
+ E-F <forward-word> move forward one word
+ Tab <complete> complete filename or alias
+ C-T <complete-query> complete address with query
+ C-K <kill-eol> delete to the end of the line
+ E-d <kill-eow> delete to the end of the word
+ C-W <kill-word> kill the word in front of the cursor
+ C-U <kill-line> delete entire line
+ C-V <quote-char> quote the next typed key
+ Up <history-up> recall previous string from history
+ Down <history-down> recall next string from history
+ BackSpace <backspace> kill the char in front of the cursor
+ E-u <upcase-word> convert word to upper case
+ E-l <downcase-word> convert word to lower case
+ E-c <capitalize-word> capitalize the word
+ C-G abort
+ Return finish editing
- +\bo color_\bx
+ You can remap the editor functions using the bind command. For example, to
+ make the Delete key delete the character in front of the cursor rather
+ than under, you could use
- _\bf_\bo_\br_\be_\bg_\br_\bo_\bu_\bn_\bd can optionally be prefixed with the keyword bright to make the fore-
- ground color boldfaced (e.g., brightred).
+ bind editor <delete> backspace
- If your terminal supports it, the special keyword _\bd_\be_\bf_\ba_\bu_\bl_\bt can be used as a
- transparent color. The value _\bb_\br_\bi_\bg_\bh_\bt_\bd_\be_\bf_\ba_\bu_\bl_\bt is also valid. If Mutt-ng is
- linked against the _\bS_\b-_\bL_\ba_\bn_\bg library, you also need to set the _\bC_\bO_\bL_\bO_\bR_\bF_\bG_\bB_\bG environ-
- ment variable to the default colors of your terminal for this to work; for
- example (for Bourne-like shells):
+5. Reading Mail - The Index and Pager
- set COLORFGBG="green;black"
- export COLORFGBG
+ Similar to many other mail clients, there are two modes in which mail
+ isread in Mutt-ng. The first is the index of messages in the mailbox,
+ which is called the ``index'' in Mutt-ng. The second mode is the display
+ of the message contents. This is called the ``pager.''
- N\bNo\bot\bte\be:\b: The _\bS_\b-_\bL_\ba_\bn_\bg library requires you to use the _\bl_\bi_\bg_\bh_\bt_\bg_\br_\ba_\by and _\bb_\br_\bo_\bw_\bn keywords
- instead of _\bw_\bh_\bi_\bt_\be and _\by_\be_\bl_\bl_\bo_\bw when setting this variable.
+ The next few sections describe the functions provided in each of these
+ modes.
- N\bNo\bot\bte\be:\b: The uncolor command can be applied to the index object only. It removes
- entries from the list. You m\bmu\bus\bst\bt specify the same pattern specified in the color
- command for it to be removed. The pattern ``*'' is a special token which means
- to clear the color index list of all entries.
+ 5.1. The Message Index
- The Mutt Next Generation E-Mail Client 30
+ Table 2.3. Most commonly used Index Bindings
- Mutt-ng also recognizes the keywords _\bc_\bo_\bl_\bo_\br_\b0, _\bc_\bo_\bl_\bo_\br_\b1, ..., _\bc_\bo_\bl_\bo_\brN\bN-\b-1\b1 (N\bN being the
- number of colors supported by your terminal). This is useful when you remap
- the colors for your display (for example by changing the color associated with
- _\bc_\bo_\bl_\bo_\br_\b2 for your xterm), since color names may then lose their normal meaning.
+ Key Function Description
+ c change to a different mailbox
+ E-c change to a folder in read-only mode
+ C copy the current message to another mailbox
+ E-C decode a message and copy it to a folder
+ E-s decode a message and save it to a folder
+ D delete messages matching a pattern
+ d delete the current message
+ F mark as important
+ l show messages matching a pattern
+ N mark message as new
+ o change the current sort method
+ O reverse sort the mailbox
+ q save changes and exit
+ s save-message
+ T tag messages matching a pattern
+ t toggle the tag on a message
+ E-t toggle tag on entire message thread
+ U undelete messages matching a pattern
+ u undelete-message
+ v view-attachments
+ x abort changes and exit
+ Return display-message
+ Tab jump to the next new or unread message
+ @ show the author's full e-mail address
+ $ save changes to mailbox
+ / search
+ E-/ search-reverse
+ C-L clear and redraw the screen
+ C-T untag messages matching a pattern
- If your terminal does not support color, it is still possible change the video
- attributes through the use of the ``mono'' command:
+ 5.1.1. Status Flags
- Usage: mono _\b<_\bo_\bb_\bj_\be_\bc_\bt_\b> _\b<_\ba_\bt_\bt_\br_\bi_\bb_\bu_\bt_\be_\b> [ _\br_\be_\bg_\be_\bx_\bp ]
+ 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:
- Usage: mono index _\ba_\bt_\bt_\br_\bi_\bb_\bu_\bt_\be _\bp_\ba_\bt_\bt_\be_\br_\bn
+ D
- Usage: unmono index _\bp_\ba_\bt_\bt_\be_\br_\bn [ _\bp_\ba_\bt_\bt_\be_\br_\bn ... ]
+ message is deleted (is marked for deletion)
- where _\ba_\bt_\bt_\br_\bi_\bb_\bu_\bt_\be is one of the following:
+ d
- +\bo none
+ message have attachments marked for deletion
- +\bo bold
+ K
- +\bo underline
+ contains a PGP public key
- +\bo reverse
+ N
- +\bo standout
+ message is new
- _\b3_\b._\b9 _\bI_\bg_\bn_\bo_\br_\bi_\bn_\bg _\b(_\bw_\be_\be_\bd_\bi_\bn_\bg_\b) _\bu_\bn_\bw_\ba_\bn_\bt_\be_\bd _\bm_\be_\bs_\bs_\ba_\bg_\be _\bh_\be_\ba_\bd_\be_\br_\bs
+ O
- Usage: [un]ignore _\bp_\ba_\bt_\bt_\be_\br_\bn [ _\bp_\ba_\bt_\bt_\be_\br_\bn ... ]
+ message is old
- 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.
+ P
- 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 ``con-
- tent-''. ``ignore *'' will ignore all headers.
+ message is PGP encrypted
- To remove a previously added token from the list, use the ``unignore'' command.
- The ``unignore'' command will make Mutt-ng display headers with the given pat-
- tern. For example, if you do ``ignore x-'' it is possible to ``unignore x-
- mailer''.
+ r
- ``unignore *'' will remove all tokens from the ignore list.
+ message has been replied to
- For example:
+ S
- # Sven's draconian header weeding
- ignore *
- unignore from date subject to cc
- unignore organization organisation x-mailer: x-newsreader: x-mailing-list:
- unignore posted-to:
+ message is signed, and the signature is succesfully verified
- The Mutt Next Generation E-Mail Client 31
+ s
- _\b3_\b._\b1_\b0 _\bA_\bl_\bt_\be_\br_\bn_\ba_\bt_\bi_\bv_\be _\ba_\bd_\bd_\br_\be_\bs_\bs_\be_\bs
+ message is signed
- Usage: [un]alternates _\br_\be_\bg_\be_\bx_\bp [ _\br_\be_\bg_\be_\bx_\bp ... ]
+ !
- With various functions, mutt will treat messages differently, depending on
- whether you sent them or whether you received them from someone else. For
- instance, when replying to a message that you sent to a different party, mutt
- will automatically suggest to send the response to the original message's
- recipients -- responding to yourself won't make much sense in many cases. (See
- _\b$_\br_\be_\bp_\bl_\by_\b__\bt_\bo (section 7.4.237 , page 144).)
+ message is flagged
- Many users receive e-mail under a number of different addresses. To fully use
- mutt's features here, the program must be able to recognize what e-mail
- addresses you receive mail under. That's the purpose of the alternates command:
- It takes a list of regular expressions, each of which can identify an address
- under which you receive e-mail.
+ *
- The unalternates command can be used to write exceptions to alternates pat-
- terns. If an address matches something in an alternates command, but you none-
- theless do not think it is from you, you can list a more precise pattern under
- an unalternates command.
+ message is tagged
- To remove a regular expression from the alternates list, use the unalternates
- command with exactly the same _\br_\be_\bg_\be_\bx_\bp. Likewise, if the _\br_\be_\bg_\be_\bx_\bp for a alternates
- command matches an entry on the unalternates list, that unalternates entry will
- be removed. If the _\br_\be_\bg_\be_\bx_\bp for unalternates is ``*'', _\ba_\bl_\bl _\be_\bn_\bt_\br_\bi_\be_\bs on alternates
- will be removed.
+ Some of the status flags can be turned on or off using
- _\b3_\b._\b1_\b1 _\bF_\bo_\br_\bm_\ba_\bt _\b= _\bF_\bl_\bo_\bw_\be_\bd
+ o set-flag (default: w)
- _\b3_\b._\b1_\b1_\b._\b1 _\bI_\bn_\bt_\br_\bo_\bd_\bu_\bc_\bt_\bi_\bo_\bn
+ o clear-flag (default: W)
- Mutt-ng contains support for so-called format=flowed messages. In the begin-
- ning of email, each message had a fixed line width, and it was enough for dis-
- playing them on fixed-size terminals. But times changed, and nowadays hardly
- anybody still uses fixed-size terminals: more people nowaydays use graphical
- user interfaces, with dynamically resizable windows. This led to the demand of
- a new email format that makes it possible for the email client to make the
- email look nice in a resizable window without breaking quoting levels and cre-
- ating an incompatible email format that can also be displayed nicely on old
- fixed-size terminals.
+ Furthermore, the following flags reflect who the message is addressed to.
+ They can be customized with the $to_chars variable.
- For introductory information on format=flowed messages, see
- <http://www.joeclark.org/ffaq.html>.
+ +
- _\b3_\b._\b1_\b1_\b._\b2 _\bR_\be_\bc_\be_\bi_\bv_\bi_\bn_\bg_\b: _\bD_\bi_\bs_\bp_\bl_\ba_\by _\bS_\be_\bt_\bu_\bp
+ message is to you and you only
- When you receive emails that are marked as format=flowed messages, and is for-
- matted correctly, mutt-ng will try to reformat the message to optimally fit on
- your terminal. If you want a fixed margin on the right side of your terminal,
- you can set the following:
+ T
- The Mutt Next Generation E-Mail Client 32
+ message is to you, but also to or cc'ed to others
- set wrapmargin = 10
+ C
- The code above makes the line break 10 columns before the right side of the
- terminal.
+ message is cc'ed to you
- If your terminal is so wide that the lines are embarrassingly long, you can
- also set a maximum line length:
+ F
- set max_line_length = 120
+ message is from you
- The example above will give you lines not longer than 120 characters.
+ L
- When you view at format=flowed messages, you will often see the quoting hierar-
- chy like in the following example:
+ message is sent to a subscribed mailing list
- >Bill, can you please send last month's progress report to Mr.
- >Morgan? We also urgently need the cost estimation for the new
- >production server that we want to set up before our customer's
- >project will go live.
+ 5.2. The Pager
- This obviously doesn't look very nice, and it makes it very hard to differenti-
- ate between text and quoting character. The solution is to configure mutt-ng to
- "stuff" the quoting:
+ By default, Mutt-ng uses its builtin pager to display the body of
+ messages. The pager is very similar to the Unix program less though not
+ nearly as featureful.
- set stuff_quoted
+ Table 2.4. Most commonly used Pager Bindings
- This will lead to a nicer result that is easier to read:
+ Key Function Description
+ Return go down one line
+ Space display the next page (or next message if at the end of a
+ message)
+ - go back to the previous page
+ n search for next match
+ S skip beyond quoted text
+ T toggle display of quoted text
+ ? show key bindings
+ / search for a regular expression (pattern)
+ E-/ search backwards for a regular expression
+ \ toggle search pattern coloring
+ ^ jump to the top of the message
- > Bill, can you please send last month's progress report to Mr.
- > Morgan? We also urgently need the cost estimation for the new
- > production server that we want to set up before our customer's
- > project will go live.
+ In addition, many of the functions from the index are available in the
+ pager, such as delete-message or copy-message (this is one advantage over
+ using an external pager to view messages).
- _\b3_\b._\b1_\b1_\b._\b3 _\bS_\be_\bn_\bd_\bi_\bn_\bg
+ Also, the internal pager supports a couple other advanced features. For
+ one, it will accept and translate the ``standard'' nroff sequences forbold
+ and underline. These sequences are a series of either the letter,
+ backspace (C-H), the letter again for bold or the letter, backspace, _ for
+ denoting underline. Mutt-ng will attempt to display these in bold and
+ underline respectively if your terminal supports them. If not, you can use
+ the bold and underline color objects to specify a color or mono attribute
+ for them.
- If you want mutt-ng to send emails with format=flowed set, you need to explic-
- itly set it:
+ Additionally, the internal pager supports the ANSI escape sequences for
+ character attributes. Mutt-ng translates them into the correct color and
+ character settings. The sequences Mutt-ng supports are: ESC [
+ Ps;Ps;Ps;...;Ps m (see table below for possible values for Ps).
- set text_flowed
+ Table 2.5. ANSI Escape Sequences
- The Mutt Next Generation E-Mail Client 33
+ Value Attribute
+ 0 All Attributes Off
+ 1 Bold on
+ 4 Underline on
+ 5 Blink on
+ 7 Reverse video on
+ 3x Foreground color is x (see table below)
+ 4x Background color is x (see table below)
- Additionally, you have to use an editor which supports writing format=flowed-
- conforming emails. For vim, this is done by adding w to the formatoptions (see
- :h formatoptions and :h fo-table) when writing emails.
+ Table 2.6. ANSI Colors
- Also note that _\bf_\bo_\br_\bm_\ba_\bt_\b=_\bf_\bl_\bo_\bw_\be_\bd knows about ``space-stuffing'', that is, when
- sending messages, some kinds of lines have to be indented with a single space
- on the sending side. On the receiving side, the first space (if any) is
- removed. As a consequence and in addition to the above simple setting, please
- keep this in mind when making manual formattings within the editor. Also note
- that mutt-ng currently violates the standard (RfC 3676) as it does not space-
- stuff lines starting with:
+ Number Color
+ 0 black
+ 1 red
+ 2 green
+ 3 yellow
+ 4 blue
+ 5 magenta
+ 6 cyan
+ 7 white
- +\bo > This is _\bn_\bo_\bt the quote character but a right angle used for other reasons
+ Mutt-ng uses these attributes for handling text/enriched messages, and
+ they can also be used by an external auto_view script for highlighting
+ purposes. Note: If you change the colors for your display, for example by
+ changing the color associated with color2 for your xterm, then that color
+ will be used instead of green.
- +\bo From with a trailing space.
+ 5.3. Threaded Mode
- +\bo just a space for formatting reasons
+ When the mailbox is sorted by threads ,there are a few additional
+ functions available in the index and pager modes.
- Please make sure that you manually prepend a space to each of them.
+ Table 2.7. Most commonly used thread-related bindings
- _\b3_\b._\b1_\b1_\b._\b4 _\bA_\bd_\bd_\bi_\bt_\bi_\bo_\bn_\ba_\bl _\bN_\bo_\bt_\be_\bs
+ Key Function Description
+ C-D <delete-thread> delete all messages in the current thread
+ C-U <undelete-thread> undelete all messages in the current thread
+ C-N <next-thread> jump to the start of the next thread
+ C-P <previous-thread> jump to the start of the previous thread
+ C-R <read-thread> mark the current thread as read
+ E-d <delete-subthread> delete all messages in the current subthread
+ E-u <undelete-subthread> undelete all messages in the current subthread
+ E-n <next-subthread> jump to the start of the next subthread
+ E-p <previous-subthread> jump to the start of the previous subthread
+ E-r <read-subthread> mark the current subthread as read
+ E-t <tag-thread> toggle the tag on the current thread
+ E-v <collapse-thread> toggle collapse for the current thread
+ E-V <collapse-all> toggle collapse for all threads
+ P <parent-message> jump to parent message in thread
- "
+ Note: Collapsing a thread displays only the first message in the thread
+ and hides the others. This is useful when threads contain so many messages
+ that you can only see a handful of threads onthe screen. See %M in
+ $index_format.
+
+ For example, you could use %?M?(#%03M)&(%4l)? in $index_format to
+ optionally display the number of hidden messages if the thread is
+ collapsed.
+
+ See also the $strict_threads variable.
+
+ 5.4. Miscellaneous Functions
+
+ <create-alias> (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. Note: Specifying an
+ $alias_file does not add the aliases specified there-in, you must also
+ source the file.
+
+ <check-traditional-pgp> (default: E-P)
- For completeness, the _\b$_\bd_\be_\bl_\be_\bt_\be_\b__\bs_\bp_\ba_\bc_\be (section 7.4.49 , page 98) variable pro-
- vides the mechanism to generate a DelSp=yes parameter on _\bo_\bu_\bt_\bg_\bo_\bi_\bn_\bg messages.
- According to the standard, clients receiving a format=flowed messages should
- delete the last space of a flowed line but still interpret the line as flowed.
- Because flowed lines usually contain only one space at the end, this parameter
- would make the receiving client concatenate the last word of the previous with
- the first of the current line _\bw_\bi_\bt_\bh_\bo_\bu_\bt a space. This makes ordinary text unread-
- able and is intended for languages rarely using spaces. So please use this set-
- ting only if you're sure what you're doing.
+ This function will search the current message for content signed or
+ encrypted with PGP the "traditional" way, that is, without proper MIME
+ tagging. Technically, this function will temporarily change the MIME
+ content types of the body parts containing PGP data; this is similar to
+ the <edit-type> function's effect.
- _\b3_\b._\b1_\b2 _\bM_\ba_\bi_\bl_\bi_\bn_\bg _\bl_\bi_\bs_\bt_\bs
+ <display-toggle-weed> (default: h)
- Usage: [un]lists _\br_\be_\bg_\be_\bx_\bp [ _\br_\be_\bg_\be_\bx_\bp ... ]
+ Toggles the weeding of message header fields specified by ignore commands.
- Usage: [un]subscribe _\br_\be_\bg_\be_\bx_\bp [ _\br_\be_\bg_\be_\bx_\bp ... ]
+ <edit> (default: e)
+
+ This command (available in the ``index'' and ``pager'') allows you to edit
+ the raw current message as it's present in the mail folder. After you have
+ finished editing, the changed message will be appended to the current
+ folder, and the original message will be marked for deletion.
- Mutt-ng has a few nice features for _\bh_\ba_\bn_\bd_\bl_\bi_\bn_\bg _\bm_\ba_\bi_\bl_\bi_\bn_\bg _\bl_\bi_\bs_\bt_\bs (section 4.10 ,
- page 58). In order to take advantage of them, you must specify which addresses
- belong to mailing lists, and which mailing lists you are subscribed to. Once
- you have done this, the _\bl_\bi_\bs_\bt_\b-_\br_\be_\bp_\bl_\by (section 2.5.4 , page 12) function will
- work for all known lists. Additionally, when you send a message to a sub-
- scribed list, mutt will add a Mail-Followup-To header to tell other users' mail
- user agents not to send copies of replies to your personal address. Note that
- the Mail-Followup-To header is a non-standard extension which is not supported
- by all mail user agents. Adding it is not bullet-proof against receiving per-
- sonal CCs of list messages. Also note that the generation of the Mail-Fol-
- lowup-To header is controlled by the _\b$_\bf_\bo_\bl_\bl_\bo_\bw_\bu_\bp_\b__\bt_\bo (section 7.4.69 , page 103)
- configuration variable.
+ <edit-type> (default: ) (default: C-E on the attachment menu, and in the
+ pager and index menus; C-T on the compose menu)
- The Mutt Next Generation E-Mail Client 34
+ This command is used to temporarily edit an attachment's content type to
+ fix, for instance, bogus character set parameters. When invoked from the
+ index or from the pager, you'll have the opportunity to edit the top-level
+ attachment's content type. On the attach-menu, you can change any
+ attachment's content type. These changes are not persistent, and get lost
+ upon changing folders.
- More precisely, Mutt-ng maintains lists of patterns for the addresses of known
- and subscribed mailing lists. Every subscribed mailing list is known. To mark
- a mailing list as known, use the ``lists'' command. To mark it as subscribed,
- use ``subscribe''.
+ Note that this command is also available on the compose-menu .There, it's
+ used to fine-tune the properties of attachments you are going to send.
- You can use regular expressions with both commands. To mark all messages sent
- to a specific bug report's address on mutt's bug tracking system as list mail,
- for instance, you could say ``subscribe [0-9]*@bugs.guug.de''. Often, it's
- sufficient to just give a portion of the list's e-mail address.
+ <enter-command> (default: :)
- Specify as much of the address as you need to to remove ambiguity. For exam-
- ple, if you've subscribed to the Mutt-ng mailing list, you will receive mail
- addressed to _\bm_\bu_\bt_\bt_\b-_\bu_\bs_\be_\br_\bs_\b@_\bm_\bu_\bt_\bt_\b._\bo_\br_\bg. So, to tell Mutt-ng that this is a mailing
- list, you could add ``lists mutt-users'' to your initialization file. To tell
- mutt that you are subscribed to it, add ``subscribe mutt-users'' to your ini-
- tialization file instead. If you also happen to get mail from someone whose
- address is _\bm_\bu_\bt_\bt_\b-_\bu_\bs_\be_\br_\bs_\b@_\be_\bx_\ba_\bm_\bp_\bl_\be_\b._\bc_\bo_\bm, you could use ``lists mutt-
- users@mutt\\.org'' or ``subscribe mutt-users@mutt\\.org'' to match only mail
- from the actual list.
+ 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 macro to change settings on the fly.
- The ``unlists'' command is used to remove a token from the list of known and
- subscribed mailing-lists. Use ``unlists *'' to remove all tokens.
+ <extract-keys> (default: C-K)
- To remove a mailing list from the list of subscribed mailing lists, but keep it
- on the list of known mailing lists, use ``unsubscribe''.
+ This command extracts PGP public keys from the current or tagged
+ message(s) and adds them to your PGP public key ring.
- _\b3_\b._\b1_\b3 _\bU_\bs_\bi_\bn_\bg _\bM_\bu_\bl_\bt_\bi_\bp_\bl_\be _\bs_\bp_\bo_\bo_\bl _\bm_\ba_\bi_\bl_\bb_\bo_\bx_\be_\bs
+ <forget-passphrase> (default: C-F)
- Usage: mbox-hook [!]_\bp_\ba_\bt_\bt_\be_\br_\bn _\bm_\ba_\bi_\bl_\bb_\bo_\bx
+ This command wipes the passphrase(s) from memory. It is useful, if you
+ misspelled the passphrase.
- This command is used to move read messages from a specified mailbox to a dif-
- ferent mailbox automatically when you quit or change folders. _\bp_\ba_\bt_\bt_\be_\br_\bn is a
- regular expression specifying the mailbox to treat as a ``spool'' mailbox and
- _\bm_\ba_\bi_\bl_\bb_\bo_\bx specifies where mail should be saved when read.
+ <list-reply> (default: L)
- Unlike some of the other _\bh_\bo_\bo_\bk commands, only the _\bf_\bi_\br_\bs_\bt matching pattern is used
- (it is not possible to save read mail in more than a single mailbox).
+ Reply to the current or tagged message(s) by extracting any addresses
+ which match the regular expressions given by the lists commands, but also
+ honor any Mail-Followup-To header(s) if the $honor_followup_to
+ configuration variable is set. Using this when replying to messages posted
+ to mailing lists helps avoid duplicate copies being sent to the author of
+ the message you are replying to.
- _\b3_\b._\b1_\b4 _\bD_\be_\bf_\bi_\bn_\bi_\bn_\bg _\bm_\ba_\bi_\bl_\bb_\bo_\bx_\be_\bs _\bw_\bh_\bi_\bc_\bh _\br_\be_\bc_\be_\bi_\bv_\be _\bm_\ba_\bi_\bl
+ <pipe-message> (default: )
- Usage: [un]mailboxes [!]_\bf_\bi_\bl_\be_\bn_\ba_\bm_\be [ _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be ... ]
+ Asks for an external Unix command and pipes the current or tagged
+ message(s) to it. The variables $pipe_decode, $pipe_split, $pipe_decode
+ and $wait_key control the exact behavior of this function.
- 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.
+ <resend-message> (default: E-e)
- When changing folders, pressing _\bs_\bp_\ba_\bc_\be will cycle through folders with new mail.
+ With resend-message, mutt takes the current message as a template for a
+ new message. This function is best described as "recall from arbitrary
+ folders". It can conveniently be used to forward MIME messages while
+ preserving the original mail structure. Note that the amount of headers
+ included here depends on the value of the $weed variable.
- Pressing TAB in the directory browser will bring up a menu showing the files
- specified by the mailboxes command, and indicate which contain new messages.
+ This function is also available from the attachment menu. You can use this
+ to easily resend a message which was included with a bounce message as a
+ message/rfc822 body part.
- The Mutt Next Generation E-Mail Client 35
+ <shell-escape> (default: !)
- Mutt-ng will automatically enter this mode when invoked from the command line
- with the -y option.
+ Asks for an external Unix command and executes it. The $wait_key can be
+ used to control whether Mutt-ng will wait for a key to be pressed when the
+ command returns (presumably to let the user read the output of the
+ command), based on the return status of the named command.
- The ``unmailboxes'' command is used to remove a token from the list of folders
- which receive mail. Use ``unmailboxes *'' to remove all tokens.
+ <toggle-quoted> (default: T)
- N\bNo\bot\bte\be:\b: new mail is detected by comparing the last modification time to the last
- access time. Utilities like biff or frm or any other program which accesses
- the mailbox might cause Mutt-ng to never detect new mail for that mailbox if
- they do not properly reset the access time. Backup tools are another common
- reason for updated access times.
+ The pager uses the $quote_regexp variable to detect quoted text when
+ displaying the body of the message. This function toggles the displayof
+ 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.
- N\bNo\bot\bte\be:\b: the filenames in the mailboxes command are resolved when the command is
- executed, so if these names contain _\bs_\bh_\bo_\br_\bt_\bc_\bu_\bt _\bc_\bh_\ba_\br_\ba_\bc_\bt_\be_\br_\bs (section 4.9 , page
- 58) (such as ``='' and ``!''), any variable definition that affect these char-
- acters (like _\b$_\bf_\bo_\bl_\bd_\be_\br (section 7.4.67 , page 102) and _\b$_\bs_\bp_\bo_\bo_\bl_\bf_\bi_\bl_\be (section
- 7.4.301 , page 159)) should be executed before the mailboxes command.
+ <skip-quoted> (default: S)
- _\b3_\b._\b1_\b5 _\bU_\bs_\be_\br _\bd_\be_\bf_\bi_\bn_\be_\bd _\bh_\be_\ba_\bd_\be_\br_\bs
+ This function will go to the next line of non-quoted text which come after
+ a line of quoted text in the internal pager.
+
+6. Sending Mail
+
+ The following bindings are available in the index for sending messages.
+
+ Table 2.8. Most commonly used Mail Composition Bindings
+
+ Key Function Description
+ m <compose> compose a new message
+ r <reply> reply to sender
+ g <group-reply> reply to all recipients
+ L <list-reply> reply to mailing list address
+ f <forward> forward message
+ b <bounce> bounce (remail) message
+ E-k <mail-key> mail a PGP public key to someone
+
+ Bouncing a message sends the message as is to the recipient you specify.
+ Forwarding a message allows you to add comments or modify the message you
+ are forwarding. These items are discussed in greater detail in the next
+ chapter forwarding-mail.
+
+ 6.1. Composing new messages
+
+ When you want to send an email using mutt-ng, simply press m on your
+ keyboard. Then, mutt-ng asks for the recipient via a prompt in the last
+ line:
+
+ To:
+
+ After you've finished entering the recipient(s), press return. If you want
+ to send an email to more than one recipient, separate the email addresses
+ using the comma ",". Mutt-ng then asks you for the email subject. Again,
+ press return after you've entered it. After that, mutt-ng got the most
+ important information from you, and starts up an editor where you can then
+ enter your email.
+
+ The editor that is called is selected in the following way: you can e.g.
+ set it in the mutt-ng configuration:
+
+ set editor = "vim +/^$/ -c ':set tw=72'"
+ set editor = "nano"
+ set editor = "emacs"
+
+ If you don't set your preferred editor in your configuration, mutt-ng
+ first looks whether the environment variable $VISUAL is set, and if so, it
+ takes its value as editor command. Otherwise, it has a look at $EDITOR and
+ takes its value if it is set. If no editor command can be found, mutt-ng
+ simply assumes vi(1) to be the default editor, since it's the most
+ widespread editor in the Unix world and it's pretty safe to assume that it
+ is installed and available.
+
+ When you've finished entering your message, save it and quit your editor.
+ Mutt-ng will then present you with a summary screen, the compose menu. On
+ the top, you see a summary of the most important available key commands.
+ Below that, you see the sender, the recipient(s), Cc and/or Bcc
+ recipient(s), the subject, the reply-to address, and optionally
+ information where the sent email will be stored and whether it should be
+ digitally signed and/or encrypted.
+
+ Below that, you see a list of "attachments". The mail you've just entered
+ before is also an attachment, but due to its special type (it's plain
+ text), it will be displayed as the normal message on the receiver's side.
+
+ At this point, you can add more attachments, pressing a, you can edit the
+ recipient addresses, pressing t for the "To:" field, c for the "Cc:"
+ field, and b for the "Bcc: field. You can also edit the subject the
+ subject by simply pressing s or the email message that you've entered
+ before by pressing e. You will then again return to the editor. You can
+ even edit the sender, by pressing <esc>f, but this shall only be used with
+ caution.
+
+ Alternatively, you can configure mutt-ng in a way that most of the above
+ settings can be edited using the editor. Therefore, you only need to add
+ the following to your configuration:
+
+ set edit_headers
+
+ Once you have finished editing the body of your mail message, you are
+ returned to the compose menu. The following options are available:
+
+ Table 2.9. Most commonly used Compose Menu Bindings
+
+ Key Function Description
+ a <attach-file> attach a file
+ A <attach-message> attach message(s) to the message
+ E-k <attach-key> attach a PGP public key
+ d <edit-description> edit description on attachment
+ D <detach-file> detach a file
+ t <edit-to> edit the To field
+ E-f <edit-from> edit the From field
+ r <edit-reply-to> edit the Reply-To field
+ c <edit-cc> edit the Cc field
+ b <edit-bcc> edit the Bcc field
+ y <send-message> send the message
+ s <edit-subject> edit the Subject
+ S <smime-menu> select S/MIME options
+ f <edit-fcc> specify an ``Fcc'' mailbox
+ p <pgp-menu> select PGP options
+ P <postpone-message> postpone this message until later
+ q <quit> quit (abort) sending the message
+ w <write-fcc> write the message to a folder
+ i <ispell> check spelling (if available on your system)
+ C-F <forget-passphrase> wipe passphrase(s) from memory
+
+ Note: The attach-message function will prompt you for a folder to attach
+ messages from. You can now tag messages in that folder and theywill be
+ attached to the message you are sending. Note that certainoperations like
+ composing a new mail, replying, forwarding, etc. are not permitted when
+ you are in that folder. The %r in $status_format will change to a 'A' to
+ indicate that you are in attach-message mode.
+
+ 6.2. Replying
+
+ 6.2.1. Simple Replies
+
+ When you want to reply to an email message, select it in the index menu
+ and then press r. Mutt-ng's behaviour is then similar to the behaviour
+ when you compose a message: first, you will be asked for the recipient,
+ then for the subject, and then, mutt-ng will start the editor with the
+ quote attribution and the quoted message. This can e.g. look like the
+ example below.
+
+ On Mon, Mar 07, 2005 at 05:02:12PM +0100, Michael Svensson wrote:
+ > Bill, can you please send last month's progress report to Mr.
+ > Morgan? We also urgently need the cost estimation for the new
+ > production server that we want to set up before our customer's
+ > project will go live.
+
+ You can start editing the email message. It is strongly recommended to put
+ your answer below the quoted text and to only quote what is really
+ necessary and that you refer to. Putting your answer on top of the quoted
+ message, is, although very widespread, very often not considered to be a
+ polite way to answer emails.
+
+ The quote attribution is configurable, by default it is set to
+
+ set attribution = "On %d, %n wrote:"
+
+ It can also be set to something more compact, e.g.
+
+ set attribution = "attribution="* %n <%a> [%(%y-%m-%d %H:%M)]:"
+
+ The example above results in the following attribution:
+
+ * Michael Svensson <svensson@foobar.com> [05-03-06 17:02]:
+ > Bill, can you please send last month's progress report to Mr.
+ > Morgan? We also urgently need the cost estimation for the new
+ > production server that we want to set up before our customer's
+ > project will go live.
+
+ Generally, try to keep your attribution short yet information-rich. It is
+ not the right place for witty quotes, long "attribution" novels or
+ anything like that: the right place for such things is - if at all - the
+ email signature at the very bottom of the message.
+
+ When you're done with writing your message, save and quit the editor. As
+ before, you will return to the compose menu, which is used in the same way
+ as before.
+
+ 6.2.2. Group Replies
+
+ In the situation where a group of people uses email as a discussion, most
+ of the emails will have one or more recipients, and probably several "Cc:"
+ recipients. The group reply functionalityensures that when you press g
+ instead of r to do a reply, each and every recipient that is contained in
+ the original message will receive a copy of the message, either as normal
+ recipient or as "Cc:" recipient.
- Usage:
+ 6.2.3. List Replies
- my_hdr _\bs_\bt_\br_\bi_\bn_\bg
+ When you use mailing lists, it's generally better to send your reply to a
+ message only to the list instead of the list and the original author. To
+ make this easy to use, mutt-ng features list replies.
+
+ To do a list reply, simply press L. If the email contains a
+ Mail-Followup-To: header, its value will be used as reply address.
+ Otherwise, mutt-ng searches through all mail addresses in the original
+ message and tries to match them a list of regular expressions which can be
+ specified using the lists command. If any of the regular expression
+ matches, a mailing list address has been found, and it will be used as
+ reply address.
+
+ lists linuxevent@luga\.at vuln-dev@ mutt-ng-users@
+
+ Nowadays, most mailing list software like GNU Mailman adds a
+ Mail-Followup-To: header to their emails anyway, so setting lists is
+ hardly ever necessary in practice.
+
+ 6.3. Editing the message header
+
+ When editing the header of your outgoing message, there are a couple of
+ special features available.
+
+ If you specify Fcc:filename Mutt-ng will pick up filename just as if you
+ had used the edit-fcc function in the compose menu.
+
+ You can also attach files to your message by specifying
+
+ Attach: filename [description]
+
+ where filename is the file to attach and description is an optional string
+ to use as the description of the attached file.
- unmy_hdr _\bf_\bi_\be_\bl_\bd [ _\bf_\bi_\be_\bl_\bd ... ]
+ When replying to messages, if you remove the In-Reply-To: field from the
+ header field, Mutt-ng will not generate a References: field, which allows
+ you to create a new message thread.
- The ``my_hdr'' command allows you to create your own header fields which will
- be added to every message you send.
+ Also see the $edit_headers and $editor_headers variables
- For example, if you would like to add an ``Organization:'' header field to all
- of your outgoing messages, you can put the command
+ 6.4. Using Mutt-ng with PGP
- my_hdr Organization: A Really Big Company, Anytown, USA
+ If you want to use PGP, you can specify
- in your .muttrc.
+ Pgp: [E | S | S id]
- N\bNo\bot\bte\be:\b: space characters are _\bn_\bo_\bt allowed between the keyword and the colon
- (``:''). The standard for electronic mail (RFC822) says that space is illegal
- there, so Mutt-ng enforces the rule.
+ ``E'' encrypts, ``S'' signs and ``S<id>'' signs with the given key,
+ setting $pgp_sign_as permanently.
- If you would like to add a header field to a single message, you should either
- set the _\be_\bd_\bi_\bt_\b__\bh_\be_\ba_\bd_\be_\br_\bs (section 7.4.57 , page 100) variable, or use the _\be_\bd_\bi_\bt_\b-
- _\bh_\be_\ba_\bd_\be_\br_\bs function (default: ``E'') in the send-menu so that you can edit the
- header of your message along with the body.
+ If you have told mutt to PGP encrypt a message, it will guide you through
+ a key selection process when you try to send the message. Mutt-ng will not
+ ask you any questions about keys which have a certified user ID matching
+ one of the message recipients' mail addresses. However, there may be
+ situations in which there are several keys, weakly certified user ID
+ fields, or where no matching keys can be found.
- 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:
+ In these cases, you are dropped into a menu with a list of keys from which
+ you can select one. When you quit this menu, or mutt can't find any
+ matching keys, you are prompted for a user ID. You can, as usually, abort
+ this prompt using C-G. When you do so, mutt will return to the compose
+ screen.
- The Mutt Next Generation E-Mail Client 36
+ Once you have successfully finished the key selection, the message will be
+ encrypted using the selected public keys, and sent out.
- unmy_hdr to cc
+ Most fields of the entries in the key selection menu (see also
+ $pgp_entry_format) have obvious meanings. But some explanations on the
+ capabilities, flags, and validity fields are in order.
- _\b3_\b._\b1_\b6 _\bD_\be_\bf_\bi_\bn_\bi_\bn_\bg _\bt_\bh_\be _\bo_\br_\bd_\be_\br _\bo_\bf _\bh_\be_\ba_\bd_\be_\br_\bs _\bw_\bh_\be_\bn _\bv_\bi_\be_\bw_\bi_\bn_\bg _\bm_\be_\bs_\bs_\ba_\bg_\be_\bs
+ The flags sequence (%f) will expand to one of the following flags:
- Usage: hdr_order _\bh_\be_\ba_\bd_\be_\br_\b1 _\bh_\be_\ba_\bd_\be_\br_\b2 _\bh_\be_\ba_\bd_\be_\br_\b3
+ Table 2.10. PGP Key Menu Flags
- With this command, you can specify an order in which mutt will attempt to
- present headers to you when viewing messages.
+ Flag Description
+ R The key has been revoked and can't be used.
+ X The key is expired and can't be used.
+ d You have marked the key as disabled.
+ c There are unknown critical self-signature packets.
+
+ The capabilities field (%c) expands to a two-character
+ sequencerepresenting a key's capabilities. The first character gives the
+ key's encryption capabilities: A minus sign (- )means that the key cannot
+ be used for encryption. A dot (. )means that it's marked as a signature
+ key in one of the user IDs, but may also be used for encryption. The
+ letter e indicates that this key can be used for encryption.
+
+ The second character indicates the key's signing capabilities. Once again,
+ a ``-'' implies ``not for signing'', ``.'' implies that the key is marked
+ as an encryption key in one of the user-ids, and ``s'' denotes a key which
+ can be used for signing.
+
+ Finally, the validity field (%t) indicates how well-certified a user-id
+ is. A question mark (?) indicates undefined validity, a minus character
+ (-) marks an untrusted association, a space character means a partially
+ trusted association, and a plus character (+ ) indicates complete
+ validity.
- ``unhdr_order *'' will clear all previous headers from the order list, thus
- removing the header order effects set by the system-wide startup file.
+ 6.5. Sending anonymous messages via mixmaster
- hdr_order From Date: From: To: Cc: Subject:
+ You may also have configured mutt to co-operate with Mixmaster, an
+ anonymous remailer. Mixmaster permits you to send your messages
+ anonymously using a chain of remailers. Mixmaster support in mutt is for
+ mixmaster version 2.04 (beta 45 appears to be the latest) and 2.03. It
+ does not support earlier versions or the later so-called version 3 betas,
+ of which the latest appears to be called 2.9b23.
- _\b3_\b._\b1_\b7 _\bS_\bp_\be_\bc_\bi_\bf_\by _\bd_\be_\bf_\ba_\bu_\bl_\bt _\bs_\ba_\bv_\be _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be
+ To use it, you'll have to obey certain restrictions. Most important, you
+ cannot use the Cc and Bcc headers. To tell Mutt-ng to use mixmaster, you
+ have to select a remailer chain, using the mix function on the compose
+ menu.
- Usage: save-hook [!]_\bp_\ba_\bt_\bt_\be_\br_\bn _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be
+ The chain selection screen is divided into two parts. In the (larger)
+ upper part, you get a list of remailers you may use. In the lower part,
+ you see the currently selected chain of remailers.
- This command is used to override the default filename used when saving mes-
- sages. _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be will be used as the default filename if the message is _\bF_\br_\bo_\bm_\b:
- an address matching _\br_\be_\bg_\be_\bx_\bp or if you are the author and the message is
- addressed _\bt_\bo_\b: something matching _\br_\be_\bg_\be_\bx_\bp.
+ You can navigate in the chain using the chain-prev and chain-next
+ functions, which are by default bound to the left and right arrows and to
+ the h and l keys (think vi keyboard bindings). To insert a remailer at the
+ current chain position, use the insert function. To append a remailer
+ behind the current chain position, use select-entry or append . You can
+ also delete entries from the chain, using the corresponding function.
+ Finally, to abandon your changes, leave the menu, or accept them pressing
+ (by default) the Return key.
- See _\bM_\be_\bs_\bs_\ba_\bg_\be _\bM_\ba_\bt_\bc_\bh_\bi_\bn_\bg _\bi_\bn _\bH_\bo_\bo_\bk_\bs (section 4.5.1 , page 55) for information on the
- exact format of _\bp_\ba_\bt_\bt_\be_\br_\bn.
+ Note that different remailers do have different capabilities, indicated in
+ the %c entry of the remailer menu lines (see $mix_entry_format). Most
+ important is the ``middleman'' capability, indicated by a capital ``M'':
+ This means that the remailer in question cannot be used as the final
+ element of a chain, but will only forward messages to other mixmaster
+ remailers. For details on the other capabilities, please have a look at
+ the mixmaster documentation.
- Examples:
+7. Forwarding and Bouncing Mail
- save-hook me@(turing\\.)?cs\\.hmc\\.edu$ +elkins
- save-hook aol\\.com$ +spam
+ Often, it is necessary to forward mails to other people. Therefore,
+ mutt-ng supports forwarding messages in two different ways.
- Also see the _\bf_\bc_\bc_\b-_\bs_\ba_\bv_\be_\b-_\bh_\bo_\bo_\bk (section 3.19 , page 37) command.
+ The first one is regular forwarding, as you probably know it from other
+ mail clients. You simply press f, enter the recipient email address, the
+ subject of the forwarded email, and then you can edit the message to be
+ forwarded in the editor. The forwarded message is separated from the rest
+ of the message via the two following markers:
- _\b3_\b._\b1_\b8 _\bS_\bp_\be_\bc_\bi_\bf_\by _\bd_\be_\bf_\ba_\bu_\bl_\bt _\bF_\bc_\bc_\b: _\bm_\ba_\bi_\bl_\bb_\bo_\bx _\bw_\bh_\be_\bn _\bc_\bo_\bm_\bp_\bo_\bs_\bi_\bn_\bg
+ ----- Forwarded message from Lucas User <luser@example.com> -----
- Usage: fcc-hook [!]_\bp_\ba_\bt_\bt_\be_\br_\bn _\bm_\ba_\bi_\bl_\bb_\bo_\bx
+ From: Lucas User <luser@example.com>
+ Date: Thu, 02 Dec 2004 03:08:34 +0100
+ To: Michael Random <mrandom@example.com>
+ Subject: Re: blackmail
- This command is used to save outgoing mail in a mailbox other than _\b$_\br_\be_\bc_\bo_\br_\bd
- (section 7.4.234 , page 143). Mutt-ng searches the initial list of message
- recipients for the first matching _\br_\be_\bg_\be_\bx_\bp and uses _\bm_\ba_\bi_\bl_\bb_\bo_\bx as the default Fcc:
- mailbox. If no match is found the message will be saved to _\b$_\br_\be_\bc_\bo_\br_\bd (section
- 7.4.234 , page 143) mailbox.
+ Pay me EUR 50,000.- cash or your favorite stuffed animal will die
+ a horrible death.
- The Mutt Next Generation E-Mail Client 37
+ ----- End forwarded message -----
- See _\bM_\be_\bs_\bs_\ba_\bg_\be _\bM_\ba_\bt_\bc_\bh_\bi_\bn_\bg _\bi_\bn _\bH_\bo_\bo_\bk_\bs (section 4.5.1 , page 55) for information on the
- exact format of _\bp_\ba_\bt_\bt_\be_\br_\bn.
+ When you're done with editing the mail, save and quit the editor, and you
+ will return to the compose menu, the same menu you also encounter when
+ composing or replying to mails.
- Example: fcc-hook [@.]aol\\.com$ +spammers
+ The second mode of forwarding emails with mutt-ng is the so-called
+ bouncing: when you bounce an email to another address, it will be sent in
+ practically the same format you send it (except for headers that are
+ created during transporting the message). To bounce a message, press b and
+ enter the recipient email address. By default, you are then asked whether
+ you really want to bounce the message to the specified recipient. If you
+ answer with yes, the message will then be bounced.
- The above will save a copy of all messages going to the aol.com domain to the
- `+spammers' mailbox by default. Also see the _\bf_\bc_\bc_\b-_\bs_\ba_\bv_\be_\b-_\bh_\bo_\bo_\bk (section 3.19 ,
- page 37) command.
+ To the recipient, the bounced email will look as if he got it like a
+ regular email where he was Bcc: recipient. The only possibility to find
+ out whether it was a bounced email is to carefully study the email headers
+ and to find out which host really sent the email.
- _\b3_\b._\b1_\b9 _\bS_\bp_\be_\bc_\bi_\bf_\by _\bd_\be_\bf_\ba_\bu_\bl_\bt _\bs_\ba_\bv_\be _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be _\ba_\bn_\bd _\bd_\be_\bf_\ba_\bu_\bl_\bt _\bF_\bc_\bc_\b: _\bm_\ba_\bi_\bl_\bb_\bo_\bx _\ba_\bt _\bo_\bn_\bc_\be
+8. Postponing Mail
- Usage: fcc-save-hook [!]_\bp_\ba_\bt_\bt_\be_\br_\bn _\bm_\ba_\bi_\bl_\bb_\bo_\bx
+ At times it is desirable to delay sending a message that you have already
+ begun to compose. When the postpone-message function is used in the
+ compose menu, the body of your message and attachments are stored in the
+ mailbox specified by the $postponed variable. This means that you can
+ recall the message even if you exit Mutt-ng and then restart it at a later
+ time.
- This command is a shortcut, equivalent to doing both a _\bf_\bc_\bc_\b-_\bh_\bo_\bo_\bk (section
- 3.18 , page 36) and a _\bs_\ba_\bv_\be_\b-_\bh_\bo_\bo_\bk (section 3.17 , page 36) with its arguments.
+ Once a message is postponed, there are several ways to resume it. From the
+ command line you can use the ``-p'' option, or if you compose a new
+ message from the index or pager you will be prompted if postponed messages
+ exist. If multiple messages are currently postponed, the postponed menu
+ will pop up and you can select which message you would like to resume.
- _\b3_\b._\b2_\b0 _\bC_\bh_\ba_\bn_\bg_\be _\bs_\be_\bt_\bt_\bi_\bn_\bg_\bs _\bb_\ba_\bs_\be_\bd _\bu_\bp_\bo_\bn _\bm_\be_\bs_\bs_\ba_\bg_\be _\br_\be_\bc_\bi_\bp_\bi_\be_\bn_\bt_\bs
+ Note: If you postpone a reply to a message, the reply setting of the
+ message is only updated when you actually finish the message and send it.
+ Also, you must be in the same folder with the message you replied to for
+ the status of the message to be updated.
- Usage: reply-hook [!]_\bp_\ba_\bt_\bt_\be_\br_\bn _\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ See also the $postpone quad-option.
- Usage: send-hook [!]_\bp_\ba_\bt_\bt_\be_\br_\bn _\bc_\bo_\bm_\bm_\ba_\bn_\bd
+Chapter 3. Configuration
- Usage: send2-hook [!]_\bp_\ba_\bt_\bt_\be_\br_\bn _\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ Table of Contents
- These commands can be used to execute arbitrary configuration commands based
- upon recipients of the message. _\bp_\ba_\bt_\bt_\be_\br_\bn is a regular expression matching the
- desired address. _\bc_\bo_\bm_\bm_\ba_\bn_\bd is executed when _\br_\be_\bg_\be_\bx_\bp matches recipients of the
- message.
+ 1. Locations of Configuration Files
- reply-hook is matched against the message you are _\br_\be_\bp_\bl_\by_\bi_\bn_\bg t\bto\bo, instead of the
- message you are _\bs_\be_\bn_\bd_\bi_\bn_\bg. send-hook is matched against all messages, both _\bn_\be_\bw
- and _\br_\be_\bp_\bl_\bi_\be_\bs. N\bNo\bot\bte\be:\b: reply-hooks are matched b\bbe\bef\bfo\bor\bre\be the send-hook, r\bre\beg\bga\bar\brd\bdl\ble\bes\bss\bs of
- the order specified in the users's configuration file.
+ 2. Basic Syntax of Initialization Files
- send2-hook is matched every time a message is changed, either by editing it, or
- by using the compose menu to change its recipients or subject. send2-hook is
- executed after send-hook, and can, e.g., be used to set parameters such as the
- _\b$_\bs_\be_\bn_\bd_\bm_\ba_\bi_\bl (section 7.4.251 , page 147) variable depending on the message's
- sender address.
+ 3. Expansion within variables
- For each type of send-hook or reply-hook, when multiple matches occur, commands
- are executed in the order they are specified in the muttrc (for that type of
- hook).
+ 3.1. Commands' Output
- See _\bM_\be_\bs_\bs_\ba_\bg_\be _\bM_\ba_\bt_\bc_\bh_\bi_\bn_\bg _\bi_\bn _\bH_\bo_\bo_\bk_\bs (section 4.5.1 , page 55) for information on the
- exact format of _\bp_\ba_\bt_\bt_\be_\br_\bn.
+ 3.2. Environment Variables
- Example: send-hook mutt 'set mime_forward signature='''
+ 3.3. Configuration Variables
- Another typical use for this command is to change the values of the
+ 3.4. Self-Defined Variables
- The Mutt Next Generation E-Mail Client 38
+ 3.5. Pre-Defined Variables
- _\b$_\ba_\bt_\bt_\br_\bi_\bb_\bu_\bt_\bi_\bo_\bn (section 7.4.17 , page 91), _\b$_\bs_\bi_\bg_\bn_\ba_\bt_\bu_\br_\be (section 7.4.263 , page
- 150) and _\b$_\bl_\bo_\bc_\ba_\bl_\be (section 7.4.117 , page 116) variables in order to change the
- language of the attributions and signatures based upon the recipients.
+ 3.6. Type Conversions
- N\bNo\bot\bte\be:\b: 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. Also note that my_hdr commands which mod-
- ify recipient headers, or the message's subject, don't have any effect on the
- current message when executed from a send-hook.
+ 4. Defining/Using aliases
- _\b3_\b._\b2_\b1 _\bC_\bh_\ba_\bn_\bg_\be _\bs_\be_\bt_\bt_\bi_\bn_\bg_\bs _\bb_\be_\bf_\bo_\br_\be _\bf_\bo_\br_\bm_\ba_\bt_\bt_\bi_\bn_\bg _\ba _\bm_\be_\bs_\bs_\ba_\bg_\be
+ 5. Changing the default key bindings
- Usage: message-hook [!]_\bp_\ba_\bt_\bt_\be_\br_\bn _\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ 6. Defining aliases for character sets
- This command can be used to execute arbitrary configuration commands before
- viewing or formatting a message based upon information about the message. _\bc_\bo_\bm_\b-
- _\bm_\ba_\bn_\bd is executed if the _\bp_\ba_\bt_\bt_\be_\br_\bn matches the message to be displayed. When mul-
- tiple matches occur, commands are executed in the order they are specified in
- the muttrc.
+ 7. Setting variables based upon mailbox
- See _\bM_\be_\bs_\bs_\ba_\bg_\be _\bM_\ba_\bt_\bc_\bh_\bi_\bn_\bg _\bi_\bn _\bH_\bo_\bo_\bk_\bs (section 4.5.1 , page 55) for information on the
- exact format of _\bp_\ba_\bt_\bt_\be_\br_\bn.
+ 8. Keyboard macros
- Example:
+ 9. Using color and mono video attributes
- message-hook ~A 'set pager=builtin'
- message-hook '~f freshmeat-news' 'set pager="less \"+/^ subject: .*\""'
+ 10. Ignoring (weeding) unwanted message headers
- _\b3_\b._\b2_\b2 _\bC_\bh_\bo_\bo_\bs_\bi_\bn_\bg _\bt_\bh_\be _\bc_\br_\by_\bp_\bt_\bo_\bg_\br_\ba_\bp_\bh_\bi_\bc _\bk_\be_\by _\bo_\bf _\bt_\bh_\be _\br_\be_\bc_\bi_\bp_\bi_\be_\bn_\bt
+ 11. Alternative addresses
- Usage: crypt-hook _\bp_\ba_\bt_\bt_\be_\br_\bn _\bk_\be_\by_\bi_\bd
+ 12. Format = Flowed
- When encrypting messages with PGP or OpenSSL, you may want to associate a cer-
- tain key with a given e-mail address automatically, either because the recipi-
- ent's public key can't be deduced from the destination address, or because, for
- some reasons, you need to override the key Mutt-ng would normally use. The
- crypt-hook command provides a method by which you can specify the ID of the
- public key to be used when encrypting messages to a certain recipient.
+ 12.1. Introduction
- The meaning of "key id" is to be taken broadly in this context: You can either
- put a numerical key ID here, an e-mail address, or even just a real name.
+ 12.2. Receiving: Display Setup
- _\b3_\b._\b2_\b3 _\bA_\bd_\bd_\bi_\bn_\bg _\bk_\be_\by _\bs_\be_\bq_\bu_\be_\bn_\bc_\be_\bs _\bt_\bo _\bt_\bh_\be _\bk_\be_\by_\bb_\bo_\ba_\br_\bd _\bb_\bu_\bf_\bf_\be_\br
+ 12.3. Sending
- Usage: push _\bs_\bt_\br_\bi_\bn_\bg
+ 12.4. Additional Notes
- This command adds the named string to the keyboard buffer. The string may
+ 13. Mailing lists
- The Mutt Next Generation E-Mail Client 39
+ 14. Using Multiple spool mailboxes
- contain control characters, key names and function names like the sequence
- string in the _\bm_\ba_\bc_\br_\bo (section 3.7 , page 27) command. You may use it to auto-
- matically run a sequence of commands at startup, or when entering certain fold-
- ers.
+ 15. Defining mailboxes which receive mail
- _\b3_\b._\b2_\b4 _\bE_\bx_\be_\bc_\bu_\bt_\bi_\bn_\bg _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn_\bs
+ 16. User defined headers
- Usage: exec _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn [ _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn ... ]
+ 17. Defining the order of headers when viewing messages
- This command can be used to execute any function. Functions are listed in the
- _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be (section 7.5 , page 171). ``exec function'' is equivalent
- to ``push <function>''.
+ 18. Specify default save filename
- _\b3_\b._\b2_\b5 _\bM_\be_\bs_\bs_\ba_\bg_\be _\bS_\bc_\bo_\br_\bi_\bn_\bg
+ 19. Specify default Fcc: mailbox when composing
- Usage: score _\bp_\ba_\bt_\bt_\be_\br_\bn _\bv_\ba_\bl_\bu_\be
+ 20. Specify default save filename and default Fcc: mailbox at once
- Usage: unscore _\bp_\ba_\bt_\bt_\be_\br_\bn [ _\bp_\ba_\bt_\bt_\be_\br_\bn ... ]
+ 21. Change settings based upon message recipients
- In situations where you have to cope with a lot of emails, e.g. when you read
- many different mailing lists, and take part in discussions, it is always useful
- to have the important messages marked and the annoying messages or the ones
- that you aren't interested in deleted. For this purpose, mutt-ng features a
- mechanism called ``scoring''.
+ 22. Change settings before formatting a message
- When you use scoring, every message has a base score of 0. You can then use the
- score command to define patterns and a positive or negative value associated
- with it. When a pattern matches a message, the message's score will be raised
- or lowered by the amount of the value associated with the pattern.
+ 23. Choosing the cryptographic key of the recipient
- score "~f nion@muttng\.org" 50
- score "~f @sco\.com" -100
+ 24. Adding key sequences to the keyboard buffer
- If the pattern matches, it is also possible to set the score value of the cur-
- rent message to a certain value and then stop evaluation:
+ 25. Executing functions
- score "~f santaclaus@northpole\.int" =666
+ 26. Message Scoring
- What is important to note is that negative score values will be rounded up to
- 0.
+ 27. Spam detection
- To make scoring actually useful, the score must be applied in some way. That's
- what the _\bs_\bc_\bo_\br_\be _\bt_\bh_\br_\be_\bs_\bh_\bo_\bl_\bd_\bs are for. Currently, there are three score thresholds:
+ 28. Setting variables
- +\bo flag threshold: when a message has a score value equal or higher than the
- flag threshold, it will be flagged.
+ 29. Reading initialization commands from another file
- The Mutt Next Generation E-Mail Client 40
+ 30. Removing hooks
- +\bo read threshold: when a message has a score value equal or lower than the
- read threshold, it will be marked as read.
+ 31. Sharing Setups
- +\bo delete threshold: when a message has a score value equal or lower than the
- delete threshold, it will be marked as deleted.
+ 31.1. Character Sets
- These three thresholds can be set via the variables _\b$_\bs_\bc_\bo_\br_\be_\b__\bt_\bh_\br_\be_\bs_\bh_\bo_\bl_\bd_\b__\bf_\bl_\ba_\bg (sec-
- tion 7.4.248 , page 147), _\b$_\bs_\bc_\bo_\br_\be_\b__\bt_\bh_\br_\be_\bs_\bh_\bo_\bl_\bd_\b__\br_\be_\ba_\bd (section 7.4.249 , page 147),
- _\b$_\bs_\bc_\bo_\br_\be_\b__\bt_\bh_\br_\be_\bs_\bh_\bo_\bl_\bd_\b__\bd_\be_\bl_\be_\bt_\be (section 7.4.247 , page 146) and. By default,
- _\b$_\bs_\bc_\bo_\br_\be_\b__\bt_\bh_\br_\be_\bs_\bh_\bo_\bl_\bd_\b__\br_\be_\ba_\bd (section 7.4.249 , page 147) and _\b$_\bs_\bc_\bo_\br_\be_\b__\bt_\bh_\br_\be_\bs_\bh_\bo_\bl_\bd_\b__\bd_\be_\bl_\be_\bt_\be
- (section 7.4.247 , page 146) are set to -1, which means that in the default
- threshold configuration no message will ever get marked as read or deleted.
+ 31.2. Modularization
- Scoring gets especially interesting when combined with the color command and
- the ~n pattern:
+ 31.3. Conditional parts
- color black yellow "~n 10-"
- color red yellow "~n 100-"
+ 32. Obsolete Variables
- The rules above mark all messages with a score between 10 and 99 with black and
- yellow, and messages with a score greater or equal 100 with red and yellow.
- This might be unusual to you if you're used to e.g. slrn's scoring mechanism,
- but it is more flexible, as it visually marks different scores.
+1. Locations of Configuration Files
- _\b3_\b._\b2_\b6 _\bS_\bp_\ba_\bm _\bd_\be_\bt_\be_\bc_\bt_\bi_\bo_\bn
+ While the default configuration (or ``preferences'') make Mutt-ng usable
+ right out of the box, it is often desirable to tailor Mutt-ng to suit your
+ own tastes. When Mutt-ng is first invoked, it will attempt to read the
+ ``system'' configuration file (defaults set by your local system
+ administrator), unless the ``-n'' commandline option is specified. This
+ file is typically /usr/local/share/muttng/Muttngrc or /etc/Muttngrc ,
+ Mutt-ng users will find this file in /usr/local/share/muttng/Muttrc or
+ /etc/Muttngrc. Mutt will next look for a file named .muttrc in your home
+ directory, Mutt-ng will look for .muttngrc. If this file does not exist
+ and your home directory has a subdirectory named .mutt , mutt try to load
+ a file named .muttng/muttngrc.
- Usage: spam _\bp_\ba_\bt_\bt_\be_\br_\bn _\bf_\bo_\br_\bm_\ba_\bt
+ .muttrc (or .muttngrc for Mutt-ng) is the file where you will usually
+ place your commands to configure Mutt-ng.
- Usage: nospam _\bp_\ba_\bt_\bt_\be_\br_\bn
+2. Basic Syntax of Initialization Files
- Mutt-ng has generalized support for external spam-scoring filters. By defining
- your spam patterns with the spam and nospam commands, you can _\bl_\bi_\bm_\bi_\bt, _\bs_\be_\ba_\br_\bc_\bh,
- and _\bs_\bo_\br_\bt your mail based on its spam attributes, as determined by the external
- filter. You also can display the spam attributes in your index display using
- the %H selector in the _\b$_\bi_\bn_\bd_\be_\bx_\b__\bf_\bo_\br_\bm_\ba_\bt (section 7.4.113 , page 113) variable.
- (Tip: try %?H?[%H] ? to display spam tags only when they are defined for a
- given message.)
+ An initialization file consists of a series of commands. Each line of the
+ file may contain one or more commands. When multiple commands are used,
+ they must be separated by a semicolon (;).
- Your first step is to define your external filter's spam patterns using the
- spam command. _\bp_\ba_\bt_\bt_\be_\br_\bn should be a regular expression that matches a header in a
- mail message. If any message in the mailbox matches this regular expression, it
- will receive a ``spam tag'' or ``spam attribute'' (unless it also matches a
- nospam pattern -- see below.) The appearance of this attribute is entirely up
- to you, and is governed by the _\bf_\bo_\br_\bm_\ba_\bt parameter. _\bf_\bo_\br_\bm_\ba_\bt can be any static text,
- but it also can include back-references from the _\bp_\ba_\bt_\bt_\be_\br_\bn expression. (A regular
- expression ``back-reference'' refers to a sub-expression contained within
- parentheses.) %1 is replaced with the first back-reference in the regex, %2
- with the second, etc.
+ set realname='Mutt-ng user' ; ignore x-
- If you're using multiple spam filters, a message can have more than one spam-
+ 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,
- The Mutt Next Generation E-Mail Client 41
+ my_hdr X-Disclaimer: Why are you listening to me? # This is a comment
- related header. You can define spam patterns for each filter you use. If a mes-
- sage matches two or more of these patterns, and the $spam_separator variable is
- set to a string, then the message's spam tag will consist of all the _\bf_\bo_\br_\bm_\ba_\bt
- strings joined together, with the value of $spam_separator separating them.
+ Single quotes (') and double quotes (") can be used to quote strings which
+ contain spaces or other special characters. The difference between the two
+ types of quotes is similar to that of many popular shell programs, namely
+ that a single quote is used to specify a literal string (one that is not
+ interpreted for shell variables or quoting with a backslash (see next
+ paragraph), while double quotes indicate a string for which should be
+ evaluated. For example, backtics are evaluated inside of double quotes,
+ but not for single quotes.
- For example, suppose I use DCC, SpamAssassin, and PureMessage. I might define
- these spam settings:
+ \ 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.
- spam "X-DCC-.*-Metrics:.*(....)=many" "90+/DCC-%1"
- spam "X-Spam-Status: Yes" "90+/SA"
- spam "X-PerlMX-Spam: .*Probability=([0-9]+)%" "%1/PM"
- set spam_separator=", "
+ set realname="Michael \"MuttDude\" Elkins"
- If I then received a message that DCC registered with ``many'' hits under the
- ``Fuz2'' checksum, and that PureMessage registered with a 97% probability of
- being spam, that message's spam tag would read 90+/DCC-Fuz2, 97/PM. (The four
- characters before ``=many'' in a DCC report indicate the checksum used -- in
- this case, ``Fuz2''.)
+ ``\\'' means to insert a literal ``\'' into the line. ``\n'' and ``\r''
+ have their usual C meanings of linefeed and carriage-return, respectively.
- If the $spam_separator variable is unset, then each spam pattern match super-
- sedes the previous one. Instead of getting joined _\bf_\bo_\br_\bm_\ba_\bt strings, you'll get
- only the last one to match.
+ A \ at the end of a line can be used to split commands over multiple
+ lines, provided that the split points don't appear in the middle of
+ command names.
- The spam tag is what will be displayed in the index when you use %H in the
- $index_format variable. It's also the string that the ~H pattern-matching
- expression matches against for _\bs_\be_\ba_\br_\bc_\bh and _\bl_\bi_\bm_\bi_\bt functions. And it's what sort-
- ing by spam attribute will use as a sort key.
+ Please note that, unlike the various shells, mutt-ng interprets a ``\'' at
+ the end of a line also in comments. This allows you to disable a command
+ split over multiple lines with only one ``#''.
- That's a pretty complicated example, and most people's actual environments will
- have only one spam filter. The simpler your configuration, the more effective
- mutt can be, especially when it comes to sorting.
+ # folder-hook . \
+ set realname="Michael \"MuttDude\" Elkins"
- Generally, when you sort by spam tag, mutt will sort _\bl_\be_\bx_\bi_\bc_\ba_\bl_\bl_\by -- that is, by
- ordering strings alphnumerically. However, if a spam tag begins with a number,
- mutt will sort numerically first, and lexically only when two numbers are equal
- in value. (This is like UNIX's sort -n.) A message with no spam attributes at
- all -- that is, one that didn't match _\ba_\bn_\by of your spam patterns -- is sorted at
- lowest priority. Numbers are sorted next, beginning with 0 and ranging upward.
- Finally, non-numeric strings are sorted, with ``a'' taking lower priority than
- ``z''. Clearly, in general, sorting by spam tags is most effective when you can
- coerce your filter to give you a raw number. But in case you can't, mutt can
- still do something useful.
+ When testing your config files, beware the following caveat. The backslash
+ at the end of the commented line extends the current line with the next
+ line - then referred to as a ``continuation line''. As the first line is
+ commented with a hash (#) all following continuation lines are also part
+ of a comment and therefore are ignored, too. So take care of comments when
+ continuation lines are involved within your setup files!
- The nospam command can be used to write exceptions to spam patterns. If a
- header pattern matches something in a spam command, but you nonetheless do not
- want it to receive a spam tag, you can list a more precise pattern under a
- nospam command.
+ Abstract example:
- If the _\bp_\ba_\bt_\bt_\be_\br_\bn given to nospam is exactly the same as the _\bp_\ba_\bt_\bt_\be_\br_\bn on an exist-
- ing spam list entry, the effect will be to remove the entry from the spam list,
- instead of adding an exception. Likewise, if the _\bp_\ba_\bt_\bt_\be_\br_\bn for a spam command
- matches an entry on the nospam list, that nospam entry will be removed. If the
- _\bp_\ba_\bt_\bt_\be_\br_\bn for nospam is ``*'', _\ba_\bl_\bl _\be_\bn_\bt_\br_\bi_\be_\bs _\bo_\bn _\bb_\bo_\bt_\bh _\bl_\bi_\bs_\bt_\bs will be removed. This
+ line1\
+ line2a # line2b\
+ line3\
+ line4
+ line5
- The Mutt Next Generation E-Mail Client 42
+ line1 ``continues'' until line4. however, the part after the # is a
+ comment which includes line3 and line4. line5 is a new line of its own and
+ thus is interpreted again.
- might be the default action if you use spam and nospam in conjunction with a
- folder-hook.
+ The commands understood by mutt are explained in the next paragraphs. For
+ a complete list, see the commands.
- You can have as many spam or nospam commands as you like. You can even do your
- own primitive spam detection within mutt -- for example, if you consider all
- mail from MAILER-DAEMON to be spam, you can use a spam command like this:
+3. Expansion within variables
- spam "^From: .*MAILER-DAEMON" "999"
+ Besides just assign static content to variables, there's plenty of ways of
+ adding external and more or less dynamic content.
- _\b3_\b._\b2_\b7 _\bS_\be_\bt_\bt_\bi_\bn_\bg _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be_\bs
+ 3.1. Commands' Output
- Usage: set [no|inv]_\bv_\ba_\br_\bi_\ba_\bb_\bl_\be[=_\bv_\ba_\bl_\bu_\be] [ _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be ... ]
+ It is possible to substitute the output of a Unix command in an
+ initialization file. This is accomplished by enclosing the command in
+ backquotes (``) as in, for example:
- Usage: toggle _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be [_\bv_\ba_\br_\bi_\ba_\bb_\bl_\be ... ]
+ my_hdr X-Operating-System: `uname -a`
- Usage: unset _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be [_\bv_\ba_\br_\bi_\ba_\bb_\bl_\be ... ]
+ 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.
- Usage: reset _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be [_\bv_\ba_\br_\bi_\ba_\bb_\bl_\be ... ]
+ 3.2. Environment Variables
- This command is used to set (and unset) _\bc_\bo_\bn_\bf_\bi_\bg_\bu_\br_\ba_\bt_\bi_\bo_\bn _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be_\bs (section 7.4 ,
- page 85). There are four basic types of variables: boolean, number, string and
- quadoption. _\bb_\bo_\bo_\bl_\be_\ba_\bn variables can be _\bs_\be_\bt (true) or _\bu_\bn_\bs_\be_\bt (false). _\bn_\bu_\bm_\bb_\be_\br
- variables can be assigned a positive integer value.
+ UNIX environments can be accessed like the way it is done in shells like
+ sh and bash: Prepend the name of the environment by a ``$'' sign. For
+ example,
- _\bs_\bt_\br_\bi_\bn_\bg variables consist of any number of printable characters. _\bs_\bt_\br_\bi_\bn_\bg_\bs must
- be enclosed in quotes if they contain spaces or tabs. You may also use the
- ``C'' escape sequences \\b\n\bn and \\b\t\bt for newline and tab, respectively.
+ set record=+sent_on_$HOSTNAME
- _\bq_\bu_\ba_\bd_\bo_\bp_\bt_\bi_\bo_\bn variables are used to control whether or not to be prompted for cer-
- tain actions, or to specify a default action. A value of _\by_\be_\bs will cause the
- action to be carried out automatically as if you had answered yes to the ques-
- tion. Similarly, a value of _\bn_\bo will cause the the action to be carried out as
- if you had answered ``no.'' A value of _\ba_\bs_\bk_\b-_\by_\be_\bs will cause a prompt with a
- default answer of ``yes'' and _\ba_\bs_\bk_\b-_\bn_\bo will provide a default answer of ``no.''
+ sets the $record variable to the string +sent_on_ and appends the value of
+ the evironment variable $HOSTNAME.
- Prefixing a variable with ``no'' will unset it. Example: set noaskbcc.
+ Note: There will be no warning if an environment variable is not defined.
+ The result will of the expansion will then be empty.
- For _\bb_\bo_\bo_\bl_\be_\ba_\bn 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.
+ 3.3. Configuration Variables
- The toggle command automatically prepends the inv prefix to all specified vari-
- ables.
+ As for environment variables, the values of all configuration variables as
+ string can be used in the same way, too. For example,
- The unset command automatically prepends the no prefix to all specified vari-
- ables.
+ set imap_home_namespace = $folder
- Using the enter-command function in the _\bi_\bn_\bd_\be_\bx menu, you can query the value of
- a variable by prefixing the name of the variable with a question mark:
+ would set the value of $imap_home_namespace to the value to which $folder
+ is currently set to.
- The Mutt Next Generation E-Mail Client 43
+ Note: There're no logical links established in such cases so that the the
+ value for $imap_home_namespace won't change even if $folder gets changed.
- set ?allow_8bit
+ Note: There will be no warning if a configuration variable is not defined
+ or is empty. The result will of the expansion will then be empty.
- The question mark is actually only required for boolean and quadoption vari-
- ables.
+ 3.4. Self-Defined Variables
- The reset command resets all given variables to the compile time defaults
- (hopefully mentioned in this manual). If you use the command set and prefix the
- variable with ``&'' this has the same behavior as the reset command.
+ Mutt-ng flexibly allows users to define their own variables. To avoid
+ conflicts with the standard set and to prevent misleading error messages,
+ there's a reserved namespace for them: all user-defined variables must be
+ prefixed with user_ and can be used just like any ordinary configuration
+ or environment variable.
- With the reset command there exists the special variable ``all'', which allows
- you to reset all variables to their system defaults.
+ For example, to view the manual, users can either define two macros like
+ the following
- _\b3_\b._\b2_\b8 _\bR_\be_\ba_\bd_\bi_\bn_\bg _\bi_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\ba_\bt_\bi_\bo_\bn _\bc_\bo_\bm_\bm_\ba_\bn_\bd_\bs _\bf_\br_\bo_\bm _\ba_\bn_\bo_\bt_\bh_\be_\br _\bf_\bi_\bl_\be
+ macro generic <F1> "!less -r /path/to/manual" "Show manual"
+ macro pager <F1> "!less -r /path/to/manual" "Show manual"
- Usage: source _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be [ _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be ... ]
+ for generic, pager and index .The alternative is to define a custom
+ variable like so:
- 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.
+ set user_manualcmd = "!less -r /path/to_manual"
+ macro generic <F1> "$user_manualcmd<enter>" "Show manual"
+ macro pager <F1> "$user_manualcmd<enter>" "Show manual"
+ macro index <F1> "$user_manualcmd<enter>" "Show manual"
- If the filename begins with a tilde (``~''), it will be expanded to the path of
- your home directory.
+ to re-use the command sequence as in:
- If the filename ends with a vertical bar (|), then _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be is considered to be
- an executable program from which to read input (eg. source ~/bin/myscript|).
+ macro index <F2> "$user_manualcmd | grep '\^[ ]\\+~. '" "Show Patterns"
- _\b3_\b._\b2_\b9 _\bR_\be_\bm_\bo_\bv_\bi_\bn_\bg _\bh_\bo_\bo_\bk_\bs
+ Using this feature, arbitrary sequences can be defined once and recalled
+ and reused where necessary. More advanced scenarios could include to save
+ a variable's value at the beginning of macro sequence and restore it at
+ end.
- Usage: unhook [ * | _\bh_\bo_\bo_\bk_\b-_\bt_\by_\bp_\be ]
+ When the variable is first defined, the first value it gets assigned is
+ also the initial value to which it can be reset using the reset command.
- This command permits you to flush hooks you have previously defined. You can
- either remove all hooks by giving the ``*'' character as an argument, or you
- can remove all hooks of a specific type by saying something like unhook send-
- hook.
+ The complete removal is done via the unset keyword.
- _\b3_\b._\b3_\b0 _\bS_\bh_\ba_\br_\bi_\bn_\bg _\bS_\be_\bt_\bu_\bp_\bs
+ After the following sequence:
- _\b3_\b._\b3_\b0_\b._\b1 _\bC_\bh_\ba_\br_\ba_\bc_\bt_\be_\br _\bS_\be_\bt_\bs
+ set user_foo = 42
+ set user_foo = 666
- As users may run mutt-ng on different systems, the configuration must be main-
- tained because it's likely that people want to use the setup everywhere they
- use mutt-ng. And mutt-ng tries to help where it can.
+ the variable $user_foo has a current value of 666 and an initial of 42.
+ The query
- To not produce conflicts with different character sets, mutt-ng allows users to
- specify in which character set their configuration files are encoded. Please
- note that while reading the configuration files, this is only respected after
- the corresponding declaration appears. It's advised to put the following at the
+ set ?user_foo
- The Mutt Next Generation E-Mail Client 44
+ will show 666. After doing the reset via
- very beginning of a users muttngrc:
+ reset user_foo
- set config_charset = "..."
+ a following query will give 42 as the result. After unsetting it via
- and replacing the dots with the actual character set. To avoid problems while
- maintaining the setup, vim user's may want to use modelines as show in:
+ unset user_foo
- # vim:fileencoding=...:
+ any query or operation (except the noted expansion within other
+ statements) will lead to an error message.
- while, again, replacing the dots with the appropriate name. This tells vim as
- which character set to read and save the file.
+ 3.5. Pre-Defined Variables
- _\b3_\b._\b3_\b0_\b._\b2 _\bM_\bo_\bd_\bu_\bl_\ba_\br_\bi_\bz_\ba_\bt_\bi_\bo_\bn
+ In order to allow users to share one setup over a number of different
+ machines without having to change its contents, there's a number of
+ pre-defined variables. These are prefixed with muttng_ and are read-only,
+ i.e. they cannot be set, unset or reset. The reference chapter lists all
+ available variables.
- ``Modularization'' means to divide the setup into several files while sorting
- the options or commands by topic. Especially for longer setups (e.g. with many
- hooks), this helps maintaining it and solving trouble.
+ Please consult the local copy of your manual for their values as they may
+ differ from different manual sources. Where the manual is installed in can
+ be queried (already using such a variable) by running:
- When using separation, setups may be, as a whole or in fractions, shared over
- different systems.
+ $ muttng -Q muttng_docdir
- _\b3_\b._\b3_\b0_\b._\b3 _\bC_\bo_\bn_\bd_\bi_\bt_\bi_\bo_\bn_\ba_\bl _\bp_\ba_\br_\bt_\bs
+ To extend the example for viewing the manual via self-defined variables,
+ it can be made more readable and more portable by changing the real path
+ in:
- When using a configuration on different systems, the user may not always have
- influence on how mutt-ng is installed and which features it includes.
+ set user_manualcmd = '!less -r /path/to_manual'
- To solve this, mutt-ng contain a feature based on the ``ifdef'' patch written
- for mutt. Its basic syntax is:
+ to:
- ifdef <item> <command>
- ifndef <item> <command>
+ set user_manualcmd = "!less -r $muttng_docdir/manual.txt"
- ...whereby <item> can be one of:
+ which works everywhere if a manual is installed.
- +\bo a function name
+ Please note that by the type of quoting, muttng determines when to expand
+ these values: when it finds double quotes, the value will be expanded
+ during reading the setup files but when it finds single quotes, it'll
+ expand it at runtime as needed.
- +\bo a variable name
+ For example, the statement
- +\bo a menu name
+ folder-hook . "set user_current_folder = $muttng_folder_name"
- +\bo a feature name
+ will be already be translated to the following when reading the startup
+ files:
- All available functions, variables and menus are documented elsewhere in this
- manual but ``features'' is specific to these two commands. To test for one,
+ folder-hook . "set user_current_folder = some_folder"
- The Mutt Next Generation E-Mail Client 45
+ with some_folder being the name of the first folder muttng opens. On the
+ contrary,
- prefix one of the following keywords with feature_:
+ folder-hook . 'set user_current_folder = $muttng_folder_name'
- ncurses, slang, iconv, idn, dotlock, standalone, pop, nntp, imap, ssl,
- gnutls, sasl, sasl2, libesmtp, compressed, color, classic_pgp,
- classic_smime, gpgme, header_cache
+ will be executed at runtime because of the single quotes so that
+ user_current_folder will always have the value of the currently opened
+ folder.
- As an example, one can use the following in ~/.muttngrc:
+ A more practical example is:
- ifdef feature_imap 'source ~/.mutt-ng/setup-imap'
- ifdef feature_pop 'source ~/.mutt-ng/setup-pop'
- ifdef feature_nntp 'source ~/.mutt-ng/setup-nntp'
+ folder-hook . 'source ~/.mutt/score-$muttng_folder_name'
- ...to only source ~/.mutt-ng/setup-imap if IMAP support is built in, only
- source ~/.mutt-ng/setup-pop if POP support is built in and only source ~/.mutt-
- ng/setup-nntp if NNTP support is built in.
+ which can be used to source files containing score commands depending on
+ the folder the user enters.
- An example for testing for variable names can be used if users use different
- revisions of mutt-ng whereby the older one may not have a certain variable. To
- test for the availability of _\b$_\bi_\bm_\ba_\bp_\b__\bm_\ba_\bi_\bl_\b__\bc_\bh_\be_\bc_\bk (section 7.4.102 , page 110),
- use:
+ 3.6. Type Conversions
- ifdef imap_mail_check 'set imap_mail_check = 300'
+ A note about variable's types during conversion: internally values are
+ stored in internal types but for any dump/query or set operation they're
+ converted to and from string. That means that there's no need to worry
+ about types when referencing any variable. As an example, the following
+ can be used without harm (besides makeing muttng very likely behave
+ strange):
- Provided for completeness is the test for menu names. To set _\b$_\bp_\ba_\bg_\be_\br_\b__\bi_\bn_\bd_\be_\bx_\b__\bl_\bi_\bn_\be_\bs
- (section 7.4.173 , page 129) only if the pager menu is available, use:
+ set read_inc = 100
+ set folder = $read_inc
+ set read_inc = $folder
+ set user_magic_number = 42
+ set folder = $user_magic_number
- ifdef pager 'set pager_index_lines = 10'
+4. Defining/Using aliases
- For completeness, too, the opposite of ifdef is provided: ifndef which only
- executes the command if the test fails. For example, the following two examples
- are equivalent:
+ Usage: aliaskey address [, address,...]
- ifdef feature_ncurses 'source ~/.mutt-ng/setup-ncurses'
- ifndef feature_ncurses 'source ~/.mutt-ng/setup-slang'
+ It's usually very cumbersome to remember or type out the address of
+ someone you are communicating with. Mutt-ng allows you to create
+ ``aliases'' which map a short string to a full address.
- ...and...
+ Note: if you want to create an alias for a group (by specifying more than
+ one address), you must separate the addresses with a comma (``,'').
- ifdef feature_slang 'source ~/.mutt-ng/setup-slang'
- ifndef feature_slang 'source ~/.mutt-ng/setup-ncurses'
+ To remove an alias or aliases (``*'' means all aliases):
- The Mutt Next Generation E-Mail Client 46
+ Usage: unalias[* | key ... ]
- _\b3_\b._\b3_\b1 _\bO_\bb_\bs_\bo_\bl_\be_\bt_\be _\bV_\ba_\br_\bi_\ba_\bb_\bl_\be_\bs
+ alias muttdude me@cs.hmc.edu (Michael Elkins)
+ alias theguys manny, moe, jack
- In the process of ensuring and creating more consistency, many variables have
- been renamed and some of the old names were already removed. Please see _\bO_\bb_\bs_\bo_\b-
- _\bl_\be_\bt_\be _\bV_\ba_\br_\bi_\ba_\bb_\bl_\be_\bs (section 7.4 , page 85) for a complete list.
+ Unlike other mailers, Mutt-ng doesn't require aliases to be defined in a
+ special file. The alias command can appear anywhere in a configuration
+ file, as long as this file is source. Consequently, you can have multiple
+ alias files, or you can have all aliases defined in your muttrc.
- _\b4_\b. _\bA_\bd_\bv_\ba_\bn_\bc_\be_\bd _\bU_\bs_\ba_\bg_\be
+ On the other hand, the <create-alias> function can use only one file, the
+ one pointed to by the $alias_file variable (which is ~/.muttrc by
+ default). This file is not special either, in the sense that Mutt-ng will
+ happily append aliases to any file, but in order for the new aliases to
+ take effect you need to explicitly source this file too.
- _\b4_\b._\b1 _\bR_\be_\bg_\bu_\bl_\ba_\br _\bE_\bx_\bp_\br_\be_\bs_\bs_\bi_\bo_\bn_\bs
+ For example:
- All string patterns in Mutt-ng including those in more complex _\bp_\ba_\bt_\bt_\be_\br_\bn_\bs (sec-
- tion 7.2 , page 81) must be specified using regular expressions (regexp) in
- the ``POSIX extended'' syntax (which is more or less the syntax used by egrep
- and GNU awk). For your convenience, we have included below a brief description
- of this syntax.
+ source /usr/local/share/Mutt-ng.aliases
+ source ~/.mail_aliases
+ set alias_file=~/.mail_aliases
- The search is case sensitive if the pattern contains at least one upper case
- letter, and case insensitive otherwise. Note that ``\'' must be quoted if used
- for a regular expression in an initialization command: ``\\''.
+ To use aliases, you merely use the alias at any place in mutt where
+ muttprompts for addresses, such as the To: or Cc: prompt. You can also
+ enter aliases in your editor at the appropriate headers if you have the
+ $editor_headers variable set.
- A regular expression is a pattern that describes a set of strings. Regular
- expressions are constructed analogously to arithmetic expressions, by using
- various operators to combine smaller expressions.
+ In addition, at the various address prompts, you can use the tab character
+ to expand a partial alias to the full alias. If there are multiple
+ matches, mutt will bring up a menu with the matching aliases. In order to
+ be presented with the full list of aliases, you must hit tab with out a
+ partial alias, such as at the beginning of the prompt or after a comma
+ denoting multiple addresses.
- Note that the regular expression can be enclosed/delimited by either ' or '
- which is useful if the regular expression includes a white-space character.
- See _\bS_\by_\bn_\bt_\ba_\bx _\bo_\bf _\bI_\bn_\bi_\bt_\bi_\ba_\bl_\bi_\bz_\ba_\bt_\bi_\bo_\bn _\bF_\bi_\bl_\be_\bs (section 3.2 , page 21) for more informa-
- tion on ' and ' delimiter processing. To match a literal ' or ' you must pref-
- ace it with \ (backslash).
+ In the alias menu, you can select as many aliases as you want with the
+ select-entry key (default: RET), and use the exit key (default: q) to
+ return to the address prompt.
- The fundamental building blocks are the regular expressions that match a single
- character. Most characters, including all letters and digits, are regular
- expressions that match themselves. Any metacharacter with special meaning may
- be quoted by preceding it with a backslash.
+5. Changing the default key bindings
- The period ``.'' matches any single character. The caret ``^'' and the dollar
- sign ``$'' are metacharacters that respectively match the empty string at the
- beginning and end of a line.
+ Usage: bindmap key function
- A list of characters enclosed by ``['' and ``]'' matches any single character
- in that list; if the first character of the list is a caret ``^'' then it
- matches any character n\bno\bot\bt in the list. For example, the regular expression
- [\b[0\b01\b12\b23\b34\b45\b56\b67\b78\b89\b9]\b] matches any single digit. A range of ASCII characters may be
- specified by giving the first and last characters, separated by a hyphen ``-''.
- Most metacharacters lose their special meaning inside lists. To include a lit-
- eral ``]'' place it first in the list. Similarly, to include a literal ``^''
- place it anywhere but first. Finally, to include a literal hyphen ``-'' place
- it last.
+ This command allows you to change the default key bindings (operation
+ invoked when pressing a key).
- The Mutt Next Generation E-Mail Client 47
+ map specifies in which menu the binding belongs. Multiple maps may be
+ specified by separating them with commas (no additional whitespace
+ isallowed). The currently defined maps are:
- Certain named classes of characters are predefined. Character classes consist
- of ``[:'', a keyword denoting the class, and ``:]''. The following classes are
- defined by the POSIX standard:
+ generic
- [:alnum:]
- Alphanumeric characters.
+ This is not a real menu, but is used as a fallback for all of the
+ other menus except for the pager and editor modes. If a key is not
+ defined in another menu, Mutt-ng will look for a binding to use in
+ this menu. This allows you to bind a key to a certain function in
+ multiple menus instead of having multiple bind statements to
+ accomplish the same task.
- [:alpha:]
- Alphabetic characters.
+ alias
- [:blank:]
- Space or tab characters.
+ The alias menu is the list of your personal aliases as defined in
+ your muttrc. It is the mapping from a short alias name to the full
+ email address(es) of the recipient(s).
- [:cntrl:]
- Control characters.
+ attach
- [:digit:]
- Numeric characters.
+ The attachment menu is used to access the attachments on received
+ messages.
- [:graph:]
- Characters that are both printable and visible. (A space is print-
- able, but not visible, while an ``a'' is both.)
+ browser
- [:lower:]
- Lower-case alphabetic characters.
+ The browser is used for both browsing the local directory
+ structure, and for listing all of your incoming mailboxes.
- [:print:]
- Printable characters (characters that are not control characters.)
+ editor
- [:punct:]
- Punctuation characters (characters that are not letter, digits,
- control characters, or space characters).
+ The editor is the line-based editor the user enters text data.
- [:space:]
- Space characters (such as space, tab and formfeed, to name a few).
+ index
- [:upper:]
- Upper-case alphabetic characters.
+ The index is the list of messages contained in a mailbox.
- [:xdigit:]
- Characters that are hexadecimal digits.
+ compose
- A character class is only valid in a regular expression inside the brackets of
- a character list. Note that the brackets in these class names are part of the
- symbolic names, and must be included in addition to the brackets delimiting the
- bracket list. For example, [\b[[\b[:\b:d\bdi\big\bgi\bit\bt:\b:]\b]]\b] is equivalent to [\b[0\b0-\b-9\b9]\b].
+ The compose menu is the screen used when sending a new message.
- Two additional special sequences can appear in character lists. These apply to
- non-ASCII character sets, which can have single symbols (called collating ele-
- ments) that are represented with more than one character, as well as several
- characters that are equivalent for collating or sorting purposes:
+ pager
- Collating Symbols
- A collating symbol is a multi-character collating element enclosed
+ The pager is the mode used to display message/attachment data, and
+ help listings.
- The Mutt Next Generation E-Mail Client 48
+ pgp
- in ``[.'' and ``.]''. For example, if ``ch'' is a collating ele-
- ment, then [\b[[\b[.\b.c\bch\bh.\b.]\b]]\b] is a regexp that matches this collating ele-
- ment, while [\b[c\bch\bh]\b] is a regexp that matches either ``c'' or ``h''.
+ The pgp menu is used to select the OpenPGP keys used for
+ encrypting outgoing messages.
- Equivalence Classes
- An equivalence class is a locale-specific name for a list of char-
- acters that are equivalent. The name is enclosed in ``[='' and
- ``=]''. For example, the name ``e'' might be used to represent all
- of ``'' ``'' and ``e''. In this case, [\b[[\b[=\b=e\be=\b=]\b]]\b] is a regexp that
- matches any of ``'', ``'' and ``e''.
+ postpone
- A regular expression matching a single character may be followed by one of sev-
- eral repetition operators:
+ The postpone menu is similar to the index menu, except is used
+ when recalling a message the user was composing, but saved until
+ later.
- ?
- The preceding item is optional and matched at most once.
+ key is the key (or key sequence) you wish to bind. To specify a control
+ character, use the sequence \Cx, 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 \CA, \Ca, \cA and \ca are all
+ equivalent. An alternative form is to specify the key as a three digit
+ octal number prefixed with a ``\'' (for example \177 is equivalent to
+ \c?).
- *
- The preceding item will be matched zero or more times.
+ In addition, key may consist of:
- +
- The preceding item will be matched one or more times.
+ Table 3.1. Alternative Key Names
- {n}
- The preceding item is matched exactly _\bn times.
+ Sequence Description
+ \t tab
+ <tab> tab
+ <backtab> backtab / shift-tab
+ \r carriage return
+ \n newline
+ \e escape
+ <esc> 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
+ <enter> Enter
+ <return> Return
+ <home> Home
+ <end> End
+ <space> Space bar
+ <f1> function key 1
+ <f10> function key 10
- {n,}
- The preceding item is matched _\bn or more times.
+ key does not need to be enclosed in quotes unless it contains a space (``
+ '').
- {,m}
- The preceding item is matched at most _\bm times.
+ function specifies which action to take when key is pressed. For a
+ complete list of functions, see the functions. The special function noop
+ unbinds the specified key sequence.
- {n,m}
- The preceding item is matched at least _\bn times, but no more than _\bm
- times.
+6. Defining aliases for character sets
- Two regular expressions may be concatenated; the resulting regular expression
- matches any string formed by concatenating two substrings that respectively
- match the concatenated subexpressions.
+ Usage: charset-hookaliascharset
- Two regular expressions may be joined by the infix operator ``|''; the result-
- ing regular expression matches any string matching either subexpression.
+ Usage: iconv-hookcharsetlocal-charset
- Repetition takes precedence over concatenation, which in turn takes precedence
- over alternation. A whole subexpression may be enclosed in parentheses to
- override these precedence rules.
+ The charset-hook command defines an alias for a character set. This is
+ useful to properly display messages which are tagged with a character set
+ name not known to mutt.
- N\bNo\bot\bte\be:\b: If you compile Mutt-ng with the GNU _\br_\bx package, the following operators
- may also be used in regular expressions:
+ The iconv-hook command defines a system-specific name for a character set.
+ This is helpful when your systems character conversion library insists on
+ using strange, system-specific names for character sets.
- \\y
- Matches the empty string at either the beginning or the end of a
- word.
+7. Setting variables based upon mailbox
- The Mutt Next Generation E-Mail Client 49
+ Usage: folder-hook [!]regexpcommand
- \\B
- Matches the empty string within a word.
+ 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. regexp is a regular expression
+ specifying in which mailboxes to execute command before loading. If a
+ mailbox matches multiple folder-hook's, they are executed in the order
+ given in the muttrc.
- \\<
- Matches the empty string at the beginning of a word.
+ Note: if you use the ``!'' shortcut for $spoolfile at the beginning of the
+ pattern, you must place it inside of double or single quotes in order to
+ distinguish it from the logical not operator for the expression.
- \\>
- Matches the empty string at the end of a word.
+ Note that the settings are not restored when you leave the mailbox. For
+ example, a command action to perform is to change the sorting methodbased
+ upon the mailbox being read:
- \\w
- Matches any word-constituent character (letter, digit, or under-
- score).
+ folder-hook mutt set sort=threads
- \\W
- Matches any character that is not word-constituent.
+ However, the sorting method is not restored to its previous value when
+ reading a different mailbox. To specify a default command, use the pattern
+ ``.'':
- \\`
- Matches the empty string at the beginning of a buffer (string).
+ folder-hook . set sort=date-sent
- \\'
- Matches the empty string at the end of a buffer.
+8. Keyboard macros
- Please note however that these operators are not defined by POSIX, so they may
- or may not be available in stock libraries on various systems.
+ Usage: macromenu key sequence [description]
- _\b4_\b._\b2 _\bP_\ba_\bt_\bt_\be_\br_\bn_\bs
+ Macros are useful when you would like a single key to perform a series of
+ actions. When you press key in menu menu ,Mutt-ng will behave as if you
+ had typed sequence. So if you have a common sequence of commands you type,
+ you can create a macro to execute those commands with a singlekey.
- Mutt-ng's pattern language provides a simple yet effective way to set up rules
- to match messages, e.g. for operations like tagging and scoring. A pattern con-
- sists of one or more sub-pattern, which can be logically grouped, ORed, and
- negated. For a complete listing of these patterns, please refer to table _\bP_\ba_\bt_\b-
- _\bt_\be_\br_\bn_\bs (section 7.2 , page 81) in the Reference chapter.
+ menu is the maps which the macro will be bound. Multiple maps may be
+ specified by separating multiple menu arguments by commas. Whitespace may
+ not be used in between the menu arguments and thecommas separating them.
- It must be noted that in this table, EXPR, USER, ID and SUBJECT are regular
- expressions. For ranges, the forms <[MAX], >>[MIN], [MIN]- and -[MAX] are also
- possible.
+ key and sequence are expanded by the same rules as the bind. There are
+ some additions however. The first is that control characters in sequence
+ can also be specified as ^x. In order to get a caret (`^'') you need to
+ specify it twice. Secondly, to specify a certain key such as up or to
+ invoke a function directly, you can use the format <key name> and
+ <function name> .For a listing of key names see the section on bind.
+ Functions are listed in the functions.
- _\b4_\b._\b2_\b._\b1 _\bC_\bo_\bm_\bp_\bl_\be_\bx _\bP_\ba_\bt_\bt_\be_\br_\bn_\bs
+ The advantage with using function names directly is that the macros
+ willwork regardless of the current key bindings, so they are not dependent
+ on the user having particular key definitions. This makes them more
+ robustand portable, and also facilitates defining of macros in files used
+ by more than one user (eg. the system Muttngrc).
- It is possible to combine several sub-patterns to a more complex pattern. The
- most simple possibility is to logically AND several patterns by stringing them
- together:
+ Optionally you can specify a descriptive text after sequence, which is
+ shown in the help screens.
- ~s 'SPAM' ~U
+ Note: Macro definitions (if any) listed in the help screen(s), are
+ silently truncated at the screen width, and are not wrapped.
- The pattern above matches all messages that contain ``SPAM'' in the subject and
- are unread.
+9. Using color and mono video attributes
- To logical OR patterns, simply use the | operator. This one especially useful
- when using local groups:
+ Usage: colorobject foreground background [regexp]
- The Mutt Next Generation E-Mail Client 50
+ Usage: colorindex foreground pattern
- ~f ("nion@muttng\.org"|"ak@muttng\.org"|"pdmef@muttng\.org")
- (~b mutt-ng|~s Mutt-ng)
- !~x '@synflood\.at'
+ Usage: uncolorindex pattern [pattern ...]
- The first pattern matches all messages that were sent by one of the mutt-ng
- maintainers, while the seconds pattern matches all messages that contain
- ``mutt-ng'' in the message body or ``Mutt-ng'' in the subject. The third pat-
- tern matches all messages that do not contain ``@synflood\.at'' in the Refer-
- ences: header, i.e. messages that are not an (indirect) reply to one of my
- messages. A pattern can be logicall negated using the ! operator.
+ If your terminal supports color, you can spice up Mutt-ng by creating your
+ own color scheme. To define the color of an object (type of information),
+ you must specify both a foreground color and a background color (it is not
+ possible to only specify one or the other).
- _\b4_\b._\b2_\b._\b2 _\bP_\ba_\bt_\bt_\be_\br_\bn_\bs _\ba_\bn_\bd _\bD_\ba_\bt_\be_\bs
+ object can be one of:
- When using dates in patterns, the dates must be specified in a special format,
- i.e. DD/MM/YYYY. If you don't specify month or year, they default to the cur-
- rent month or year. When using date ranges, and you specify only the minimum or
- the maximum, the specified date will be excluded, e.g. 01/06/2005- matches
- against all messages _\ba_\bf_\bt_\be_\br Juni 1st, 2005.
+ o attachment
- It is also possible to use so-called ``error margins'' when specifying date
- ranges. You simply specify a date, and then the error margin. This margin
- needs to contain the information whether it goes ``forth'' or ``back'' in time,
- by using + and -. Then follows a number and a unit, i.e. y for years, m for
- months, w for weeks and d for days. If you use the special * sign, it means
- that the error margin goes to both ``directions'' in time.
+ o body (match regexp in the body of messages)
- ~d 01/01/2005+1y
- ~d 18/10/2004-2w
- ~d 28/12/2004*1d
+ o bold (highlighting bold patterns in the body of messages)
- The first pattern matches all dates between January 1st, 2005 and January 1st
- 2006. The second pattern matches all dates between October 18th, 2004 and
- October 4th 2004 (2 weeks before 18/10/2004), while the third pattern matches
- all dates 1 day around December 28th, 2004 (i.e. Dec 27th, 28th and 29th).
+ o error (error messages printed by Mutt-ng)
- Relative dates are also very important, as they make it possible to specify
- date ranges between a fixed number of units and the current date. How this
- works can be seen in the following example:
+ o header (match regexp in the message header)
- ~d >2w # messages older than two weeks
- ~d <3d # messages newer than 3 days
- ~d =1m # messages that are exactly one month old
+ o hdrdefault (default color of the message header in the pager)
- _\b4_\b._\b3 _\bF_\bo_\br_\bm_\ba_\bt _\bS_\bt_\br_\bi_\bn_\bg_\bs
+ o index (match pattern in the message index)
- _\b4_\b._\b3_\b._\b1 _\bI_\bn_\bt_\br_\bo_\bd_\bu_\bc_\bt_\bi_\bo_\bn
+ o indicator (arrow or bar used to indicate the current item in a menu)
- The Mutt Next Generation E-Mail Client 51
+ o markers (the ``+'' markers at the beginning of wrapped lines in the
+ pager)
- The so called _\bF_\bo_\br_\bm_\ba_\bt _\bS_\bt_\br_\bi_\bn_\bg_\bs offer great flexibility when configuring mutt-ng.
- In short, they describe what items to print out how in menus and status mes-
- sages.
+ o message (informational messages)
- Basically, they work as this: for different menus and bars, there's a variable
- specifying the layout. For every item available, there is a so called _\be_\bx_\bp_\ba_\bn_\bd_\bo.
+ o normal
- For example, when running mutt-ng on different machines or different versions
- for testing purposes, it may be interesting to have the following information
- always printed on screen when one is in the index:
+ o quoted (text matching $quote_regexp in the body of a message)
- +\bo the current hostname
+ o quoted1, quoted2, ..., quotedN (higher levels of quoting)
- +\bo the current mutt-ng version number
+ o search (highlighting of words in the pager)
- The setting for the status bar of the index is controlled via the _\b$_\bs_\bt_\ba_\bt_\bu_\bs_\b__\bf_\bo_\br_\b-
- _\bm_\ba_\bt (section 7.4.312 , page 162) variable. For the hostname and version
- string, there's an expando for $status_format: %h expands to the hostname and
- %v to the version string. When just configuring:
+ o signature
- set status_format = "%v on %h: ..."
+ o status (mode lines used to display info about the mailbox or message)
- mutt-ng will replace the sequence %v with the version string and %h with the
- host's name. When you are, for example, running mutt-ng version 1.5.9i on host
- mailhost, you'll see the following when you're in the index:
+ o tilde (the ``~'' used to pad blank lines in the pager)
- Mutt-ng 1.5.9i on mailhost: ...
+ o tree (thread tree drawn in the message index and attachment menu)
- In the index, there're more useful information one could want to see:
+ o underline (highlighting underlined patterns in the body of messages)
- +\bo which mailbox is open
+ foreground and background can be one of the following:
- +\bo how man new, flagged or postponed messages
+ o white
- +\bo ...
+ o black
- To include the mailbox' name is as easy as:
+ o green
- set status_format = "%v on %h: %B: ...
+ o magenta
- When the currently opened mailbox is Inbox, this will be expanded to:
+ o blue
- Mutt-ng 1.5.9i on mailhost: Inbox: ...
+ o cyan
- For the number of certain types of messages, one more feature of the format
- strings is extremely useful. If there aren't messages of a certain type, it may
+ o yellow
- The Mutt Next Generation E-Mail Client 52
+ o red
- not be desired to print just that there aren't any but instead only print some-
- thing if there are any.
+ o default
- _\b4_\b._\b3_\b._\b2 _\bC_\bo_\bn_\bd_\bi_\bt_\bi_\bo_\bn_\ba_\bl _\bE_\bx_\bp_\ba_\bn_\bs_\bi_\bo_\bn
+ o colorx
- To only print the number of messages if there are new messages in the current
- mailbox, further extend $status_format to:
+ foreground can optionally be prefixed with the keyword bright to make the
+ foreground color boldfaced (e.g., brightred).
- set status_format = "%v on %h: %B %?n?%n new? ...
+ If your terminal supports it, the special keyword default can be used as a
+ transparent color. The value brightdefault is also valid. If Mutt-ng is
+ linked against the S-Lang library, you also need to set the $COLORFGBG
+ environment variable to the default colors of your terminal for this to
+ work; for example (for Bourne-like shells):
- This feature is called _\bn_\bo_\bn_\bz_\be_\br_\bo_\b-_\bp_\br_\bi_\bn_\bt_\bi_\bn_\bg and works as this: some expandos may be
- optionally printed nonzero, i.e. a portion of the format string is only evalu-
- ated if the value of the expando is different from zero. The basic syntax is:
+ set COLORFGBG="green;black"
+ export COLORFGBG
- %?<item>?<string if nonzero>?
+ Note: The S-Lang library requires you to use the lightgray and brown
+ keywords instead of white and yellow when setting this variable.
- which tells mutt-ng to only look at <string if nonzero> if the value of the
- %<item%gt; expando is different from zero. In our example, we used n as the
- expando to check for and %n new as the optional nonzero string.
+ Note: The uncolor command can be applied to the index object only. It
+ removes entries from the list. You must specify the same pattern specified
+ in the color command for it to be removed. The pattern ``*'' is a special
+ token which means to clear the color index list of all entries.
- But this is not all: this feature only offers one alternative: ``print some-
- thing if not zero.'' Mutt-ng does, as you might guess, also provide a logically
- complete version: ``if zero, print something and else print something else.''
- This is achieved by the following syntax for those expandos which may be
- printed nonzero:
+ Mutt-ng also recognizes the keywords color0, color1 ,..., colorN-1 (N
+ being the number of colors supported by your terminal). This is useful
+ when you remap the colors for your display (for example by changing the
+ color associated with color2 for your xterm), since color names may then
+ lose their normal meaning.
- %?<item>?<string if nonzero>&<string if zero>?
+ If your terminal does not support color, it is still possible change the
+ video attributes through the use of the ``mono'' command:
- Using this we can make mutt-ng to do the following:
+ Usage: monoobject attribute [regexp]
- +\bo make it print ``_\bn new messages'' whereby _\bn is the count but only if there
- new ones
+ Usage: monoindex attribute pattern
- +\bo and make it print ``no new messages'' if there aren't any
+ Usage: unmonoindex pattern [pattern ...]
- The corresponding configuration is:
+ where attribute is one of the following:
- set status_format = "%v on %h: %B: %?n?%n new messages&no new messages? ...
+ o none
- This doubles the use of the ``new messages'' string because it'll get always
- printed. Thus, it can be shortened to:
+ o bold
- set status_format = "%v on %h: %B: %?n?%n&no? new messages ...
+ o underline
- The Mutt Next Generation E-Mail Client 53
+ o reverse
- As you might see from this rather simple example, one can create very complex
- but fancy status messages. Please see the reference chapter for expandos and
- those which may be printed nonzero.
+ o standout
- _\b4_\b._\b3_\b._\b3 _\bM_\bo_\bd_\bi_\bf_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\bs _\ba_\bn_\bd _\bP_\ba_\bd_\bd_\bi_\bn_\bg
+10. Ignoring (weeding) unwanted message headers
- Besides the information given so far, there're even more features of format
- strings:
+ Usage: ignorepattern [pattern ...]
- +\bo When specifying %_<item> instead of just %<item>, mutt-ng will convert all
- characters in the expansion of <item> to lowercase.
+ Usage: unignorepattern [pattern ...]
- +\bo When specifying %:<item> instead of just %<item>, mutt-ng will convert all
- dots in the expansion of <item> to underscores (_).
+ 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.
- Also, there's a feature called _\bP_\ba_\bd_\bd_\bi_\bn_\bg supplied by the following two expandos:
- %|X and %>X.
+ 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-''. ``ignore *'' will ignore all headers.
- %|X
- When this occurs, mutt-ng will fill the rest of the line with the
- character X. In our example, filling the rest of the line with
- dashes is done by setting:
+ To remove a previously added token from the list, use the ``unignore''
+ command. The ``unignore'' command will make Mutt-ng display headers with
+ the given pattern. For example, if you do ``ignore x-'' it is possible to
+ ``unignore x-mailer''.
- set status_format = "%v on %h: %B: %?n?%n&no? new messages %|-"
+ ``unignore *'' will remove all tokens from the ignore list.
- %>X
- Since the previous expando stops at the end of line, there must be
- a way to fill the gap between two items via the %>X expando: it
- puts as many characters X in between two items so that the rest of
- the line will be right-justified. For example, to not put the ver-
- sion string and hostname of our example on the left but on the
- right and fill the gap with spaces, one might use (note the space
- after %>):
+ For example:
- set status_format = "%B: %?n?%n&no? new messages %> (%v on %h)"
+ # Sven's draconian header weeding
+ ignore *
+ unignore from date subject to cc
+ unignore organization organisation x-mailer: x-newsreader: x-mailing-list:
+ unignore posted-to:
- _\b4_\b._\b4 _\bU_\bs_\bi_\bn_\bg _\bT_\ba_\bg_\bs
+11. Alternative addresses
- 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 sub-
- ject. To tag all messages matching a pattern, use the tag-pattern function,
- which is bound to ``shift-T'' by default. Or you can select individual mes-
- sages by hand using the ``tag-message'' function, which is bound to ``t'' by
+ Usage: alternatesregexp [regexp ...]
- The Mutt Next Generation E-Mail Client 54
+ Usage: unalternatesregexp [regexp ...]
- default. See _\bp_\ba_\bt_\bt_\be_\br_\bn_\bs (section 7.2 , page 81) for Mutt-ng's pattern matching
- syntax.
+ With various functions, mutt will treat messages differently, depending on
+ whether you sent them or whether you received them from someone else. For
+ instance, when replying to a message that you sent to a different party,
+ mutt will automatically suggest to send the response to the original
+ message's recipients--responding to yourself won't make much sense in many
+ cases. (See $reply_to.)
- Once you have tagged the desired messages, you can use the ``tag-prefix'' oper-
- ator, which is the ``;'' (semicolon) key by default. When the ``tag-prefix''
- operator is used, the n\bne\bex\bxt\bt operation will be applied to all tagged messages if
- that operation can be used in that manner. If the _\b$_\ba_\bu_\bt_\bo_\b__\bt_\ba_\bg (section 7.4.18 ,
- page 91) variable is set, the next operation applies to the tagged messages
- automatically, without requiring the ``tag-prefix''.
+ Many users receive e-mail under a number of different addresses. To fully
+ use mutt's features here, the program must be able to recognize what
+ e-mail addresses you receive mail under. That's the purpose of the
+ alternates command: It takes a list of regular expressions, each of which
+ can identify an address under which you receive e-mail.
- In _\bm_\ba_\bc_\br_\bo_\bs (section 3.7 , page 27) or _\bp_\bu_\bs_\bh (section 3.23 , page 38) commands,
- you can use the ``tag-prefix-cond'' operator. If there are no tagged messages,
- mutt will "eat" the rest of the macro to abort it's execution. Mutt-ng will
- stop "eating" the macro when it encounters the ``end-cond'' operator; after
- this operator the rest of the macro will be executed as normal.
+ The unalternates command can be used to write exceptions to alternates
+ patterns. If an address matches something in an alternates command, but
+ you nonetheless do not think it is from you, you can list a more precise
+ pattern under an unalternates command.
- _\b4_\b._\b5 _\bU_\bs_\bi_\bn_\bg _\bH_\bo_\bo_\bk_\bs
+ To remove a regular expression from the alternates list, use the
+ unalternates command with exactly the same regexp . Likewise, if the
+ regexp for a alternates command matches an entry on the unalternates list,
+ that unalternates entry will be removed. If the regexp for unalternates is
+ ``*'', all entries on alternates will be removed.
- A _\bh_\bo_\bo_\bk is a concept borrowed from the EMACS editor which allows you to execute
- arbitrary commands before performing some operation. For example, you may wish
- to tailor your configuration based upon which mailbox you are reading, or to
- whom you are sending mail. In the Mutt-ng world, a _\bh_\bo_\bo_\bk consists of a _\br_\be_\bg_\bu_\bl_\ba_\br
- _\be_\bx_\bp_\br_\be_\bs_\bs_\bi_\bo_\bn (section 4.1 , page 46) or _\bp_\ba_\bt_\bt_\be_\br_\bn (section 7.2 , page 81) along
- with a configuration option/command. See
+12. Format = Flowed
- +\bo _\bf_\bo_\bl_\bd_\be_\br_\b-_\bh_\bo_\bo_\bk (section 3.6 , page 26)
+ 12.1. Introduction
- +\bo _\bs_\be_\bn_\bd_\b-_\bh_\bo_\bo_\bk (section 3.20 , page 37)
+ Mutt-ng contains support for so-called format=flowed messages. In the
+ beginning of email, each message had a fixed line width, and it was enough
+ for displaying them on fixed-size terminals. But times changed, and
+ nowadays hardly anybody still uses fixed-size terminals: more people
+ nowaydays use graphical user interfaces, with dynamically resizable
+ windows. This led to the demand of a new email format that makes it
+ possible for the email client to make the email look nice in a resizable
+ window without breaking quoting levels and creating an incompatible email
+ format that can also be displayed nicely on old fixed-size terminals.
- +\bo _\bm_\be_\bs_\bs_\ba_\bg_\be_\b-_\bh_\bo_\bo_\bk (section 3.21 , page 38)
+ For introductory information on format=flowed messages, see
+ <http://www.joeclark.org/ffaq.html>.
- +\bo _\bs_\ba_\bv_\be_\b-_\bh_\bo_\bo_\bk (section 3.17 , page 36)
+ 12.2. Receiving: Display Setup
- +\bo _\bm_\bb_\bo_\bx_\b-_\bh_\bo_\bo_\bk (section 3.13 , page 34)
+ When you receive emails that are marked as format=flowed messages, and is
+ formatted correctly, mutt-ng will try to reformat the message to optimally
+ fit on your terminal. If you want a fixed margin on the right side of your
+ terminal, you can set the following:
- +\bo _\bf_\bc_\bc_\b-_\bh_\bo_\bo_\bk (section 3.18 , page 36)
+ set wrapmargin = 10
- +\bo _\bf_\bc_\bc_\b-_\bs_\ba_\bv_\be_\b-_\bh_\bo_\bo_\bk (section 3.19 , page 37)
+ The code above makes the line break 10 columns before the right side of
+ the terminal.
- for specific details on each type of _\bh_\bo_\bo_\bk available.
+ If your terminal is so wide that the lines are embarrassingly long, you
+ can also set a maximum line length:
- N\bNo\bot\bte\be:\b: if a hook changes configuration settings, these changes remain effective
- until the end of the current mutt session. As this is generally not desired, a
- default hook needs to be added before all other hooks to restore configuration
- defaults. Here is an example with send-hook and the my_hdr directive:
+ set max_line_length = 120
- send-hook . 'unmy_hdr From:'
- send-hook ~C'^b@b\.b$' my_hdr from: c@c.c
+ The example above will give you lines not longer than 120 characters.
- The Mutt Next Generation E-Mail Client 55
+ When you view at format=flowed messages, you will often see the quoting
+ hierarchy like in the following example:
- _\b4_\b._\b5_\b._\b1 _\bM_\be_\bs_\bs_\ba_\bg_\be _\bM_\ba_\bt_\bc_\bh_\bi_\bn_\bg _\bi_\bn _\bH_\bo_\bo_\bk_\bs
+ >Bill, can you please send last month's progress report to Mr.
+ >Morgan? We also urgently need the cost estimation for the new
+ >production server that we want to set up before our customer's
+ >project will go live.
- Hooks that act upon messages (send-hook, save-hook, fcc-hook, message-hook) are
- evaluated in a slightly different manner. For the other types of hooks, a _\br_\be_\bg_\b-
- _\bu_\bl_\ba_\br _\be_\bx_\bp_\br_\be_\bs_\bs_\bi_\bo_\bn (section 4.1 , page 46) is sufficient. But in dealing with
- messages a finer grain of control is needed for matching since for different
- purposes you want to match different criteria.
+ This obviously doesn't look very nice, and it makes it very hard to
+ differentiate between text and quoting character. The solution is to
+ configure mutt-ng to "stuff" the quoting:
- Mutt-ng allows the use of the _\bs_\be_\ba_\br_\bc_\bh _\bp_\ba_\bt_\bt_\be_\br_\bn (section 7.2 , page 81) language
- for matching messages in hook commands. This works in exactly the same way as
- it would when _\bl_\bi_\bm_\bi_\bt_\bi_\bn_\bg or _\bs_\be_\ba_\br_\bc_\bh_\bi_\bn_\bg the mailbox, except that you are restricted
- to those operators which match information mutt extracts from the header of the
- message (i.e. from, to, cc, date, subject, etc.).
+ set stuff_quoted
- For example, if you wanted to set your return address based upon sending mail
- to a specific address, you could do something like:
+ This will lead to a nicer result that is easier to read:
- send-hook '~t ^me@cs\.hmc\.edu$' 'my_hdr From: Mutt-ng User <user@host>'
+ > Bill, can you please send last month's progress report to Mr.
+ > Morgan? We also urgently need the cost estimation for the new
+ > production server that we want to set up before our customer's
+ > project will go live.
- which would execute the given command when sending mail to _\bm_\be_\b@_\bc_\bs_\b._\bh_\bm_\bc_\b._\be_\bd_\bu.
+ 12.3. Sending
- However, it is not required that you write the pattern to match using the full
- searching language. You can still specify a simple _\br_\be_\bg_\bu_\bl_\ba_\br _\be_\bx_\bp_\br_\be_\bs_\bs_\bi_\bo_\bn like the
- other hooks, in which case Mutt-ng will translate your pattern into the full
- language, using the translation specified by the _\b$_\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bh_\bo_\bo_\bk (section
- 7.4.47 , page 97) variable. The pattern is translated at the time the hook is
- declared, so the value of _\b$_\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bh_\bo_\bo_\bk (section 7.4.47 , page 97) that is in
- effect at that time will be used.
+ If you want mutt-ng to send emails with format=flowed set, you need to
+ explicitly set it:
- _\b4_\b._\b6 _\bU_\bs_\bi_\bn_\bg _\bt_\bh_\be _\bs_\bi_\bd_\be_\bb_\ba_\br
+ set text_flowed
- The sidebar, a feature specific to Mutt-ng, allows you to use a mailbox listing
- which looks very similar to the ones you probably know from GUI mail clients.
- The sidebar lists all specified mailboxes, shows the number in each and high-
- lights the ones with new email Use the following configuration commands:
+ Additionally, you have to use an editor which supports writing
+ format=flowed-conforming emails. For vim(1), this is done by adding w to
+ the formatoptions (see :h formatoptions and :h fo-table) when writing
+ emails.
- set sidebar_visible="yes"
- set sidebar_width=25
+ Also note that format=flowed knows about ``space-stuffing'', that is, when
+ sending messages, some kinds of lines have to be indented with a single
+ space on the sending side. On the receiving side, the first space (if any)
+ is removed. As a consequence and in addition to the above simple setting,
+ please keep this in mind when making manual formattings within the editor.
+ Also note that mutt-ng currently violates the standard (RfC 3676) as it
+ does not space-stuff lines starting with:
- If you want to specify the mailboxes you can do so with:
+ o > This is not the quote character but a right angle used for other
+ reasons
- set mbox='=INBOX'
- mailboxes INBOX \
- MBOX1 \
- MBOX2 \
- ...
+ Please make sure that you manually prepend a space to each of them.
- You can also specify the colors for mailboxes with new mails by using:
+ 12.4. Additional Notes
- The Mutt Next Generation E-Mail Client 56
+ For completeness, the $delete_space variable provides the mechanism to
+ generate a DelSp=yes parameter on outgoing messages. According to the
+ standard, clients receiving a format=flowed messages should delete the
+ last space of a flowed line but still interpret the line as flowed.
+ Because flowed lines usually contain only one space at the end, this
+ parameter would make the receiving client concatenate the last word of the
+ previous with the first of the current line without a space. This makes
+ ordinary text unreadable and is intended for languages rarely using
+ spaces. So please use this setting only if you're sure what you're doing.
- color sidebar_new red black
- color sidebar white black
+13. Mailing lists
- The available functions are:
+ Usage: listsregexp [regexp ...]
- sidebar-scroll-up Scrolls the mailbox list up 1 page
- sidebar-scroll-down Scrolls the mailbox list down 1 page
- sidebar-next Highlights the next mailbox
- sidebar-next-new Highlights the next mailbox with new mail
- sidebar-previous Highlights the previous mailbox
- sidebar-open Opens the currently highlighted mailbox
+ Usage: unlistsregexp [regexp ...]
- Reasonable key bindings look e.g. like this:
+ Usage: subscriberegexp [regexp ...]
- bind index \Cp sidebar-prev
- bind index \Cn sidebar-next
- bind index \Cb sidebar-open
- bind pager \Cp sidebar-prev
- bind pager \Cn sidebar-next
- bind pager \Cb sidebar-open
+ Usage: unsubscriberegexp [regexp ...]
- macro index B ':toggle sidebar_visible^M'
- macro pager B ':toggle sidebar_visible^M'
+ Mutt-ng has a few nice features for using-lists. In order to take
+ advantage of them, you must specify which addresses belong to mailing
+ lists, and which mailing lists you are subscribed to. Once you have done
+ this, the list-reply function will work for all known lists. Additionally,
+ when you send a message to a subscribed list, mutt will add a
+ Mail-Followup-To header to tell other users' mail user agents not to send
+ copies of replies to your personal address. Note that the Mail-Followup-To
+ header is a non-standard extension which is not supported by all mail user
+ agents. Adding it is not bullet-proof against receiving personal CCs of
+ list messages. Also note that the generation of the Mail-Followup-To
+ header is controlled by the $followup_to configuration variable.
- You can then go up and down by pressing Ctrl-P and Ctrl-N, and switch on and
- off the sidebar simply by pressing 'B'.
+ More precisely, Mutt-ng maintains lists of patterns for the addresses of
+ known and subscribed mailing lists. Every subscribed mailing list is
+ known. To mark a mailing list as known, use the ``lists'' command. To mark
+ it as subscribed, use ``subscribe''.
- _\b4_\b._\b7 _\bE_\bx_\bt_\be_\br_\bn_\ba_\bl _\bA_\bd_\bd_\br_\be_\bs_\bs _\bQ_\bu_\be_\br_\bi_\be_\bs
+ You can use regular expressions with both commands. To mark all messages
+ sent to a specific bug report's address on mutt's bug tracking system as
+ list mail, for instance, you could say ``subscribe [0-9]*@bugs.guug.de''.
+ Often, it's sufficient to just give a portion of the list's e-mail
+ address.
- Mutt-ng supports connecting to external directory databases such as LDAP,
- ph/qi, bbdb, or NIS through a wrapper script which connects to mutt using a
- simple interface. Using the _\b$_\bq_\bu_\be_\br_\by_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd (section 7.4.225 , page 141) vari-
- able, you specify the wrapper command to use. For example:
+ Specify as much of the address as you need to to remove ambiguity. For
+ example, if you've subscribed to the Mutt-ng mailing list, you will
+ receive mail addressed to mutt-users@mutt.org. So, to tell Mutt-ng that
+ this is a mailing list, you could add ``lists mutt-users'' to your
+ initialization file. To tell mutt that you are subscribed to it, add
+ ``subscribe mutt-users'' to your initialization file instead. If you also
+ happen to get mail from someone whose address is mutt-users@example.com,
+ you could use ``lists mutt-users@mutt\\.org'' or ``subscribe
+ mutt-users@mutt\\.org'' to match only mail from the actual list.
- set query_command = "mutt_ldap_query.pl '%s'"
+ The ``unlists'' command is used to remove a token from the list of known
+ and subscribed mailing-lists. Use ``unlists *'' to remove all tokens.
- The wrapper script should accept the query on the command-line. It should
- return a one line message, then each matching response on a single line, each
- line containing a tab separated address then name then some other optional
- information. On error, or if there are no matching addresses, return a non-
- zero exit code and a one line error message.
+ To remove a mailing list from the list of subscribed mailing lists, but
+ keep it on the list of known mailing lists, use ``unsubscribe''.
- An example multiple response output:
+14. Using Multiple spool mailboxes
- Searching database ... 20 entries ... 3 matching:
- me@cs.hmc.edu Michael Elkins mutt dude
- blong@fiction.net Brandon Long mutt and more
+ Usage: mbox-hook [!]patternmailbox
- The Mutt Next Generation E-Mail Client 57
+ This command is used to move read messages from a specified mailbox to
+ adifferent mailbox automatically when you quit or change folders. pattern
+ is a regular expression specifying the mailbox to treat as a ``spool''
+ mailbox and mailbox specifies where mail should be saved when read.
- roessler@guug.de Thomas Roessler mutt pgp
+ Unlike some of the other hook commands, only the first matching pattern is
+ used (it is not possible to save read mail in more than a single mailbox).
- There are two mechanisms for accessing the query function of mutt. One is to
- do a query from the index menu using the query function (default: Q). This
- will prompt for a query, then bring up the query menu which will list the
- matching responses. From the query menu, you can select addresses to create
- aliases, or to mail. You can tag multiple addresses to mail, start a new
- query, or have a new query appended to the current responses.
+15. Defining mailboxes which receive mail
- The other mechanism for accessing the query function is for address completion,
- similar to the alias completion. In any prompt for address entry, you can use
- the complete-query function (default: ^T) to run a query based on the current
- address you have typed. Like aliases, mutt will look for what you have typed
- back to the last space or comma. If there is a single response for that query,
- mutt will expand the address in place. If there are multiple responses, mutt
- will activate the query menu. At the query menu, you can select one or more
- addresses to be added to the prompt.
+ Usage: mailboxes[!]filename [filename ... ]
- _\b4_\b._\b8 _\bM_\ba_\bi_\bl_\bb_\bo_\bx _\bF_\bo_\br_\bm_\ba_\bt_\bs
+ Usage: unmailboxes[!]filename [filename ... ]
- Mutt-ng 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. When creating new mailboxes, Mutt-ng
- uses the default specified with the _\b$_\bm_\bb_\bo_\bx_\b__\bt_\by_\bp_\be (section 7.4.129 , page 118)
- variable.
+ 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.
- m\bmb\bbo\box\bx. 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:
+ When changing folders, pressing space will cycle through folders with new
+ mail.
- From me@cs.hmc.edu Fri, 11 Apr 1997 11:44:56 PST
+ Pressing TAB in the directory browser will bring up a menu showing the
+ files specified by the mailboxes command, and indicate which contain new
+ messages. Mutt-ng will automatically enter this mode when invoked from the
+ command line with the -y option.
- to denote the start of a new message (this is often referred to as the
- ``From_'' line).
+ The ``unmailboxes'' command is used to remove a token from the list of
+ folders which receive mail. Use ``unmailboxes *'' to remove all tokens.
- M\bMM\bMD\bDF\bF. This is a variant of the _\bm_\bb_\bo_\bx format. Each message is surrounded by
- lines containing ``^A^A^A^A'' (four control-A's).
+ Note: new mail is detected by comparing the last modification time to the
+ last access time. Utilities like biff or frm or any other program which
+ accesses the mailbox might cause Mutt-ng to never detect new mail for that
+ mailbox if they do not properly reset the access time. Backup tools are
+ another common reason for updated access times.
- M\bMH\bH. A radical departure from _\bm_\bb_\bo_\bx and _\bM_\bM_\bD_\bF, a mailbox consists of a directory
- and each message is stored in a separate file. The filename indicates the mes-
- sage number (however, this is may not correspond to the message number Mutt-ng
- displays). Deleted messages are renamed with a comma (,) prepended to the file-
- name. N\bNo\bot\bte\be:\b: Mutt detects this type of mailbox by looking for either
- .mh_sequences or .xmhcache (needed to distinguish normal directories from MH
- mailboxes).
+ Note: the filenames in the mailboxes command are resolved when the command
+ is executed, so if these names contain shortcuts (such as ``='' and
+ ``!''), any variable definition that affect these characters (like $folder
+ and $spoolfile) should be executed before the mailboxes command.
- M\bMa\bai\bil\bld\bdi\bir\br. The newest of the mailbox formats, used by the Qmail MTA (a replace-
- ment for sendmail). Similar to _\bM_\bH, except that it adds three subdirectories of
- the mailbox: _\bt_\bm_\bp, _\bn_\be_\bw and _\bc_\bu_\br. Filenames for the messages are chosen in such a
- way they are unique, even when two programs are writing the mailbox over NFS,
-
- The Mutt Next Generation E-Mail Client 58
-
- which means that no file locking is needed.
-
- _\b4_\b._\b9 _\bM_\ba_\bi_\bl_\bb_\bo_\bx _\bS_\bh_\bo_\br_\bt_\bc_\bu_\bt_\bs
-
- 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.
+16. User defined headers
- +\bo ! -- refers to your _\b$_\bs_\bp_\bo_\bo_\bl_\bf_\bi_\bl_\be (section 7.4.301 , page 159) (incoming)
- mailbox
-
- +\bo > -- refers to your _\b$_\bm_\bb_\bo_\bx (section 7.4.128 , page 118) file
-
- +\bo < -- refers to your _\b$_\br_\be_\bc_\bo_\br_\bd (section 7.4.234 , page 143) file
+ Usage: my_hdrstring
- +\bo ^ -- refers to the current mailbox
+ Usage: unmy_hdrfield [field ...]
- +\bo - or !! -- refers to the file you've last visited
+ The ``my_hdr'' command allows you to create your own header fields which
+ will be added to every message you send.
- +\bo ~ -- refers to your home directory
+ For example, if you would like to add an ``Organization:'' header field to
+ all of your outgoing messages, you can put the command
- +\bo = or + -- refers to your _\b$_\bf_\bo_\bl_\bd_\be_\br (section 7.4.67 , page 102) directory
-
- +\bo @_\ba_\bl_\bi_\ba_\bs -- refers to the _\bd_\be_\bf_\ba_\bu_\bl_\bt _\bs_\ba_\bv_\be _\bf_\bo_\bl_\bd_\be_\br (section 3.17 , page 36) as
- determined by the address of the alias
+ my_hdr Organization: A Really Big Company, Anytown, USA
- _\b4_\b._\b1_\b0 _\bH_\ba_\bn_\bd_\bl_\bi_\bn_\bg _\bM_\ba_\bi_\bl_\bi_\bn_\bg _\bL_\bi_\bs_\bt_\bs
-
- Mutt-ng 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 mail-
- ing list, but that is what it is most often used for), and what lists you are
- subscribed to. This is accomplished through the use of the _\bl_\bi_\bs_\bt_\bs _\ba_\bn_\bd _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be
- (section 3.12 , page 33) commands in your muttrc.
-
- Now that Mutt-ng knows what your mailing lists are, it can do several things,
- the first of which is the ability to show the name of a list through which you
- received a message (i.e., of a subscribed list) in the _\bi_\bn_\bd_\be_\bx menu display.
- This is useful to distinguish between personal and list mail in the same mail-
- box. In the _\b$_\bi_\bn_\bd_\be_\bx_\b__\bf_\bo_\br_\bm_\ba_\bt (section 7.4.113 , page 113) variable, the escape
- ``%L'' will return the string ``To <list>'' when ``list'' appears in the ``To''
- field, and ``Cc <list>'' when it appears in the ``Cc'' field (otherwise it
- returns the name of the author).
+ in your .muttrc.
- 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
- _\bi_\bn_\bd_\be_\bx menu and _\bp_\ba_\bg_\be_\br, helps reduce the clutter by only replying to the known
- mailing list addresses instead of all recipients (except as specified by Mail-
+ Note: space characters are not allowed between the keyword and the colon
+ (``:''). The standard for electronic mail (RfC 822) says that space is
+ illegal there, so Mutt-ng enforces the rule.
- The Mutt Next Generation E-Mail Client 59
+ If you would like to add a header field to a single message, you should
+ either set the $edit_headers variable, or use the edit-headers function
+ (default: ``E'') in the send-menu so that you can edit the header of your
+ message along with the body.
- Followup-To, see below).
+ 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:
- Mutt-ng also supports the Mail-Followup-To header. When you send a message to
- a list of recipients which includes one or several subscribed mailing lists,
- and if the _\b$_\bf_\bo_\bl_\bl_\bo_\bw_\bu_\bp_\b__\bt_\bo (section 7.4.69 , page 103) option is set, mutt will
- generate a Mail-Followup-To header which contains all the recipients to whom
- you send this message, but not your address. This indicates that group-replies
- or list-replies (also known as ``followups'') to this message should only be
- sent to the original recipients of the message, and not separately to you -
- you'll receive your copy through one of the mailing lists you are subscribed
- to.
+ unmy_hdr to cc
- Conversely, when group-replying or list-replying to a message which has a Mail-
- Followup-To header, mutt will respect this header if the _\b$_\bh_\bo_\bn_\bo_\br_\b__\bf_\bo_\bl_\bl_\bo_\bw_\bu_\bp_\b__\bt_\bo
- (section 7.4.91 , page 108) configuration variable is set. Using list-reply
- will in this case also make sure that the reply goes to the mailing list, even
- if it's not specified in the list of recipients in the Mail-Followup-To.
+17. Defining the order of headers when viewing messages
- Note that, when header editing is enabled, you can create a Mail-Followup-To
- header manually. Mutt-ng will only auto-generate this header if it doesn't
- exist when you send the message.
+ Usage: hdr_orderheader header [header ...]
- 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-ng uses the _\b$_\br_\be_\bp_\bl_\by_\b__\bt_\bo (section
- 7.4.237 , page 144) variable to help decide which address to use. If set to
- _\ba_\bs_\bk_\b-_\by_\be_\bs or _\ba_\bs_\bk_\b-_\bn_\bo, 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 set to _\by_\be_\bs, the ``Reply-To'' field
- will be used when present.
+ Usage: unhdr_order[ * | header header ...]
- The ``X-Label:'' header field can be used to further identify mailing lists or
- list subject matter (or just to annotate messages individually). The
- _\b$_\bi_\bn_\bd_\be_\bx_\b__\bf_\bo_\br_\bm_\ba_\bt (section 7.4.113 , page 113) variable's ``%y'' and ``%Y''
- escapes can be used to expand ``X-Label:'' fields in the index, and Mutt-ng's
- pattern-matcher can match regular expressions to ``X-Label:'' fields with the
- ``~y'' selector. ``X-Label:'' is not a standard message header field, but it
- can easily be inserted by procmail and other mail filtering agents.
+ With this command, you can specify an order in which mutt will attempt to
+ present headers to you when viewing messages.
- Lastly, Mutt-ng has the ability to _\bs_\bo_\br_\bt (section 7.4.295 , page 157) the mail-
- box into _\bt_\bh_\br_\be_\ba_\bd_\bs (section 2.5.3 , page 11). 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 graphi-
- cally. 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.
+ ``unhdr_order *'' will clear all previous headers from the order list,
+ thus removing the header order effects set by the system-wide startup
+ file.
- _\b4_\b._\b1_\b1 _\bE_\bd_\bi_\bt_\bi_\bn_\bg _\bt_\bh_\br_\be_\ba_\bd_\bs
+ hdr_order From Date: From: To: Cc: Subject:
- Mutt-ng has the ability to dynamically restructure threads that are broken
+18. Specify default save filename
- The Mutt Next Generation E-Mail Client 60
+ Usage: save-hook [!]patternfilename
- either by misconfigured software or bad behavior from some correspondents. This
- allows to clean your mailboxes formats) from these annoyances which make it
- hard to follow a discussion.
+ This command is used to override the default filename used when saving
+ messages. filename will be used as the default filename if the message is
+ From: an address matching regexp or if you are the author and the message
+ is addressed to: something matching regexp .
- _\b4_\b._\b1_\b1_\b._\b1 _\bL_\bi_\bn_\bk_\bi_\bn_\bg _\bt_\bh_\br_\be_\ba_\bd_\bs
+ See pattern-hook for information on the exact format of pattern.
- Some mailers tend to "forget" to correctly set the "In-Reply-To:" and "Refer-
- ences:" headers when replying to a message. This results in broken discussions
- because Mutt-ng has not enough information to guess the correct threading. You
- can fix this by tagging the reply, then moving to the parent message and using
- the ``link-threads'' function (bound to & by default). The reply will then be
- connected to this "parent" message.
+ Examples:
- You can also connect multiple children at once, tagging them and using the tag-
- prefix command (';') or the auto_tag option.
+ save-hook me@(turing\\.)?cs\\.hmc\\.edu$ +elkins
+ save-hook aol\\.com$ +spam
- _\b4_\b._\b1_\b1_\b._\b2 _\bB_\br_\be_\ba_\bk_\bi_\bn_\bg _\bt_\bh_\br_\be_\ba_\bd_\bs
+ Also see the fcc-save-hook command.
- On mailing lists, some people are in the bad habit of starting a new discussion
- by hitting "reply" to any message from the list and changing the subject to a
- totally unrelated one. You can fix such threads by using the ``break-thread''
- function (bound by default to #), which will turn the subthread starting from
- the current message into a whole different thread.
+19. Specify default Fcc: mailbox when composing
- _\b4_\b._\b1_\b2 _\bD_\be_\bl_\bi_\bv_\be_\br_\by _\bS_\bt_\ba_\bt_\bu_\bs _\bN_\bo_\bt_\bi_\bf_\bi_\bc_\ba_\bt_\bi_\bo_\bn _\b(_\bD_\bS_\bN_\b) _\bS_\bu_\bp_\bp_\bo_\br_\bt
+ Usage: fcc-hook [!]patternmailbox
- 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.''
+ This command is used to save outgoing mail in a mailbox other than
+ $record. Mutt-ng searches the initial list of message recipients for the
+ first matching regexp and uses mailbox as the default Fcc: mailbox. If no
+ match is found the message will be saved to $record mailbox.
- Users can make use of it in one of the following two ways:
+ See pattern-hook for information on the exact format of pattern.
- +\bo Berkeley sendmail 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.
+ Example:
- +\bo The SMTP support via libESMTP supports it, too.
+ fcc-hook [@.]aol\\.com$ +spammers
- To support this, there are two variables:
+ The above will save a copy of all messages going to the aol.com domain to
+ the `+spammers' mailbox by default. Also see the fcc-save-hook command.
- +\bo _\b$_\bd_\bs_\bn_\b__\bn_\bo_\bt_\bi_\bf_\by (section 7.4.54 , page 99) is used to request receipts for
- different results (such as failed message, message delivered, etc.).
+20. Specify default save filename and default Fcc: mailbox at once
- +\bo _\b$_\bd_\bs_\bn_\b__\br_\be_\bt_\bu_\br_\bn (section 7.4.55 , page 99) requests how much of your message
- should be returned with the receipt (headers or full message).
+ Usage: fcc-save-hook [!]patternmailbox
- Please see the reference chapter for possible values.
+ This command is a shortcut, equivalent to doing both a fcc-hook and a
+ save-hook with its arguments.
- _\b4_\b._\b1_\b3 _\bP_\bO_\bP_\b3 _\bS_\bu_\bp_\bp_\bo_\br_\bt _\b(_\bO_\bP_\bT_\bI_\bO_\bN_\bA_\bL_\b)
+21. Change settings based upon message recipients
- The Mutt Next Generation E-Mail Client 61
+ Usage: reply-hook [!]patterncommand
- If Mutt-ng was compiled with POP3 support (by running the _\bc_\bo_\bn_\bf_\bi_\bg_\bu_\br_\be script with
- the _\b-_\b-_\be_\bn_\ba_\bb_\bl_\be_\b-_\bp_\bo_\bp flag), it has the ability to work with mailboxes located on a
- remote POP3 server and fetch mail for local browsing.
+ Usage: send-hook [!]patterncommand
- You can access the remote POP3 mailbox by selecting the folder
- pop://popserver/.
+ Usage: send2-hook [!]patterncommand
- You can select an alternative port by specifying it with the server, i.e.:
- pop://popserver:port/.
+ These commands can be used to execute arbitrary configuration commands
+ based upon recipients of the message. pattern is a regular expression
+ matching the desired address. command is executed when regexp matches
+ recipients of the message.
- You can also specify different username for each folder, i.e.: pop://user-
- name@popserver[:port]/.
+ reply-hook is matched against the message you are replying to, instead of
+ the message you are sending .send-hook is matched against all messages,
+ both new and replies .Note:reply-hooks are matched before the send-hook,
+ regardless of the order specified in the users's configuration file.
- Polling for new mail is more expensive over POP3 than locally. For this reason
- the frequency at which Mutt-ng will check for mail remotely can be controlled
- by the _\b$_\bp_\bo_\bp_\b__\bm_\ba_\bi_\bl_\b__\bc_\bh_\be_\bc_\bk (section 7.4.212 , page 138) variable, which defaults
- to every 60 seconds.
+ send2-hook is matched every time a message is changed, either by editing
+ it, or by using the compose menu to change its recipients or subject.
+ send2-hook is executed after send-hook ,and can, e.g., be used to set
+ parameters such as the $sendmail variable depending on the message's
+ sender address.
- If Mutt-ng was compiled with SSL support (by running the _\bc_\bo_\bn_\bf_\bi_\bg_\bu_\br_\be script with
- the _\b-_\b-_\bw_\bi_\bt_\bh_\b-_\bs_\bs_\bl flag), connections to POP3 servers can be encrypted. This natu-
- rally requires that the server supports SSL encrypted connections. To access a
- folder with POP3/SSL, you should use pops: prefix, ie: pops://[user-
- name@]popserver[:port]/.
+ For each type of send-hook or reply-hook, when multiple matches occur,
+ commands are executed in the order they are specified in the muttrc (for
+ that type of hook).
- Another way to access your POP3 mail is the _\bf_\be_\bt_\bc_\bh_\b-_\bm_\ba_\bi_\bl function (default: G).
- It allows to connect to _\bp_\bo_\bp_\b__\bh_\bo_\bs_\bt (section 7.4.210 , page 138), fetch all your
- new mail and place it in the local _\bs_\bp_\bo_\bo_\bl_\bf_\bi_\bl_\be (section 7.4.301 , page 159).
- After this point, Mutt-ng runs exactly as if the mail had always been local.
+ See pattern-hook for information on the exact format of pattern.
- N\bNo\bot\bte\be:\b: If you only need to fetch all messages to local mailbox you should con-
- sider using a specialized program, such as fetchmail
+ Example: send-hook mutt "set mime_forward signature=''"
- _\b4_\b._\b1_\b4 _\bI_\bM_\bA_\bP _\bS_\bu_\bp_\bp_\bo_\br_\bt _\b(_\bO_\bP_\bT_\bI_\bO_\bN_\bA_\bL_\b)
+ Another typical use for this command is to change the values of the
+ $attribution, $signature and $locale variables in order to change the
+ language of the attributions and signatures based upon the recipients.
- If Mutt-ng was compiled with IMAP support (by running the _\bc_\bo_\bn_\bf_\bi_\bg_\bu_\br_\be script with
- the _\b-_\b-_\be_\bn_\ba_\bb_\bl_\be_\b-_\bi_\bm_\ba_\bp flag), it has the ability to work with folders located on a
- remote IMAP server.
+ Note: 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. Also note that my_hdr
+ commands which modify recipient headers, or the message's subject, don't
+ have any effect on the current message when executed from a send-hook.
- You can access the remote inbox by selecting the folder
- imap://imapserver/INBOX, where imapserver is the name of the IMAP server and
- INBOX is the special name for your spool mailbox on the IMAP server. If you
- want to access another mail folder at the IMAP server, you should use
- imap://imapserver/path/to/folder where path/to/folder is the path of the folder
- you want to access.
+22. Change settings before formatting a message
- You can select an alternative port by specifying it with the server, i.e.:
- imap://imapserver:port/INBOX.
+ Usage: message-hook [!]patterncommand
- You can also specify different username for each folder, i.e.: imap://user-
- name@imapserver[:port]/INBOX.
+ This command can be used to execute arbitrary configuration commands
+ before viewing or formatting a message based upon information about the
+ message. command is executed if the pattern matches the message to be
+ displayed. When multiple matches occur, commands are executed in the order
+ they are specified in the muttrc.
- If Mutt-ng was compiled with SSL support (by running the _\bc_\bo_\bn_\bf_\bi_\bg_\bu_\br_\be script with
+ See pattern-hook for information on the exact format of pattern.
- The Mutt Next Generation E-Mail Client 62
+ Example:
- the _\b-_\b-_\bw_\bi_\bt_\bh_\b-_\bs_\bs_\bl flag), connections to IMAP servers can be encrypted. This natu-
- rally requires that the server supports SSL encrypted connections. To access a
- folder with IMAP/SSL, you should use imaps://[user-
- name@]imapserver[:port]/path/to/folder as your folder path.
+ message-hook ~A 'set pager=builtin'
+ message-hook '~f freshmeat-news' 'set pager="less \"+/^ subject:.*\""'
- Pine-compatible notation is also supported, i.e. {[user-
- name@]imapserver[:port][/ssl]}path/to/folder
+23. Choosing the cryptographic key of the recipient
- Note that not all servers use / as the hierarchy separator. Mutt-ng should
- correctly notice which separator is being used by the server and convert paths
- accordingly.
+ Usage: crypt-hookpatternkeyid
- When browsing folders on an IMAP server, you can toggle whether to look at only
- the folders you are subscribed to, or all folders with the _\bt_\bo_\bg_\bg_\bl_\be_\b-_\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\bd
- command. See also the _\b$_\bi_\bm_\ba_\bp_\b__\bl_\bi_\bs_\bt_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\bd (section 7.4.100 , page 110)
- variable.
+ When encrypting messages with PGP or OpenSSL, you may want to associate a
+ certain key with a given e-mail address automatically, either because the
+ recipient's public key can't be deduced from the destination address, or
+ because, for some reasons, you need to override the key Mutt-ng
+ wouldnormally use. The crypt-hook command provides a method by which you
+ can specify the ID of the public key to be used when encrypting messages
+ to a certain recipient.
- Polling for new mail on an IMAP server can cause noticeable delays. So, you'll
- want to carefully tune the _\b$_\bi_\bm_\ba_\bp_\b__\bm_\ba_\bi_\bl_\b__\bc_\bh_\be_\bc_\bk (section 7.4.102 , page 110) and
- _\b$_\bt_\bi_\bm_\be_\bo_\bu_\bt (section 7.4.325 , page 166) variables.
+ The meaning of "key id" is to be taken broadly in this context: You can
+ either put a numerical key ID here, an e-mail address, or even just a real
+ name.
- Note that if you are using mbox as the mail store on UW servers prior to
- v12.250, the server has been reported to disconnect a client if another client
- selects the same folder.
+24. Adding key sequences to the keyboard buffer
- _\b4_\b._\b1_\b4_\b._\b1 _\bT_\bh_\be _\bF_\bo_\bl_\bd_\be_\br _\bB_\br_\bo_\bw_\bs_\be_\br
+ Usage: pushstring
- As of version 1.2, mutt supports browsing mailboxes on an IMAP server. This is
- mostly the same as the local file browser, with the following differences:
+ This command adds the named string to the keyboard buffer. The string may
+ contain control characters, key names and function names like the sequence
+ string in the macro command. You may use it to automatically run a
+ sequence of commands at startup, or when entering certain folders. For
+ example, the following command will automatically collapse all threads
+ when entering a folder:
- +\bo Instead of file permissions, mutt displays the string "IMAP", possibly
- followed by the symbol "+", indicating that the entry contains both mes-
- sages and subfolders. On Cyrus-like servers folders will often contain
- both messages and subfolders.
+ folder-hook . 'push <collapse-all>'
- +\bo For the case where an entry can contain both messages and subfolders, the
- selection key (bound to enter by default) will choose to descend into the
- subfolder view. If you wish to view the messages in that folder, you must
- use view-file instead (bound to space by default).
+25. Executing functions
- +\bo You can create, delete and rename mailboxes with the create-mailbox,
- delete-mailbox, and rename-mailbox commands (default bindings: C, d and r,
- respectively). You may also subscribe and unsubscribe to mailboxes (nor-
- mally these are bound to s and u, respectively).
+ Usage: execfunction [function ... ]
- _\b4_\b._\b1_\b4_\b._\b2 _\bA_\bu_\bt_\bh_\be_\bn_\bt_\bi_\bc_\ba_\bt_\bi_\bo_\bn
+ This command can be used to execute any function. Functions are listed in
+ the functions. ``exec function'' is equivalent to ``push <function>''.
- Mutt-ng supports four authentication methods with IMAP servers: SASL, GSSAPI,
- CRAM-MD5, and LOGIN (there is a patch by Grant Edwards to add NTLM authentica-
- tion for you poor exchange users out there, but it has yet to be integrated
- into the main tree). There is also support for the pseudo-protocol ANONYMOUS,
- which allows you to log in to a public IMAP server without having an account.
- To use ANONYMOUS, simply make your username blank or "anonymous".
+26. Message Scoring
- The Mutt Next Generation E-Mail Client 63
+ Usage: scorepattern value
- SASL is a special super-authenticator, which selects among several protocols
- (including GSSAPI, CRAM-MD5, ANONYMOUS, and DIGEST-MD5) the most secure method
- available on your host and the server. Using some of these methods (including
- DIGEST-MD5 and possibly GSSAPI), your entire session will be encrypted and
- invisible to those teeming network snoops. It is the best option if you have
- it. To use it, you must have the Cyrus SASL library installed on your system
- and compile mutt with the _\b-_\b-_\bw_\bi_\bt_\bh_\b-_\bs_\ba_\bs_\bl flag.
+ Usage: unscorepattern [pattern ... ]
- Mutt-ng will try whichever methods are compiled in and available on the server,
- in the following order: SASL, ANONYMOUS, GSSAPI, CRAM-MD5, LOGIN.
+ In situations where you have to cope with a lot of emails, e.g. when you
+ read many different mailing lists, and take part in discussions, it is
+ always useful to have the important messages marked and the annoying
+ messages or the ones that you aren't interested in deleted. For this
+ purpose, mutt-ng features a mechanism called ``scoring''.
- There are a few variables which control authentication:
+ When you use scoring, every message has a base score of 0. You can then
+ use the score command to define patterns and a positive or negative value
+ associated with it. When a pattern matches a message, the message's score
+ will be raised or lowered by the amount of the value associated with the
+ pattern.
- +\bo _\b$_\bi_\bm_\ba_\bp_\b__\bu_\bs_\be_\br (section 7.4.108 , page 112) - controls the username under
- which you request authentication on the IMAP server, for all authentica-
- tors. This is overridden by an explicit username in the mailbox path (i.e.
- by using a mailbox name of the form {user@host}).
+ score "~f nion@muttng\.org" 50
+ score "~f @sco\.com" -100
- +\bo _\b$_\bi_\bm_\ba_\bp_\b__\bp_\ba_\bs_\bs (section 7.4.103 , page 111) - a password which you may pre-
- set, used by all authentication methods where a password is needed.
+ If the pattern matches, it is also possible to set the score value of the
+ current message to a certain value and then stop evaluation:
- +\bo _\b$_\bi_\bm_\ba_\bp_\b__\ba_\bu_\bt_\bh_\be_\bn_\bt_\bi_\bc_\ba_\bt_\bo_\br_\bs (section 7.4.94 , page 108) - a colon-delimited list
- of IMAP authentication methods to try, in the order you wish to try them.
- If specified, this overrides mutt's default (attempt everything, in the
- order listed above).
+ score "~f santaclaus@northpole\.int" =666
- _\b4_\b._\b1_\b5 _\bN_\bN_\bT_\bP _\bS_\bu_\bp_\bp_\bo_\br_\bt _\b(_\bO_\bP_\bT_\bI_\bO_\bN_\bA_\bL_\b)
+ What is important to note is that negative score values will be rounded up
+ to 0.
- If compiled with ``--enable-nntp'' option, Mutt-ng can read news from a
- newsserver via NNTP. You can open a newsgroup with the ``change-newsgroup''
- function from the index/pager which is by default bound to i.
+ To make scoring actually useful, the score must be applied in some way.
+ That's what the score thresholds are for. Currently, there are three score
+ thresholds:
- The Default newsserver can be obtained from the $NNTPSERVER environment vari-
- able. Like other news readers, info about subscribed newsgroups is saved in a
- file as specified by the _\b$_\bn_\bn_\bt_\bp_\b__\bn_\be_\bw_\bs_\br_\bc (section 7.4.160 , page 126) variable.
- Article headers are cached and can be loaded from a file when a newsgroup is
- entered instead loading from newsserver; currently, this caching mechanism
- still is different from the header caching for maildir/IMAP.
+ o flag threshold: when a message has a score value equal or higher than
+ the flag threshold, it will be flagged.
- _\b4_\b._\b1_\b5_\b._\b1 _\bA_\bg_\ba_\bi_\bn_\b: _\bS_\bc_\bo_\br_\bi_\bn_\bg
+ o read threshold: when a message has a score value equal or lower than
+ the read threshold, it will be marked as read.
- Especially for Usenet, people often ask for advanced filtering and scoring
- functionality. Of course, mutt-ng has scoring and allows a killfile, too. How
- to use a killfile has been discussed in _\bM_\be_\bs_\bs_\ba_\bg_\be _\bs_\bc_\bo_\br_\bi_\bn_\bg (section 3.25 , page
- 39).
+ o delete threshold: when a message has a score value equal or lower than
+ the delete threshold, it will be marked as deleted.
- What has not been discusses in detail is mutt-ng's built-in realname filter.
- For may newsreaders including those for ``advanced users'' like _\bs_\bl_\br_\bn or _\bt_\bi_\bn,
- there are frequent request for such functionality. The solutions offered often
- are complicated regular expressions.
+ These three thresholds can be set via the variables $score_threshold_read,
+ $score_threshold_flag and $score_threshold_delete.
- In mutt-ng this is as easy as
+ By default, $score_threshold_read and $score_threshold_delete are set to
+ -1, which means that in the default threshold configuration no message
+ will ever get marked as read or deleted.
- The Mutt Next Generation E-Mail Client 64
+ Scoring gets especially interesting when combined with the color command
+ and the ~n pattern:
+
+ color index black yellow "~n 10-"
+ color index red yellow "~n 100-"
- score ~* =42
+ The rules above mark all messages with a score between 10 and 99 with
+ black and yellow, and messages with a score greater or equal 100 with red
+ and yellow. This might be unusual to you if you're used to e.g. slrn's
+ scoring mechanism, but it is more flexible, as it visually marks different
+ scores.
- This tells mutt-ng to apply a score of 42 to all messages whose sender speci-
- fied a valid realname and a valid email address. Using
+27. Spam detection
- score !~* =42
+ Usage: spampattern format
- on the contrary applies a score of 42 to all messages _\bn_\bo_\bt matching those crite-
- ria which are very strict:
+ Usage: nospampattern
- +\bo Email addresses must be valid according to RFC 2822, see <ftp://ftp.rfc-
- editor.org/in-notes/rfc2822.txt>
+ Mutt-ng has generalized support for external spam-scoring filters. By
+ defining your spam patterns with the spam and nospam commands, you can
+ limit, search, and sort your mail based on its spam attributes, as
+ determined by the external filter. You also can display the spam
+ attributes in your index display using the %H selector in the
+ $index_format variable. (Tip: try %?H?[%H] ? to display spam tags only
+ when they are defined for a given message.)
- +\bo the name must consist of at least 2 fields whereby a field must not end in
- a dot. This means that ``Joe User'' and ``Joe A. User'' are valid while
- ``J. User'' and ``J. A. User'' aren't.
+ Your first step is to define your external filter's spam patterns using
+ the spam command. pattern should be a regular expression that matches a
+ header in a mail message. If any message in the mailbox matches this
+ regular expression, it will receive a ``spam tag'' or ``spam attribute''
+ (unless it also matches a nospam pattern -- see below.) The appearance of
+ this attribute is entirely up to you, and is governed by the format
+ parameter. format can be any static text, but it also can include
+ back-references from the pattern expression. (A regular expression
+ ``back-reference'' refers to a sub-expression contained within
+ parentheses.) %1 is replaced with the first back-reference in the regex,
+ %2 with the second, etc.
- +\bo it's assumed that users are interested in reading their own mail and mail
- from people who they have defined an alias for so that those 2 groups of
- messages are excluded from the strict rules.
+ If you're using multiple spam filters, a message can have more than one
+ spam-related header. You can define spam patterns for each filter you use.
+ If a message matches two or more of these patterns, and the
+ $spam_separator variable is set to a string, then the message's spam tag
+ will consist of all the format strings joined together, with the value of
+ $spam_separator separating them.
- _\b4_\b._\b1_\b6 _\bS_\bM_\bT_\bP _\bS_\bu_\bp_\bp_\bo_\br_\bt _\b(_\bO_\bP_\bT_\bI_\bO_\bN_\bA_\bL_\b)
+ For example, suppose I use DCC, SpamAssassin, and PureMessage. I might
+ define these spam settings:
- Mutt-ng can be built using a library called ``libESMTP'' which provides SMTP
- functionality. When configure was called with --with-libesmtp or the output
- muttng -v contains +USE_LIBESMTP, this will be or is the case already. The SMTP
- support includes support for Delivery Status Notification (see _\bD_\be_\bl_\bi_\bv_\be_\br_\by _\bS_\bt_\ba_\bt_\bu_\bs
- _\bN_\bo_\bt_\bi_\bf_\bi_\bc_\ba_\bt_\bi_\bo_\bn (section 4.12 , page 60) section) as well as handling the 8BIT-
- MIME flag controlled via _\b$_\bu_\bs_\be_\b__\b8_\bb_\bi_\bt_\bm_\bi_\bm_\be (section 7.4.332 , page 168).
+ spam "X-DCC-.*-Metrics:.*(....)=many" "90+/DCC-%1"
+ spam "X-Spam-Status: Yes" "90+/SA"
+ spam "X-PerlMX-Spam: .*Probability=([0-9]+)%" "%1/PM"
+ set spam_separator=", "
- To enable sending mail directly via SMTP without an MTA such as Postfix or
- SSMTP and the like, simply set the _\b$_\bs_\bm_\bt_\bp_\b__\bh_\bo_\bs_\bt (section 7.4.290 , page 156)
- variable pointing to your SMTP server.
+ If I then received a message that DCC registered with ``many'' hits under
+ the ``Fuz2'' checksum, and that PureMessage registered with a 97%
+ probability of being spam, that message's spam tag would read90+/DCC-Fuz2,
+ 97/PM. (The four characters before ``=many'' in a DCC report indicate the
+ checksum used -- in this case, ``Fuz2''.)
+
+ If the $spam_separator variable is unset, then each spam pattern match
+ supersedes the previous one. Instead of getting joined format strings,
+ you'll get only the last one to match.
- Authentication mechanisms are available via the _\b$_\bs_\bm_\bt_\bp_\b__\bu_\bs_\be_\br (section 7.4.294 ,
- page 157) and _\b$_\bs_\bm_\bt_\bp_\b__\bp_\ba_\bs_\bs (section 7.4.291 , page 156) variables.
+ The spam tag is what will be displayed in the index when you use %H in the
+ $index_format variable. It's also the string that the ~H pattern-matching
+ expression matches against for search and limit functions. And it's what
+ sorting by spam attribute will use as a sort key.
- Transport Encryption via the StartTLS command is also available. For this to
- work, first of all Mutt-ng must be built with SSL or GNUTLS. Secondly, the
- _\b$_\bs_\bm_\bt_\bp_\b__\bu_\bs_\be_\b__\bt_\bl_\bs (section 7.4.293 , page 157) variable must be either set to
- ``enabled'' or ``required.'' In both cases, StartTLS will be used if the server
- supports it: for the second case, the connection will fail if it doesn't while
- switching back to unencrypted communication for the first one.
+ That's a pretty complicated example, and most people's actual environments
+ will have only one spam filter. The simpler your configuration, the more
+ effective mutt can be, especially when it comes to sorting.
- Some mail providers require user's to set a particular envelope sender, i.e.
+ Generally, when you sort by spam tag, mutt will sort lexically -- that is,
+ by ordering strings alphnumerically. However, if a spam tag begins with a
+ number, mutt will sort numerically first, and lexically only when two
+ numbers are equal in value. (This is like UNIX's sort -n.) A message with
+ no spam attributes at all -- that is, one that didn't match any of your
+ spam patterns -- is sorted at lowest priority. Numbers are sorted next,
+ beginning with 0 and ranging upward. Finally, non-numeric strings are
+ sorted, with ``a'' taking lowerpriority than ``z''. Clearly, in general,
+ sorting by spam tags is most effective when you can coerce your filter to
+ give you a raw number. But in case you can't, mutt can still do something
+ useful.
- The Mutt Next Generation E-Mail Client 65
+ The nospam command can be used to write exceptions to spam patterns. If a
+ header pattern matches something in a spam command, but you nonetheless do
+ not want it to receive a spam tag, you can list amore precise pattern
+ under a nospam command.
- they allow for only one value which may not be what the user wants to send as
- the From: header. In this case, the variable _\b$_\bs_\bm_\bt_\bp_\b__\be_\bn_\bv_\be_\bl_\bo_\bp_\be (section 7.4.289 ,
- page 156) may be used to set the envelope different from the From: header.
+ If the pattern given to nospam is exactly the same as the pattern on an
+ existing spam list entry, the effect will be to remove the entry from the
+ spam list, instead of adding an exception. Likewise, if the pattern for a
+ spam command matches an entry on the nospam list, that nospam entry will
+ be removed. If the pattern for nospam is ``*'', all entries on both lists
+ will be removed. This might be the default action if you use spam and
+ nospam in conjunction with a folder-hook.
+
+ You can have as many spam or nospam commands as you like. You can even do
+ your own primitive spam detection within mutt -- for example, if you
+ consider all mail from MAILER-DAEMON to be spam, you can use a spam
+ command like this:
- _\b4_\b._\b1_\b7 _\bM_\ba_\bn_\ba_\bg_\bi_\bn_\bg _\bm_\bu_\bl_\bt_\bi_\bp_\bl_\be _\bI_\bM_\bA_\bP_\b/_\bP_\bO_\bP_\b/_\bN_\bN_\bT_\bP _\ba_\bc_\bc_\bo_\bu_\bn_\bt_\bs _\b(_\bO_\bP_\bT_\bI_\bO_\bN_\bA_\bL_\b)
+ spam "^From: .*MAILER-DAEMON" "999"
+
+28. Setting variables
- If you happen to have accounts on multiple IMAP and/or POP servers, you may
- find managing all the authentication settings inconvenient and error-prone.
- The account-hook command may help. This hook works like folder-hook but is
- invoked whenever you access a remote mailbox (including inside the folder
- browser), not just when you open the mailbox.
+ Usage: set[no|inv]variable [=value] [variable...]
- Some examples:
+ Usage: togglevariable [variable ...]
- account-hook . 'unset imap_user; unset imap_pass; unset tunnel'
- account-hook imap://host1/ 'set imap_user=me1 imap_pass=foo'
- account-hook imap://host2/ 'set tunnel="ssh host2 /usr/libexec/imapd"'
+ Usage: unsetvariable [variable ...]
- _\b4_\b._\b1_\b8 _\bS_\bt_\ba_\br_\bt _\ba _\bW_\bW_\bW _\bB_\br_\bo_\bw_\bs_\be_\br _\bo_\bn _\bU_\bR_\bL_\bs _\b(_\bE_\bX_\bT_\bE_\bR_\bN_\bA_\bL_\b)
+ Usage: resetvariable [variable ...]
- If a message contains URLs (_\bu_\bn_\bi_\bf_\bi_\be_\bd _\br_\be_\bs_\bo_\bu_\br_\bc_\be _\bl_\bo_\bc_\ba_\bt_\bo_\br = address in the WWW space
- like _\bh_\bt_\bt_\bp_\b:_\b/_\b/_\bw_\bw_\bw_\b._\bm_\bu_\bt_\bt_\b._\bo_\br_\bg_\b/), it is efficient to get a menu with all the URLs and
- start a WWW browser on one of them. This functionality is provided by the
- external urlview program which can be retrieved at ftp://ftp.mutt.org/mutt/con-
- trib/ and the configuration commands:
+ This command is used to set (and unset) variables. There are four basic
+ types of variables: boolean, number, string and quadoption. boolean
+ variables can be set (true) or unset (false). number variables can be
+ assigned a positive integer value.
- macro index \cb |urlview\n
- macro pager \cb |urlview\n
+ string variables consist of any number of printable characters. strings
+ must be enclosed in quotes if they contain spaces or tabs. You may also
+ use the ``C'' escape sequences \n and \t for newline and tab,
+ respectively.
- _\b4_\b._\b1_\b9 _\bC_\bo_\bm_\bp_\br_\be_\bs_\bs_\be_\bd _\bf_\bo_\bl_\bd_\be_\br_\bs _\bS_\bu_\bp_\bp_\bo_\br_\bt _\b(_\bO_\bP_\bT_\bI_\bO_\bN_\bA_\bL_\b)
+ quadoption variables are used to control whether or not to be prompted for
+ certain actions, or to specify a default action. A value of yes will cause
+ the action to be carried out automatically as if you had answered yes to
+ the question. Similarly, a value of no will cause the the action to be
+ carried out as if you had answered ``no.'' A value of ask-yes will cause a
+ prompt with a default answer of ``yes'' and ask-no will provide a default
+ answer of ``no.''
- If Mutt-ng was compiled with compressed folders support (by running the _\bc_\bo_\bn_\bf_\bi_\bg_\b-
- _\bu_\br_\be script with the _\b-_\b-_\be_\bn_\ba_\bb_\bl_\be_\b-_\bc_\bo_\bm_\bp_\br_\be_\bs_\bs_\be_\bd flag), Mutt can open folders stored in
- an arbitrary format, provided that the user has a script to convert from/to
- this format to one of the accepted.
+ Prefixing a variable with ``no'' will unset it. Example: set noaskbcc .
- The most common use is to open compressed archived folders e.g. with gzip.
+ For boolean 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.
- In addition, the user can provide a script that gets a folder in an accepted
- format and appends its context to the folder in the user-defined format, which
- may be faster than converting the entire folder to the accepted format, append-
- ing to it and converting back to the user-defined format.
+ The toggle command automatically prepends the inv prefix to all specified
+ variables.
- There are three hooks defined (_\bo_\bp_\be_\bn_\b-_\bh_\bo_\bo_\bk (section 4.19.1 , page 66), _\bc_\bl_\bo_\bs_\be_\b-
- _\bh_\bo_\bo_\bk (section 4.19.2 , page 66) and _\ba_\bp_\bp_\be_\bn_\bd_\b-_\bh_\bo_\bo_\bk (section 4.19.3 , page 67))
- which define commands to uncompress and compress a folder and to append mes-
- sages to an existing compressed folder respectively.
+ The unset command automatically prepends the no prefix to all specified
+ variables.
- The Mutt Next Generation E-Mail Client 66
+ Using the enter-command function in the index menu, you can query the
+ value of a variable by prefixing the name of the variable with a question
+ mark:
- For example:
+ set ?allow_8bit
- open-hook \\.gz$ "gzip -cd %f > %t"
- close-hook \\.gz$ "gzip -c %t > %f"
- append-hook \\.gz$ "gzip -c %t >> %f"
+ The question mark is actually only required for boolean and quadoption
+ variables.
- You do not have to specify all of the commands. If you omit _\ba_\bp_\bp_\be_\bn_\bd_\b-_\bh_\bo_\bo_\bk (sec-
- tion 4.19.3 , page 67), the folder will be open and closed again each time you
- will add to it. If you omit _\bc_\bl_\bo_\bs_\be_\b-_\bh_\bo_\bo_\bk (section 4.19.2 , page 66) (or give
- empty command) , the folder will be open in the mode. If you specify _\ba_\bp_\bp_\be_\bn_\bd_\b-
- _\bh_\bo_\bo_\bk (section 4.19.3 , page 67) though you'll be able to append to the folder.
+ The reset command resets all given variables to the compile time defaults
+ (hopefully mentioned in this manual). If you use the command set and
+ prefix the variable with ``&'' this has the same behavior as the reset
+ command.
- Note that Mutt-ng will only try to use hooks if the file is not in one of the
- accepted formats. In particular, if the file is empty, mutt supposes it is not
- compressed. This is important because it allows the use of programs that do not
- have well defined extensions. Just use '.' as a regexp. But this may be sur-
- prising if your compressing script produces empty files. In this situation,
- unset _\b$_\bs_\ba_\bv_\be_\b__\be_\bm_\bp_\bt_\by (section 7.4.244 , page 146), so that the compressed file
- will be removed if you delete all of the messages.
+ With the reset command there exists the special variable ``all'', which
+ allows you to reset all variables to their system defaults.
- _\b4_\b._\b1_\b9_\b._\b1 _\bO_\bp_\be_\bn _\ba _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs_\be_\bd _\bm_\ba_\bi_\bl_\bb_\bo_\bx _\bf_\bo_\br _\br_\be_\ba_\bd_\bi_\bn_\bg
+29. Reading initialization commands from another file
- Usage: open-hook _\br_\be_\bg_\be_\bx_\bp '_\bc_\bo_\bm_\bm_\ba_\bn_\bd'
+ Usage: sourcefilename [filename ...]
- The _\bc_\bo_\bm_\bm_\ba_\bn_\bd is the command that can be used for opening the folders whose names
- match _\br_\be_\bg_\be_\bx_\bp.
+ 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.
- The _\bc_\bo_\bm_\bm_\ba_\bn_\bd string is the printf-like format string, and it should accept two
- parameters: %f, which is replaced with the (compressed) folder name, and %t
- which is replaced with the name of the temporary folder to which to write.
+ If the filename begins with a tilde (``~''), it will be expanded to the
+ path of your home directory.
- %f and %t can be repeated any number of times in the command string, and all of
- the entries are replaced with the appropriate folder name. In addition, %% is
- replaced by %, as in printf, and any other %anything is left as is.
+ If the filename ends with a vertical bar (|), then filename is considered
+ to be an executable program from which to read input (eg. source
+ ~/bin/myscript|).
- The _\bc_\bo_\bm_\bm_\ba_\bn_\bd should n\bno\bot\bt remove the original compressed file. The _\bc_\bo_\bm_\bm_\ba_\bn_\bd should
- return non-zero exit status if it fails, so mutt knows something's wrong.
+30. Removing hooks
- Example:
+ Usage: unhook[* | hook-type]
- open-hook \\.gz$ "gzip -cd %f > %t"
+ This command permits you to flush hooks you have previously defined. You
+ can either remove all hooks by giving the ``*'' character as an argument,
+ or you can remove all hooks of a specific type by saying something like
+ unhook send.
- If the _\bc_\bo_\bm_\bm_\ba_\bn_\bd is empty, this operation is disabled for this file type.
+31. Sharing Setups
- _\b4_\b._\b1_\b9_\b._\b2 _\bW_\br_\bi_\bt_\be _\ba _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs_\be_\bd _\bm_\ba_\bi_\bl_\bb_\bo_\bx
+ 31.1. Character Sets
- Usage: close-hook _\br_\be_\bg_\be_\bx_\bp '_\bc_\bo_\bm_\bm_\ba_\bn_\bd'
+ As users may run mutt-ng on different systems, the configuration must be
+ maintained because it's likely that people want to use the setup
+ everywhere they use mutt-ng. And mutt-ng tries to help where it can.
- This is used to close the folder that was open with the _\bo_\bp_\be_\bn_\b-_\bh_\bo_\bo_\bk (section
- 4.19.1 , page 66) command after some changes were made to it.
+ To not produce conflicts with different character sets, mutt-ng allows
+ users to specify in which character set their configuration files are
+ encoded. Please note that while reading the configuration files, this is
+ only respected after the corresponding declaration appears. It's advised
+ to put the following at the very beginning of a users muttngrc:
- The Mutt Next Generation E-Mail Client 67
+ set config_charset = "..."
- The _\bc_\bo_\bm_\bm_\ba_\bn_\bd string is the command that can be used for closing the folders
- whose names match _\br_\be_\bg_\be_\bx_\bp. It has the same format as in the _\bo_\bp_\be_\bn_\b-_\bh_\bo_\bo_\bk (section
- 4.19.1 , page 66) command. Temporary folder in this case is the folder previ-
- ously produced by the <_\bo_\bp_\be_\bn_\b-_\bh_\bo_\bo_\bk (section 4.19.1 , page 66) command.
+ and replacing the dots with the actual character set. To avoid problems
+ while maintaining the setup, vim(1) user's may want to use modelines as
+ show in:
- The _\bc_\bo_\bm_\bm_\ba_\bn_\bd should n\bno\bot\bt remove the decompressed file. The _\bc_\bo_\bm_\bm_\ba_\bn_\bd should return
- non-zero exit status if it fails, so mutt knows something's wrong.
+ # vim:fileencoding=...:
- Example:
+ while, again, replacing the dots with the appropriate name. This tells
+ vim(1) as which character set to read and save the file.
- close-hook \\.gz$ "gzip -c %t > %f"
+ 31.2. Modularization
- If the _\bc_\bo_\bm_\bm_\ba_\bn_\bd is empty, this operation is disabled for this file type, and the
- file can only be open in the readonly mode.
+ ``Modularization'' means to divide the setup into several files while
+ sorting the options or commands by topic. Especially for longer setups
+ (e.g. with many hooks), this helps maintaining it and solving trouble.
- _\bc_\bl_\bo_\bs_\be_\b-_\bh_\bo_\bo_\bk (section 4.19.2 , page 66) is not called when you exit from the
- folder if the folder was not changed.
+ When using separation, setups may be, as a whole or in fractions, shared
+ over different systems.
- _\b4_\b._\b1_\b9_\b._\b3 _\bA_\bp_\bp_\be_\bn_\bd _\ba _\bm_\be_\bs_\bs_\ba_\bg_\be _\bt_\bo _\ba _\bc_\bo_\bm_\bp_\br_\be_\bs_\bs_\be_\bd _\bm_\ba_\bi_\bl_\bb_\bo_\bx
+ 31.3. Conditional parts
- Usage: append-hook _\br_\be_\bg_\be_\bx_\bp '_\bc_\bo_\bm_\bm_\ba_\bn_\bd'
+ When using a configuration on different systems, the user may not always
+ have influence on how mutt-ng is installed and which features it includes.
- This command is used for saving to an existing compressed folder. The _\bc_\bo_\bm_\bm_\ba_\bn_\bd
- is the command that can be used for appending to the folders whose names match
- _\br_\be_\bg_\be_\bx_\bp. It has the same format as in the _\bo_\bp_\be_\bn_\b-_\bh_\bo_\bo_\bk (section 4.19.1 , page 66)
- command. The temporary folder in this case contains the messages that are
- being appended.
+ To solve this, mutt-ng contain a feature based on the ``ifdef'' patch
+ written for mutt. Its basic syntax is:
- The _\bc_\bo_\bm_\bm_\ba_\bn_\bd should n\bno\bot\bt remove the decompressed file. The _\bc_\bo_\bm_\bm_\ba_\bn_\bd should return
- non-zero exit status if it fails, so mutt knows something's wrong.
+ ifdef <item> <command>
+ ifndef <item> <command>
- Example:
+ ...whereby <item> can be one of:
- append-hook \\.gz$ "gzip -c %t >> %f"
+ o a function name
- When _\ba_\bp_\bp_\be_\bn_\bd_\b-_\bh_\bo_\bo_\bk (section 4.19.3 , page 67) is used, the folder is not opened,
- which saves time, but this means that we can not find out what the folder type
- is. Thus the default (_\b$_\bm_\bb_\bo_\bx_\b__\bt_\by_\bp_\be (section 7.4.129 , page 118)) type is always
- supposed (i.e. this is the format used for the temporary folder).
+ o a variable name
- If the file does not exist when you save to it, _\bc_\bl_\bo_\bs_\be_\b-_\bh_\bo_\bo_\bk (section 4.19.2 ,
- page 66) is called, and not _\ba_\bp_\bp_\be_\bn_\bd_\b-_\bh_\bo_\bo_\bk (section 4.19.3 , page 67). _\ba_\bp_\bp_\be_\bn_\bd_\b-
- _\bh_\bo_\bo_\bk (section 4.19.3 , page 67) is only for appending to existing folders.
+ o a menu name
- If the _\bc_\bo_\bm_\bm_\ba_\bn_\bd is empty, this operation is disabled for this file type. In this
- case, the folder will be open and closed again (using _\bo_\bp_\be_\bn_\b-_\bh_\bo_\bo_\bk (section
- 4.19.1 , page 66) and _\bc_\bl_\bo_\bs_\be_\b-_\bh_\bo_\bo_\bk (section 4.19.2 , page 66)respectively) each
- time you will add to it.
+ o a feature name
- The Mutt Next Generation E-Mail Client 68
+ All available functions, variables and menus are documented elsewhere in
+ this manual but ``features'' is specific to these two commands. To test
+ for one, prefix one of the following keywords with feature_: ncurses,
+ slang, iconv, idn, dotlock, standalone, pop, nntp, imap, ssl, gnutls,
+ sasl, sasl2, libesmtp, compressed, color, classic_pgp, classic_smime,
+ gpgme, header_cache
- _\b4_\b._\b1_\b9_\b._\b4 _\bE_\bn_\bc_\br_\by_\bp_\bt_\be_\bd _\bf_\bo_\bl_\bd_\be_\br_\bs
+ As an example, one can use the following in ~/.muttngrc:
- The compressed folders support can also be used to handle encrypted folders. If
- you want to encrypt a folder with PGP, you may want to use the following hooks:
+ ifdef feature_imap 'source ~/.mutt-ng/setup-imap'
+ ifdef feature_pop 'source ~/.mutt-ng/setup-pop'
+ ifdef feature_nntp 'source ~/.mutt-ng/setup-nntp'
- open-hook \\.pgp$ "pgp -f < %f > %t"
- close-hook \\.pgp$ "pgp -fe YourPgpUserIdOrKeyId < %t > %f"
+ ...to only source ~/.mutt-ng/setup-imap if IMAP support is built in, only
+ source ~/.mutt-ng/setup-pop if POP support is built in and only source
+ ~/.mutt-ng/setup-nntp if NNTP support is built in.
- Please note, that PGP does not support appending to an encrypted folder, so
- there is no append-hook defined.
+ An example for testing for variable names can be used if users use
+ different revisions of mutt-ng whereby the older one may not have a
+ certain variable. To test for the availability of $imap_mail_check use:
- N\bNo\bot\bte\be:\b: the folder is temporary stored decrypted in the /tmp directory, where it
- can be read by your system administrator. So think about the security aspects
- of this.
+ ifdef imap_mail_check 'set imap_mail_check = 300'
- _\b5_\b. _\bM_\bu_\bt_\bt_\b-_\bn_\bg_\b'_\bs _\bM_\bI_\bM_\bE _\bS_\bu_\bp_\bp_\bo_\br_\bt
+ Provided for completeness is the test for menu names. To set
+ $pager_index_lines only if the pager menu is available, use:
- Quite a bit of effort has been made to make Mutt-ng the premier text-mode MIME
- MUA. Every effort has been made to provide the functionality that the discern-
- ing MIME user requires, and the conformance to the standards wherever possible.
- When configuring Mutt-ng for MIME, there are two extra types of configuration
- files which Mutt-ng uses. One is the mime.types file, which contains the map-
- ping 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.
+ ifdef pager 'set pager_index_lines = 10'
- _\b5_\b._\b1 _\bU_\bs_\bi_\bn_\bg _\bM_\bI_\bM_\bE _\bi_\bn _\bM_\bu_\bt_\bt
+ For completeness, too, the opposite of ifdef is provided: ifndef which
+ only executes the command if the test fails. For example, the following
+ two examples are equivalent:
- There are three areas/menus in Mutt-ng which deal with MIME, they are the pager
- (while viewing a message), the attachment menu and the compose menu.
+ ifdef feature_ncurses 'source ~/.mutt-ng/setup-ncurses'
+ ifndef feature_ncurses 'source ~/.mutt-ng/setup-slang'
- _\b5_\b._\b1_\b._\b1 _\bV_\bi_\be_\bw_\bi_\bn_\bg _\bM_\bI_\bM_\bE _\bm_\be_\bs_\bs_\ba_\bg_\be_\bs _\bi_\bn _\bt_\bh_\be _\bp_\ba_\bg_\be_\br
+ ...and...
- When you select a message from the index and view it in the pager, Mutt decodes
- the message to a text representation. Mutt-ng internally supports a number of
- MIME types, including text/plain, text/enriched, message/rfc822, and mes-
- sage/news. In addition, the export controlled version of Mutt-ng recognizes a
- variety of PGP MIME types, including PGP/MIME and application/pgp.
+ ifdef feature_slang 'source ~/.mutt-ng/setup-slang'
+ ifndef feature_slang 'source ~/.mutt-ng/setup-ncurses'
- Mutt-ng will denote attachments with a couple lines describing them. These
- lines are of the form:
+32. Obsolete Variables
- [-- Attachment #1: Description --]
- [-- Type: text/plain, Encoding: 7bit, Size: 10000 --]
+ In the process of ensuring and creating more consistency, many variables
+ have been renamed and some of the old names were already removed. Please
+ see sect-obsolete for a complete list.
- Where the Description is the description or filename given for the attachment,
- and the Encoding is one of 7bit/8bit/quoted-printable/base64/binary.
+Chapter 4. Advanced Usage
- The Mutt Next Generation E-Mail Client 69
+ Table of Contents
- If Mutt-ng cannot deal with a MIME type, it will display a message like:
+ 1. Regular Expressions
- [-- image/gif is unsupported (use 'v' to view this part) --]
+ 2. Patterns
- _\b5_\b._\b1_\b._\b2 _\bT_\bh_\be _\bA_\bt_\bt_\ba_\bc_\bh_\bm_\be_\bn_\bt _\bM_\be_\bn_\bu
+ 2.1. Complex Patterns
- The default binding for view-attachments is `v', which displays the attachment
- menu for a message. The attachment menu displays a list of the attachments in
- a message. From the attachment menu, you can save, print, pipe, delete, and
- view attachments. You can apply these operations to a group of attachments at
- once, by tagging the attachments and by using the ``tag-prefix'' operator. You
- can also reply to the current message from this menu, and only the current
- attachment (or the attachments tagged) will be quoted in your reply. You can
- view attachments as text, or view them using the mailcap viewer definition.
+ 2.2. Patterns and Dates
- Finally, you can apply the usual message-related functions (like _\br_\be_\bs_\be_\bn_\bd_\b-_\bm_\be_\bs_\bs_\ba_\bg_\be
- (section 2.5.4 , page 13), and the reply and forward functions) to attachments
- of type message/rfc822.
+ 3. Format Strings
- See the help on the attachment menu for more information.
+ 3.1. Introduction
- _\b5_\b._\b1_\b._\b3 _\bT_\bh_\be _\bC_\bo_\bm_\bp_\bo_\bs_\be _\bM_\be_\bn_\bu
+ 3.2. Conditional Expansion
- 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, pipe, edit, compose,
- review, and rename an attachment or a list of tagged attachments. You can also
- modifying the attachment information, notably the type, encoding and descrip-
- tion.
+ 3.3. Modifications and Padding
- Attachments appear as follows:
+ 4. Using Tags
- - 1 [text/plain, 7bit, 1K] /tmp/mutt-euler-8082-0 <no description>
- 2 [applica/x-gunzip, base64, 422K] ~/src/mutt-0.85.tar.gz <no description>
+ 5. Using Hooks
- The '-' denotes that Mutt-ng will delete the file after sending (or postponing,
- or canceling) the message. It can be toggled with the toggle-unlink command
- (default: u). 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 next field is the filename, which can be changed with the
- rename-file command (default: R). The final field is the description of the
- attachment, and can be changed with the edit-description command (default: d).
+ 5.1. Message Matching in Hooks
- _\b5_\b._\b2 _\bM_\bI_\bM_\bE _\bT_\by_\bp_\be _\bc_\bo_\bn_\bf_\bi_\bg_\bu_\br_\ba_\bt_\bi_\bo_\bn _\bw_\bi_\bt_\bh _\bm_\bi_\bm_\be_\b._\bt_\by_\bp_\be_\bs
+ 6. Using the sidebar
- When you add an attachment to your mail message, Mutt-ng searches your personal
+ 7. External Address Queries
- The Mutt Next Generation E-Mail Client 70
+ 8. Mailbox Formats
- mime.types file at ${HOME}/.mime.types, and then the system mime.types file at
- /usr/local/share/mutt/mime.types or /etc/mime.types
+ 9. Mailbox Shortcuts
- The mime.types file consist of lines containing a MIME type and a space sepa-
- rated list of extensions. For example:
+ 10. Handling Mailing Lists
- application/postscript ps eps
- application/pgp pgp
- audio/x-aiff aif aifc aiff
+ 11. Editing threads
- A sample mime.types file comes with the Mutt-ng distribution, and should con-
- tain most of the MIME types you are likely to use.
+ 11.1. Linking threads
- If Mutt-ng 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-ng will assume that the file is plain text, and mark it as text/plain. If
- the file contains binary information, then Mutt-ng will mark it as applica-
- tion/octet-stream. You can change the MIME type that Mutt-ng assigns to an
- attachment by using the edit-type command from the compose menu (default: ^T).
- The MIME type is actually a major mime type followed by the sub-type, separated
- by a '/'. 6 major types: application, text, image, video, audio, and model have
- been approved after various internet discussions. Mutt-ng recognises all of
- these if the appropriate entry is found in the mime.types file. It also recog-
- nises other major mime types, such as the chemical type that is widely used in
- the molecular modelling community to pass molecular data in various forms to
- various molecular viewers. Non-recognised mime types should only be used if the
- recipient of the message is likely to be expecting such attachments.
+ 11.2. Breaking threads
- _\b5_\b._\b3 _\bM_\bI_\bM_\bE _\bV_\bi_\be_\bw_\be_\br _\bc_\bo_\bn_\bf_\bi_\bg_\bu_\br_\ba_\bt_\bi_\bo_\bn _\bw_\bi_\bt_\bh _\bm_\ba_\bi_\bl_\bc_\ba_\bp
+ 12. Delivery Status Notification (DSN) Support
- Mutt-ng supports RFC 1524 MIME Configuration, in particular the Unix specific
- format specified in Appendix A of RFC 1524. This file format is commonly
- referred 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,
- XMosaic, lynx and metamail.
+ 13. POP3 Support (OPTIONAL)
- In order to handle various MIME types that Mutt-ng can not handle internally,
- Mutt-ng 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
+ 14. IMAP Support (OPTIONAL)
- ${HOME}/.mailcap:/usr/local/share/mutt/mailcap:/etc/mailcap:/etc/mailcap:/usr/etc/mailcap:/usr/local/etc/mailcap
+ 14.1. The Folder Browser
- where $HOME is your home directory.
+ 14.2. Authentication
- In particular, the metamail distribution will install a mailcap file, usually
- as /usr/local/etc/mailcap, which contains some baseline entries.
+ 15. NNTP Support (OPTIONAL)
- The Mutt Next Generation E-Mail Client 71
+ 15.1. Again: Scoring
- _\b5_\b._\b3_\b._\b1 _\bT_\bh_\be _\bB_\ba_\bs_\bi_\bc_\bs _\bo_\bf _\bt_\bh_\be _\bm_\ba_\bi_\bl_\bc_\ba_\bp _\bf_\bi_\bl_\be
+ 16. SMTP Support (OPTIONAL)
- A mailcap file consists of a series of lines which are comments, blank, or def-
- initions.
+ 17. Managing multiple IMAP/POP/NNTP accounts (OPTIONAL)
- A comment line consists of a # character followed by anything you want.
+ 18. Start a WWW Browser on URLs (EXTERNAL)
- A blank line is blank.
+ 19. Compressed folders Support (OPTIONAL)
- 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.
+ 19.1. Open a compressed mailbox for reading
- 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 for-
- mat includes two formats for wildcards, one using the special '*' subtype, the
- other is the implicit wild, where you only include the major type. For exam-
- ple, image/*, or video, will match all image types and video types, respec-
- tively.
+ 19.2. Write a compressed mailbox
- 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 behavior by using
- %s as a parameter to your view command. This will cause Mutt-ng 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-ng
- 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.
+ 19.3. Append a message to a compressed mailbox
- So, in the simplest form, you can send a text/plain message to the external
- pager more on stdin:
+ 19.4. Encrypted folders
- text/plain; more
+1. Regular Expressions
- Or, you could send the message as a file:
+ All string patterns in Mutt-ng including those in more complex patterns
+ must be specified using regular expressions (regexp) in the ``POSIX
+ extended'' syntax (which is more or less the syntax used by egrep and GNU
+ awk). For your convenience, we have included below a brief description of
+ this syntax.
- text/plain; more %s
+ The search is case sensitive if the pattern contains at least one upper
+ case letter, and case insensitive otherwise. Note that ``\'' must be
+ quoted if used for a regular expression in an initialization command:
+ ``\\''.
- Perhaps you would like to use lynx to interactively view a text/html message:
+ A regular expression is a pattern that describes a set of strings. Regular
+ expressions are constructed analogously to arithmetic expressions, by
+ using various operators to combine smaller expressions.
- text/html; lynx %s
+ Note that the regular expression can be enclosed/delimited by either " or
+ ' which is useful if the regular expression includes a white-space
+ character. See muttrc-syntax for more information on " and ' delimiter
+ processing. To match a literal " or ' you must preface it with \
+ (backslash).
- In this case, lynx does not support viewing a file from stdin, so you must use
- the %s syntax. N\bNo\bot\bte\be:\b: _\bS_\bo_\bm_\be _\bo_\bl_\bd_\be_\br _\bv_\be_\br_\bs_\bi_\bo_\bn_\bs _\bo_\bf _\bl_\by_\bn_\bx _\bc_\bo_\bn_\bt_\ba_\bi_\bn _\ba _\bb_\bu_\bg _\bw_\bh_\be_\br_\be _\bt_\bh_\be_\by _\bw_\bi_\bl_\bl
- _\bc_\bh_\be_\bc_\bk _\bt_\bh_\be _\bm_\ba_\bi_\bl_\bc_\ba_\bp _\bf_\bi_\bl_\be _\bf_\bo_\br _\ba _\bv_\bi_\be_\bw_\be_\br _\bf_\bo_\br _\bt_\be_\bx_\bt_\b/_\bh_\bt_\bm_\bl_\b. _\bT_\bh_\be_\by _\bw_\bi_\bl_\bl _\bf_\bi_\bn_\bd _\bt_\bh_\be _\bl_\bi_\bn_\be
- _\bw_\bh_\bi_\bc_\bh _\bc_\ba_\bl_\bl_\bs _\bl_\by_\bn_\bx_\b, _\ba_\bn_\bd _\br_\bu_\bn _\bi_\bt_\b. _\bT_\bh_\bi_\bs _\bc_\ba_\bu_\bs_\be_\bs _\bl_\by_\bn_\bx _\bt_\bo _\bc_\bo_\bn_\bt_\bi_\bn_\bu_\bo_\bu_\bs_\bl_\by _\bs_\bp_\ba_\bw_\bn _\bi_\bt_\bs_\be_\bl_\bf _\bt_\bo
- _\bv_\bi_\be_\bw _\bt_\bh_\be _\bo_\bb_\bj_\be_\bc_\bt_\b.
+ The fundamental building blocks are the regular expressions that match a
+ single character. Most characters, including all letters and digits, are
+ regular expressions that match themselves. Any metacharacter with special
+ meaning may be quoted by preceding it with a backslash.
- 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:
+ The period ``.'' matches any single character. The caret ``^'' andthe
+ dollar sign ``$'' are metacharacters that respectively match the empty
+ string at the beginning and end of a line.
- The Mutt Next Generation E-Mail Client 72
+ A list of characters enclosed by ``]'' and ``]'' matches any single
+ character in that list; if the first character of the list is a caret
+ ``^'' then it matches any character not in the list. For example, the
+ regular expression ]0123456789] matches any single digit. A range of ASCII
+ characters may be specified by giving the first and last characters,
+ separated by a hyphen ``-''. Most metacharacters lose their special
+ meaning inside lists. To include a literal ``]'' place it first in the
+ list. Similarly, to include a literal ``^'' place it anywhere but first.
+ Finally, to include a literal hyphen ``-'' place it last.
- text/html; lynx -dump %s | more
+ Certain named classes of characters are predefined. Character classes
+ consist of ``[:'', a keyword denoting the class, and ``:]''. The following
+ classes are defined by the POSIX standard:
- 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:
+ [:alnum:]
- text/html; lynx %s
- text/*; more
+ Alphanumeric characters.
- This is the simplest form of a mailcap file.
+ [:alpha:]
- _\b5_\b._\b3_\b._\b2 _\bS_\be_\bc_\bu_\br_\be _\bu_\bs_\be _\bo_\bf _\bm_\ba_\bi_\bl_\bc_\ba_\bp
+ Alphabetic characters.
- The interpretation of shell meta-characters embedded in MIME parameters can
- lead to security problems in general. Mutt-ng tries to quote parameters in
- expansion of %s syntaxes properly, and avoids risky characters by substituting
- them, see the _\bm_\ba_\bi_\bl_\bc_\ba_\bp_\b__\bs_\ba_\bn_\bi_\bt_\bi_\bz_\be (section 7.4.120 , page 117) variable.
+ [:blank:]
- Although mutt's procedures to invoke programs with mailcap seem to be safe,
- there are other applications parsing mailcap, maybe taking less care of it.
- Therefore you should pay attention to the following rules:
+ Space or tab characters.
- _\bK_\be_\be_\bp _\bt_\bh_\be _\b%_\b-_\be_\bx_\bp_\ba_\bn_\bd_\bo_\bs _\ba_\bw_\ba_\by _\bf_\br_\bo_\bm _\bs_\bh_\be_\bl_\bl _\bq_\bu_\bo_\bt_\bi_\bn_\bg_\b. Don't quote them with single or
- double quotes. Mutt-ng does this for you, the right way, as should any other
- program which interprets mailcap. Don't put them into backtick expansions. Be
- highly careful with eval statements, and avoid them if possible at all. Trying
- to fix broken behaviour with quotes introduces new leaks - there is no alterna-
- tive to correct quoting in the first place.
+ [:cntrl:]
- If you have to use the %-expandos' values in context where you need quoting or
- backtick expansions, put that value into a shell variable and reference the
- shell variable where necessary, as in the following example (using $charset
- inside the backtick expansion is safe, since it is not itself subject to any
- further expansion):
+ Control characters.
- text/test-mailcap-bug; cat %s; copiousoutput; test=charset=%{charset} \
- && test "`echo $charset | tr '[A-Z]' '[a-z]'`" != iso-8859-1
+ [:digit:]
- _\b5_\b._\b3_\b._\b3 _\bA_\bd_\bv_\ba_\bn_\bc_\be_\bd _\bm_\ba_\bi_\bl_\bc_\ba_\bp _\bU_\bs_\ba_\bg_\be
+ Numeric characters.
- _\b5_\b._\b3_\b._\b3_\b._\b1 _\bO_\bp_\bt_\bi_\bo_\bn_\ba_\bl _\bF_\bi_\be_\bl_\bd_\bs
+ [:graph:]
- 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-ng recog-
- nizes the following optional fields:
+ Characters that are both printable and visible. (A space is
+ printable, but not visible, while an ``a'' is both.)
- copiousoutput
- This flag tells Mutt-ng that the command passes possibly large
- amounts of text on stdout. This causes Mutt-ng to invoke a pager
- (either the internal pager or the external pager defined by the
- pager variable) on the output of the view command. Without this
+ [:lower:]
- The Mutt Next Generation E-Mail Client 73
-
- flag, Mutt-ng assumes that the command is interactive. 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-ng will use your standard pager to display the results.
+ Lower-case alphabetic characters.
- needsterminal
- Mutt-ng uses this flag when viewing attachments with _\ba_\bu_\bt_\bo_\bv_\bi_\be_\bw (sec-
- tion 5.4 , page 76), in order to decide whether it should honor
- the setting of the _\b$_\bw_\ba_\bi_\bt_\b__\bk_\be_\by (section 7.4.339 , page 169) variable
- or not. When an attachment is viewed using an interactive program,
- and the corresponding mailcap entry has a _\bn_\be_\be_\bd_\bs_\bt_\be_\br_\bm_\bi_\bn_\ba_\bl flag, Mutt-
- ng will use _\b$_\bw_\ba_\bi_\bt_\b__\bk_\be_\by (section 7.4.339 , page 169) and the exit
- status of the program to decide if it will ask you to press a key
- after the external program has exited. In all other situations it
- will not prompt you for a key.
+ [:print:]
- compose=<command>
- This flag specifies the command to use to create a new attachment
- of a specific MIME type. Mutt-ng supports this from the compose
- menu.
+ Printable characters (characters that are not control characters.)
- composetyped=<command>
- This flag specifies the command to use to create a new attachment
- of a specific MIME type. This command differs from the compose
- command in that mutt will expect standard MIME headers on the data.
- This can be used to specify parameters, filename, description, etc.
- for a new attachment. Mutt-ng supports this from the compose
- menu.
-
- print=<command>
- This flag specifies the command to use to print a specific MIME
- type. Mutt-ng supports this from the attachment and compose menus.
-
- edit=<command>
- This flag specifies the command to use to edit a specific MIME
- type. Mutt-ng supports this from the compose menu, and also uses
- it to compose new attachments. Mutt-ng will default to the defined
- editor for text attachments.
-
- nametemplate=<template>
- 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
-
- The Mutt Next Generation E-Mail Client 74
-
- test=<command>
- 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-ng uses this entry. If
- the command returns non-zero, then the test failed, and Mutt-ng
- continues searching for the right entry. N\bNo\bot\bte\be:\b: _\bt_\bh_\be _\bc_\bo_\bn_\bt_\be_\bn_\bt_\b-_\bt_\by_\bp_\be
- _\bm_\bu_\bs_\bt _\bm_\ba_\bt_\bc_\bh _\bb_\be_\bf_\bo_\br_\be _\bM_\bu_\bt_\bt_\b-_\bn_\bg _\bp_\be_\br_\bf_\bo_\br_\bm_\bs _\bt_\bh_\be _\bt_\be_\bs_\bt_\b. For example:
-
- text/html; netscape -remote 'openURL(%s)' ; test=RunningX
- text/html; lynx %s
-
- In this example, Mutt-ng 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-ng will call netscape to
- display the text/html object. If RunningX doesn't return 0, then
- Mutt-ng will go on to the next entry and use lynx to display the
- text/html object.
+ [:punct:]
- _\b5_\b._\b3_\b._\b3_\b._\b2 _\bS_\be_\ba_\br_\bc_\bh _\bO_\br_\bd_\be_\br
+ Punctuation characters (characters that are not letter, digits,
+ control characters, or space characters).
- When searching for an entry in the mailcap file, Mutt-ng 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-ng will search for an entry with the print command:
+ [:space:]
- image/*; xv %s
- image/gif; ; print= anytopnm %s | pnmtops | lpr; \
- nametemplate=%s.gif
+ Space characters (such as space, tab and formfeed, to name a few).
- Mutt-ng will skip the image/* entry and use the image/gif entry with the print
- command.
+ [:upper:]
- In addition, you can use this with _\bA_\bu_\bt_\bo_\bv_\bi_\be_\bw (section 5.4 , page 76) 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
+ Upper-case alphabetic characters.
- For _\bA_\bu_\bt_\bo_\bv_\bi_\be_\bw (section 5.4 , page 76), Mutt-ng 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 program
- returns non-zero, Mutt-ng will use the second entry for interactive viewing.
+ [:xdigit:]
- _\b5_\b._\b3_\b._\b3_\b._\b3 _\bC_\bo_\bm_\bm_\ba_\bn_\bd _\bE_\bx_\bp_\ba_\bn_\bs_\bi_\bo_\bn
-
- The various commands defined in the mailcap files are passed to the /bin/sh
-
- The Mutt Next Generation E-Mail Client 75
+ Characters that are hexadecimal digits.
- 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-
- ng. The keywords Mutt-ng expands are:
+ A character class is only valid in a regular expression inside the
+ brackets of a character list. Note that the brackets in these class names
+ are part of the symbolic names, and must be included in addition to the
+ brackets delimiting the bracket list. For example, [[:digit:]] is
+ equivalent to [0-9].
- %s
- 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-ng to not pass the body of the mes-
- sage to the view/print/edit program on stdin.
+ Two additional special sequences can appear in character lists. These
+ apply to non-ASCII character sets, which can have single symbols
+ (calledcollating elements) that are represented with more than one
+ character, as well as several characters that are equivalent for collating
+ or sorting purposes:
- %t
- Mutt-ng 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.
+ Collating Symbols
- %{<parameter>}
- Mutt-ng 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:
+ A collating symbol is a multi-character collating element enclosed
+ in ``[.'' and ``.]''. For example, if ``ch'' is a collating
+ element, then [[.ch.]] is a regexp that matches this collating
+ element, while [ch] is a regexp that matches either ``c'' or
+ ``h''.
- Content-Type: text/plain; charset=iso-8859-1
+ Equivalence Classes
- then Mutt-ng will expand %{charset} to iso-8859-1. The default
- metamail mailcap file uses this feature to test the charset to
- spawn an xterm using the right charset to view the message.
+ An equivalence class is a locale-specific name for a list of
+ characters that are equivalent. The name is enclosed in ``[='' and
+ ``=]''. For example, the name ``e'' might be used to represent all
+ of ``è'' ``é'' and ``e''. In this case, [[=e=]] is a regexp that
+ matches any of ``è'', ``é'' and ``e''.
- \%
- This will be replaced by a %
+ A regular expression matching a single character may be followed by one of
+ several repetition operators:
- Mutt-ng does not currently support the %F and %n keywords specified in RFC
- 1524. The main purpose of these parameters is for multipart messages, which is
- handled internally by Mutt-ng.
+ ?
- _\b5_\b._\b3_\b._\b4 _\bE_\bx_\ba_\bm_\bp_\bl_\be _\bm_\ba_\bi_\bl_\bc_\ba_\bp _\bf_\bi_\bl_\be_\bs
+ The preceding item is optional and matched at most once.
- This mailcap file is fairly simple and standard:
+ *
- # I'm always running X :)
- video/*; xanim %s > /dev/null
- image/*; xv %s > /dev/null
+ The preceding item will be matched zero or more times.
- # 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:
+ The preceding item will be matched one or more times.
- The Mutt Next Generation E-Mail Client 76
+ {n}
- # 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
+ The preceding item is matched exactly n times.
- # Send html to a running netscape by remote
- text/html; netscape -remote 'openURL(%s)'; test=RunningNetscape
+ {n,}
- # If I'm not running netscape but I am running X, start netscape on the
- # object
- text/html; netscape %s; test=RunningX
+ The preceding item is matched n or more times.
- # Else use lynx to view it as text
- text/html; lynx %s
+ {,m}
- # This version would convert the text/html to text/plain
- text/html; lynx -dump %s; copiousoutput
+ The preceding item is matched at most m times.
- # I use enscript to print text in two columns to a page
- text/*; more %s; print=enscript -2Gr %s
+ {n,m}
- # Netscape adds a flag to tell itself to view jpegs internally
- image/jpeg;xv %s; x-mozilla-flags=internal
+ The preceding item is matched at least n times, but no more than m
+ times.
- # 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
+ Two regular expressions may be concatenated; the resulting regular
+ expression matches any string formed by concatenating two substrings that
+ respectively match the concatenated subexpressions.
- # Convert images to text using the netpbm tools
- image/*; (anytopnm %s | pnmscale -xysize 80 46 | ppmtopgm | pgmtopbm |
- pbmtoascii -1x2 ) 2>&1 ; copiousoutput
+ Two regular expressions may be joined by the infix operator ``|''; the
+ resulting regular expression matches any string matching either
+ subexpression.
- # Send excel spreadsheets to my NT box
- application/ms-excel; open.pl %s
+ Repetition takes precedence over concatenation, which in turn takes
+ precedence over alternation. A whole subexpression may be enclosed in
+ parentheses to override these precedence rules.
- _\b5_\b._\b4 _\bM_\bI_\bM_\bE _\bA_\bu_\bt_\bo_\bv_\bi_\be_\bw
+ Note: If you compile Mutt-ng with the GNU rx package, the following
+ operators may also be used in regular expressions:
- In addition to explicitly telling Mutt-ng to view an attachment with the MIME
- viewer defined in the mailcap file, Mutt-ng has support for automatically view-
- ing MIME attachments while in the pager.
+ \\y
- To work, you must define a viewer in the mailcap file which uses the copi-
- ousoutput 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.
+ Matches the empty string at either the beginning or the end of a
+ word.
- You then use the auto_view muttrc command to list the content-types that you
- wish to view automatically.
+ \\B
- For instance, if you set auto_view to:
+ Matches the empty string within a word.
- The Mutt Next Generation E-Mail Client 77
+ \\<
- auto_view text/html application/x-gunzip application/postscript image/gif application/x-tar-gz
+ Matches the empty string at the beginning of a word.
- Mutt-ng could use the following mailcap entries to automatically view attach-
- ments of these types.
+ \\>
- text/html; lynx -dump %s; copiousoutput; nametemplate=%s.html
- 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
+ Matches the empty string at the end of a word.
- ``unauto_view'' can be used to remove previous entries from the autoview list.
- This can be used with message-hook to autoview messages based on size, etc.
- ``unauto_view *'' will remove all previous entries.
+ \\w
- _\b5_\b._\b5 _\bM_\bI_\bM_\bE _\bM_\bu_\bl_\bt_\bi_\bp_\ba_\br_\bt_\b/_\bA_\bl_\bt_\be_\br_\bn_\ba_\bt_\bi_\bv_\be
+ Matches any word-constituent character (letter, digit, or
+ underscore).
- Mutt-ng has some heuristics for determining which attachment of a multi-
- part/alternative type to display. First, mutt will check the alternative_order
- list to determine if one of the available types is preferred. The alterna-
- tive_order list consists of a number of MIME types in order, including support
- for implicit and explicit wildcards, for example:
+ \\W
- alternative_order text/enriched text/plain text application/postscript image/*
+ Matches any character that is not word-constituent.
- Next, mutt will check if any of the types have a defined _\ba_\bu_\bt_\bo_\b__\bv_\bi_\be_\bw (section
- 5.4 , page 76), and use that. Failing that, Mutt-ng will look for any text
- type. As a last attempt, mutt will look for any type it knows how to handle.
+ \\`
- To remove a MIME type from the alternative_order list, use the unalterna-
- tive_order command.
+ Matches the empty string at the beginning of a buffer (string).
- _\b5_\b._\b6 _\bM_\bI_\bM_\bE _\bL_\bo_\bo_\bk_\bu_\bp
+ \\'
- Mutt-ng's mime_lookup list specifies a list of mime-types that should not be
- treated according to their mailcap entry. This option is designed to deal with
- binary types such as application/octet-stream. When an attachment's mime-type
- is listed in mime_lookup, then the extension of the filename will be compared
- to the list of extensions in the mime.types file. The mime-type associated
- with this extension will then be used to process the attachment according to
- the rules in the mailcap file and according to any other configuration options
- (such as auto_view) specified. Common usage would be:
+ Matches the empty string at the end of a buffer.
- mime_lookup application/octet-stream application/X-Lotus-Manuscript
+ Please note however that these operators are not defined by POSIX, so they
+ may or may not be available in stock libraries on various systems.
- In addition, the unmime_lookup command may be used to disable this feature for
+2. Patterns
- The Mutt Next Generation E-Mail Client 78
+ Mutt-ng's pattern language provides a simple yet effective way to set up
+ rules to match messages, e.g. for operations like tagging and scoring. A
+ pattern consists of one or more sub-pattern, which can be logically
+ grouped, ORed, and negated. For a complete listing of these patterns,
+ please refer to table patterns in the Reference chapter.
- any particular mime-type if it had been set, for example, in a global muttrc.
+ It must be noted that in this table, EXPR is a regular expression. For
+ ranges, the forms <[MAX], >>[MIN], [MIN]- and -[MAX] are also possible.
- _\b6_\b. _\bS_\be_\bc_\bu_\br_\bi_\bt_\by _\bC_\bo_\bn_\bs_\bi_\bd_\be_\br_\ba_\bt_\bi_\bo_\bn_\bs
+ 2.1. Complex Patterns
- First of all, mutt-ng contains no security holes included by intention but may
- contain unknown security holes. As a consequence, please run mutt-ng only with
- as few permissions as possible.
+ It is possible to combine several sub-patterns to a more complex pattern.
+ The most simple possibility is to logically AND several patterns by
+ stringing them together:
- Please do not run mutt-ng as the super user.
+ ~s 'SPAM' ~U
- When configuring mutt-ng, there're some points to note about secure setups.
+ The pattern above matches all messages that contain ``SPAM'' in the
+ subject and are unread.
- In practice, mutt-ng can be easily made as vulnerable as even the most insecure
- mail user agents (in their default configuration) just by changing mutt-ng's
- configuration files: it then can execute arbitrary programs and scripts
- attached to messages, send out private data on its own, etc. Although this is
- not believed to the common type of setup, please read this chapter carefully.
+ To logical OR patterns, simply use the | operator. This one especially
+ useful when using local groups:
- _\b6_\b._\b1 _\bP_\ba_\bs_\bs_\bw_\bo_\br_\bd_\bs
+ ~f ("nion@muttng\.org"|"ak@muttng\.org"|"pdmef@muttng\.org")
+ (~b mutt-ng|~s Mutt-ng)
+ !~x '@synflood\.at'
- Although mutt-ng can be told the various passwords for accounts, please never
- store passwords in configuration files. Besides the fact that the system's
- operator can always read them, you could forget to replace the actual password
- with asterisks when reporting a bug or asking for help via, for example, a
- mailing list so that your mail including your password could be archived by
- internet search engines, etc. Please never store passwords on disk.
+ The first pattern matches all messages that were sent by one of the
+ mutt-ng maintainers, while the seconds pattern matches all messages that
+ contain ``mutt-ng'' in the message body or ``Mutt-ng'' in the subject. The
+ third pattern matches all messages that do not contain ``@synflood\.at''
+ in the References: header, i.e. messages that are not an (indirect) reply
+ to one of my messages. A pattern can be logicall negated using the !
+ operator.
- _\b6_\b._\b2 _\bT_\be_\bm_\bp_\bo_\br_\ba_\br_\by _\bF_\bi_\bl_\be_\bs
+ 2.2. Patterns and Dates
- Mutt-ng uses many temporary files for viewing messages, verifying digital sig-
- natures, etc. The _\b$_\bu_\bm_\ba_\bs_\bk (section 7.4.330 , page 168) variable can be used to
- change the default permissions of these files. Please only change it if you
- really know what you are doing. Also, a different location for these files may
- be desired which can be changed via the _\b$_\bt_\bm_\bp_\bd_\bi_\br (section 7.4.326 , page 167)
- variable.
+ When using dates in patterns, the dates must be specified in a special
+ format, i.e. DD/MM/YYYY. If you don't specify month or year, they default
+ to the current month or year. When using date ranges, and you specify only
+ the minimum or the maximum, the specified date will be excluded, e.g.
+ 01/06/2005- matches against all messages after Juni 1st, 2005.
- _\b6_\b._\b3 _\bI_\bn_\bf_\bo_\br_\bm_\ba_\bt_\bi_\bo_\bn _\bL_\be_\ba_\bk_\bs
+ It is also possible to use so-called ``error margins'' when specifying
+ date ranges. You simply specify a date, and then the error margin. This
+ margin needs to contain the information whether it goes ``forth'' or
+ ``back'' in time, by using + and -. Then follows a number and a unit, i.e.
+ y for years, m for months, w for weeks and d for days. If you use the
+ special * sign, it means that the error margin goes to both``directions''
+ in time.
- _\b6_\b._\b3_\b._\b1 _\bM_\be_\bs_\bs_\ba_\bg_\be_\b-_\bI_\bD_\b: _\bh_\be_\ba_\bd_\be_\br_\bs
+ ~d 01/01/2005+1y
+ ~d 18/10/2004-2w
+ ~d 28/12/2004*1d
- In the default configuration, mutt-ng will leak some information to the outside
- world when sending messages: the generation of Message-ID: headers includes a
- step counter which is increased (and rotated) with every message sent. If you'd
- like to hide this information probably telling others how many mail you sent in
- which time, you at least need to remove the %P expando from the default setting
- of the _\b$_\bm_\bs_\bg_\bi_\bd_\b__\bf_\bo_\br_\bm_\ba_\bt (section 7.4.146 , page 122) variable. Please make sure
- that you really know how local parts of these Message-ID: headers are composed.
+ The first pattern matches all dates between January 1st, 2005 and January
+ 1st 2006. The second pattern matches all dates between October 18th, 2004
+ and October 4th 2004 (2 weeks before 18/10/2004), while the third pattern
+ matches all dates 1 day around December 28th, 2004 (i.e. Dec 27th, 28th
+ and 29th).
- The Mutt Next Generation E-Mail Client 79
+ Relative dates are also very important, as they make it possible to
+ specify date ranges between a fixed number of units and the current date.
+ How this works can be seen in the following example:
- _\b6_\b._\b3_\b._\b2 _\bm_\ba_\bi_\bl_\bt_\bo_\b:_\b-_\bs_\bt_\by_\bl_\be _\bl_\bi_\bn_\bk_\bs
+ ~d >2w # messages older than two weeks
+ ~d <3d # messages newer than 3 days
+ ~d =1m # messages that are exactly one month old
- As mutt-ng be can be set up to be the mail client to handle mailto: style links
- in websites, there're security considerations, too. To keep the old behavior by
- default, mutt-ng will be strict in interpreting them which means that arbitrary
- header fields can be embedded in these links which could override existing
- header fields or attach arbitrary files. This may be problematic if the
- _\b$_\be_\bd_\bi_\bt_\b__\bh_\be_\ba_\bd_\be_\br_\bs (section 7.4.57 , page 100) variable is _\bu_\bn_\bs_\be_\bt, i.e. the user
- doesn't want to see header fields while editing the message.
+3. Format Strings
- For example, following a link like
+ 3.1. Introduction
- mailto:joe@host?Attach=~/.gnupg/secring.gpg
+ The so called Format Strings offer great flexibility when configuring
+ mutt-ng. In short, they describe what items to print out how in menus and
+ status messages.
- will send out the user's private gnupg keyring to joe@host if the user doesn't
- follow the information on screen carefully enough.
+ Basically, they work as this: for different menus and bars, there's a
+ variable specifying the layout. For every item available, there is a so
+ called expando.
- When _\bu_\bn_\bs_\be_\bt_\bt_\bi_\bn_\bg the _\b$_\bs_\bt_\br_\bi_\bc_\bt_\b__\bm_\ba_\bi_\bl_\bt_\bo (section 7.4.314 , page 164) variable, mutt-
- ng will
+ For example, when running mutt-ng on different machines or different
+ versions for testing purposes, it may be interesting to have the following
+ information always printed on screen when one is in the index:
- +\bo be less strict when interpreting these links by prepending a X-Mailto-
- string to all header fields embedded in such a link _\ba_\bn_\bd
+ o the current hostname
- +\bo turn on the _\b$_\be_\bd_\bi_\bt_\b__\bh_\be_\ba_\bd_\be_\br_\bs (section 7.4.57 , page 100) variable by force
- to let the user see all the headers (because they still may leak informa-
- tion.)
+ o the current mutt-ng version number
- _\b6_\b._\b4 _\bE_\bx_\bt_\be_\br_\bn_\ba_\bl _\ba_\bp_\bp_\bl_\bi_\bc_\ba_\bt_\bi_\bo_\bn_\bs
+ The setting for the status bar of the index is controlled via the
+ $status_format variable. For the hostname and version string, there's an
+ expando for $status_format: %h expands to the hostname and %v to the
+ version string. When just configuring:
- Mutt-ng in many places has to rely on external applications or for convenience
- supports mechanisms involving external applications.
+ set status_format = "%v on %h: ..."
- _\b6_\b._\b4_\b._\b1 _\bm_\ba_\bi_\bl_\bc_\ba_\bp
+ mutt-ng will replace the sequence %v with the version string and %h with
+ the host's name. When you are, for example, running mutt-ng version 1.5.9i
+ on host mailhost, you'll see the following when you're in the index:
- One of these is the mailcap mechanism as defined by RfC 1524. Mutt-ng can be
- set up to _\ba_\bu_\bt_\bo_\bm_\ba_\bt_\bi_\bc_\ba_\bl_\bl_\by execute any given utility as listed in one of the mail-
- cap files (see the _\b$_\bm_\ba_\bi_\bl_\bc_\ba_\bp_\b__\bp_\ba_\bt_\bh (section 7.4.119 , page 116) variable for
- details.)
+ Mutt-ng 1.5.9i on mailhost: ...
- These utilities may have a variety of security vulnerabilities, including over-
- writing of arbitrary files, information leaks or other exploitable bugs. These
- vulnerabilities may go unnoticed by the user, especially when they are called
- automatically (and without interactive prompting) from the mailcap file(s).
- When using mutt-ng's autoview mechanism in combination with mailcap files,
- please be sure to...
+ In the index, there're more useful information one could want to see:
- +\bo manually select trustworth applications with a reasonable calling sequence
+ o which mailbox is open
- +\bo periodically check the contents of mailcap files, especially after soft-
- ware installations or upgrades
+ o how man new, flagged or postponed messages
- The Mutt Next Generation E-Mail Client 80
-
- +\bo keep the software packages referenced in the mailcap file up to date
-
- +\bo leave the _\b$_\bm_\ba_\bi_\bl_\bc_\ba_\bp_\b__\bs_\ba_\bn_\bi_\bt_\bi_\bz_\be (section 7.4.120 , page 117) variable in its
- default state to restrict mailcap expandos to a safe set of characters
-
- _\b6_\b._\b4_\b._\b2 _\bO_\bt_\bh_\be_\br
-
- Besides the mailcap mechanism, mutt-ng uses a number of other external utili-
- ties for operation.
-
- The same security considerations apply for these as for tools involved via
- mailcap (for example, mutt-ng is vulnerable to Denial of Service Attacks with
- compressed folders support if the uncompressed mailbox is too large for the
- disk it is saved to.)
-
- As already noted, most of these problems are not built in but caused by wrong
- configuration, so please check your configuration.
-
- _\b7_\b. _\bR_\be_\bf_\be_\br_\be_\bn_\bc_\be
-
- _\b7_\b._\b1 _\bC_\bo_\bm_\bm_\ba_\bn_\bd _\bl_\bi_\bn_\be _\bo_\bp_\bt_\bi_\bo_\bn_\bs
-
- Running mutt with no arguments will make Mutt-ng 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 expand an alias
- -a attach a file to a message
- -b specify a blind carbon-copy (BCC) address
- -c specify a carbon-copy (Cc) address
- -D print the value of all variables on stdout
- -e specify a config command to be run after initialization files are read
- -f specify a mailbox to load
- -F specify an alternate file to read initialization commands
- -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
- -m specify a default mailbox type
- -n do not read the system Muttngrc
- -p recall a postponed message
- -Q query a configuration variable
- -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
- -y show a menu containing the files specified by the mailboxes command
- -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
-
- The Mutt Next Generation E-Mail Client 81
+ o ...
- mutt [ -nz ] [ -F _\bm_\bu_\bt_\bt_\br_\bc ] [ -m _\bt_\by_\bp_\be ] [ -f _\bm_\ba_\bi_\bl_\bb_\bo_\bx ]
+ To include the mailbox' name is as easy as:
- To compose a new message
+ set status_format = "%v on %h: %B: ...
- mutt [ -n ] [ -F _\bm_\bu_\bt_\bt_\br_\bc ] [ -a _\bf_\bi_\bl_\be ] [ -c _\ba_\bd_\bd_\br_\be_\bs_\bs ] [ -i _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be ] [ -s _\bs_\bu_\bb_\b-
- _\bj_\be_\bc_\bt ] _\ba_\bd_\bd_\br_\be_\bs_\bs [ _\ba_\bd_\bd_\br_\be_\bs_\bs ... ]
+ When the currently opened mailbox is Inbox, this will be expanded to:
- Mutt-ng also supports a ``batch'' mode to send prepared messages. Simply redi-
- rect input from the file you wish to send. For example,
+ Mutt-ng 1.5.9i on mailhost: Inbox: ...
- mutt -s 'data set for run #2' professor@bigschool.edu < ~/run2.dat
+ For the number of certain types of messages, one more feature of the
+ format strings is extremely useful. If there aren't messages of a certain
+ type, it may not be desired to print just that there aren't any but
+ instead only print something if there are any.
- 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''.
+ 3.2. Conditional Expansion
- _\b7_\b._\b2 _\bP_\ba_\bt_\bt_\be_\br_\bn_\bs
+ To only print the number of messages if there are new messages in the
+ current mailbox, further extend $status_format to:
- The Mutt Next Generation E-Mail Client 82
+ set status_format = "%v on %h: %B %?n?%n new? ...
- ~A all messages
- ~b EXPR messages which contain EXPR in the message body
- ~B EXPR messages which contain EXPR in the whole message
- ~c USER messages carbon-copied to USER
- ~C EXPR message is either to: or cc: EXPR
- ~D deleted messages
- ~d [MIN]-[MAX] messages with ``date-sent'' in a Date range
- ~E expired messages
- ~e EXPR message which contains EXPR in the ``Sender'' field
- ~F flagged messages
- ~f USER messages originating from USER
- ~g cryptographically signed messages
- ~G cryptographically encrypted messages
- ~H EXPR messages with a spam attribute matching EXPR
- ~h EXPR messages which contain EXPR in the message header
- ~k message contains PGP key material
- ~i ID message which match ID in the ``Message-ID'' field
- ~L EXPR message is either originated or received by EXPR
- ~l message is addressed to a known mailing list
- ~m [MIN]-[MAX] message in the range MIN to MAX *)
- ~n [MIN]-[MAX] messages with a score in the range MIN to MAX *)
- ~N new messages
- ~O old messages
- ~p message is addressed to you (consults alternates)
- ~P message is from you (consults alternates)
- ~Q messages which have been replied to
- ~R read messages
- ~r [MIN]-[MAX] messages with ``date-received'' in a Date range
- ~S superseded messages
- ~s SUBJECT messages having SUBJECT in the ``Subject'' field.
- ~T tagged messages
- ~t USER messages addressed to USER
- ~U unread messages
- ~v message is part of a collapsed thread.
- ~V cryptographically verified messages
- ~w EXPR messages which contain EXPR in the `Newsgroups' field
- (if compiled with NNTP support)
- ~x EXPR messages which contain EXPR in the `References' field
- ~y EXPR messages which contain EXPR in the `X-Label' field
- ~z [MIN]-[MAX] messages with a size in the range MIN to MAX *)
- ~= duplicated messages (see $duplicate_threads)
- ~$ unreferenced messages (requires threaded view)
- ~* ``From'' contains realname and (syntactically) valid
- address (excluded are addresses matching against
- alternates or any alias)
+ This feature is called nonzero-printing and works as this: some expandos
+ may be optionally printed nonzero, i.e. a portion of the format string is
+ only evaluated if the value of the expando is different from zero. The
+ basic syntax is:
- Where EXPR, USER, ID, and SUBJECT are _\br_\be_\bg_\bu_\bl_\ba_\br _\be_\bx_\bp_\br_\be_\bs_\bs_\bi_\bo_\bn_\bs (section 4.1 , page
- 46). Special attention has to be made when using regular expressions inside of
- patterns. Specifically, Mutt-ng's parser for these patterns will strip one
- level of backslash (\), which is normally used for quoting. If it is your
- intention to use a backslash in the regular expression, you will need to use
- two backslashes instead (\\).
+ %?<item>?<string if nonzero>?
- The Mutt Next Generation E-Mail Client 83
+ which tells mutt-ng to only look at <string if nonzero> if the value of
+ the %<item%gt; expando is different from zero. In our example, we used n
+ as the expando to check for and %n new as the optional nonzero string.
- *) The forms <[MAX], >[MIN], [MIN]- and -[MAX] are allowed, too.
+ But this is not all: this feature only offers one alternative: ``print
+ something if not zero.'' Mutt-ng does, as you might guess, also provide a
+ logically complete version: ``if zero, print something and else print
+ something else.'' This is achieved by the following syntax for those
+ expandos which may be printed nonzero:
- _\b7_\b._\b3 _\bC_\bo_\bn_\bf_\bi_\bg_\bu_\br_\ba_\bt_\bi_\bo_\bn _\bC_\bo_\bm_\bm_\ba_\bn_\bd_\bs
+ %?<item>?<string if nonzero>&<string if zero>?
- The following are the commands understood by mutt.
+ Using this we can make mutt-ng to do the following:
- +\bo _\ba_\bc_\bc_\bo_\bu_\bn_\bt_\b-_\bh_\bo_\bo_\bk (section 4.17 , page 64) _\bp_\ba_\bt_\bt_\be_\br_\bn _\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ o make it print ``n new messages'' whereby n is the count but only if
+ there new ones
- +\bo _\ba_\bl_\bi_\ba_\bs (section 3.3 , page 23) _\bk_\be_\by _\ba_\bd_\bd_\br_\be_\bs_\bs [ , _\ba_\bd_\bd_\br_\be_\bs_\bs, ... ]
+ o and make it print ``no new messages'' if there aren't any
- +\bo _\bu_\bn_\ba_\bl_\bi_\ba_\bs (section 3.3 , page 23) [ * | _\bk_\be_\by ... ]
+ The corresponding configuration is:
- +\bo _\ba_\bl_\bt_\be_\br_\bn_\ba_\bt_\be_\bs (section 3.10 , page 31) _\br_\be_\bg_\be_\bx_\bp [ _\br_\be_\bg_\be_\bx_\bp ... ]
+ set status_format = "%v on %h: %B: %?n?%n new messages&no new messages? ...
- +\bo _\bu_\bn_\ba_\bl_\bt_\be_\br_\bn_\ba_\bt_\be_\bs (section 3.10 , page 31) [ * | _\br_\be_\bg_\be_\bx_\bp ... ]
+ This doubles the use of the ``new messages'' string because it'll get
+ always printed. Thus, it can be shortened to:
- +\bo _\ba_\bl_\bt_\be_\br_\bn_\ba_\bt_\bi_\bv_\be_\b__\bo_\br_\bd_\be_\br (section 5.5 , page 77) _\bm_\bi_\bm_\be_\bt_\by_\bp_\be [ _\bm_\bi_\bm_\be_\bt_\by_\bp_\be ... ]
+ set status_format = "%v on %h: %B: %?n?%n&no? new messages ...
- +\bo _\bu_\bn_\ba_\bl_\bt_\be_\br_\bn_\ba_\bt_\bi_\bv_\be_\b__\bo_\br_\bd_\be_\br (section 5.5 , page 77) _\bm_\bi_\bm_\be_\bt_\by_\bp_\be [ _\bm_\bi_\bm_\be_\bt_\by_\bp_\be ... ]
+ As you might see from this rather simple example, one can create very
+ complex but fancy status messages. Please see the reference chapter for
+ expandos and those which may be printed nonzero.
- +\bo _\ba_\bp_\bp_\be_\bn_\bd_\b-_\bh_\bo_\bo_\bk (section 4.19.3 , page 67) _\br_\be_\bg_\be_\bx_\bp _\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ 3.3. Modifications and Padding
- +\bo _\ba_\bu_\bt_\bo_\b__\bv_\bi_\be_\bw (section 5.4 , page 76) _\bm_\bi_\bm_\be_\bt_\by_\bp_\be [ _\bm_\bi_\bm_\be_\bt_\by_\bp_\be ... ]
+ Besides the information given so far, there're even more features of
+ format strings:
- +\bo _\bu_\bn_\ba_\bu_\bt_\bo_\b__\bv_\bi_\be_\bw (section 5.4 , page 76) _\bm_\bi_\bm_\be_\bt_\by_\bp_\be [ _\bm_\bi_\bm_\be_\bt_\by_\bp_\be ... ]
+ o When specifying %_<item> instead of just %<item>, mutt-ng will convert
+ all characters in the expansion of <item> to lowercase.
- +\bo _\bb_\bi_\bn_\bd (section 3.4 , page 24) _\bm_\ba_\bp _\bk_\be_\by _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn
+ o When specifying %:<item> instead of just %<item>, mutt-ng will convert
+ all dots in the expansion of <item> to underscores (_).
- +\bo _\bc_\bh_\ba_\br_\bs_\be_\bt_\b-_\bh_\bo_\bo_\bk (section 3.5 , page 26) _\ba_\bl_\bi_\ba_\bs _\bc_\bh_\ba_\br_\bs_\be_\bt
+ Also, there's a feature called Padding supplied by the following two
+ expandos: %|X and %>X .
- +\bo _\bc_\bl_\bo_\bs_\be_\b-_\bh_\bo_\bo_\bk (section 4.19.2 , page 66) _\br_\be_\bg_\be_\bx_\bp _\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ %|X
- +\bo _\bc_\bo_\bl_\bo_\br (section 3.8 , page 28) _\bo_\bb_\bj_\be_\bc_\bt _\bf_\bo_\br_\be_\bg_\br_\bo_\bu_\bn_\bd _\bb_\ba_\bc_\bk_\bg_\br_\bo_\bu_\bn_\bd [ _\br_\be_\bg_\be_\bx_\bp ]
+ When this occurs, mutt-ng will fill the rest of the line with the
+ character X. In our example, filling the rest of the line with
+ dashes is done by setting:
- +\bo _\bu_\bn_\bc_\bo_\bl_\bo_\br (section 3.8 , page 28) _\bi_\bn_\bd_\be_\bx _\bp_\ba_\bt_\bt_\be_\br_\bn [ _\bp_\ba_\bt_\bt_\be_\br_\bn ... ]
+ set status_format = "%v on %h: %B: %?n?%n&no? new messages %|-"
- +\bo _\be_\bx_\be_\bc (section 3.24 , page 39) _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn [ _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn ... ]
+ %>X
- +\bo _\bf_\bc_\bc_\b-_\bh_\bo_\bo_\bk (section 3.18 , page 36) _\bp_\ba_\bt_\bt_\be_\br_\bn _\bm_\ba_\bi_\bl_\bb_\bo_\bx
+ Since the previous expando stops at the end of line, there must be
+ a way to fill the gap between two items via the %>X expando: it
+ puts as many characters X in between two items so that the rest of
+ the line will be right-justified. For example, to not put the
+ version string and hostname of our example on the left but on the
+ right and fill the gap with spaces, one might use (note the space
+ after %>):
- +\bo _\bf_\bc_\bc_\b-_\bs_\ba_\bv_\be_\b-_\bh_\bo_\bo_\bk (section 3.19 , page 37) _\bp_\ba_\bt_\bt_\be_\br_\bn _\bm_\ba_\bi_\bl_\bb_\bo_\bx
+ set status_format = "%B: %?n?%n&no? new messages %> (%v on %h)"
- +\bo _\bf_\bo_\bl_\bd_\be_\br_\b-_\bh_\bo_\bo_\bk (section 3.6 , page 26) _\bp_\ba_\bt_\bt_\be_\br_\bn _\bc_\bo_\bm_\bm_\ba_\bn_\bd
+4. Using Tags
- +\bo _\bh_\bd_\br_\b__\bo_\br_\bd_\be_\br (section 3.16 , page 36) _\bh_\be_\ba_\bd_\be_\br [ _\bh_\be_\ba_\bd_\be_\br ... ]
+ 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 ``shift-T'' by default. Or you can
+ select individual messages by hand using the ``tag-message'' function,
+ which is bound to ``t'' by default. See patterns for Mutt-ng's pattern
+ matching syntax.
- +\bo _\bu_\bn_\bh_\bd_\br_\b__\bo_\br_\bd_\be_\br (section 3.16 , page 36) _\bh_\be_\ba_\bd_\be_\br [ _\bh_\be_\ba_\bd_\be_\br ... ]
+ 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 next operation will be applied to all
+ tagged messages if that operation can be used in that manner. If the
+ $auto_tag variable is set, the next operation applies to the tagged
+ messages automatically, without requiring the ``tag-prefix''.
- +\bo _\bi_\bc_\bo_\bn_\bv_\b-_\bh_\bo_\bo_\bk (section 3.5 , page 26) _\bc_\bh_\ba_\br_\bs_\be_\bt _\bl_\bo_\bc_\ba_\bl_\b-_\bc_\bh_\ba_\br_\bs_\be_\bt
+ In macro or push commands, you can use the ``tag-prefix-cond'' operator.
+ If there are no tagged messages, mutt will "eat" the rest of the macro to
+ abort it's execution.Mutt-ng will stop "eating" the macro when it
+ encounters the ``end-cond'' operator; after this operator the rest of the
+ macro will be executed asnormal.
- +\bo _\bi_\bg_\bn_\bo_\br_\be (section 3.9 , page 30) _\bp_\ba_\bt_\bt_\be_\br_\bn [ _\bp_\ba_\bt_\bt_\be_\br_\bn ... ]
+5. Using Hooks
- The Mutt Next Generation E-Mail Client 84
+ A hook is a concept borrowed from the EMACS editor which allows you to
+ execute arbitrary commands before performing some operation. For example,
+ you may wish to tailor your configuration based upon which mailbox you are
+ reading, or to whom you are sending mail. In the Mutt-ng world, a hook
+ consists of a regexp or patterns along with a configuration
+ option/command. See
- +\bo _\bu_\bn_\bi_\bg_\bn_\bo_\br_\be (section 3.9 , page 30) _\bp_\ba_\bt_\bt_\be_\br_\bn [ _\bp_\ba_\bt_\bt_\be_\br_\bn ... ]
+ o folder-hook
- +\bo _\bl_\bi_\bs_\bt_\bs (section 3.12 , page 33) _\br_\be_\bg_\be_\bx_\bp [ _\br_\be_\bg_\be_\bx_\bp ... ]
+ o send-hook
- +\bo _\bu_\bn_\bl_\bi_\bs_\bt_\bs (section 3.12 , page 33) _\br_\be_\bg_\be_\bx_\bp [ _\br_\be_\bg_\be_\bx_\bp ... ]
+ o message-hook
- +\bo _\bm_\ba_\bc_\br_\bo (section 3.7 , page 27) _\bm_\be_\bn_\bu _\bk_\be_\by _\bs_\be_\bq_\bu_\be_\bn_\bc_\be [ _\bd_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn ]
+ o save-hook
- +\bo _\bm_\ba_\bi_\bl_\bb_\bo_\bx_\be_\bs (section 3.14 , page 34) _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be [ _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be ... ]
+ o mbox-hook
- +\bo _\bm_\bb_\bo_\bx_\b-_\bh_\bo_\bo_\bk (section 3.13 , page 34) _\bp_\ba_\bt_\bt_\be_\br_\bn _\bm_\ba_\bi_\bl_\bb_\bo_\bx
+ o fcc-hook
- +\bo _\bm_\be_\bs_\bs_\ba_\bg_\be_\b-_\bh_\bo_\bo_\bk (section 3.21 , page 38) _\bp_\ba_\bt_\bt_\be_\br_\bn _\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ o fcc-save-hook
- +\bo _\bm_\bi_\bm_\be_\b__\bl_\bo_\bo_\bk_\bu_\bp (section 5.6 , page 77) _\bm_\bi_\bm_\be_\bt_\by_\bp_\be [ _\bm_\bi_\bm_\be_\bt_\by_\bp_\be ... ]
+ for specific details on each type of hook available.
- +\bo _\bu_\bn_\bm_\bi_\bm_\be_\b__\bl_\bo_\bo_\bk_\bu_\bp (section 5.6 , page 77) _\bm_\bi_\bm_\be_\bt_\by_\bp_\be [ _\bm_\bi_\bm_\be_\bt_\by_\bp_\be ... ]
+ Note: if a hook changes configuration settings, these changes remain
+ effective until the end of the current mutt session. As this is generally
+ not desired, a default hook needs to be added before all other hooks to
+ restore configuration defaults. Here is an example with send-hook and the
+ my_hdr directive:
- +\bo _\bm_\bo_\bn_\bo (section 3.8 , page 28) _\bo_\bb_\bj_\be_\bc_\bt _\ba_\bt_\bt_\br_\bi_\bb_\bu_\bt_\be [ _\br_\be_\bg_\be_\bx_\bp ]
+ send-hook . 'unmy_hdr From:'
+ send-hook '~C ^b@b\.b$' my-hdr from: c@c.c
- +\bo _\bu_\bn_\bm_\bo_\bn_\bo (section 3.8 , page 28) _\bi_\bn_\bd_\be_\bx _\bp_\ba_\bt_\bt_\be_\br_\bn [ _\bp_\ba_\bt_\bt_\be_\br_\bn ... ]
+ 5.1. Message Matching in Hooks
- +\bo _\bm_\by_\b__\bh_\bd_\br (section 3.15 , page 35) _\bs_\bt_\br_\bi_\bn_\bg
+ Hooks that act upon messages (send-hook, save-hook, fcc-hook,message-hook
+ )are evaluated in a slightly different manner. For the other types of
+ hooks, a regexp is sufficient. But in dealing with messages a finer grain
+ of control is needed for matching since for different purposes you want to
+ match different criteria.
- +\bo _\bu_\bn_\bm_\by_\b__\bh_\bd_\br (section 3.15 , page 35) _\bf_\bi_\be_\bl_\bd [ _\bf_\bi_\be_\bl_\bd ... ]
+ Mutt-ng allows the use of the patterns language for matching messages in
+ hook commands. This works in exactly the same way as it would when
+ limiting orsearching the mailbox, except that you are restricted to those
+ operators which match information mutt extracts from the header of the
+ message (i.e. from, to, cc, date, subject, etc.).
- +\bo _\bo_\bp_\be_\bn_\b-_\bh_\bo_\bo_\bk (section 4.19.1 , page 66) _\br_\be_\bg_\be_\bx_\bp _\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ For example, if you wanted to set your return address based upon sending
+ mail to a specific address, you could do something like:
- +\bo _\bc_\br_\by_\bp_\bt_\b-_\bh_\bo_\bo_\bk (section 3.22 , page 38) _\bp_\ba_\bt_\bt_\be_\br_\bn _\bk_\be_\by_\b-_\bi_\bd
+ send-hook '~t ^me@cs\.hmc\.edu$' 'my-hdr From: Mutt-ng User <user@host>'
- +\bo _\bp_\bu_\bs_\bh (section 3.23 , page 38) _\bs_\bt_\br_\bi_\bn_\bg
+ which would execute the given command when sending mail to me@cs.hmc.edu.
- +\bo _\br_\be_\bs_\be_\bt (section 3.27 , page 42) _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be [_\bv_\ba_\br_\bi_\ba_\bb_\bl_\be ... ]
+ However, it is not required that you write the pattern to match using the
+ full searching language. You can still specify a simple regular expression
+ like the other hooks, in which case Mutt-ng will translate your pattern
+ into the full language, using the translation specified by the
+ default-hook variable. The pattern is translated at the time the hook is
+ declared, so the value of default-hook that is in effect at that time will
+ be used.
- +\bo _\bs_\ba_\bv_\be_\b-_\bh_\bo_\bo_\bk (section 3.17 , page 36) _\br_\be_\bg_\be_\bx_\bp _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be
+6. Using the sidebar
- +\bo _\bs_\bc_\bo_\br_\be (section 3.25 , page 39) _\bp_\ba_\bt_\bt_\be_\br_\bn _\bv_\ba_\bl_\bu_\be
+ The sidebar, a feature specific to Mutt-ng, allows you to use a mailbox
+ listing which looks very similar to the ones you probably know from GUI
+ mail clients. The sidebar lists all specified mailboxes, shows the number
+ in each and highlights the ones with new email Use the following
+ configuration commands:
- +\bo _\bu_\bn_\bs_\bc_\bo_\br_\be (section 3.25 , page 39) _\bp_\ba_\bt_\bt_\be_\br_\bn [ _\bp_\ba_\bt_\bt_\be_\br_\bn ... ]
+ set sidebar_visible="yes"
+ set sidebar_width=25
- +\bo _\bs_\be_\bn_\bd_\b-_\bh_\bo_\bo_\bk (section 3.20 , page 37) _\br_\be_\bg_\be_\bx_\bp _\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ If you want to specify the mailboxes you can do so with:
- +\bo _\br_\be_\bp_\bl_\by_\b-_\bh_\bo_\bo_\bk (section , page ) _\br_\be_\bg_\be_\bx_\bp _\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ set mbox='=INBOX'
+ mailboxes INBOX \
+ MBOX1 \
+ MBOX2 \
+ ...
- +\bo _\bs_\be_\bt (section 3.27 , page 42) [no|inv]_\bv_\ba_\br_\bi_\ba_\bb_\bl_\be[=_\bv_\ba_\bl_\bu_\be] [ _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be ... ]
+ You can also specify the colors for mailboxes with new mails by using:
- +\bo _\bu_\bn_\bs_\be_\bt (section 3.27 , page 42) _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be [_\bv_\ba_\br_\bi_\ba_\bb_\bl_\be ... ]
+ color sidebar_new red black
+ color sidebar white black
- +\bo _\bs_\bo_\bu_\br_\bc_\be (section 3.28 , page 43) _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be
+ Reasonable key bindings look e.g. like this:
- +\bo _\bs_\bp_\ba_\bm (section 3.26 , page 40) _\bp_\ba_\bt_\bt_\be_\br_\bn _\bf_\bo_\br_\bm_\ba_\bt
+ bind index \Cp sidebar-prev
+ bind index \Cn sidebar-next
+ bind index \Cb sidebar-open
+ bind pager \Cp sidebar-prev
+ bind pager \Cn sidebar-next
+ bind pager \Cb sidebar-open
- +\bo _\bn_\bo_\bs_\bp_\ba_\bm (section 3.26 , page 40) _\bp_\ba_\bt_\bt_\be_\br_\bn
+ macro index B ':toggle sidebar_visible^M'
+ macro pager B ':toggle sidebar_visible^M'
- The Mutt Next Generation E-Mail Client 85
+ You can then go up and down by pressing Ctrl-P and Ctrl-N, and switch on
+ and off the sidebar simply by pressing 'B'.
- +\bo _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be (section 3.12 , page 33) _\br_\be_\bg_\be_\bx_\bp [ _\br_\be_\bg_\be_\bx_\bp ... ]
+7. External Address Queries
- +\bo _\bu_\bn_\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be (section 3.12 , page 33) _\br_\be_\bg_\be_\bx_\bp [ _\br_\be_\bg_\be_\bx_\bp ... ]
+ Mutt-ng supports connecting to external directory databases such as LDAP,
+ ph/qi, bbdb, or NIS through a wrapper script which connects to mutt using
+ a simple interface. Using the $query_command variable, you specify the
+ wrapper command to use. For example:
- +\bo _\bt_\bo_\bg_\bg_\bl_\be (section 3.27 , page 42) _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be [_\bv_\ba_\br_\bi_\ba_\bb_\bl_\be ... ]
+ set query_command = "mutt_ldap_query.pl '%s'"
- +\bo _\bu_\bn_\bh_\bo_\bo_\bk (section 3.29 , page 43) _\bh_\bo_\bo_\bk_\b-_\bt_\by_\bp_\be
+ The wrapper script should accept the query on the command-line. It should
+ return a one line message, then each matching response on a single line,
+ each line containing a tab separated address then name thensome other
+ optional information. On error, or if there are no matching addresses,
+ return a non-zero exit code and a one line error message.
- _\b7_\b._\b4 _\bC_\bo_\bn_\bf_\bi_\bg_\bu_\br_\ba_\bt_\bi_\bo_\bn _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be_\bs
+ An example multiple response output:
- The following list contains all variables which, in the process of providing
- more consistency, have been renamed and are partially even removed already. The
- left column contains the old synonym variables, the right column the full/new
- name:
+ Searching database ... 20 entries ... 3 matching:
+ me@cs.hmc.edu Michael Elkins mutt dude
+ blong@fiction.net Brandon Long mutt and more
+ roessler@guug.de Thomas Roessler mutt pgp
- The Mutt Next Generation E-Mail Client 86
+ There are two mechanisms for accessing the query function of mutt. One is
+ to do a query from the index menu using the query function (default: Q).
+ This will prompt for a query, then bring up the query menu which will list
+ the matching responses. From the query menu, you can select addresses to
+ create aliases, or to mail. You can tag multiple addressesto mail, start a
+ new query, or have a new query appended to the current responses.
- edit_hdrs edit_headers
- forw_decode forward_decode
- forw_format forward_format
- forw_quote forward_quote
- hdr_format index_format
- indent_str indent_string
- mime_fwd mime_forward
- msg_format message_format
- pgp_autosign crypt_autosign
- pgp_autoencrypt crypt_autoencrypt
- pgp_replyencrypt crypt_replyencrypt
- pgp_replysign crypt_replysign
- pgp_replysignencrypted crypt_replysignencrypted
- pgp_verify_sig crypt_verify_sig
- pgp_create_traditional pgp_autoinline
- pgp_auto_traditional pgp_replyinline
- forw_decrypt forward_decrypt
- smime_sign_as smime_default_key
- post_indent_str post_indent_string
- print_cmd print_command
- shorten_hierarchy sidebar_shorten_hierarchy
- ask_followup_to nntp_ask_followup_to
- ask_x_comment_to nntp_ask_x_comment_to
- catchup_newsgroup nntp_catchup
- followup_to_poster nntp_followup_to_poster
- group_index_format nntp_group_index_format
- inews nntp_inews
- mime_subject nntp_mime_subject
- news_cache_dir nntp_cache_dir
- news_server nntp_host
- newsrc nntp_newsrc
- nntp_poll nntp_mail_check
- pop_checkinterval pop_mail_check
- post_moderated nntp_post_moderated
- save_unsubscribed nntp_save_unsubscribed
- show_new_news nntp_show_new_news
- show_only_unread nntp_show_only_unread
- x_comment_to nntp_x_comment_to
- smtp_auth_username smtp_user
- smtp_auth_password smtp_pass
+ The other mechanism for accessing the query function is for address
+ completion, similar to the alias completion. In any prompt for address
+ entry, you can use the complete-query function (default: ^T) to run a
+ query based on the current address you have typed. Like aliases, mutt will
+ look for what you have typed back to the last space or comma. If there is
+ a single response for that query, mutt will expand the address in place.
+ If there are multiple responses, mutt will activate the querymenu. At the
+ query menu, you can select one or more addresses to be added to the
+ prompt.
+
+8. Mailbox Formats
+
+ Mutt-ng 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. When creating
+ newmailboxes, Mutt-ng uses the default specified with the $mbox_type
+ variable.
+
+ mbox. 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).
+
+ MMDF. This is a variant of the mbox format. Each message is surrounded by
+ lines containing ``^A^A^A^A'' (four control-A's).
+
+ MH. A radical departure from mbox and MMDF, 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-ng displays). Deleted messages arerenamed with a comma
+ (,) prepended to the filename. Note: Mutt detects this type of mailbox by
+ looking for either .mh_sequences or .xmhcache (needed to distinguish
+ normal directories from MH mailboxes).
+
+ Maildir. The newest of the mailbox formats, used by the Qmail MTA (a
+ replacement for sendmail). Similar to MH, except that it adds three
+ subdirectories of the mailbox: tmp, new and cur .Filenames for the
+ messages are chosen in such a way they are unique, even when twoprograms
+ are writing the mailbox over NFS, which means that no file locking is
+ needed.
+
+9. Mailbox Shortcuts
+
+ 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 $spoolfile (incoming) mailbox
+
+ o > -- refers to your $mbox file
+
+ o < -- refers to your $record file
+
+ o ^ -- refers to the current mailbox
+
+ o - or !! -- refers to the file you've last visited
+
+ o ~ -- refers to your home directory
+
+ o = or + -- refers to your $folder directory
+
+ o @alias -- refers to the save-hook as determined by the address of the
+ alias
+
+10. Handling Mailing Lists
+
+ Mutt-ng 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),
+ and what lists you are subscribed to. This is accomplished through the use
+ of the lists commands in your muttrc.
+
+ Now that Mutt-ng knows what your mailing lists are, it can do several
+ things, the first of which is the ability to show the name of a list
+ through which you received a message (i.e., of a subscribed list) in the
+ index menu display. This is useful to distinguish between personal and
+ list mail in the same mailbox. In the $index_format variable, the escape
+ ``%L'' will return the string ``To <list>'' when ``list'' appears in the
+ ``To'' field, and ``Cc <list>'' 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 index menu and pager, helps reduce the clutter by
+ only replying to the known mailing list addresses instead of all
+ recipients (except as specified by Mail-Followup-To, see below).
+
+ Mutt-ng also supports the Mail-Followup-To header. When you send a message
+ to a list of recipients which includes one or several subscribed mailing
+ lists, and if the $followup_to option is set, mutt will generate a
+ Mail-Followup-To header which contains all the recipients to whom you send
+ this message, but not your address. This indicates that group-replies or
+ list-replies (also known as ``followups'') to this message should only be
+ sent to the original recipients of the message, and not separately to you
+ - you'll receive your copy through one of the mailing lists you are
+ subscribed to.
+
+ Conversely, when group-replying or list-replying to a message which has a
+ Mail-Followup-To header, mutt will respect this header if the
+ $honor_followup_to configuration variable is set. Using list-reply will in
+ this case also make sure that the reply goes to the mailing list, even if
+ it's not specified in the list of recipients in the Mail-Followup-To.
- The contrib subdirectory contains a script named update-config.pl which eases
- migration.
+ Note that, when header editing is enabled, you can create a
+ Mail-Followup-To header manually. Mutt-ng will only auto-generate this
+ header if it doesn't exist when you send the message.
+
+ 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-ng uses the $reply_to variable to help decide which address to use.
+ If set to ask-yes or ask-no, you will be prompted as to whether or not you
+ would like to use the address given inthe ``Reply-To'' field, or reply
+ directly to the address given in the ``From'' field. When set to yes, the
+ ``Reply-To'' field will be used when present.
+
+ The ``X-Label:'' header field can be used to further identify mailing
+ lists or list subject matter (or just to annotate messages individually).
+ The $index_format variable's ``%y'' and ``%Y'' escapes can be used to
+ expand ``X-Label:'' fields in the index, and Mutt-ng's pattern-matcher can
+ match regular expressions to ``X-Label:'' fields with the ``~y'' selector.
+ ``X-Label:'' is not a standard message header field, but it can easily be
+ inserted by procmailand other mail filtering agents.
+
+ Lastly, Mutt-ng 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 dealingwith large volume
+ mailing lists easier because you can easily delete uninteresting threads
+ and quickly find topics of value.
- A complete list of current variables follows.
+11. Editing threads
- _\b7_\b._\b4_\b._\b1 _\ba_\bb_\bo_\br_\bt_\b__\bn_\bo_\ba_\bt_\bt_\ba_\bc_\bh
+ Mutt-ng has the ability to dynamically restructure threads that are broken
+ either by misconfigured software or bad behavior from some correspondents.
+ This allows to clean your mailboxes formats) from these annoyances which
+ make it hard to follow a discussion.
- Type: quadoption
+ 11.1. Linking threads
- Default: no
+ Some mailers tend to "forget" to correctly set the "In-Reply-To:" and
+ "References:" headers when replying to a message. This results in broken
+ discussions because Mutt-ng has not enough information to guess the
+ correct threading. You can fix this by tagging the reply, then moving to
+ the parent message and using the ``link-threads'' function (bound to & by
+ default). The reply will then be connected to this "parent" message.
- This variable specifies whether to abort sending if no attachment was made but
+ You can also connect multiple children at once, tagging them and using the
+ tag-prefix command (';') or the auto_tag option.
- The Mutt Next Generation E-Mail Client 87
+ 11.2. Breaking threads
+
+ On mailing lists, some people are in the bad habit of starting a new
+ discussion by hitting "reply" to any message from the list and changing
+ the subject to a totally unrelated one. You can fix such threads by using
+ the ``break-thread'' function (boundby default to #), which will turn the
+ subthread starting from the current message into a whole different thread.
+
+12. Delivery Status Notification (DSN) Support
+
+ RfC 1894 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.''
+
+ Users can make use of it in one of the following two ways:
+
+ o Berkeley sendmail 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.
+
+ o The SMTP support via libESMTP supports it, too.
- the content references them, i.e. the content matches the regular expression
- given in $attach_remind_regexp. If a match was found and this variable is set
- to _\by_\be_\bs, message sending will be aborted but the mail will be send nevertheless
- if set to _\bn_\bo.
+ To support this, there are two variables:
- This variable and $attach_remind_regexp are intended to remind the user to
- attach files if the message's text references them.
+ o $dsn_notify is used to request receipts for different results (such as
+ failed message,message delivered, etc.).
- See also the $attach_remind_regexp variable.
+ o $dsn_return requests how much of your message should be returned with
+ the receipt (headers or full message).
- _\b7_\b._\b4_\b._\b2 _\ba_\bb_\bo_\br_\bt_\b__\bn_\bo_\bs_\bu_\bb_\bj_\be_\bc_\bt
+ Please see the reference chapter for possible values.
- Type: quadoption
+13. POP3 Support (OPTIONAL)
- Default: ask-yes
+ If Mutt-ng was compiled with POP3 support (by running the configure script
+ with the --enable-pop flag), it has the ability to work with mailboxes
+ located on a remote POP3 server and fetch mail for local browsing.
- If set to _\by_\be_\bs, when composing messages and no subject is given at the subject
- prompt, composition will be aborted. If set to _\bn_\bo, composing messages with no
- subject given at the subject prompt will never be aborted.
+ You can access the remote POP3 mailbox by selecting the folder
+ pop://popserver/.
- _\b7_\b._\b4_\b._\b3 _\ba_\bb_\bo_\br_\bt_\b__\bu_\bn_\bm_\bo_\bd_\bi_\bf_\bi_\be_\bd
+ You can select an alternative port by specifying it with the server, i.e.:
+ pop://popserver:port/.
- Type: quadoption
+ You can also specify different username for each folder, i.e.:
+ pop://username@popserver[:port]/.
- Default: yes
+ Polling for new mail is more expensive over POP3 than locally. For this
+ reason the frequency at which Mutt-ng will check for mail remotely can be
+ controlled by the $pop_mail_check variable, which defaults to every 60
+ seconds.
- If set to _\by_\be_\bs, composition will automatically abort after editing the message
- body if no changes are made to the file (this check only happens after the
- _\bf_\bi_\br_\bs_\bt edit of the file). When set to _\bn_\bo, composition will never be aborted.
+ If Mutt-ng was compiled with SSL support (by running the configure script
+ with the --with-ssl flag), connections to POP3 servers can be encrypted.
+ This naturally requires that the server supports SSL encrypted
+ connections. To access a folder with POP3/SSL, you should use pops:
+ prefix, ie: pops://[username@]popserver[:port]/.
- _\b7_\b._\b4_\b._\b4 _\ba_\bl_\bi_\ba_\bs_\b__\bf_\bi_\bl_\be
+ Another way to access your POP3 mail is the fetch-mail function (default:
+ G). It allows to connect to pop-host ,fetch all your new mail and place it
+ in the local $spoolfile. After this point, Mutt-ng runs exactly as if the
+ mail had always been local.
- Type: path
+ Note: If you only need to fetch all messages to local mailbox you should
+ consider using a specialized program, such as fetchmail(1).
- Default: '~/.muttngrc'
+14. IMAP Support (OPTIONAL)
- The default file in which to save aliases created by the ``_\bc_\br_\be_\ba_\bt_\be_\b-_\ba_\bl_\bi_\ba_\bs (sec-
- tion 2.5.4 , page 11)'' function.
+ If Mutt-ng was compiled with IMAP support (by running the configure script
+ with the --enable-imap flag), it has the ability to work with folders
+ located on a remote IMAP server.
- N\bNo\bot\bte\be:\b: Mutt-ng will not automatically source this file; you must explicitly use
- the ``_\bs_\bo_\bu_\br_\bc_\be (section 3.28 , page 43)'' command for it to be executed.
+ You can access the remote inbox by selecting the folder via its URL:
- _\b7_\b._\b4_\b._\b5 _\ba_\bl_\bi_\ba_\bs_\b__\bf_\bo_\br_\bm_\ba_\bt
+ imap://imapserver/INBOX
- Type: string
+ where imapserver is the name of the IMAP server and INBOX is the special
+ name for your spool mailbox on the IMAP server. If you want to access
+ another mail folder at the IMAP server, you should use
- Default: '%4n %2f %t %-10a %r'
+ imap://imapserver/path/to/folder
- Specifies the format of the data displayed for the ``alias'' menu. The follow-
- ing printf(3)-style sequences are available:
+ where path/to/folder is the path of the folder you want to access. You can
+ select an alternative port by specifying it with the server, i.e.:
- %a
- alias name
+ imap://imapserver:port/INBOX
- The Mutt Next Generation E-Mail Client 88
+ You can also specify different username for each folder by prenpending
+ your username and an @ symbol to the server's name.
- %f
- flags - currently, a 'd' for an alias marked for deletion
+ If Mutt-ng was compiled with SSL support (by running the configure script
+ with the --with-ssl flag), connections to IMAP servers can be encrypted.
+ This naturally requires that the server supports SSL encrypted
+ connections. To access a folder with IMAP/SSL, you only need to substitute
+ the initial imap:// by imaps:// in the above examples.
- %n
- index number
+ Note that not all servers use / as the hierarchy separator. Mutt-ng should
+ correctly notice which separator is being used by the server and
+ convertpaths accordingly.
- %r
- address which alias expands to
+ When browsing folders on an IMAP server, you can toggle whether to look at
+ only the folders you are subscribed to, or all folders with the
+ toggle-subscribed command. See also the $imap_list_subscribed variable.
- %t
- character which indicates if the alias is tagged for inclusion
+ Polling for new mail on an IMAP server can cause noticeable delays. So,
+ you'll want to carefully tune the $imap_mail_check and $timeout variables.
- _\b7_\b._\b4_\b._\b6 _\ba_\bl_\bl_\bo_\bw_\b__\b8_\bb_\bi_\bt
+ Note that if you are using mbox as the mail store on UW servers prior
+ tov12.250, the server has been reported to disconnect a client if another
+ client selects the same folder.
- Type: boolean
+ 14.1. The Folder Browser
- Default: yes
+ As of version 1.2, mutt supports browsing mailboxes on an IMAP server.
+ This is mostly the same as the local file browser, with the following
+ differences:
- Controls whether 8-bit data is converted to 7-bit using either quoted-printable
- or base64 encoding when sending mail.
+ o Instead of file permissions, mutt displays the string "IMAP", possibly
+ followed by the symbol "+", indicating that the entry contains both
+ messages and subfolders. On Cyrus-like servers folders will often
+ contain both messages and subfolders.
- _\b7_\b._\b4_\b._\b7 _\ba_\bl_\bl_\bo_\bw_\b__\ba_\bn_\bs_\bi
+ o For the case where an entry can contain both messages and subfolders,
+ the selection key (bound to enter by default) will choose to descend
+ into the subfolder view. If you wish to view the messages in that
+ folder, you must use view-file instead (bound to space by default).
- Type: boolean
+ o You can create, delete and rename mailboxes with the create-mailbox,
+ delete-mailbox, and rename-mailbox commands (default bindings: C , d
+ and r, respectively). You may also subscribe and unsubscribe to
+ mailboxes (normally these are bound to s and u, respectively).
- Default: no
+ 14.2. Authentication
- Controls whether ANSI color codes in messages (and color tags in rich text mes-
- sages) are to be interpreted. Messages containing these codes are rare, but if
- this option is set, their text will be colored accordingly. Note that this may
- override your color choices, and even present a security problem, since a mes-
- sage could include a line like ``[-- PGP output follows ...' and give it the
- same color as your attachment color.
+ Mutt-ng supports four authentication methods with IMAP servers: SASL,
+ GSSAPI, CRAM-MD5, and LOGIN (there is a patch by Grant Edwards to add NTLM
+ authentication for you poor exchange users out there, but it has yet to be
+ integrated into the main tree). There is also support for the
+ pseudo-protocol ANONYMOUS, which allows you to log in to a public IMAP
+ server without having an account. To use ANONYMOUS, simply make your
+ username blank or "anonymous".
- _\b7_\b._\b4_\b._\b8 _\ba_\br_\br_\bo_\bw_\b__\bc_\bu_\br_\bs_\bo_\br
+ SASL is a special super-authenticator, which selects among several
+ protocols (including GSSAPI, CRAM-MD5, ANONYMOUS, and DIGEST-MD5) the most
+ secure method available on your host and the server. Using some of these
+ methods (including DIGEST-MD5 and possibly GSSAPI), your entire session
+ will be encrypted and invisible to those teeming network snoops. It is the
+ best option if you have it. To use it, you must have the Cyrus SASL
+ libraryinstalled on your system and compile mutt with the --with-sasl
+ flag.
- Type: boolean
+ Mutt-ng will try whichever methods are compiled in and available on the
+ server, in the following order: SASL, ANONYMOUS, GSSAPI, CRAM-MD5, LOGIN.
- Default: no
+ There are a few variables which control authentication:
- When _\bs_\be_\bt, an arrow (``->'') will be used to indicate the current entry in menus
- instead of highlighting 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.
+ o $imap_user - controls the username under which you request
+ authentication on the IMAP server, for all authenticators. This is
+ overridden by an explicit username in the mailbox path (i.e. by using
+ a mailbox name of the form {user@host}).
- _\b7_\b._\b4_\b._\b9 _\ba_\bs_\bc_\bi_\bi_\b__\bc_\bh_\ba_\br_\bs
+ o $imap_pass - a password which you may preset, used by all
+ authentication methods where a password is needed.
- Type: boolean
+ o $imap_authenticators - a colon-delimited list of IMAP authentication
+ methods to try, in the order you wish to try them. If specified, this
+ overrides mutt's default (attempt everything, in the order listed
+ above).
- Default: no
+15. NNTP Support (OPTIONAL)
- If _\bs_\be_\bt, Mutt-ng will use plain ASCII characters when displaying thread and
- attachment trees, instead of the default ACS characters.
+ If compiled with ``--enable-nntp'' option, Mutt-ng can read news from a
+ newsserver via NNTP. You can open a newsgroup with the
+ ``change-newsgroup'' function from the index/pager which is by default
+ bound to i.
- The Mutt Next Generation E-Mail Client 89
+ The Default newsserver can be obtained from the $NNTPSERVER environment
+ variable. Like other news readers, info about subscribed newsgroups is
+ saved in a file as specified by the $nntp_newsrc variable. Article headers
+ are cached and can be loaded from a file when a newsgroup is entered
+ instead loading from newsserver; currently, this caching mechanism still
+ is different from the header caching for maildir/IMAP.
- _\b7_\b._\b4_\b._\b1_\b0 _\ba_\bs_\bk_\bb_\bc_\bc
+ 15.1. Again: Scoring
- Type: boolean
+ Especially for Usenet, people often ask for advanced filtering and scoring
+ functionality. Of course, mutt-ng has scoring and allows a killfile, too.
+ How to use a killfile has been discussed in Message Scoring.
- Default: no
+ What has not been discusses in detail is mutt-ng's built-in realname
+ filter. For may newsreaders including those for ``advanced users'' like
+ slrn or tin, there are frequent request for such functionality. The
+ solutions offered often are complicated regular expressions.
- If _\bs_\be_\bt, Mutt-ng will prompt you for blind-carbon-copy (Bcc) recipients before
- editing an outgoing message.
+ In mutt-ng this is as easy as
- _\b7_\b._\b4_\b._\b1_\b1 _\ba_\bs_\bk_\bc_\bc
+ score ~* =42
- Type: boolean
+ This tells mutt-ng to apply a score of 42 to all messages whose sender
+ specified a valid realname and a valid email address. Using
- Default: no
+ score !~* =42
- If _\bs_\be_\bt, Mutt-ng will prompt you for carbon-copy (Cc) recipients before editing
- the body of an outgoing message.
+ on the contrary applies a score of 42 to all messages not matching those
+ criteria which are very strict:
- _\b7_\b._\b4_\b._\b1_\b2 _\ba_\bs_\bs_\bu_\bm_\be_\bd_\b__\bc_\bh_\ba_\br_\bs_\be_\bt
+ o Email addresses must be valid according to RfC 2822
- Type: string
+ o the name must consist of at least 2 fields whereby a field must not
+ end in a dot. This means that ``Joe User'' and ``Joe A.User'' are
+ valid while ``J. User'' and ``J. A. User'' aren't.
- Default: 'us-ascii'
+ o it's assumed that users are interested in reading their own mail and
+ mail from people who they have defined an alias forso that those 2
+ groups of messages are excluded from the strict rules.
- This variable is a colon-separated list of character encoding schemes for mes-
- sages without character encoding indication. Header field values and message
- body content without character encoding indication would be assumed that they
- are written in one of this list. By default, all the header fields and message
- body without any charset indication are assumed to be in us-ascii.
+16. SMTP Support (OPTIONAL)
- For example, Japanese users might prefer this:
+ Mutt-ng can be built using a library called ``libESMTP'' which provides
+ SMTP functionality. When configure was called with --with-libesmtp or the
+ output muttng -v contains +USE_LIBESMTP, this will be or is the case
+ already. The SMTP support includes support for Delivery Status
+ Notification (see dsn section) as well as handling the 8BITMIME flag
+ controlled via $use_8bitmime.
- set assumed_charset='iso-2022-jp:euc-jp:shift_jis:utf-8'
+ To enable sending mail directly via SMTP without an MTA such as Postfix or
+ SSMTP and the like, simply set the $smtp_host variable pointing to your
+ SMTP server.
- However, only the first content is valid for the message body. This variable
- is valid only if _\b$_\bs_\bt_\br_\bi_\bc_\bt_\b__\bm_\bi_\bm_\be (section 7.4.315 , page 164) is unset.
+ Authentication mechanisms are available via the $smtp_user and $smtp_pass
+ variables.
- _\b7_\b._\b4_\b._\b1_\b3 _\ba_\bt_\bt_\ba_\bc_\bh_\b__\bf_\bo_\br_\bm_\ba_\bt
+ Transport Encryption via the StartTLS command is also available. For this
+ to work, first of all Mutt-ng must be built with SSL or GNUTLS. Secondly,
+ the $smtp_use_tls variable must be either set to ``enabled'' or
+ ``required.'' In both cases, StartTLS will be used if the server supports
+ it: for the second case, the connection will fail ifit doesn't while
+ switching back to unencrypted communication for the first one.
- Type: string
+ Some mail providers require user's to set a particular envelope sender,
+ i.e. they allow for only one value which may not be what the user wants to
+ send as the From: header. In this case, the variable $smtp_envelope may be
+ used to set the envelope different from the From: header.
- Default: '%u%D%I %t%4n %T%.40d%> [%.7m/%.10M, %.6e%?C?, %C?, %s] '
+17. Managing multiple IMAP/POP/NNTP accounts (OPTIONAL)
- This variable describes the format of the ``attachment'' menu. The following
- printf(3)-style sequences are understood:
+ If you happen to have accounts on multiple IMAP and/or POP servers, you
+ may find managing all the authentication settings inconvenient and
+ error-prone. The account-hook command may help. This hook works like
+ folder-hook but is invoked whenever you access a remote mailbox (including
+ inside the folder browser), not just when you open the mailbox.
- %C
- charset
+ Some examples:
- %c
- requires charset conversion (n or c)
+ account-hook . 'unset imap_user; unset imap_pass; unset tunnel'
+ account-hook imap://host1/ 'set imap_user=me1 imap_pass=foo'
+ account-hook imap://host2/ 'set tunnel="ssh host2 /usr/libexec/imapd"'
- %D
- deleted flag
+18. Start a WWW Browser on URLs (EXTERNAL)
- The Mutt Next Generation E-Mail Client 90
+ If a message contains URLs (unified resource locator = address in the WWW
+ space like http://www.mutt.org/), it is efficient to get a menu with all
+ the URLs and start a WWW browser on one of them. This functionality is
+ provided by the external urlview program which can be retrieved at
+ <ftp://ftp.mutt.org/mutt/contrib/> and the configuration commands:
- %d
- description
+ macro index \cb |urlview\n
+ macro pager \cb |urlview\n
- %e
- MIME Content-Transfer-Encoding: header field
+19. Compressed folders Support (OPTIONAL)
- %f
- filename
+ If Mutt-ng was compiled with compressed folders support (by running the
+ configure script with the --enable-compressed flag), Mutt can open folders
+ stored in an arbitrary format, provided that the user has a script to
+ convert from/to this format to one of the accepted.
- %I
- MIME Content-Disposition: header field (I=inline, A=attachment)
+ The most common use is to open compressed archived folders e.g. with gzip.
- %m
- major MIME type
+ In addition, the user can provide a script that gets a folder in an
+ accepted format and appends its context to the folder in the user-defined
+ format, which may be faster than converting the entire folder to the
+ accepted format, appending to it and converting back to the user-defined
+ format.
- %M
- MIME subtype
+ There are three hooks defined (open-hook, close-hook and append-hook
+ )which define commands to uncompress and compress a folder and to append
+ messages to an existing compressed folder respectively.
- %n
- attachment number
+ For example:
- %s
- size
+ open-hook \\.gz$ "gzip -cd %f > %t"
+ close-hook \\.gz$ "gzip -c %t > %f"
+ append-hook \\.gz$ "gzip -c %t >> %f"
- %t
- tagged flag
+ You do not have to specify all of the commands. If you omit append-hook
+ ,the folder will be open and closed again each time you will add to it. If
+ you omit close-hook (or give empty command) , the folder will be open in
+ the mode. If you specify append-hook though you'll be able to append to
+ the folder.
- %T
- graphic tree characters
+ Note that Mutt-ng will only try to use hooks if the file is not in one of
+ the accepted formats. In particular, if the file is empty, mutt supposes
+ it is not compressed. This is important because it allows the use of
+ programs that do not have well defined extensions. Just use "." as a
+ regexp. But this may be surprising if your compressing script produces
+ empty files. In this situation, unset $save_empty ,so that the compressed
+ file will be removed if you delete all of the messages.
- %u
- unlink (=to delete) flag
+ 19.1. Open a compressed mailbox for reading
- %>X
- right justify the rest of the string and pad with character 'X'
+ Usage: open-hookregexp "command"
- %|X
- pad to the end of the line with character 'X'
+ The command is the command that can be used for opening the folders whose
+ names match regexp.
- _\b7_\b._\b4_\b._\b1_\b4 _\ba_\bt_\bt_\ba_\bc_\bh_\b__\br_\be_\bm_\bi_\bn_\bd_\b__\br_\be_\bg_\be_\bx_\bp
+ The command string is the printf-like format string, and it should accept
+ two parameters: %f, which is replaced with the (compressed) folder name,
+ and %t which is replaced with the name of the temporary folder to which to
+ write.
- Type: regular expression
+ %f and %t can be repeated any number of times in the command string, and
+ all of the entries are replaced with the appropriate folder name. In
+ addition, %% is replaced by %, as in printf, and any other %anything is
+ left as is.
- Default: 'attach'
+ The command should not remove the original compressed file. The command
+ should return non-zero exit status if it fails, so mutt knows something's
+ wrong.
- If this variable is non-empty, muttng will scan a message's contents before
- sending for this regular expression. If it is found, it will ask for what to do
- depending on the setting of $abort_noattach.
+ Example:
- This variable and $abort_noattach are intended to remind the user to attach
- files if the message's text references them.
+ open-hook \\.gz$ "gzip -cd %f > %t"
- _\b7_\b._\b4_\b._\b1_\b5 _\ba_\bt_\bt_\ba_\bc_\bh_\b__\bs_\be_\bp
+ If the command is empty, this operation is disabled for this file type.
- The Mutt Next Generation E-Mail Client 91
+ 19.2. Write a compressed mailbox
- Type: string
+ Usage: close-hookregexp"command"
- Default: '\n'
+ This is used to close the folder that was open with the open-hook command
+ after some changes were made to it.
- The separator to add between attachments when operating (saving, printing, pip-
- ing, etc) on a list of tagged attachments.
+ The command string is the command that can be used for closing the folders
+ whose names match regexp. It has the same format as in the open-hook
+ command. Temporary folder in this case is the folder previously produced
+ by the open-hook command.
- _\b7_\b._\b4_\b._\b1_\b6 _\ba_\bt_\bt_\ba_\bc_\bh_\b__\bs_\bp_\bl_\bi_\bt
+ The command should not remove the decompressed file. The command should
+ return non-zero exit status if it fails, so mutt knows something's wrong.
- Type: boolean
+ Example:
- Default: yes
+ close-hook \\.gz$ "gzip -c %t > %f"
- If this variable is _\bu_\bn_\bs_\be_\bt, when operating (saving, printing, piping, etc) on a
- list of tagged attachments, Mutt-ng will concatenate the attachments and will
- operate on them as a single attachment. The ``_\b$_\ba_\bt_\bt_\ba_\bc_\bh_\b__\bs_\be_\bp (section 7.4.15 ,
- page 91)'' separator is added after each attachment. When _\bs_\be_\bt, Mutt-ng will
- operate on the attachments one by one.
+ If the command is empty, this operation is disabled for this file type,
+ and the file can only be open in the readonly mode.
- _\b7_\b._\b4_\b._\b1_\b7 _\ba_\bt_\bt_\br_\bi_\bb_\bu_\bt_\bi_\bo_\bn
+ close-hook is not called when you exit from the folder if the folder was
+ not changed.
- Type: string
+ 19.3. Append a message to a compressed mailbox
- Default: 'On %d, %n wrote:'
+ Usage: append-hookregexp"command"
- This is the string that will precede a message which has been included in a
- reply. For a full listing of defined printf(3)-like sequences see the section
- on ``_\b$_\bi_\bn_\bd_\be_\bx_\b__\bf_\bo_\br_\bm_\ba_\bt (section 7.4.113 , page 113)''.
+ This command is used for saving to an existing compressed folder. The
+ command is the command that can be used for appending to the folders whose
+ names match regexp. It has the same format as in the open-hook command.
+ The temporary folder in this case contains the messages that are
+ beingappended.
- _\b7_\b._\b4_\b._\b1_\b8 _\ba_\bu_\bt_\bo_\b__\bt_\ba_\bg
+ The command should not remove the decompressed file. The command should
+ return non-zero exit status if it fails, so mutt knows something's wrong.
- Type: boolean
+ Example:
- Default: no
+ append-hook \\.gz$ "gzip -c %t >> %f"
- When _\bs_\be_\bt, functions in the _\bi_\bn_\bd_\be_\bx 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.
+ When append-hook is used, the folder is not opened, which saves time, but
+ this means that we can not find out what the folder type is. Thus the
+ default ($mbox_type )type is always supposed (i.e. this is the format used
+ for the temporary folder).
- _\b7_\b._\b4_\b._\b1_\b9 _\ba_\bu_\bt_\bo_\be_\bd_\bi_\bt
+ If the file does not exist when you save to it, close-hook is called, and
+ not append-hook. append-hook is only for appending to existing folders.
- Type: boolean
+ If the command is empty, this operation is disabled for this file type. In
+ this case, the folder will be open and closed again (using open-hook and
+ close-hook respectively) each time you will add to it.
- Default: no
+ 19.4. Encrypted folders
- When _\bs_\be_\bt along with ``_\b$_\be_\bd_\bi_\bt_\b__\bh_\be_\ba_\bd_\be_\br_\bs (section 7.4.57 , page 100)'', Mutt-ng
- will skip the initial send-menu and allow you to immediately begin editing the
- body of your message. The send-menu may still be accessed once you have fin-
- ished editing the body of your message.
+ The compressed folders support can also be used to handle encrypted
+ folders. If you want to encrypt a folder with PGP, you may want to usethe
+ following hooks:
- Also see ``_\b$_\bf_\ba_\bs_\bt_\b__\br_\be_\bp_\bl_\by (section 7.4.63 , page 101)''.
+ open-hook \\.pgp$ "pgp -f < %f > %t"
+ close-hook \\.pgp$ "pgp -fe YourPgpUserIdOrKeyId < %t > %f"
- The Mutt Next Generation E-Mail Client 92
+ Please note, that PGP does not support appending to an encrypted folder,
+ so there is no append-hook defined.
- _\b7_\b._\b4_\b._\b2_\b0 _\bb_\be_\be_\bp
+ Note: the folder is temporary stored decrypted in the /tmp directory,
+ where it can be read by your system administrator. So thinkabout the
+ security aspects of this.
- Type: boolean
+Chapter 5. Mutt-ng's MIME Support
- Default: yes
+ Table of Contents
- When this variable is _\bs_\be_\bt, Mutt-ng will beep when an error occurs.
+ 1. Using MIME in Mutt
- _\b7_\b._\b4_\b._\b2_\b1 _\bb_\be_\be_\bp_\b__\bn_\be_\bw
+ 1.1. Viewing MIME messages in the pager
- Type: boolean
+ 1.2. The Attachment Menu
- Default: no
+ 1.3. The Compose Menu
- When this variable is _\bs_\be_\bt, Mutt-ng will beep whenever it prints a message noti-
- fying you of new mail. This is independent of the setting of the ``_\b$_\bb_\be_\be_\bp (sec-
- tion 7.4.20 , page 92)'' variable.
+ 2. MIME Type configuration with mime.types
- _\b7_\b._\b4_\b._\b2_\b2 _\bb_\bo_\bu_\bn_\bc_\be
+ 3. MIME Viewer configuration with mailcap
- Type: quadoption
+ 3.1. The Basics of the mailcap file
- Default: ask-yes
+ 3.2. Secure use of mailcap
- Controls whether you will be asked to confirm bouncing messages. If set to _\by_\be_\bs
- you don't get asked if you want to bounce a message. Setting this variable to
- _\bn_\bo is not generally useful, and thus not recommended, because you are unable to
- bounce messages.
+ 3.3. Advanced mailcap Usage
- _\b7_\b._\b4_\b._\b2_\b3 _\bb_\bo_\bu_\bn_\bc_\be_\b__\bd_\be_\bl_\bi_\bv_\be_\br_\be_\bd
+ 3.4. Example mailcap files
- Type: boolean
+ 4. MIME Autoview
- Default: yes
+ 5. MIME Multipart/Alternative
- When this variable is _\bs_\be_\bt, Mutt-ng will include Delivered-To: header fields
- when bouncing messages. Postfix users may wish to _\bu_\bn_\bs_\be_\bt this variable.
+ 6. Attachment Searching and Counting
- _\b7_\b._\b4_\b._\b2_\b4 _\bb_\br_\ba_\bi_\bl_\bl_\be_\b__\bf_\br_\bi_\be_\bn_\bd_\bl_\by
+ 7. MIME Lookup
- Type: boolean
+ Quite a bit of effort has been made to make Mutt-ng 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-ng for MIME, there are two
+ extratypes of configuration files which Mutt-ng 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.
- Default: no
+1. Using MIME in Mutt
- When this variable is set, mutt will place the cursor at the beginning of the
- current line in menus, even when the arrow_cursor variable is unset, making it
- easier for blind persons using Braille displays to follow these menus. The
- option is disabled by default because many visual terminals don't permit making
- the cursor invisible.
+ There are three areas/menus in Mutt-ng which deal with MIME, they are the
+ pager (while viewing a message), the attachment menu and the compose menu.
- _\b7_\b._\b4_\b._\b2_\b5 _\bc_\be_\br_\bt_\bi_\bf_\bi_\bc_\ba_\bt_\be_\b__\bf_\bi_\bl_\be
+ 1.1. Viewing MIME messages in the pager
- Type: path
+ When you select a message from the index and view it in the pager, Mutt
+ decodes the message to a text representation. Mutt-ng 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-ng recognizes a variety of PGP MIME types, including
+ PGP/MIME and application/pgp.
- The Mutt Next Generation E-Mail Client 93
+ Mutt-ng will denote attachments with a couple lines describing them. These
+ lines are of the form:
- Default: '~/.mutt_certificates'
+ [-- Attachment #1: Description --]
+ [-- Type: text/plain, Encoding: 7bit, Size: 10000 --]
- Availability: SSL or GNUTLS
+ Where the Description is the description or filename given for the
+ attachment, and the Encoding is one of
+ 7bit/8bit/quoted-printable/base64/binary.
- This variable specifies the file where the certificates you trust are saved.
- When an unknown certificate is encountered, you are asked if you accept it or
- not. If you accept it, the certificate can also be saved in this file and fur-
- ther connections are automatically accepted.
+ If Mutt-ng cannot deal with a MIME type, it will display a message like:
- You can also manually add CA certificates in this file. Any server certificate
- that is signed with one of these CA certificates are also automatically
- accepted.
+ [-- image/gif is unsupported (use 'v' to view this part) --]
- Example: set certificate_file=~/.muttng/certificates
+ 1.2. The Attachment Menu
- _\b7_\b._\b4_\b._\b2_\b6 _\bc_\bh_\ba_\br_\bs_\be_\bt
+ The default binding for view-attachments is `v', which displays the
+ attachment menu for a message. The attachment menu displays a list ofthe
+ attachments in a message. From the attachment menu, you can save, print,
+ pipe, delete, and view attachments. You can apply these operations to a
+ group of attachments at once, by tagging the attachments and by using the
+ ``tag-prefix'' operator. You can also reply to the current message from
+ this menu, and only the current attachment (or the attachments tagged)
+ will be quoted in your reply. You can view attachments as text, or view
+ them using the mailcap viewer definition.
- Type: string
+ Finally, you can apply the usual message-related functions (like
+ <resend-message>, and the reply and forward functions) to attachments of
+ type message/rfc822.
- Default: ''
+ See the help on the attachment menu for more information.
- Character set your terminal uses to display and enter textual data.
+ 1.3. The Compose Menu
- _\b7_\b._\b4_\b._\b2_\b7 _\bc_\bh_\be_\bc_\bk_\b__\bn_\be_\bw
+ 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,
+ pipe, edit, compose, review, and rename an attachment or a list of tagged
+ attachments. You can also modifying the attachment information, notably
+ the type, encoding and description.
- Type: boolean
+ Attachments appear as follows:
- Default: yes
+ 1 [text/plain, 7bit, 1K] /tmp/mutt-euler-8082-0 <no description>
+ 2 [applica/x-gunzip, base64, 422K] ~/src/mutt-0.85.tar.gz <no description>
- N\bNo\bot\bte\be:\b: this option only affects _\bm_\ba_\bi_\bl_\bd_\bi_\br and _\bM_\bH style mailboxes.
+ The '-' denotes that Mutt-ng will delete the file after sending (or
+ postponing, or canceling) the message. It can be toggled with the
+ toggle-unlink command (default: u). 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 next field is
+ the filename, which can be changed with the rename-file command (default:
+ R). The final field is the description of the attachment, and can be
+ changed with the edit-description command (default: d).
- When _\bs_\be_\bt, Mutt-ng 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 it's _\bu_\bn_\bs_\be_\bt, no check for new mail is performed while the
- mailbox is open.
+2. MIME Type configuration with mime.types
- _\b7_\b._\b4_\b._\b2_\b8 _\bc_\bo_\bl_\bl_\ba_\bp_\bs_\be_\b__\bu_\bn_\br_\be_\ba_\bd
+ When you add an attachment to your mail message, Mutt-ng searches your
+ personal mime.types file within $HOME and then the system mime.types file
+ at /usr/local/share/mutt/mime.types or /etc/mime.types
- Type: boolean
+ The mime.types file consist of lines containing a MIME type and a space
+ separated list of extensions. For example:
- Default: yes
+ application/postscript ps eps
+ application/pgp pgp
+ audio/x-aiff aif aifc aiff
- When _\bu_\bn_\bs_\be_\bt, Mutt-ng will not collapse a thread if it contains any unread mes-
- sages.
+ A sample mime.types file comes with the Mutt-ng distribution, and should
+ contain most of the MIME types you are likely to use.
- _\b7_\b._\b4_\b._\b2_\b9 _\bc_\bo_\bm_\bp_\bo_\bs_\be_\b__\bf_\bo_\br_\bm_\ba_\bt
+ If Mutt-ng 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-ng will assume that the file is plain text, and mark it
+ as text/plain. If the file contains binary information, then Mutt-ng will
+ mark it as application/octet-stream. You can change the MIME type that
+ Mutt-ng assigns to an attachment by using the edit-type command from the
+ compose menu (default: ^T). The MIME type is actually a major mime type
+ followed by the sub-type, separated by a '/'. 6 major types: application,
+ text, image, video, audio, and model have been approved after various
+ internet discussions. Mutt-ng recognises all of these if the appropriate
+ entry is found in the mime.types file. It also recognises other major mime
+ types, such as the chemical type that is widely used in the molecular
+ modelling community to pass molecular data in various forms to various
+ molecular viewers. Non-recognised mime types should only be used if the
+ recipient of the message is likely to be expecting such attachments.
- Type: string
+3. MIME Viewer configuration with mailcap
- Default: '-- Mutt-ng: Compose [Approx. msg size: %l Atts: %a]%>-'
+ Mutt-ng supports RfC 1524 MIME Configuration, in particular the Unix
+ specific format specified in Appendix A of the RfC. This file format is
+ commonly referred 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, XMosaic, lynx and metamail.
- Controls the format of the status line displayed in the ``compose'' menu. This
- string is similar to ``_\b$_\bs_\bt_\ba_\bt_\bu_\bs_\b__\bf_\bo_\br_\bm_\ba_\bt (section 7.4.312 , page 162)'', but has
+ In order to handle various MIME types that Mutt-ng can not handle
+ internally, Mutt-ng 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
- The Mutt Next Generation E-Mail Client 94
+ ${HOME}/.mailcap:/usr/local/share/mutt/mailcap:/etc/mailcap:/etc/mailcap:/usr/etc/mailcap:/usr/local/etc/mailcap
- its own set of printf(3)-like sequences:
+ where $HOME is your home directory.
- %a
- total number of attachments
+ In particular, the metamail distribution will install a mailcap file,
+ usually as /usr/local/etc/mailcap, which contains some baseline entries.
- %h
- local hostname
+ 3.1. The Basics of the mailcap file
- %l
- approximate size (in bytes) of the current message
+ 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.
- %v
- Mutt-ng version string
+ A definition line consists of a content type, a view command, and any
+ number of optional fields. Each field of a definition line is dividedby a
+ semicolon ';' character.
- See the text describing the ``_\b$_\bs_\bt_\ba_\bt_\bu_\bs_\b__\bf_\bo_\br_\bm_\ba_\bt (section 7.4.312 , page 162)''
- option for more information on how to set ``_\b$_\bc_\bo_\bm_\bp_\bo_\bs_\be_\b__\bf_\bo_\br_\bm_\ba_\bt (section 7.4.29 ,
- page 93)''.
+ 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.
- _\b7_\b._\b4_\b._\b3_\b0 _\bc_\bo_\bn_\bf_\bi_\bg_\b__\bc_\bh_\ba_\br_\bs_\be_\bt
+ 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
+ behavior by using %s as a parameter to your view command. This will cause
+ Mutt-ng 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-ng 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.
- Type: string
+ So, in the simplest form, you can send a text/plain message to the
+ external pager more on stdin:
- Default: ''
+ text/plain; more
- When defined, Mutt-ng will recode commands in rc files from this encoding.
+ Or, you could send the message as a file:
- _\b7_\b._\b4_\b._\b3_\b1 _\bc_\bo_\bn_\bf_\bi_\br_\bm_\ba_\bp_\bp_\be_\bn_\bd
+ text/plain; more %s
- Type: boolean
+ Perhaps you would like to use lynx to interactively view a text/html
+ message:
- Default: yes
+ text/html; lynx %s
- When _\bs_\be_\bt, Mutt-ng will prompt for confirmation when appending messages to an
- existing mailbox.
+ In this case, lynx does not support viewing a file from stdin, so you must
+ use the %s syntax. Note:Some older versions of lynx contain a bug where
+ they will check the mailcap file for a viewer for text/html. They will
+ find the line which calls lynx, and run it. This causes lynx to
+ continuously spawn itself to view the object.
- _\b7_\b._\b4_\b._\b3_\b2 _\bc_\bo_\bn_\bf_\bi_\br_\bm_\bc_\br_\be_\ba_\bt_\be
+ On the other hand, maybe you don't want to use lynx interactively, youjust
+ want to have it convert the text/html to text/plain, then you can use:
- Type: boolean
+ text/html; lynx -dump %s | more
- Default: yes
+ 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:
- When _\bs_\be_\bt, Mutt-ng will prompt for confirmation when saving messages to a mail-
- box which does not yet exist before creating it.
+ text/html; lynx %s
+ text/*; more
- _\b7_\b._\b4_\b._\b3_\b3 _\bc_\bo_\bn_\bn_\be_\bc_\bt_\b__\bt_\bi_\bm_\be_\bo_\bu_\bt
+ This is the simplest form of a mailcap file.
- Type: number
+ 3.2. Secure use of mailcap
- Default: 30
+ The interpretation of shell meta-characters embedded in MIME parameters
+ can lead to security problems in general. Mutt-ng tries to quote
+ parameters in expansion of %s syntaxes properly, and avoids risky
+ characters by substituting them, see the $mailcap_sanitize variable.
- Causes Mutt-ng to timeout a network connection (for IMAP or POP) after this
- many seconds if the connection is not able to be established. A negative value
- causes Mutt-ng to wait indefinitely for the connection to succeed.
+ Although mutt's procedures to invoke programs with mailcap seem to be
+ safe, there are other applications parsing mailcap, maybe taking less care
+ of it. Therefore you should pay attention to the following rules:
- The Mutt Next Generation E-Mail Client 95
+ Keep the %-expandos away from shell quoting. Don't quote them with single
+ or double quotes. Mutt-ng does this for you, the right way, as should any
+ other program which interprets mailcap. Don't put them into backtick
+ expansions. Be highly careful with eval statements, and avoid them if
+ possible at all. Trying to fix broken behaviour with quotes introduces new
+ leaks - there is no alternative to correct quoting in the first place.
- _\b7_\b._\b4_\b._\b3_\b4 _\bc_\bo_\bn_\bt_\be_\bn_\bt_\b__\bt_\by_\bp_\be
+ If you have to use the %-expandos' values in context where you need
+ quoting or backtick expansions, put that value into a shell variable and
+ reference the shell variable where necessary, as in the following example
+ (using $charset inside the backtick expansion is safe, since it is not
+ itself subject to any further expansion):
- Type: string
+ text/test-mailcap-bug; cat %s; copiousoutput; test=charset=%{charset} \
+ && test "`echo $charset | tr '[A-Z]' '[a-z]'`" != iso-8859-1
- Default: 'text/plain'
+ 3.3. Advanced mailcap Usage
- Sets the default Content-Type: header field for the body of newly composed mes-
- sages.
+ 3.3.1. Optional Fields
- _\b7_\b._\b4_\b._\b3_\b5 _\bc_\bo_\bp_\by
+ 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-ng recognizes the following optional fields:
- Type: quadoption
+ copiousoutput
- Default: yes
+ This flag tells Mutt-ng that the command passes possibly large
+ amounts of text on stdout. This causes Mutt-ng to invoke a pager
+ (either the internal pager or the external pager defined by the
+ pager variable) on the output of the view command. Without this
+ flag, Mutt-ng assumes that the command is interactive. One could
+ use this to replace the pipe to more in the lynx -dump example in
+ the Basic section:
- This variable controls whether or not copies of your outgoing messages will be
- saved for later references. Also see ``_\b$_\br_\be_\bc_\bo_\br_\bd (section 7.4.234 , page
- 143)'', ``_\b$_\bs_\ba_\bv_\be_\b__\bn_\ba_\bm_\be (section 7.4.245 , page 146)'', ``_\b$_\bf_\bo_\br_\bc_\be_\b__\bn_\ba_\bm_\be (section
- 7.4.71 , page 103)'' and ``_\bf_\bc_\bc_\b-_\bh_\bo_\bo_\bk (section 3.18 , page 36)''.
+ text/html; lynx -dump %s ; copiousoutput
- _\b7_\b._\b4_\b._\b3_\b6 _\bc_\br_\by_\bp_\bt_\b__\ba_\bu_\bt_\bo_\be_\bn_\bc_\br_\by_\bp_\bt
+ This will cause lynx to format the text/html output as text/plain
+ and Mutt-ng will use your standard pager to display the results.
- Type: boolean
+ needsterminal
- Default: no
+ Mutt-ng uses this flag when viewing attachments with auto_view, in
+ order to decide whether it should honor the setting of the
+ $wait_key variable or not. When an attachment is viewed using an
+ interactive program, and the corresponding mailcap entry has a
+ needsterminal flag, Mutt-ng will use $wait_key and the exit
+ statusof the program to decide if it will ask you to press a key
+ after the external program has exited. In all other situations it
+ will not prompt you for a key.
- Setting this variable will cause Mutt-ng to always attempt to PGP encrypt out-
- going messages. This is probably only useful in connection to the _\bs_\be_\bn_\bd_\b-_\bh_\bo_\bo_\bk
- command. It can be overridden by use of the _\bp_\bg_\bp_\b-_\bm_\be_\bn_\bu, when encryption is not
- required or signing is requested as well. If ``_\b$_\bs_\bm_\bi_\bm_\be_\b__\bi_\bs_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt (section
- 7.4.281 , page 154)'' is _\bs_\be_\bt, then OpenSSL is used instead to create S/MIME
- messages and settings can be overridden by use of the _\bs_\bm_\bi_\bm_\be_\b-_\bm_\be_\bn_\bu. (Crypto
- only)
+ compose=<command>
- _\b7_\b._\b4_\b._\b3_\b7 _\bc_\br_\by_\bp_\bt_\b__\ba_\bu_\bt_\bo_\bp_\bg_\bp
+ This flag specifies the command to use to create a new attachment
+ of a specific MIME type. Mutt-ng supports this from the compose
+ menu.
- Type: boolean
+ composetyped=<command>
- Default: yes
+ This flag specifies the command to use to create a new attachment
+ of a specific MIME type. This command differs from the compose
+ command in that mutt will expect standard MIME headers on the
+ data. This can be used to specify parameters, filename,
+ description, etc. for a new attachment. Mutt-ng supports this from
+ the compose menu.
- This variable controls whether or not Mutt-ng may automatically enable PGP
- encryption/signing for messages. See also ``_\b$_\bc_\br_\by_\bp_\bt_\b__\ba_\bu_\bt_\bo_\be_\bn_\bc_\br_\by_\bp_\bt (section
- 7.4.36 , page 95)'', ``_\b$_\bc_\br_\by_\bp_\bt_\b__\br_\be_\bp_\bl_\by_\be_\bn_\bc_\br_\by_\bp_\bt (section 7.4.40 , page 96)'',
- ``_\b$_\bc_\br_\by_\bp_\bt_\b__\ba_\bu_\bt_\bo_\bs_\bi_\bg_\bn (section 7.4.38 , page 95)'', ``_\b$_\bc_\br_\by_\bp_\bt_\b__\br_\be_\bp_\bl_\by_\bs_\bi_\bg_\bn (section
- 7.4.41 , page 96)'' and ``_\b$_\bs_\bm_\bi_\bm_\be_\b__\bi_\bs_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt (section 7.4.281 , page 154)''.
+ print=<command>
- _\b7_\b._\b4_\b._\b3_\b8 _\bc_\br_\by_\bp_\bt_\b__\ba_\bu_\bt_\bo_\bs_\bi_\bg_\bn
+ This flag specifies the command to use to print a specific MIME
+ type. Mutt-ng supports this from the attachment and compose menus.
- Type: boolean
+ edit=<command>
- Default: no
+ This flag specifies the command to use to edit a specific MIME
+ type. Mutt-ng supports this from the compose menu, and also uses
+ it to compose new attachments. Mutt-ng will default to the defined
+ editor for text attachments.
- Setting this variable will cause Mutt-ng to always attempt to cryptographically
- sign outgoing messages. This can be overridden by use of the _\bp_\bg_\bp_\b-_\bm_\be_\bn_\bu, when
+ nametemplate=<template>
- The Mutt Next Generation E-Mail Client 96
+ 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:
- signing is not required or encryption is requested as well. If
- ``_\b$_\bs_\bm_\bi_\bm_\be_\b__\bi_\bs_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt (section 7.4.281 , page 154)'' is _\bs_\be_\bt, then OpenSSL is
- used instead to create S/MIME messages and settings can be overridden by use of
- the _\bs_\bm_\bi_\bm_\be_\b-_\bm_\be_\bn_\bu. (Crypto only)
+ text/html; lynx %s; nametemplate=%s.html
- _\b7_\b._\b4_\b._\b3_\b9 _\bc_\br_\by_\bp_\bt_\b__\ba_\bu_\bt_\bo_\bs_\bm_\bi_\bm_\be
+ test=<command>
- Type: boolean
+ 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-ng uses this entry. If
+ the command returns non-zero, then the test failed, and Mutt-ng
+ continues searching for the right entry. Note:the content-type
+ must match before Mutt-ng performs the test. For example:
- Default: yes
+ text/html; netscape -remote 'openURL(%s)' ; test=RunningX
+ text/html; lynx %s
- This variable controls whether or not Mutt-ng may automatically enable S/MIME
- encryption/signing for messages. See also ``_\b$_\bc_\br_\by_\bp_\bt_\b__\ba_\bu_\bt_\bo_\be_\bn_\bc_\br_\by_\bp_\bt (section
- 7.4.36 , page 95)'', ``_\b$_\bc_\br_\by_\bp_\bt_\b__\br_\be_\bp_\bl_\by_\be_\bn_\bc_\br_\by_\bp_\bt (section 7.4.40 , page 96)'',
- ``_\b$_\bc_\br_\by_\bp_\bt_\b__\ba_\bu_\bt_\bo_\bs_\bi_\bg_\bn (section 7.4.38 , page 95)'', ``_\b$_\bc_\br_\by_\bp_\bt_\b__\br_\be_\bp_\bl_\by_\bs_\bi_\bg_\bn (section
- 7.4.41 , page 96)'' and ``_\b$_\bs_\bm_\bi_\bm_\be_\b__\bi_\bs_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt (section 7.4.281 , page 154)''.
+ In this example, Mutt-ng 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-ng will call netscape to
+ display the text/html object. If RunningX doesn't return 0, then
+ Mutt-ng will go on to the next entry and use lynx to display the
+ text/html object.
- _\b7_\b._\b4_\b._\b4_\b0 _\bc_\br_\by_\bp_\bt_\b__\br_\be_\bp_\bl_\by_\be_\bn_\bc_\br_\by_\bp_\bt
+ 3.3.2. Search Order
- Type: boolean
+ When searching for an entry in the mailcap file, Mutt-ng 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-ng will search for an entry with the print command:
- Default: yes
+ image/*; xv %s
+ image/gif; ; print= anytopnm %s | pnmtops | lpr; \
+ nametemplate=%s.gif
- If _\bs_\be_\bt, automatically PGP or OpenSSL encrypt replies to messages which are
- encrypted. (Crypto only)
+ Mutt-ng will skip the image/* entry and use the image/gif entry with the
+ print command.
- _\b7_\b._\b4_\b._\b4_\b1 _\bc_\br_\by_\bp_\bt_\b__\br_\be_\bp_\bl_\by_\bs_\bi_\bg_\bn
+ In addition, you can use this with auto_view 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.
- Type: boolean
+ text/html; netscape -remote 'openURL(%s)' ; test=RunningX
+ text/html; lynx %s; nametemplate=%s.html
+ text/html; lynx -dump %s; nametemplate=%s.html; copiousoutput
- Default: no
+ For auto_view, Mutt-ng 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 program
+ returns non-zero, Mutt-ng will use the second entry for interactive
+ viewing.
- If _\bs_\be_\bt, automatically PGP or OpenSSL sign replies to messages which are signed.
+ 3.3.3. Command Expansion
- N\bNo\bot\bte\be:\b: this does not work on messages that are encrypted a\ban\bnd\bd signed! (Crypto
- only)
+ 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-ng. The keywords Mutt-ng expands are:
- _\b7_\b._\b4_\b._\b4_\b2 _\bc_\br_\by_\bp_\bt_\b__\br_\be_\bp_\bl_\by_\bs_\bi_\bg_\bn_\be_\bn_\bc_\br_\by_\bp_\bt_\be_\bd
+ %s
- Type: boolean
+ 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-ng to not pass the body of the
+ message to the view/print/edit program on stdin.
- Default: no
+ %t
- If _\bs_\be_\bt, automatically PGP or OpenSSL sign replies to messages which are
- encrypted. This makes sense in combination with ``_\b$_\bc_\br_\by_\bp_\bt_\b__\br_\be_\bp_\bl_\by_\be_\bn_\bc_\br_\by_\bp_\bt (section
- 7.4.40 , page 96)'', because it allows you to sign all messages which are
- automatically encrypted. This works around the problem noted in
- ``_\b$_\bc_\br_\by_\bp_\bt_\b__\br_\be_\bp_\bl_\by_\bs_\bi_\bg_\bn (section 7.4.41 , page 96)'', that Mutt-ng is not able to
- find out whether an encrypted message is also signed. (Crypto only)
+ Mutt-ng 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.
- _\b7_\b._\b4_\b._\b4_\b3 _\bc_\br_\by_\bp_\bt_\b__\bt_\bi_\bm_\be_\bs_\bt_\ba_\bm_\bp
+ %{<parameter>}
- Type: boolean
+ Mutt-ng 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:
- The Mutt Next Generation E-Mail Client 97
+ Content-Type: text/plain; charset=iso-8859-1
- Default: yes
+ then Mutt-ng will expand %{charset} to iso-8859-1. The default
+ metamail mailcap file uses this feature to test the charset to
+ spawn an xterm using the right charset to view the message.
- If _\bs_\be_\bt, Mutt-ng will include a time stamp in the lines surrounding PGP or
- S/MIME output, so spoofing such lines is more difficult. If you are using col-
- ors to mark these lines, and rely on these, you may _\bu_\bn_\bs_\be_\bt this setting.
- (Crypto only)
+ \%
- _\b7_\b._\b4_\b._\b4_\b4 _\bc_\br_\by_\bp_\bt_\b__\bu_\bs_\be_\b__\bg_\bp_\bg_\bm_\be
+ This will be replaced by a %
- Type: boolean
+ Mutt-ng does not currently support the %F and %n keywords specified in RfC
+ 1524. The main purpose of these parameters is for multipart messages,
+ which is handled internally by Mutt-ng.
- Default: no
+ 3.4. Example mailcap files
- This variable controls the use the GPGME enabled crypto backends. If it is _\bs_\be_\bt
- and Mutt-ng was build with gpgme support, the gpgme code for S/MIME and PGP
- will be used instead of the classic code.
+ This mailcap file is fairly simple and standard:
- N\bNo\bot\bte\be: You need to use this option in your .muttngrc configuration file as it
- won't have any effect when used interactively.
+ >
+ # I'm always running X :)
+ video/*; xanim %s > /dev/null
+ image/*; xv %s > /dev/null
- _\b7_\b._\b4_\b._\b4_\b5 _\bc_\br_\by_\bp_\bt_\b__\bv_\be_\br_\bi_\bf_\by_\b__\bs_\bi_\bg
+ # I'm always running netscape (if my computer had more memory, maybe)
+ text/html; netscape -remote 'openURL(%s)'
- Type: quadoption
+ This mailcap file shows quite a number of examples:
- Default: yes
+ # 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
- If ``_\by_\be_\bs'', always attempt to verify PGP or S/MIME signatures. If ``_\ba_\bs_\bk'', ask
- whether or not to verify the signature. If ``_\bn_\bo'', never attempt to verify
- cryptographic signatures. (Crypto only)
+ # 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
- _\b7_\b._\b4_\b._\b4_\b6 _\bd_\ba_\bt_\be_\b__\bf_\bo_\br_\bm_\ba_\bt
+ # Else use lynx to view it as text
+ text/html; lynx %s
- Type: string
+ # This version would convert the text/html to text/plain
+ text/html; lynx -dump %s; copiousoutput
- Default: '!%a, %b %d, %Y at %I:%M:%S%p %Z'
+ # I use enscript to print text in two columns to a page
+ text/*; more %s; print=enscript -2Gr %s
- This variable controls the format of the date printed by the ``%d'' sequence in
- ``_\b$_\bi_\bn_\bd_\be_\bx_\b__\bf_\bo_\br_\bm_\ba_\bt (section 7.4.113 , page 113)''. This is passed to strftime(3)
- to process the date.
+ # Netscape adds a flag to tell itself to view jpegs internally
+ image/jpeg;xv %s; x-mozilla-flags=internal
- 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
- ``_\b$_\bl_\bo_\bc_\ba_\bl_\be (section 7.4.117 , page 116)''. 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 _\bC locale (that is in US English).
+ # 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
- _\b7_\b._\b4_\b._\b4_\b7 _\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bh_\bo_\bo_\bk
+ # Convert images to text using the netpbm tools
+ image/*; (anytopnm %s | pnmscale -xysize 80 46 | ppmtopgm | \
+ pgmtopbm | pbmtoascii -1x2 ) 2>&1 ; copiousoutput
- Type: string
+ # Send excel spreadsheets to my NT box
+ application/ms-excel; open.pl %s
- Default: '~f %s !~P | (~P ~C %s)'
+4. MIME Autoview
- This variable controls how send-hooks, message-hooks, save-hooks, and fcc-hooks
- will be interpreted if they are specified with only a simple regexp, instead of
+ Usage: auto_viewmime-type [mime-type ...]
- The Mutt Next Generation E-Mail Client 98
+ Usage: unauto_viewmime-type [mime-type ...]
- a matching pattern. The hooks are expanded when they are declared, so a hook
- will be interpreted according to the value of this variable at the time the
- hook is declared. The default value matches if the message is either from a
- user matching the regular expression given, or if it is from you (if the from
- address matches ``alternates'') and is to or cc'ed to a user matching the given
- regular expression.
+ In addition to explicitly telling Mutt-ng to view an attachment with
+ theMIME viewer defined in the mailcap file, Mutt-ng has support for
+ automatically viewing MIME attachments while in the pager.
- _\b7_\b._\b4_\b._\b4_\b8 _\bd_\be_\bl_\be_\bt_\be
+ 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.
- Type: quadoption
+ You then use the auto_view muttrc command to list the content-types that
+ you wish to view automatically.
- Default: ask-yes
+ For instance, if you set auto_view to:
- Controls whether or not messages are really deleted when closing or synchroniz-
- ing a mailbox. If set to _\by_\be_\bs, messages marked for deleting will automatically
- be purged without prompting. If set to _\bn_\bo, messages marked for deletion will
- be kept in the mailbox.
+ auto_view text/html application/x-gunzip application/postscript
+ image/gif application/x-tar-gz
- _\b7_\b._\b4_\b._\b4_\b9 _\bd_\be_\bl_\be_\bt_\be_\b__\bs_\bp_\ba_\bc_\be
+ Mutt-ng could use the following mailcap entries to automatically view
+ attachments of these types.
- Type: boolean
+ text/html; lynx -dump %s; copiousoutput; nametemplate=%s.html
+ 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
- Default: no
+ ``unauto_view'' can be used to remove previous entries from the autoview
+ list. This can be used with message-hook to autoview messages based on
+ size, etc. ``unauto_view *'' will remove all previous entries.
- When sending messages with format=flowed by _\bs_\be_\bt_\bt_\bi_\bn_\bg the $text_flowed variable,
- this variable specifies whether to also set the DelSp parameter to yes. If this
- is _\bu_\bn_\bs_\be_\bt, no additional parameter will be send as a value of no already is the
- default behavior.
+5. MIME Multipart/Alternative
- N\bNo\bot\bte\be:\b: this variable only has an effect on _\bo_\bu_\bt_\bg_\bo_\bi_\bn_\bg messages (if $text_flowed is
- _\bs_\be_\bt) but not on incomming.
+ Usage: alternative_ordermime-type [mime-type ...]
- _\b7_\b._\b4_\b._\b5_\b0 _\bd_\be_\bl_\be_\bt_\be_\b__\bu_\bn_\bt_\ba_\bg
+ Usage: unalternative_ordermime-type [mime-type ...]
- Type: boolean
+ Mutt-ng has some heuristics for determining which attachment of a
+ multipart/alternative type to display. First, mutt will check the
+ alternative_order list to determine if one of the available typesis
+ preferred. The alternative_order list consists of a number of MIME types
+ in order, including support for implicit and explicit wildcards, for
+ example:
+
+ alternative_order text/enriched text/plain text
+ application/postscript image/*
- Default: yes
+ Next, mutt will check if any of the types have a defined auto_view, and
+ use that. Failing that, Mutt-ng will look for any text type. As a last
+ attempt, mutt willlook for any type it knows how to handle.
- If this option is _\bs_\be_\bt, Mutt-ng will untag messages when marking them for dele-
- tion. This applies when you either explicitly delete a message, or when you
- save it to another folder.
+ To remove a MIME type from the alternative_order list, use the
+ unalternative_order command.
- _\b7_\b._\b4_\b._\b5_\b1 _\bd_\bi_\bg_\be_\bs_\bt_\b__\bc_\bo_\bl_\bl_\ba_\bp_\bs_\be
+6. Attachment Searching and Counting
- Type: boolean
+ If you ever lose track of attachments in your mailboxes, Mutt's
+ attachment-counting and -searching support might be for you. You can make
+ your message index display the number of qualifying attachments in each
+ message, or search for messages by attachment count. You also can
+ configure what kinds of attachments qualify for this feature with the
+ attachments and unattachments commands.
+
+ The syntax is:
+
+ Usage: attachments( {+|-}disposition mime-type | ? )
+
+ Usage: unattachments{+|-}disposition mime-type
+
+ Disposition is the attachment's Content-disposition type -- either
+ "inline" or "attachment". You can abbreviate this to I or A.
- Default: yes
+ Disposition is prefixed by either a + symbolor a - symbol. If it's a +,
+ you're saying that you want to allow this disposition and MIME type to
+ qualify. If it's a -, you're saying that this disposition and MIME type is
+ an exception to previous + rules. There are examples below of how this is
+ useful.
- If this option is _\bs_\be_\bt, Mutt-ng's received-attachments menu will not show the
- subparts of individual messages in a multipart/digest. To see these subparts,
- press 'v' on that menu.
+ Mime-type is, unsurprisingly, the MIME type of the attachment you want to
+ affect. A MIME type is always of the format "major/minor", where "major"
+ describes the broad category of document you're looking at, and "minor"
+ describes the specific type within that category. The major part of
+ mim-type must be literal text (or the special token "*"), but the minor
+ part may be a regular expression. (Therefore, "*/.*" matches any MIME
+ type.)
- _\b7_\b._\b4_\b._\b5_\b2 _\bd_\bi_\bs_\bp_\bl_\ba_\by_\b__\bf_\bi_\bl_\bt_\be_\br
+ The MIME types you give to the attachments directive are a kind of
+ pattern. When you use the attachments directive, the patterns you specify
+ are added to a list. When you use unattachments, the pattern is removed
+ from the list. The patterns are not expanded and matched to specific MIME
+ types at this time -- they're just text in a list. They're only matched
+ when actually evaluating a message.
- The Mutt Next Generation E-Mail Client 99
+ Some examples might help to illustrate. The examples that are not
+ commented out define the default configuration of the lists.
- Type: path
+ ## Removing a pattern from a list removes that pattern literally. It
+ ## does not remove any type matching the pattern.
+ ##
+ ## attachments +A */.*
+ ## attachments +A image/jpeg
+ ## unattachments +A */.*
+ ##
+ ## This leaves "attached" image/jpeg files on the allowed attachments
+ ## list. It does not remove all items, as you might expect, because the
+ ## second */.* is not a matching expression at this time.
+ ##
+ ## Remember: "unattachments" only undoes what "attachments" has done!
+ ## It does not trigger any matching on actual messages.
- Default: ''
- When _\bs_\be_\bt, specifies a command used to filter messages. When a message is
- viewed it is passed as standard input to _\b$_\bd_\bi_\bs_\bp_\bl_\ba_\by_\b__\bf_\bi_\bl_\bt_\be_\br (section 7.4.52 ,
- page 98), and the filtered message is read from the standard output.
+ ## Qualify any MIME part with an "attachment" disposition, EXCEPT for
+ ## text/x-vcard and application/pgp parts. (PGP parts are already known
+ ## to mutt, and can be searched for with ~g, ~G, and ~k.)
+ ##
+ ## I've added x-pkcs7 to this, since it functions (for S/MIME)
+ ## analogously to PGP signature attachments. S/MIME isn't supported
+ ## in a stock mutt build, but we can still treat it specially here.
+ ##
+ attachments +A */.*
+ attachments -A text/x-vcard application/pgp.*
+ attachments -A application/x-pkcs7-.*
- _\b7_\b._\b4_\b._\b5_\b3 _\bd_\bo_\bt_\bl_\bo_\bc_\bk_\b__\bp_\br_\bo_\bg_\br_\ba_\bm
+ ## Discount all MIME parts with an "inline" disposition, unless they're
+ ## text/plain. (Why inline a text/plain part unless it's external to the
+ ## message flow?)
+ ##
+ attachments +I text/plain
- Type: path
+ ## These two lines make Mutt qualify MIME containers. (So, for example,
+ ## a message/rfc822 forward will count as an attachment.) The first
+ ## line is unnecessary if you already have "attach-allow */.*", of
+ ## course. These are off by default! The MIME elements contained
+ ## within a message/* or multipart/* are still examined, even if the
+ ## containers themseves don't qualify.
+ ##
+ #attachments +A message/.* multipart/.*
+ #attachments +I message/.* multipart/.*
+
+ ## You probably don't really care to know about deleted attachments.
+ attachments -A message/external-body
+ attachments -I message/external-body
+
+ "attachments ?" will list your current settings in Muttrc format, so that
+ it can be pasted elsewhere.
+
+7. MIME Lookup
+
+ Usage: mime_lookupmime-type [mime-type ...]
- Default: '/opt/freebsd4/mutt-ng/bin/muttng_dotlock'
+ Usage: unmime_lookupmime-type [mime-type ...]
- Availability: Standalone and Dotlock
+ Mutt-ng's mime_lookup list specifies a list of mime-types that should not
+ be treated according to their mailcap entry. This option is designed
+ todeal with binary types such as application/octet-stream. When an
+ attachment's mime-type is listed in mime_lookup, then the extension of the
+ filename will be compared to the list of extensions in the mime.types
+ file. The mime-type associated with this extension will then be used to
+ process the attachment according to the rules in the mailcap file and
+ according to any other configuration options (such as auto_view)
+ specified. Common usage would be:
- Contains the path of the muttng_dotlock(1) binary to be used by Mutt-ng.
+ mime_lookup application/octet-stream application/X-Lotus-Manuscript
- _\b7_\b._\b4_\b._\b5_\b4 _\bd_\bs_\bn_\b__\bn_\bo_\bt_\bi_\bf_\by
+ In addition, the unmime_lookup command may be used to disable this feature
+ for any particular mime-type if it had been set, for example, in a global
+ muttrc.
- Type: string
+Chapter 6. Security Considerations
- Default: ''
+ Table of Contents
- N\bNo\bot\bte\be:\b: you should not enable this unless you are using Sendmail 8.8.x or greater
- or in connection with the SMTP support via libESMTP.
+ 1. Passwords
- 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 follow-
- ing: _\bn_\be_\bv_\be_\br, to never request notification, _\bf_\ba_\bi_\bl_\bu_\br_\be, to request notification on
- transmission failure, _\bd_\be_\bl_\ba_\by, to be notified of message delays, _\bs_\bu_\bc_\bc_\be_\bs_\bs, to be
- notified of successful transmission.
+ 2. Temporary Files
- Example: set dsn_notify='failure,delay'
+ 3. Information Leaks
- _\b7_\b._\b4_\b._\b5_\b5 _\bd_\bs_\bn_\b__\br_\be_\bt_\bu_\br_\bn
+ 3.1. Message-ID: headers
- Type: string
+ 3.2. mailto:-style links
- Default: ''
+ 4. External applications
- N\bNo\bot\bte\be:\b: you should not enable this unless you are using Sendmail 8.8.x or greater
- or in connection with the SMTP support via libESMTP.
+ 4.1. mailcap
- This variable controls how much of your message is returned in DSN messages.
- It may be set to either _\bh_\bd_\br_\bs to return just the message header, or _\bf_\bu_\bl_\bl to
- return the full message.
+ 4.2. Other
- Example: set dsn_return=hdrs
+ First of all, mutt-ng contains no security holes included by intention but
+ may contain unknown security holes. As a consequence, please run mutt-ng
+ only with as few permissions as possible.
- _\b7_\b._\b4_\b._\b5_\b6 _\bd_\bu_\bp_\bl_\bi_\bc_\ba_\bt_\be_\b__\bt_\bh_\br_\be_\ba_\bd_\bs
+ Please do not run mutt-ng as the super user.
- Type: boolean
+ When configuring mutt-ng, there're some points to note about secure
+ setups.
- The Mutt Next Generation E-Mail Client 100
+ In practice, mutt-ng can be easily made as vulnerable as even the most
+ insecure mail user agents (in their default configuration) just by
+ changing mutt-ng's configuration files: it then can execute arbitrary
+ programs and scripts attached to messages, send out private data on its
+ own, etc. Although this is not believed to the common type of setup,
+ please read this chapter carefully.
- Default: yes
+1. Passwords
- This variable controls whether Mutt-ng, when sorting by threads, threads mes-
- sages with the same Message-Id: header field together. If it is _\bs_\be_\bt, it will
- indicate that it thinks they are duplicates of each other with an equals sign
- in the thread diagram.
+ Although mutt-ng can be told the various passwords for accounts, please
+ never store passwords in configuration files. Besides the fact that the
+ system's operator can always read them, you could forget to replace the
+ actual password with asterisks when reporting a bug or asking for help
+ via, for example, a mailing list so that your mail including your password
+ could be archived by internet search engines, etc. Please never store
+ passwords on disk.
- _\b7_\b._\b4_\b._\b5_\b7 _\be_\bd_\bi_\bt_\b__\bh_\be_\ba_\bd_\be_\br_\bs
+2. Temporary Files
- Type: boolean
+ Mutt-ng uses many temporary files for viewing messages, verifying digital
+ signatures, etc. The $umask variable can be used to change the default
+ permissions of these files. Please only change it if you really know what
+ you are doing. Also, a different location for these files may be desired
+ which can be changed via the $tmpdir variable.
- Default: no
+3. Information Leaks
- This option allows you to edit the header of your outgoing messages along with
- the body of your message.
+ 3.1. Message-ID: headers
- _\b7_\b._\b4_\b._\b5_\b8 _\be_\bd_\bi_\bt_\bo_\br
+ In the default configuration, mutt-ng will leak some information to the
+ outside world when sending messages: the generation of Message-ID: headers
+ includes a step counter which is increased (and rotated) with every
+ message sent. If you'd like to hide this information probably telling
+ others how many mail you sent in which time, you at least need to remove
+ the %P expando from the default setting of the $msgid_format variable.
+ Please make sure that you really know how local parts of these Message-ID:
+ headers are composed.
- Type: path
+ 3.2. mailto:-style links
- Default: ''
+ As mutt-ng be can be set up to be the mail client to handle mailto: style
+ links in websites, there're security considerations, too. To keep the old
+ behavior by default, mutt-ng will be strict in interpreting them which
+ means that arbitrary header fields can be embedded in these links which
+ could override existing header fields or attach arbitrary files. This may
+ be problematic if the $edit_headers variable is unset, i.e. the user
+ doesn't want to see header fields while editing the message.
- This variable specifies which editor is used by Mutt-ng. It defaults to the
- value of the $VISUAL, or $EDITOR, environment variable, or to the string 'vi'
- if neither of those are set.
+ For example, following a link like
- _\b7_\b._\b4_\b._\b5_\b9 _\be_\bn_\bc_\bo_\bd_\be_\b__\bf_\br_\bo_\bm
+ mailto:joe@host?Attach=~/.gnupg/secring.gpg
- Type: boolean
+ will send out the user's private gnupg keyring to joe@host if the user
+ doesn't follow the information on screen carefully enough.
- Default: no
+ When unsetting the $strict_mailto variable, mutt-ng will
- When _\bs_\be_\bt, Mutt-ng will quoted-printable encode messages when they contain the
- string ``From '' (note the trailing space) in the beginning of a line. Useful
- to avoid the tampering certain mail delivery and transport agents tend to do
- with messages.
+ o be less strict when interpreting these links by prepending a X-Mailto-
+ string to all header fields embedded in such a link and
- N\bNo\bot\bte\be:\b: as mutt-ng currently violates RfC3676 defining format=flowed, it's
- <em/strongly/ advised to _\bs_\be_\bt this option although discouraged by the standard.
- Alternatively, you must take care of space-stuffing <tt/From / lines (with a
- trailing space) yourself.
+ o turn on the $edit_headers variable by force to let the user see all
+ the headers (because they still may leak information.)
- _\b7_\b._\b4_\b._\b6_\b0 _\be_\bn_\bt_\br_\bo_\bp_\by_\b__\bf_\bi_\bl_\be
+4. External applications
- Type: path
+ Mutt-ng in many places has to rely on external applications or for
+ convenience supports mechanisms involving external applications.
- Default: ''
+ 4.1. mailcap
- Availability: SSL
+ One of these is the mailcap mechanism as defined by RfC 1524. Mutt-ng can
+ be set up to automatically execute any given utility as listed in one of
+ the mailcap files (see the $mailcap_path variable for details.)
- The file which includes random data that is used to initialize SSL library
- functions.
+ These utilities may have a variety of security vulnerabilities, including
+ overwriting of arbitrary files, information leaks or other exploitable
+ bugs. These vulnerabilities may go unnoticed by the user, especially when
+ they are called automatically (and without interactive prompting) from the
+ mailcap file(s). When using mutt-ng's autoview mechanism in combination
+ with mailcap files, please be sure to...
- The Mutt Next Generation E-Mail Client 101
+ o manually select trustworth applications with a reasonable calling
+ sequence
- _\b7_\b._\b4_\b._\b6_\b1 _\be_\bn_\bv_\be_\bl_\bo_\bp_\be_\b__\bf_\br_\bo_\bm
+ o periodically check the contents of mailcap files, especially after
+ software installations or upgrades
- Type: boolean
+ o keep the software packages referenced in the mailcap file up to date
- Default: no
+ o leave the $mailcap_sanitize variable in its default state to restrict
+ mailcap expandos to a safe set of characters
- When _\bs_\be_\bt, Mutt-ng will try to derive the message's _\be_\bn_\bv_\be_\bl_\bo_\bp_\be sender from the
- ``From:'' header field. Note that this information is passed to the sendmail
- command using the ``-f' command line switch, so don't set this option if you
- are using that switch in _\b$_\bs_\be_\bn_\bd_\bm_\ba_\bi_\bl (section 7.4.251 , page 147) yourself, or
- if the sendmail on your machine doesn't support that command line switch.
+ 4.2. Other
- _\b7_\b._\b4_\b._\b6_\b2 _\be_\bs_\bc_\ba_\bp_\be
+ Besides the mailcap mechanism, mutt-ng uses a number of other external
+ utilities for operation.
- Type: string
+ The same security considerations apply for these as for tools involved via
+ mailcap (for example, mutt-ng is vulnerable to Denial of Service Attacks
+ with compressed folders support if the uncompressed mailbox is too large
+ for the disk it is saved to.)
- Default: '~'
+ As already noted, most of these problems are not built in but caused by
+ wrong configuration, so please check your configuration.
- Escape character to use for functions in the builtin editor.
+Chapter 7. Reference
- _\b7_\b._\b4_\b._\b6_\b3 _\bf_\ba_\bs_\bt_\b__\br_\be_\bp_\bl_\by
+ Table of Contents
- Type: boolean
+ 1. Command line options
- Default: no
+ 2. Patterns
- When _\bs_\be_\bt, the initial prompt for recipients and subject are skipped when reply-
- ing to messages, and the initial prompt for subject is skipped when forwarding
- messages.
+ 3. Configuration Commands
- N\bNo\bot\bte\be:\b: this variable has no effect when the ``_\b$_\ba_\bu_\bt_\bo_\be_\bd_\bi_\bt (section 7.4.19 , page
- 91)'' variable is _\bs_\be_\bt.
+ 4. Configuration variables
- _\b7_\b._\b4_\b._\b6_\b4 _\bf_\bc_\bc_\b__\ba_\bt_\bt_\ba_\bc_\bh
+ 5. Functions
- Type: boolean
+ 5.1. generic
- Default: yes
+ 5.2. index
- This variable controls whether or not attachments on outgoing messages are
- saved along with the main body of your message.
+ 5.3. pager
- _\b7_\b._\b4_\b._\b6_\b5 _\bf_\bc_\bc_\b__\bc_\bl_\be_\ba_\br
+ 5.4. alias
- Type: boolean
+ 5.5. query
- Default: no
+ 5.6. attach
- When this variable is _\bs_\be_\bt, FCCs will be stored unencrypted and unsigned, even
- when the actual message is encrypted and/or signed. (PGP only)
+ 5.7. compose
- _\b7_\b._\b4_\b._\b6_\b6 _\bf_\bi_\bl_\be_\b__\bc_\bh_\ba_\br_\bs_\be_\bt
+ 5.8. postpone
- Type: string
+ 5.9. browser
- The Mutt Next Generation E-Mail Client 102
+ 5.10. pgp
- Default: ''
+ 5.11. editor
- This variable is a colon-separated list of character encoding schemes for text
- file attatchments. If _\bu_\bn_\bs_\be_\bt, _\b$_\bc_\bh_\ba_\br_\bs_\be_\bt (section 7.4.26 , page 93) value will
- be used instead. For example, the following configuration would work for
- Japanese text handling:
+ 5.12. sidebar
- set file_charset='iso-2022-jp:euc-jp:shift_jis:utf-8'
+1. Command line options
- Note: ``iso-2022-*'' must be put at the head of the value as shown above if
- included.
+ Running mutt with no arguments will make Mutt-ng attempt to read your
+ spool mailbox. However, it is possible to read other mailboxes and to send
+ messages from the command line as well.
- _\b7_\b._\b4_\b._\b6_\b7 _\bf_\bo_\bl_\bd_\be_\br
+ Table 7.1. Reference: Command Line Options
- Type: path
+ Option Description
+ -A expand an alias
+ -a attach a file to a message
+ -b specify a blind carbon-copy (BCC) address
+ -c specify a carbon-copy (Cc) address
+ -e specify a config command to be run after initialization files are
+ read
+ -f specify a mailbox to load
+ -F specify an alternate file to read initialization commands
+ -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
+ -m specify a default mailbox type
+ -n do not read the system Muttngrc
+ -p recall a postponed message
+ -Q query a configuration variable
+ -R open mailbox in read-only mode
+ -s specify a subject (enclose in quotes if it contains spaces)
+ -t dump the value of all variables to stdout
+ -T dump the value of all changed variables to stdout
+ -v show version number and compile-time definitions
+ -x simulate the mailx(1) compose mode
+ -y show a menu containing the files specified by the mailboxes command
+ -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 muttrc ] ] -m type ] ] -f mailbox ]
+
+ To compose a new message
+
+ mutt ] -n ] ] -F muttrc ] ] -a file ] ] -c address ] ] -i filename ] ] -s
+ subject ] address ] address ... ]
+
+ Mutt-ng 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''.
+
+2. Patterns
+
+ Table 7.2. Reference: Patterns
+
+ Pattern Modifier Argument Description
+ ~A/=A all messages
+ ~b/=b EXPR messages which contain EXPR in the message
+ body
+ ~B/=B EXPR messages which contain EXPR in the whole
+ message
+ ~c/=c EXPR messages carbon-copied to EXPR
+ ~C/=C EXPR message is either to: or cc: EXPR
+ ~D/=D deleted messages
+ ~d/=d [MIN]-[MAX] messages with ``date-sent'' in a Date range
+ ~E/=E expired messages
+ ~e/=e EXPR message which contains EXPR in the ``Sender''
+ field
+ ~F/=F flagged messages
+ ~f/=f EXPR messages originating from EXPR
+ ~g/=g cryptographically signed messages
+ ~G/=G cryptographically encrypted messages
+ ~H/=H EXPR messages with a spam attribute matching EXPR
+ ~h/=h EXPR messages which contain EXPR in the message
+ header
+ ~k/=k message contains PGP key material
+ ~i/=i EXPR message which match ID in the ``Message-ID''
+ field
+ ~L/=L EXPR message is either originated or received by
+ EXPR
+ ~l/=l message is addressed to a known mailing list
+ ~m/=m [MIN]-[MAX] message in the range MIN to MAX *)
+ ~M/=M multipart messages
+ ~n/=n [MIN]-[MAX] messages with a score in the range MIN to MAX
+ *)
+ ~N/=N new messages
+ ~O/=O old messages
+ ~p/=p message is addressed to you (consults
+ alternates)
+ ~P/=P message is from you (consults alternates)
+ ~Q/=Q messages which have been replied to
+ ~R/=R read messages
+ ~r/=r [MIN]-[MAX] messages with ``date-received'' in a Date
+ range
+ ~S/=S superseded messages
+ ~s/=s EXPR messages having EXPR in the ``Subject''
+ field.
+ ~T/=T tagged messages
+ ~t/=t EXPR messages addressed to EXPR
+ ~U/=U unread messages
+ ~u/=u message is addressed to a subscribed mailing
+ list
+ ~v/=v message is part of a collapsed thread.
+ ~V/=V cryptographically verified messages
+ messages which contain EXPR in the
+ ~w/=w EXPR `Newsgroups' field (if compiled with NNTP
+ support)
+ ~x/=x EXPR messages which contain EXPR in the
+ `References' field
+ ~X/=X [MIN]-[MAX] messages with MIN to MAX attachments *)
+ ~y/=y EXPR messages which contain EXPR in the `X-Label'
+ field
+ ~z/=z [MIN]-[MAX] messages with a size in the range MIN to MAX
+ *)
+ ~=/== duplicated messages (see $duplicate_threads)
+ ~$/=$ unreferenced messages (requires threaded
+ view)
+ ``From'' contains realname and
+ ~*/=* (syntactically) valid address (excluded are
+ addresses matching against alternates or any
+ alias)
- Default: '~/Mail'
+ Where EXPR are regexp. Special attention has to be made when using regular
+ expressions inside of patterns. Specifically, Mutt-ng's parser for these
+ patterns will strip one level of backslash (\), which is normally used for
+ quoting. If it is your intention to use a backslash in the regular
+ expression, you will need to use two backslashes instead (\\).
- Specifies the default location of your mailboxes. A ``+'' or ``='' at the
- beginning of a pathname will be expanded to the value of this variable. Note
- that if you change this variable from the default value you need to make sure
- that the assignment occurs _\bb_\be_\bf_\bo_\br_\be you use ``+'' or ``='' for any other vari-
- ables since expansion takes place during the ``set'' command.
+ *) The forms <[MAX], >[MIN], [MIN]- and -[MAX] are allowed, too.
- _\b7_\b._\b4_\b._\b6_\b8 _\bf_\bo_\bl_\bd_\be_\br_\b__\bf_\bo_\br_\bm_\ba_\bt
+3. Configuration Commands
- Type: string
+ The following are the commands understood by mutt.
- Default: '%2C %t %N %F %2l %-8.8u %-8.8g %8s %d %f'
+ o account-hook pattern command
- This variable allows you to customize the file browser display to your personal
- taste. This string is similar to ``_\b$_\bi_\bn_\bd_\be_\bx_\b__\bf_\bo_\br_\bm_\ba_\bt (section 7.4.113 , page
- 113)'', but has its own set of printf(3)-like sequences:
+ o aliaskeyaddress [, address, ... ]
- %C
- current file number
+ o unalias [ * | key ... ]
- %d
- date/time folder was last modified
+ o alternatesregexp [ regexp ... ]
- %f
- filename
+ o unalternates [ * | regexp ... ]
- %F
- file permissions
+ o alternative_ordermimetype [ mimetype ... ]
- %g
- group name (or numeric gid, if missing)
+ o unalternative_ordermimetype [ mimetype ... ]
- %l
- number of hard links
+ o append-hook regexp command
- %N
- N if folder has new mail, blank otherwise
+ o auto_viewmimetype [ mimetype ... ]
- The Mutt Next Generation E-Mail Client 103
+ o unauto_viewmimetype [ mimetype ... ]
- %s
- size in bytes
+ o bind map key function
- %t
- * if the file is tagged, blank otherwise
+ o charset-hook alias charset
- %u
- owner name (or numeric uid, if missing)
+ o close-hook regexp command
- %>X
- right justify the rest of the string and pad with character 'X'
+ o colorobjectforegroundbackground [ regexp ]
- %|X
- pad to the end of the line with character 'X'
+ o uncolorindexpattern [ pattern ... ]
- _\b7_\b._\b4_\b._\b6_\b9 _\bf_\bo_\bl_\bl_\bo_\bw_\bu_\bp_\b__\bt_\bo
+ o execfunction [ function ... ]
- Type: boolean
+ o fcc-hook pattern mailbox
- Default: yes
+ o fcc-save-hook pattern mailbox
- Controls whether or not the Mail-Followup-To: header field is generated when
- sending mail. When _\bs_\be_\bt, Mutt-ng will generate this field when you are replying
- to a known mailing list, specified with the ``subscribe'' or ``_\bl_\bi_\bs_\bt_\bs (section
- 3.12 , page 33)'' commands or detected by common mailing list headers.
+ o folder-hook pattern command
- This field has two purposes. First, preventing you from receiving duplicate
- copies of replies to messages which you send to mailing lists. Second, ensuring
- that you do get a reply separately for any messages sent to known lists to
- which you are not subscribed. The header will contain only the list's address
- for subscribed lists, and both the list address and your own email address for
- unsubscribed lists. Without this header, a group reply to your message sent to
- a subscribed list will be sent to both the list and your address, resulting in
- two copies of the same email for you.
+ o hdr_orderheader [ header ... ]
- _\b7_\b._\b4_\b._\b7_\b0 _\bf_\bo_\br_\bc_\be_\b__\bb_\bu_\bf_\bf_\by_\b__\bc_\bh_\be_\bc_\bk
+ o unhdr_orderheader [ header ... ]
- Type: boolean
+ o charset-hook charset local-charset
- Default: no
+ o ignorepattern [ pattern ... ]
- When _\bs_\be_\bt, it causes Mutt-ng to check for new mail when the _\bb_\bu_\bf_\bf_\by_\b-_\bl_\bi_\bs_\bt command
- is invoked. When _\bu_\bn_\bs_\be_\bt, _\bb_\bu_\bf_\bf_\by_\b__\bl_\bi_\bs_\bt will just list all mailboxes which are
- already known to have new mail.
+ o unignorepattern [ pattern ... ]
- Also see the following variables: ``_\b$_\bt_\bi_\bm_\be_\bo_\bu_\bt (section 7.4.325 , page 166)'',
- ``_\b$_\bm_\ba_\bi_\bl_\b__\bc_\bh_\be_\bc_\bk (section 7.4.118 , page 116)'' and ``_\b$_\bi_\bm_\ba_\bp_\b__\bm_\ba_\bi_\bl_\b__\bc_\bh_\be_\bc_\bk (section
- 7.4.102 , page 110)''.
+ o listsregexp [ regexp ... ]
- _\b7_\b._\b4_\b._\b7_\b1 _\bf_\bo_\br_\bc_\be_\b__\bn_\ba_\bm_\be
+ o unlistsregexp [ regexp ... ]
- Type: boolean
+ o macromenukeysequence [ description ]
- Default: no
+ o mailboxesfilename [ filename ... ]
- The Mutt Next Generation E-Mail Client 104
+ o mbox-hook pattern mailbox
- This variable is similar to ``_\b$_\bs_\ba_\bv_\be_\b__\bn_\ba_\bm_\be (section 7.4.245 , page 146)'',
- except that Mutt-ng 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.
+ o message-hook pattern command
- Also see the ``_\b$_\br_\be_\bc_\bo_\br_\bd (section 7.4.234 , page 143)'' variable.
+ o mime_lookupmimetype [ mimetype ... ]
- _\b7_\b._\b4_\b._\b7_\b2 _\bf_\bo_\br_\bw_\ba_\br_\bd_\b__\bd_\be_\bc_\bo_\bd_\be
+ o unmime_lookupmimetype [ mimetype ... ]
- Type: boolean
+ o monoobject attribute [ regexp ]
- Default: yes
+ o unmonoindexpattern [ pattern ... ]
- Controls the decoding of complex MIME messages into text/plain when forwarding
- a message. The message header is also RFC2047 decoded. This variable is only
- used, if ``_\b$_\bm_\bi_\bm_\be_\b__\bf_\bo_\br_\bw_\ba_\br_\bd (section 7.4.140 , page 120)'' is _\bu_\bn_\bs_\be_\bt, otherwise
- ``_\b$_\bm_\bi_\bm_\be_\b__\bf_\bo_\br_\bw_\ba_\br_\bd_\b__\bd_\be_\bc_\bo_\bd_\be (section 7.4.141 , page 121)'' is used instead.
+ o my_hdr string
- _\b7_\b._\b4_\b._\b7_\b3 _\bf_\bo_\br_\bw_\ba_\br_\bd_\b__\bd_\be_\bc_\br_\by_\bp_\bt
+ o unmy_hdrfield [ field ... ]
- Type: boolean
+ o open-hook regexp command
- Default: yes
+ o crypt-hook pattern key-id
- Controls the handling of encrypted messages when forwarding a message. When
- _\bs_\be_\bt, the outer layer of encryption is stripped off. This variable is only used
- if ``_\b$_\bm_\bi_\bm_\be_\b__\bf_\bo_\br_\bw_\ba_\br_\bd (section 7.4.140 , page 120)'' is _\bs_\be_\bt and ``_\b$_\bm_\bi_\bm_\be_\b__\bf_\bo_\br_\b-
- _\bw_\ba_\br_\bd_\b__\bd_\be_\bc_\bo_\bd_\be (section 7.4.141 , page 121)'' is _\bu_\bn_\bs_\be_\bt. (PGP only)
+ o push string
- _\b7_\b._\b4_\b._\b7_\b4 _\bf_\bo_\br_\bw_\ba_\br_\bd_\b__\be_\bd_\bi_\bt
+ o resetvariable [ variable ... ]
- Type: quadoption
+ o save-hook regexp filename
- Default: yes
+ o score pattern value
- This quadoption controls whether or not the user is automatically placed in the
- editor when forwarding messages. For those who always want to forward with no
- modification, use a setting of _\bn_\bo.
+ o unscorepattern [ pattern ... ]
- _\b7_\b._\b4_\b._\b7_\b5 _\bf_\bo_\br_\bw_\ba_\br_\bd_\b__\bf_\bo_\br_\bm_\ba_\bt
+ o send-hook regexp command
- Type: string
+ o reply-hook regexp command
- Default: '[%a: %s]'
+ o set [no|inv]variable[ =value ] [ variable ... ]
- This variable controls the default subject when forwarding a message. It uses
- the same format sequences as the ``_\b$_\bi_\bn_\bd_\be_\bx_\b__\bf_\bo_\br_\bm_\ba_\bt (section 7.4.113 , page
- 113)'' variable.
+ o unsetvariable [ variable ... ]
- _\b7_\b._\b4_\b._\b7_\b6 _\bf_\bo_\br_\bw_\ba_\br_\bd_\b__\bq_\bu_\bo_\bt_\be
+ o source filename
- Type: boolean
+ o spam pattern format
- Default: no
+ o nospam pattern
- The Mutt Next Generation E-Mail Client 105
+ o subscriberegexp [ regexp ... ]
- When _\bs_\be_\bt forwarded messages included in the main body of the message (when
- ``_\b$_\bm_\bi_\bm_\be_\b__\bf_\bo_\br_\bw_\ba_\br_\bd (section 7.4.140 , page 120)'' is _\bu_\bn_\bs_\be_\bt) will be quoted using
- ``_\b$_\bi_\bn_\bd_\be_\bn_\bt_\b__\bs_\bt_\br_\bi_\bn_\bg (section 7.4.112 , page 113)''.
+ o unsubscriberegexp [ regexp ... ]
- _\b7_\b._\b4_\b._\b7_\b7 _\bf_\br_\bo_\bm
+ o togglevariable [ variable ... ]
- Type: e-mail address
+ o unhook hook-type
- Default: ''
+4. Configuration variables
- This variable contains a default from address. It can be overridden using
- my_hdr (including from send-hooks) and ``_\b$_\br_\be_\bv_\be_\br_\bs_\be_\b__\bn_\ba_\bm_\be (section 7.4.240 , page
- 145)''. This variable is ignored if ``_\b$_\bu_\bs_\be_\b__\bf_\br_\bo_\bm (section 7.4.334 , page
- 168)'' is unset.
+ The following list contains all variables which, in the process of
+ providing more consistency, have been renamed and are partially even
+ removed already. The left column contains the old synonym variables, the
+ right column the full/new name:
- E.g. you can use send-hook Mutt-ng-devel@lists.berlios.de 'my_hdr From: Foo Bar
- <foo@bar.fb>' when replying to the mutt-ng developer's mailing list and Mutt-ng
- takes this email address.
+ Table 7.3. Reference: Obsolete Variables
- Defaults to the contents of the environment variable $EMAIL.
+ Old Name New Name
+ edit_hdrs $edit_headers
+ forw_decode $forward_decode
+ forw_format $forward_format
+ forw_quote $forward_quote
+ hdr_format $index_format
+ indent_str $indent_string
+ mime_fwd $mime_forward
+ msg_format $message_format
+ pgp_autosign $crypt_autosign
+ pgp_autoencrypt $crypt_autoencrypt
+ pgp_replyencrypt $crypt_replyencrypt
+ pgp_replysign $crypt_replysign
+ pgp_replysignencrypted $crypt_replysignencrypted
+ pgp_verify_sig $crypt_verify_sig
+ pgp_create_traditional $pgp_autoinline
+ pgp_auto_traditional $pgp_replyinline
+ forw_decrypt $forward_decrypt
+ smime_sign_as $smime_default_key
+ post_indent_str $post_indent_string
+ print_cmd $print_command
+ shorten_hierarchy $sidebar_shorten_hierarchy
+ ask_followup_to $nntp_ask_followup_to
+ ask_x_comment_to $nntp_ask_x_comment_to
+ catchup_newsgroup $nntp_catchup
+ followup_to_poster $nntp_followup_to_poster
+ group_index_format $nntp_group_index_format
+ inews $nntp_inews
+ mime_subject $nntp_mime_subject
+ news_cache_dir $nntp_cache_dir
+ news_server $nntp_host
+ newsrc $nntp_newsrc
+ nntp_poll $nntp_mail_check
+ pop_checkinterval $pop_mail_check
+ post_moderated $nntp_post_moderated
+ save_unsubscribed $nntp_save_unsubscribed
+ show_new_news $nntp_show_new_news
+ show_only_unread $nntp_show_only_unread
+ x_comment_to $nntp_x_comment_to
+ smtp_auth_username $smtp_user
+ smtp_auth_password $smtp_pass
+ user_agent $agent_string
- _\b7_\b._\b4_\b._\b7_\b8 _\bg_\be_\bc_\bo_\bs_\b__\bm_\ba_\bs_\bk
+ The contrib subdirectory contains a script named update-config.pl which
+ eases migration.
- Type: regular expression
+ A complete list of current variables follows.
- Default: '^[^,]*'
+1. $abort_noattach
- A regular expression used by Mutt-ng to parse the GECOS field of a password
- entry when expanding the alias. By default the regular expression is set to
- ``^[^,]*'' which will return the string up to the first ``,'' encountered. If
- the GECOS field contains a string like 'lastname, firstname' then you should
- do: set gecos_mask='.*'.
+ Type: quadoption
- This can be useful if you see the following behavior: you address a e-mail to
- user ID stevef whose full name is Steve Franklin. If Mutt-ng expands stevef to
- ``Franklin'' stevef@foo.bar then you should set the gecos_mask to a regular
- expression that will match the whole name so Mutt-ng will expand ``Franklin''
- to ``Franklin, Steve''.
+ Default: no
- _\b7_\b._\b4_\b._\b7_\b9 _\bh_\bd_\br_\bs
+ This variable specifies whether to abort sending if no attachment was made
+ but the content references them, i.e. the content matches the regular
+ expression given in $attach_remind_regexp. If a match was found and this
+ variable is set to yes, message sending will be aborted but the mail will
+ be send nevertheless if set to no.
- Type: boolean
+ This variable and $attach_remind_regexp are intended to remind the user to
+ attach files if the message's text references them.
- Default: yes
+ See also the $attach_remind_regexp variable.
- When _\bu_\bn_\bs_\be_\bt, the header fields normally added by the ``_\bm_\by_\b__\bh_\bd_\br (section 3.15 ,
- page 35)'' command are not created. This variable _\bm_\bu_\bs_\bt be _\bu_\bn_\bs_\be_\bt before compos-
- ing a new message or replying in order to take effect. If _\bs_\be_\bt, the user
- defined header fields are added to every new message.
+2. $abort_nosubject
- _\b7_\b._\b4_\b._\b8_\b0 _\bh_\be_\ba_\bd_\be_\br
+ Type: quadoption
- Type: boolean
+ Default: ask-yes
- The Mutt Next Generation E-Mail Client 106
+ If set to yes, when composing messages and no subject is given at the
+ subject prompt, composition will be aborted. If set to no, composing
+ messages with no subject given at the subject prompt will never be
+ aborted.
- Default: no
+3. $abort_unmodified
- When _\bs_\be_\bt, this variable causes Mutt-ng to include the header of the message you
- are replying to into the edit buffer. The ``_\b$_\bw_\be_\be_\bd (section 7.4.340 , page
- 170)'' setting applies.
+ Type: quadoption
- _\b7_\b._\b4_\b._\b8_\b1 _\bh_\be_\ba_\bd_\be_\br_\b__\bc_\ba_\bc_\bh_\be
+ Default: yes
- Type: path
+ If set to yes, composition will automatically abort after editing the
+ message body if no changes are made to the file (this check only happens
+ after the first edit of the file). When set to no, composition will never
+ be aborted.
- Default: ''
+4. $agent_string
- Availability: Header Cache
+ Type: boolean
- The _\b$_\bh_\be_\ba_\bd_\be_\br_\b__\bc_\ba_\bc_\bh_\be (section 7.4.81 , page 106) variable points to the header
- cache database.
+ Default: yes
- If _\b$_\bh_\be_\ba_\bd_\be_\br_\b__\bc_\ba_\bc_\bh_\be (section 7.4.81 , page 106) points to a directory it will
- contain a header cache database per folder. If _\b$_\bh_\be_\ba_\bd_\be_\br_\b__\bc_\ba_\bc_\bh_\be (section
- 7.4.81 , page 106) points to a file that file will be a single global header
- cache. By default it is _\bu_\bn_\bs_\be_\bt so no header caching will be used.
+ When set, Mutt-ng will add a ``User-Agent:'' header to outgoing messages,
+ indicating which version of Mutt-ng was used for composing them.
- _\b7_\b._\b4_\b._\b8_\b2 _\bh_\be_\ba_\bd_\be_\br_\b__\bc_\ba_\bc_\bh_\be_\b__\bc_\bo_\bm_\bp_\br_\be_\bs_\bs
+5. $alias_file
- Type: boolean
+ Type: path
- Default: no
+ Default: "~/.muttngrc"
- If enabled the header cache will be compressed. So only one fifth of the usual
- diskspace is used, but the uncompression can result in a slower open of the
- cached folder.
+ The default file in which to save aliases created by the ``create-alias''
+ function.
- _\b7_\b._\b4_\b._\b8_\b3 _\bh_\be_\bl_\bp
+ Note: Mutt-ng will not automatically source this file; you must explicitly
+ use the ``source'' command for it to be executed.
- Type: boolean
+6. $alias_format
- Default: yes
+ Type: string
- When _\bs_\be_\bt, help lines describing the bindings for the major functions provided
- by each menu are displayed on the first line of the screen.
+ Default: "%4n %2f %t %-10a %r"
- N\bNo\bot\bte\be:\b: 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-ng is running. Since this variable
- is primarily aimed at new users, neither of these should present a major prob-
- lem.
+ Specifies the format of the data displayed for the ``alias'' menu. The
+ following printf(3)-style sequences are available:
- _\b7_\b._\b4_\b._\b8_\b4 _\bh_\bi_\bd_\bd_\be_\bn_\b__\bh_\bo_\bs_\bt
+ %a
- Type: boolean
+ alias name
- Default: no
+ %f
- When _\bs_\be_\bt, Mutt-ng will skip the host name part of ``_\b$_\bh_\bo_\bs_\bt_\bn_\ba_\bm_\be (section
+ flags - currently, a "d" for an alias marked for deletion
- The Mutt Next Generation E-Mail Client 107
+ %n
- 7.4.92 , page 108)'' variable when adding the domain part to addresses. This
- variable does not affect the generation of Message-ID: header fields, and it
- will not lead to the cut-off of first-level domains.
+ index number
- _\b7_\b._\b4_\b._\b8_\b5 _\bh_\bi_\bd_\be_\b__\bl_\bi_\bm_\bi_\bt_\be_\bd
+ %r
- Type: boolean
+ address which alias expands to
- Default: no
+ %t
- When _\bs_\be_\bt, Mutt-ng will not show the presence of messages that are hidden by
- limiting, in the thread tree.
+ character which indicates if the alias is tagged for inclusion
- _\b7_\b._\b4_\b._\b8_\b6 _\bh_\bi_\bd_\be_\b__\bm_\bi_\bs_\bs_\bi_\bn_\bg
+7. $allow_8bit
- Type: boolean
+ Type: boolean
- Default: yes
+ Default: yes
- When _\bs_\be_\bt, Mutt-ng will not show the presence of missing messages in the thread
- tree.
+ Controls whether 8-bit data is converted to 7-bit using either
+ quoted-printable or base64 encoding when sending mail.
- _\b7_\b._\b4_\b._\b8_\b7 _\bh_\bi_\bd_\be_\b__\bt_\bh_\br_\be_\ba_\bd_\b__\bs_\bu_\bb_\bj_\be_\bc_\bt
+8. $allow_ansi
- Type: boolean
+ Type: boolean
- Default: yes
+ Default: no
- When _\bs_\be_\bt, Mutt-ng will not show the subject of messages in the thread tree that
- have the same subject as their parent or closest previously displayed sibling.
+ Controls whether ANSI color codes in messages (and color tags in rich text
+ messages) are to be interpreted. Messages containing these codes are rare,
+ but if this option is set, their text will be colored accordingly. Note
+ that this may override your color choices, and even present a security
+ problem, since a message could include a line like ``[-- PGP output
+ follows ..." and give it the same color as your attachment color.
- _\b7_\b._\b4_\b._\b8_\b8 _\bh_\bi_\bd_\be_\b__\bt_\bo_\bp_\b__\bl_\bi_\bm_\bi_\bt_\be_\bd
+9. $arrow_cursor
- Type: boolean
+ Type: boolean
- Default: no
+ Default: no
- When _\bs_\be_\bt, Mutt-ng will not show the presence of messages that are hidden by
- limiting, at the top of threads in the thread tree. Note that when _\b$_\bh_\bi_\bd_\be_\b__\bm_\bi_\bs_\bs_\b-
- _\bi_\bn_\bg (section 7.4.86 , page 107) is set, this option will have no effect.
+ When set, an arrow (``->'') will be used to indicate the current entry in
+ menus instead of highlighting 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.
- _\b7_\b._\b4_\b._\b8_\b9 _\bh_\bi_\bd_\be_\b__\bt_\bo_\bp_\b__\bm_\bi_\bs_\bs_\bi_\bn_\bg
+10. $ascii_chars
- Type: boolean
+ Type: boolean
- Default: yes
+ Default: no
- When _\bs_\be_\bt, Mutt-ng will not show the presence of missing messages at the top of
- threads in the thread tree. Note that when _\b$_\bh_\bi_\bd_\be_\b__\bl_\bi_\bm_\bi_\bt_\be_\bd (section 7.4.85 ,
- page 107) is _\bs_\be_\bt, this option will have no effect.
+ If set, Mutt-ng will use plain ASCII characters when displaying thread and
+ attachment trees, instead of the default ACS characters.
- _\b7_\b._\b4_\b._\b9_\b0 _\bh_\bi_\bs_\bt_\bo_\br_\by
+11. $askbcc
- Type: number
+ Type: boolean
- The Mutt Next Generation E-Mail Client 108
+ Default: no
- Default: 10
+ If set, Mutt-ng will prompt you for blind-carbon-copy (Bcc) recipients
+ before editing an outgoing message.
- This variable controls the size (in number of strings remembered) of the string
- history buffer. The buffer is cleared each time the variable is changed.
+12. $askcc
- _\b7_\b._\b4_\b._\b9_\b1 _\bh_\bo_\bn_\bo_\br_\b__\bf_\bo_\bl_\bl_\bo_\bw_\bu_\bp_\b__\bt_\bo
+ Type: boolean
- Type: quadoption
+ Default: no
- Default: yes
+ If set, Mutt-ng will prompt you for carbon-copy (Cc) recipients before
+ editing the body of an outgoing message.
- This variable controls whether or not a Mail-Followup-To: header field is hon-
- ored when group-replying to a message.
+13. $assumed_charset
- _\b7_\b._\b4_\b._\b9_\b2 _\bh_\bo_\bs_\bt_\bn_\ba_\bm_\be
+ Type: string
- Type: string
+ Default: "us-ascii"
- Default: ''
+ This variable is a colon-separated list of character encoding schemes for
+ messages without character encoding indication. Header field values and
+ message body content without character encoding indication would be
+ assumed that they are written in one of this list. By default, all the
+ header fields and message body without any charset indication are assumed
+ to be in us-ascii.
- Specifies the hostname to use after the ``@'' in local e-mail addresses and
- during generation of Message-Id: headers.
+ For example, Japanese users might prefer this:
- Please be sure to really know what you are doing when changing this variable to
- configure a custom domain part of Message-IDs.
+ set assumed_charset="iso-2022-jp:euc-jp:shift_jis:utf-8"
- _\b7_\b._\b4_\b._\b9_\b3 _\bi_\bg_\bn_\bo_\br_\be_\b__\bl_\bi_\bs_\bt_\b__\br_\be_\bp_\bl_\by_\b__\bt_\bo
+ However, only the first content is valid for the message body. This
+ variable is valid only if $strict_mime is unset.
- Type: boolean
+14. $attach_format
- Default: no
+ Type: string
- Affects the behaviour of the _\br_\be_\bp_\bl_\by function when replying to messages from
- mailing lists. When _\bs_\be_\bt, if the ``Reply-To:'' header field is set to the same
- value as the ``To:'' header field, Mutt-ng assumes that the ``Reply-To:''
- header field was set by the mailing list to automate responses to the list, and
- will ignore this field. To direct a response to the mailing list when this
- option is set, use the _\bl_\bi_\bs_\bt_\b-_\br_\be_\bp_\bl_\by function; _\bg_\br_\bo_\bu_\bp_\b-_\br_\be_\bp_\bl_\by will reply to both the
- sender and the list.
+ Default: "%u%D%I %t%4n %T%.40d%> [%.7m/%.10M, %.6e%?C?, %C?, %s] "
- _\b7_\b._\b4_\b._\b9_\b4 _\bi_\bm_\ba_\bp_\b__\ba_\bu_\bt_\bh_\be_\bn_\bt_\bi_\bc_\ba_\bt_\bo_\br_\bs
+ This variable describes the format of the ``attachment'' menu. The
+ following printf(3)-style sequences are understood:
- Type: string
+ %C
- Default: ''
+ charset
- Availability: IMAP
+ %c
- This is a colon-delimited list of authentication methods Mutt-ng may attempt to
- use to log in to an IMAP server, in the order Mutt-ng should try them. Authen-
- tication methods are either ``login'' or the right side of an IMAP ``AUTH=''
- capability string, e.g. ``digest-md5'', ``gssapi'' or ``cram-md5''. This param-
- eter is case-insensitive.
+ requires charset conversion (n or c)
- The Mutt Next Generation E-Mail Client 109
+ %D
- If this parameter is _\bu_\bn_\bs_\be_\bt (the default) Mutt-ng will try all available meth-
- ods, in order from most-secure to least-secure.
+ deleted flag
- Example: set imap_authenticators='gssapi:cram-md5:login'
+ %d
- N\bNo\bot\bte\be:\b: Mutt-ng will only fall back to other authentication methods if the previ-
- ous methods are unavailable. If a method is available but authentication fails,
- Mutt-ng will not connect to the IMAP server.
+ description
- _\b7_\b._\b4_\b._\b9_\b5 _\bi_\bm_\ba_\bp_\b__\bc_\bh_\be_\bc_\bk_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\bd
+ %e
- Type: boolean
+ MIME Content-Transfer-Encoding: header field
- Default: no
+ %f
- When _\bs_\be_\bt, mutt will fetch the set of subscribed folders from your server on
- connection, and add them to the set of mailboxes it polls for new mail. See
- also the ``_\bm_\ba_\bi_\bl_\bb_\bo_\bx_\be_\bs (section 3.14 , page 34)'' command.
+ filename
- _\b7_\b._\b4_\b._\b9_\b6 _\bi_\bm_\ba_\bp_\b__\bd_\be_\bl_\bi_\bm_\b__\bc_\bh_\ba_\br_\bs
+ %I
- Type: string
+ MIME Content-Disposition: header field (I=inline, A=attachment)
- Default: '/.'
+ %m
- Availability: IMAP
+ major MIME type
- This contains the list of characters which you would like to treat as folder
- separators for displaying IMAP paths. In particular it helps in using the '='
- shortcut for your _\b$_\bf_\bo_\bl_\bd_\be_\br (section 7.4.67 , page 102) variable.
+ %M
- _\b7_\b._\b4_\b._\b9_\b7 _\bi_\bm_\ba_\bp_\b__\bh_\be_\ba_\bd_\be_\br_\bs
+ MIME subtype
- Type: string
+ %n
- Default: ''
+ attachment number
- Availability: IMAP
+ %Q
- Mutt-ng requests these header fields in addition to the default headers (``DATE
- FROM SUBJECT TO CC MESSAGE-ID REFERENCES CONTENT-TYPE CONTENT-DESCRIPTION IN-
- REPLY-TO REPLY-TO LINES X-LABEL'') from IMAP servers before displaying the
- ``index'' menu. You may want to add more headers for spam detection.
+ "Q", if MIME part qualifies for attachment counting
- N\bNo\bot\bte\be:\b: This is a space separated list.
+ %s
- _\b7_\b._\b4_\b._\b9_\b8 _\bi_\bm_\ba_\bp_\b__\bh_\bo_\bm_\be_\b__\bn_\ba_\bm_\be_\bs_\bp_\ba_\bc_\be
+ size
- Type: string
+ %t
- Default: ''
+ tagged flag
- Availability: IMAP
+ %T
- The Mutt Next Generation E-Mail Client 110
+ graphic tree characters
- You normally want to see your personal folders alongside your INBOX in the IMAP
- browser. If you see something else, you may set this variable to the IMAP path
- to your folders.
+ %u
- _\b7_\b._\b4_\b._\b9_\b9 _\bi_\bm_\ba_\bp_\b__\bk_\be_\be_\bp_\ba_\bl_\bi_\bv_\be
+ unlink (=to delete) flag
- Type: number
+ %X
- Default: 900
+ number of qualifying MIME parts in this part and its children
- Availability: IMAP
+ %>X
- This variable specifies the maximum amount of time in seconds that Mutt-ng will
- wait before polling open IMAP connections, to prevent the server from closing
- them before Mutt-ng has finished with them.
+ right justify the rest of the string and pad with character "X"
- The default is well within the RFC-specified minimum amount of time (30 min-
- utes) before a server is allowed to do this, but in practice the RFC does get
- violated every now and then.
+ %|X
- Reduce this number if you find yourself getting disconnected from your IMAP
- server due to inactivity.
+ pad to the end of the line with character "X"
- _\b7_\b._\b4_\b._\b1_\b0_\b0 _\bi_\bm_\ba_\bp_\b__\bl_\bi_\bs_\bt_\b__\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\bd
+15. $attach_remind_regexp
- Type: boolean
+ Type: regular expression
- Default: no
+ Default: "attach"
- Availability: IMAP
+ If this variable is non-empty, muttng will scan a message's contents
+ before sending for this regular expression. If it is found, it will ask
+ for what to do depending on the setting of $abort_noattach.
- This variable configures whether IMAP folder browsing will look for only sub-
- scribed folders or all folders. This can be toggled in the IMAP browser with
- the _\bt_\bo_\bg_\bg_\bl_\be_\b-_\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\bd function.
+ This variable and $abort_noattach are intended to remind the user to
+ attach files if the message's text references them.
- _\b7_\b._\b4_\b._\b1_\b0_\b1 _\bi_\bm_\ba_\bp_\b__\bl_\bo_\bg_\bi_\bn
+16. $attach_sep
- Type: string
+ Type: string
- Default: ''
+ Default: "\n"
- Availability: IMAP
+ The separator to add between attachments when operating (saving, printing,
+ piping, etc) on a list of tagged attachments.
- Your login name on the IMAP server.
+17. $attach_split
- This variable defaults to the value of ``_\b$_\bi_\bm_\ba_\bp_\b__\bu_\bs_\be_\br (section 7.4.108 , page
- 112).''
+ Type: boolean
- _\b7_\b._\b4_\b._\b1_\b0_\b2 _\bi_\bm_\ba_\bp_\b__\bm_\ba_\bi_\bl_\b__\bc_\bh_\be_\bc_\bk
+ Default: yes
- Type: number
+ If this variable is unset, when operating (saving, printing, piping, etc)
+ on a list of tagged attachments, Mutt-ng will concatenate the attachments
+ and will operate on them as a single attachment. The ``$attach_sep''
+ separator is added after each attachment. When set, Mutt-ng will operate
+ on the attachments one by one.
- Default: 300
+18. $attribution
- The Mutt Next Generation E-Mail Client 111
+ Type: string
- This variable configures how often (in seconds) Mutt-ng should look for new
- mail in IMAP folders. This is split from the ``_\bm_\ba_\bi_\bl_\b__\bc_\bh_\be_\bc_\bk (section 7.4.118 ,
- page 116)'' variable to generate less traffic and get more accurate information
- for local folders.
+ Default: "On %d, %n wrote:"
- _\b7_\b._\b4_\b._\b1_\b0_\b3 _\bi_\bm_\ba_\bp_\b__\bp_\ba_\bs_\bs
+ This is the string that will precede a message which has been included in
+ a reply. For a full listing of defined printf(3)-like sequences see the
+ section on ``$index_format''.
- Type: string
+19. $auto_tag
- Default: ''
+ Type: boolean
- Availability: IMAP
+ Default: no
- Specifies the password for your IMAP account. If _\bu_\bn_\bs_\be_\bt, Mutt-ng will prompt
- you for your password when you invoke the fetch-mail function.
+ When set, functions in the index 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.
- W\bWa\bar\brn\bni\bin\bng\bg: you should only use this option when you are on a fairly secure
- machine, because the superuser can read your configuration even if you are the
- only one who can read the file.
+20. $autoedit
- _\b7_\b._\b4_\b._\b1_\b0_\b4 _\bi_\bm_\ba_\bp_\b__\bp_\ba_\bs_\bs_\bi_\bv_\be
+ Type: boolean
- Type: boolean
+ Default: no
- Default: yes
+ When set along with ``$edit_headers'', Mutt-ng will skip the initial
+ send-menu and allow you to immediately begin editing the body of your
+ message. The send-menu may still be accessed once you have finished
+ editing the body of your message.
- Availability: IMAP
+ Also see ``$fast_reply''.
- When _\bs_\be_\bt, Mutt-ng will not open new IMAP connections to check for new mail.
- Mutt-ng will only check for new mail over existing IMAP connections. This is
- useful if you don't want to be prompted to user/password pairs on Mutt-ng invo-
- cation, or if opening the connection is slow.
+21. $beep
- _\b7_\b._\b4_\b._\b1_\b0_\b5 _\bi_\bm_\ba_\bp_\b__\bp_\be_\be_\bk
+ Type: boolean
- Type: boolean
+ Default: yes
- Default: yes
+ When this variable is set, Mutt-ng will beep when an error occurs.
- Availability: IMAP
+22. $beep_new
- If _\bs_\be_\bt, Mutt-ng will avoid implicitly marking your mail as read whenever you
- fetch a message from the server. This is generally a good thing, but can make
- closing an IMAP folder somewhat slower. This option exists to appease speed
- freaks.
+ Type: boolean
- _\b7_\b._\b4_\b._\b1_\b0_\b6 _\bi_\bm_\ba_\bp_\b__\br_\be_\bc_\bo_\bn_\bn_\be_\bc_\bt
+ Default: no
- Type: quadoption
+ When this variable is set, Mutt-ng will beep whenever it prints a message
+ notifying you of new mail. This is independent of the setting of the
+ ``$beep'' variable.
- Default: ask-yes
+23. $bounce
- Availability: IMAP
+ Type: quadoption
- The Mutt Next Generation E-Mail Client 112
+ Default: ask-yes
- Controls whether or not Mutt-ng will try to reconnect to IMAP server when the
- connection is lost.
+ Controls whether you will be asked to confirm bouncing messages. If set to
+ yes you don't get asked if you want to bounce a message. Setting this
+ variable to no is not generally useful, and thus not recommended, because
+ you are unable to bounce messages.
- _\b7_\b._\b4_\b._\b1_\b0_\b7 _\bi_\bm_\ba_\bp_\b__\bs_\be_\br_\bv_\be_\br_\bn_\bo_\bi_\bs_\be
+24. $bounce_delivered
- Type: boolean
+ Type: boolean
- Default: yes
+ Default: yes
- Availability: IMAP
+ When this variable is set, Mutt-ng will include Delivered-To: header
+ fields when bouncing messages. Postfix users may wish to unset this
+ variable.
- When _\bs_\be_\bt, Mutt-ng will display warning messages from the IMAP server as error
- messages. Since these messages are often harmless, or generated due to configu-
- ration problems on the server which are out of the users' hands, you may wish
- to suppress them at some point.
+25. $braille_friendly
- _\b7_\b._\b4_\b._\b1_\b0_\b8 _\bi_\bm_\ba_\bp_\b__\bu_\bs_\be_\br
+ Type: boolean
- Type: string
+ Default: no
- Default: ''
+ When this variable is set, mutt will place the cursor at the beginning of
+ the current line in menus, even when the arrow_cursor variable is unset,
+ making it easier for blind persons using Braille displays to follow these
+ menus. The option is disabled by default because many visual terminals
+ don't permit making the cursor invisible.
- Availability: IMAP
+26. $certificate_file
- The name of the user whose mail you intend to access on the IMAP server.
+ Type: path
- This variable defaults to your user name on the local machine.
+ Default: "~/.mutt_certificates"
- _\b7_\b._\b4_\b._\b1_\b0_\b9 _\bi_\bm_\bp_\bl_\bi_\bc_\bi_\bt_\b__\ba_\bu_\bt_\bo_\bv_\bi_\be_\bw
+ Availability: SSL or GNUTLS
- Type: boolean
+ This variable specifies the file where the certificates you trust are
+ saved. When an unknown certificate is encountered, you are asked if you
+ accept it or not. If you accept it, the certificate can also be saved in
+ this file and further connections are automatically accepted.
- Default: no
+ You can also manually add CA certificates in this file. Any server
+ certificate that is signed with one of these CA certificates are also
+ automatically accepted.
- If _\bs_\be_\bt, Mutt-ng will look for a mailcap entry with the ``copiousoutput'' flag
- set for _\be_\bv_\be_\br_\by MIME attachment it doesn't have an internal viewer defined for.
- If such an entry is found, Mutt-ng will use the viewer defined in that entry to
- convert the body part to text form.
+ Example: set certificate_file=~/.muttng/certificates
- _\b7_\b._\b4_\b._\b1_\b1_\b0 _\bi_\bn_\bc_\bl_\bu_\bd_\be
+27. $charset
- Type: quadoption
+ Type: string
- Default: ask-yes
+ Default: ""
- Controls whether or not a copy of the message(s) you are replying to is
- included in your reply.
+ Character set your terminal uses to display and enter textual data.
- _\b7_\b._\b4_\b._\b1_\b1_\b1 _\bi_\bn_\bc_\bl_\bu_\bd_\be_\b__\bo_\bn_\bl_\by_\bf_\bi_\br_\bs_\bt
+28. $check_new
- Type: boolean
+ Type: boolean
- Default: no
+ Default: yes
- The Mutt Next Generation E-Mail Client 113
+ Note: this option only affects maildir and MH style mailboxes.
- Controls whether or not Mutt-ng includes only the first attachment of the mes-
- sage you are replying.
+ When set, Mutt-ng 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 it's unset, no check for new mail
+ is performed while the mailbox is open.
- _\b7_\b._\b4_\b._\b1_\b1_\b2 _\bi_\bn_\bd_\be_\bn_\bt_\b__\bs_\bt_\br_\bi_\bn_\bg
+29. $collapse_unread
- Type: string
+ Type: boolean
- Default: '> '
+ Default: yes
- 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.
+ When unset, Mutt-ng will not collapse a thread if it contains any unread
+ messages.
- _\b7_\b._\b4_\b._\b1_\b1_\b3 _\bi_\bn_\bd_\be_\bx_\b__\bf_\bo_\br_\bm_\ba_\bt
+30. $compose_format
- Type: string
+ Type: string
- Default: '%4C %Z %{%b %d} %-15.15L (%?l?%4l&%4c?) %s'
+ Default: "-- Mutt-ng: Compose [Approx. msg size: %l Atts: %a]%>-"
- This variable allows you to customize the message index display to your per-
- sonal taste.
+ Controls the format of the status line displayed in the ``compose'' menu.
+ This string is similar to ``$status_format'', but has its own set of
+ printf(3)-like sequences:
- ``Format strings'' are similar to the strings used in the ``C'' function
- printf(3) to format output (see the man page for more detail). The following
- sequences are defined in Mutt-ng:
+ %a
- %a
- address of the author
+ total number of attachments
- %A
- reply-to address (if present; otherwise: address of author)
+ %h
- %b
- filename of the original message folder (think mailBox)
+ local hostname
- %B
- the list to which the letter was sent, or else the folder name
- (%b).
+ %l
- %c
- number of characters (bytes) in the message
+ approximate size (in bytes) of the current message
- %C
- current message number
+ %v
- %d
- date and time of the message in the format specified by ``date_for-
- mat'' converted to sender's time zone
+ Mutt-ng version string
- %D
- date and time of the message in the format specified by ``date_for-
- mat'' converted to the local time zone
+ See the text describing the ``$status_format'' option for more information
+ on how to set ``$compose_format''.
- The Mutt Next Generation E-Mail Client 114
+31. $config_charset
- %e
- current message number in thread
+ Type: string
- %E
- number of messages in current thread
+ Default: ""
- %f
- entire From: line (address + real name)
+ When defined, Mutt-ng will recode commands in rc files from this encoding.
- %F
- author name, or recipient name if the message is from you
+32. $confirmappend
- %H
- spam attribute(s) of this message
+ Type: boolean
- %g
- newsgroup name (if compiled with nntp support)
+ Default: yes
- %i
- message-id of the current message
+ When set, Mutt-ng will prompt for confirmation when appending messages to
+ an existing mailbox.
- %l
- number of lines in the message (does not work with maildir, mh, and
- possibly IMAP folders)
+33. $confirmcreate
- %L
- If an address in the To or CC header field matches an address
- defined by the users ``subscribe'' command, this displays 'To
- <list-name>', otherwise the same as %F.
+ Type: boolean
- %m
- total number of message in the mailbox
+ Default: yes
- %M
- number of hidden messages if the thread is collapsed.
+ When set, Mutt-ng will prompt for confirmation when saving messages to a
+ mailbox which does not yet exist before creating it.
- %N
- message score
+34. $connect_timeout
- %n
- author's real name (or address if missing)
+ Type: number
- %O
- (_O_riginal save folder) Where Mutt-ng would formerly have stashed
- the message: list name or recipient name if no list
+ Default: 30
- %s
- subject of the message
+ Causes Mutt-ng to timeout a network connection (for IMAP or POP) after
+ this many seconds if the connection is not able to be established. A
+ negative value causes Mutt-ng to wait indefinitely for the connection to
+ succeed.
- %S
- status of the message (N/D/d/!/r/*)
+35. $content_type
- %t
- `to:' field (recipients)
+ Type: string
- The Mutt Next Generation E-Mail Client 115
+ Default: "text/plain"
- %T
- the appropriate character from the _\b$_\bt_\bo_\b__\bc_\bh_\ba_\br_\bs (section 7.4.327 ,
- page 167) string
+ Sets the default Content-Type: header field for the body of newly composed
+ messages.
- %u
- user (login) name of the author
+36. $copy
- %v
- first name of the author, or the recipient if the message is from
- you
+ Type: quadoption
- %W
- name of organization of author (`organization:' field)
+ Default: yes
- %y
- `x-label:' field, if present
+ 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 ``fcc-hook''.
- %Y
- `x-label' field, if present, and (1) not at part of a thread tree,
- (2) at the top of a thread, or (3) `x-label' is different from pre-
- ceding message's `x-label'.
+37. $crypt_autoencrypt
- %Z
- message status flags
+ Type: boolean
- %{fmt}
- the date and time of the message is converted to sender's time
- zone, and ``fmt'' is expanded by the library function ``strftime'';
- a leading bang disables locales
+ Default: no
- %[fmt]
- the date and time of the message is converted to the local time
- zone, and ``fmt'' is expanded by the library function ``strftime'';
- a leading bang disables locales
+ Setting this variable will cause Mutt-ng to always attempt to PGP encrypt
+ outgoing messages. This is probably only useful in connection to the
+ send-hook command. It can be overridden by use of the pgp-menu, when
+ encryption is not required or signing is requested as well. If
+ ``$smime_is_default'' is set, then OpenSSL is used instead to create
+ S/MIME messages and settings can be overridden by use of the smime-menu.
+ (Crypto only)
- %(fmt)
- the local date and time when the message was received. ``fmt'' is
- expanded by the library function ``strftime''; a leading bang dis-
- ables locales
+38. $crypt_autopgp
- %<fmt>
- the current local time. ``fmt'' is expanded by the library function
- ``strftime''; a leading bang disables locales.
+ Type: boolean
- %>X
- right justify the rest of the string and pad with character 'X'
+ Default: yes
- %|X
- pad to the end of the line with character 'X'
+ This variable controls whether or not Mutt-ng may automatically enable PGP
+ encryption/signing for messages. See also ``$crypt_autoencrypt'',
+ ``$crypt_replyencrypt'', ``$crypt_autosign'', ``$crypt_replysign'' and
+ ``$smime_is_default''.
- See also: ``_\b$_\bt_\bo_\b__\bc_\bh_\ba_\br_\bs (section 7.4.327 , page 167)''.
+39. $crypt_autosign
- _\b7_\b._\b4_\b._\b1_\b1_\b4 _\bi_\bs_\bp_\be_\bl_\bl
+ Type: boolean
- The Mutt Next Generation E-Mail Client 116
+ Default: no
- Type: path
+ Setting this variable will cause Mutt-ng to always attempt to
+ cryptographically sign outgoing messages. This can be overridden by use of
+ the pgp-menu, when signing is not required or encryption is requested as
+ well. If ``$smime_is_default'' is set, then OpenSSL is used instead to
+ create S/MIME messages and settings can be overridden by use of the
+ smime-menu. (Crypto only)
- Default: 'ispell'
+40. $crypt_autosmime
- How to invoke ispell (GNU's spell-checking software).
+ Type: boolean
- _\b7_\b._\b4_\b._\b1_\b1_\b5 _\bk_\be_\be_\bp_\b__\bf_\bl_\ba_\bg_\bg_\be_\bd
+ Default: yes
- Type: boolean
+ This variable controls whether or not Mutt-ng may automatically enable
+ S/MIME encryption/signing for messages. See also ``$crypt_autoencrypt'',
+ ``$crypt_replyencrypt'', ``$crypt_autosign'', ``$crypt_replysign'' and
+ ``$smime_is_default''.
- Default: no
+41. $crypt_replyencrypt
- If _\bs_\be_\bt, read messages marked as flagged will not be moved from your spool mail-
- box to your ``_\b$_\bm_\bb_\bo_\bx (section 7.4.128 , page 118)'' mailbox, or as a result of
- a ``_\bm_\bb_\bo_\bx_\b-_\bh_\bo_\bo_\bk (section 3.13 , page 34)'' command.
+ Type: boolean
- _\b7_\b._\b4_\b._\b1_\b1_\b6 _\bl_\bi_\bs_\bt_\b__\br_\be_\bp_\bl_\by
+ Default: yes
- Type: quadoption
+ If set, automatically PGP or OpenSSL encrypt replies to messages which are
+ encrypted. (Crypto only)
- Default: no
+42. $crypt_replysign
- When _\bs_\be_\bt, address replies to the mailing list the original message came from
- (instead to the author only). Setting this option to ``_\ba_\bs_\bk_\b-_\by_\be_\bs'' or ``_\ba_\bs_\bk_\b-_\bn_\bo''
- will ask if you really intended to reply to the author only.
+ Type: boolean
- _\b7_\b._\b4_\b._\b1_\b1_\b7 _\bl_\bo_\bc_\ba_\bl_\be
+ Default: no
- Type: string
+ If set, automatically PGP or OpenSSL sign replies to messages which are
+ signed.
- Default: 'C'
+ Note: this does not work on messages that are encrypted and signed!
+ (Crypto only)
- The locale used by strftime(3) to format dates. Legal values are the strings
- your system accepts for the locale variable LC_TIME.
+43. $crypt_replysignencrypted
- _\b7_\b._\b4_\b._\b1_\b1_\b8 _\bm_\ba_\bi_\bl_\b__\bc_\bh_\be_\bc_\bk
+ Type: boolean
- Type: number
+ Default: no
- Default: 5
+ If set, automatically PGP or OpenSSL sign replies to messages which are
+ encrypted. This makes sense in combination with ``$crypt_replyencrypt'',
+ because it allows you to sign all messages which are automatically
+ encrypted. This works around the problem noted in ``$crypt_replysign'',
+ that Mutt-ng is not able to find out whether an encrypted message is also
+ signed. (Crypto only)
- This variable configures how often (in seconds) Mutt-ng should look for new
- mail.
+44. $crypt_timestamp
- N\bNo\bot\bte\be:\b: This does not apply to IMAP mailboxes, see _\b$_\bi_\bm_\ba_\bp_\b__\bm_\ba_\bi_\bl_\b__\bc_\bh_\be_\bc_\bk (section
- 7.4.102 , page 110).
+ Type: boolean
- _\b7_\b._\b4_\b._\b1_\b1_\b9 _\bm_\ba_\bi_\bl_\bc_\ba_\bp_\b__\bp_\ba_\bt_\bh
+ Default: yes
- Type: string
+ If set, Mutt-ng will include a time stamp in the lines surrounding PGP or
+ S/MIME output, so spoofing such lines is more difficult. If you are using
+ colors to mark these lines, and rely on these, you may unset this setting.
+ (Crypto only)
- Default: ''
+45. $crypt_use_gpgme
- This variable specifies which files to consult when attempting to display MIME
+ Type: boolean
- The Mutt Next Generation E-Mail Client 117
+ Default: no
- bodies not directly supported by Mutt-ng.
+ This variable controls the use the GPGME enabled crypto backends. If it is
+ set and Mutt-ng was build with gpgme support, the gpgme code for S/MIME
+ and PGP will be used instead of the classic code.
- _\b7_\b._\b4_\b._\b1_\b2_\b0 _\bm_\ba_\bi_\bl_\bc_\ba_\bp_\b__\bs_\ba_\bn_\bi_\bt_\bi_\bz_\be
+ Note: You need to use this option in your .muttngrc configuration file as
+ it won't have any effect when used interactively.
- Type: boolean
+46. $crypt_verify_sig
- Default: yes
+ Type: quadoption
- If _\bs_\be_\bt, Mutt-ng will restrict possible characters in mailcap % expandos to a
- well-defined set of safe characters. This is the safe setting, but we are not
- sure it doesn't break some more advanced MIME stuff.
+ Default: yes
- D\bDO\bON\bN'\b'T\bT C\bCH\bHA\bAN\bNG\bGE\bE T\bTH\bHI\bIS\bS S\bSE\bET\bTT\bTI\bIN\bNG\bG U\bUN\bNL\bLE\bES\bSS\bS Y\bYO\bOU\bU A\bAR\bRE\bE R\bRE\bEA\bAL\bLL\bLY\bY S\bSU\bUR\bRE\bE W\bWH\bHA\bAT\bT Y\bYO\bOU\bU A\bAR\bRE\bE D\bDO\bOI\bIN\bNG\bG!\b!
+ If ``yes'', always attempt to verify PGP or S/MIME signatures. If ``ask'',
+ ask whether or not to verify the signature. If ``no'', never attempt to
+ verify cryptographic signatures. (Crypto only)
- _\b7_\b._\b4_\b._\b1_\b2_\b1 _\bm_\ba_\bi_\bl_\bd_\bi_\br_\b__\bh_\be_\ba_\bd_\be_\br_\b__\bc_\ba_\bc_\bh_\be_\b__\bv_\be_\br_\bi_\bf_\by
+47. $date_format
- Type: boolean
+ Type: string
- Default: yes
+ Default: "!%a, %b %d, %Y at %I:%M:%S%p %Z"
- Availability: Header Cache
+ This variable controls the format of the date printed by the ``%d''
+ sequence in ``$index_format''. This is passed to strftime(3) to process
+ the date.
- Check for Maildir unaware programs other than Mutt-ng having modified maildir
- files when the header cache is in use. This incurs one stat(2) per message
- every time the folder is opened.
+ 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).
- _\b7_\b._\b4_\b._\b1_\b2_\b2 _\bm_\ba_\bi_\bl_\bd_\bi_\br_\b__\bt_\br_\ba_\bs_\bh
+48. $debug_level
- Type: boolean
+ Type: number
- Default: no
+ Default: 1
- If _\bs_\be_\bt, messages marked as deleted will be saved with the maildir (T)rashed
- flag instead of physically deleted.
+ Availability: debug
- N\bNO\bOT\bTE\bE:\b: this only applies to maildir-style mailboxes. Setting it will have no
- effect on other mailbox types.
+ This variable specifies the current debug level and may be used to
+ increase or decrease the verbosity level during runtime. It overrides the
+ level given with the -d command line option.
- It is similiar to the trash option.
+ Currently, this number must be >= 0 and <= 5 and muttng must be started
+ with -d to enable debugging at all; enabling at runtime is not possible.
- _\b7_\b._\b4_\b._\b1_\b2_\b3 _\bm_\ba_\br_\bk_\b__\bo_\bl_\bd
+49. $default_hook
- Type: boolean
+ Type: string
- Default: yes
+ Default: "~f %s !~P | (~P ~C %s)"
- Controls whether or not Mutt-ng marks _\bn_\be_\bw u\bun\bnr\bre\bea\bad\bd messages as _\bo_\bl_\bd if you exit a
- mailbox without reading them.
+ This variable controls how send-hooks, message-hooks, save-hooks, and
+ fcc-hooks will be interpreted if they are specified with only a simple
+ regexp, instead of a matching pattern. The hooks are expanded when they
+ are declared, so a hook will be interpreted according to the value of this
+ variable at the time the hook is declared. The default value matches if
+ the message is either from a user matching the regular expression given,
+ or if it is from you (if the from address matches ``alternates'') and is
+ to or cc'ed to a user matching the given regular expression.
- With this option _\bs_\be_\bt, the next time you start Mutt-ng, the messages will show
- up with an 'O' next to them in the ``index'' menu, indicating that they are
- old.
+50. $delete
- The Mutt Next Generation E-Mail Client 118
+ Type: quadoption
- _\b7_\b._\b4_\b._\b1_\b2_\b4 _\bm_\ba_\br_\bk_\be_\br_\bs
+ Default: ask-yes
- Type: boolean
+ Controls whether or not messages are really deleted when closing or
+ synchronizing a mailbox. If set to yes, messages marked for deleting will
+ automatically be purged without prompting. If set to no, messages marked
+ for deletion will be kept in the mailbox.
- Default: yes
+51. $delete_space
- 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
- ``_\b$_\bs_\bm_\ba_\br_\bt_\b__\bw_\br_\ba_\bp (section 7.4.267 , page 151)'' variable.
+ Type: boolean
- _\b7_\b._\b4_\b._\b1_\b2_\b5 _\bm_\ba_\bs_\bk
+ Default: no
- Type: regular expression
+ When sending messages with format=flowed by setting the $text_flowed
+ variable, this variable specifies whether to also set the DelSp parameter
+ to yes. If this is unset, no additional parameter will be send as a value
+ of no already is the default behavior.
- Default: '!^\.[^.]'
+ Note: this variable only has an effect on outgoing messages (if
+ $text_flowed is set) but not on incomming.
- A regular expression used in the file browser, optionally preceded by the _\bn_\bo_\bt
- operator ``!''. Only files whose names match this mask will be shown. The
- match is always case-sensitive.
+52. $delete_untag
- _\b7_\b._\b4_\b._\b1_\b2_\b6 _\bm_\ba_\bx_\b__\bd_\bi_\bs_\bp_\bl_\ba_\by_\b__\br_\be_\bc_\bi_\bp_\bs
+ Type: boolean
- Type: number
+ Default: yes
- Default: 0
+ If this option is set, Mutt-ng will untag messages when marking them for
+ deletion. This applies when you either explicitly delete a message, or
+ when you save it to another folder.
- When set non-zero, this specifies the maximum number of recipient header lines
- (To:, Cc: and Bcc:) to display in the pager if header weeding is turned on. In
- case the number of lines exeeds its value, the last line will have 3 dots
- appended.
+53. $digest_collapse
- _\b7_\b._\b4_\b._\b1_\b2_\b7 _\bm_\ba_\bx_\b__\bl_\bi_\bn_\be_\b__\bl_\be_\bn_\bg_\bt_\bh
+ Type: boolean
- Type: number
+ Default: yes
- Default: 0
+ If this option is set, Mutt-ng's received-attachments menu will not show
+ the subparts of individual messages in a multipart/digest. To see these
+ subparts, press 'v' on that menu.
- When _\bs_\be_\bt, the maximum line length for displaying ``format = flowed'' messages
- is limited to this length. A value of 0 (which is also the default) means that
- the maximum line length is determined by the terminal width and _\b$_\bw_\br_\ba_\bp_\bm_\ba_\br_\bg_\bi_\bn
- (section 7.4.342 , page 170).
+54. $display_filter
- _\b7_\b._\b4_\b._\b1_\b2_\b8 _\bm_\bb_\bo_\bx
+ Type: path
- Type: path
+ Default: ""
- Default: '~/mbox'
+ When set, specifies a command used to filter messages. When a message is
+ viewed it is passed as standard input to $display_filter, and the filtered
+ message is read from the standard output.
- This specifies the folder into which read mail in your ``_\b$_\bs_\bp_\bo_\bo_\bl_\bf_\bi_\bl_\be (section
- 7.4.301 , page 159)'' folder will be appended.
+55. $dotlock_program
- _\b7_\b._\b4_\b._\b1_\b2_\b9 _\bm_\bb_\bo_\bx_\b__\bt_\by_\bp_\be
+ Type: path
- Type: folder magic
+ Default: "$muttng_bindir/muttng_dotlock"
- The Mutt Next Generation E-Mail Client 119
+ Availability: Standalone and Dotlock
- Default: mbox
+ Contains the path of the muttng_dotlock(1) binary to be used by Mutt-ng.
- The default mailbox type used when creating new folders. May be any of mbox,
- MMDF, MH and Maildir.
+56. $dsn_notify
- _\b7_\b._\b4_\b._\b1_\b3_\b0 _\bm_\be_\bn_\bu_\b__\bc_\bo_\bn_\bt_\be_\bx_\bt
+ Type: string
- Type: number
+ Default: ""
- Default: 0
+ Note: you should not enable this unless you are using Sendmail 8.8.x or
+ greater or in connection with the SMTP support via libESMTP.
- This variable controls the number of lines of context that are given when
- scrolling through menus. (Similar to ``_\b$_\bp_\ba_\bg_\be_\br_\b__\bc_\bo_\bn_\bt_\be_\bx_\bt (section 7.4.171 , page
- 129)''.)
+ 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: never, to never request notification, failure, to request
+ notification on transmission failure, delay, to be notified of message
+ delays, success, to be notified of successful transmission.
- _\b7_\b._\b4_\b._\b1_\b3_\b1 _\bm_\be_\bn_\bu_\b__\bm_\bo_\bv_\be_\b__\bo_\bf_\bf
+ Example: set dsn_notify="failure,delay"
- Type: boolean
+57. $dsn_return
- Default: yes
+ Type: string
- When _\bu_\bn_\bs_\be_\bt, the bottom entry of menus will never scroll up past the bottom of
- the screen, unless there are less entries than lines. When _\bs_\be_\bt, the bottom
- entry may move off the bottom.
+ Default: ""
- _\b7_\b._\b4_\b._\b1_\b3_\b2 _\bm_\be_\bn_\bu_\b__\bs_\bc_\br_\bo_\bl_\bl
+ Note: you should not enable this unless you are using Sendmail 8.8.x or
+ greater or in connection with the SMTP support via libESMTP.
- Type: boolean
+ This variable controls how much of your message is returned in DSN
+ messages. It may be set to either hdrs to return just the message header,
+ or full to return the full message.
- Default: no
+ Example: set dsn_return=hdrs
- When _\bs_\be_\bt, menus will be scrolled up or down one line when you attempt to move
- across a screen boundary. If _\bu_\bn_\bs_\be_\bt, the screen is cleared and the next or pre-
- vious page of the menu is displayed (useful for slow links to avoid many
- redraws).
+58. $duplicate_threads
- _\b7_\b._\b4_\b._\b1_\b3_\b3 _\bm_\be_\bs_\bs_\ba_\bg_\be_\b__\bf_\bo_\br_\bm_\ba_\bt
+ Type: boolean
- Type: string
+ Default: yes
- Default: '%s'
+ This variable controls whether Mutt-ng, when sorting by threads, threads
+ messages with the same Message-ID: header field together. If it is set, it
+ will indicate that it thinks they are duplicates of each other with an
+ equals sign in the thread diagram.
- This is the string displayed in the ``attachment'' menu for attachments of type
- message/rfc822. For a full listing of defined printf(3)-like sequences see the
- section on ``_\b$_\bi_\bn_\bd_\be_\bx_\b__\bf_\bo_\br_\bm_\ba_\bt (section 7.4.113 , page 113)''.
+59. $edit_headers
- _\b7_\b._\b4_\b._\b1_\b3_\b4 _\bm_\be_\bt_\ba_\b__\bk_\be_\by
+ Type: boolean
- Type: boolean
+ Default: no
- Default: no
+ This option allows you to edit the header of your outgoing messages along
+ with the body of your message.
- If _\bs_\be_\bt, forces Mutt-ng to interpret keystrokes with the high bit (bit 8) set as
- if the user had pressed the ESC key and whatever key remains after having the
+ Which empty header fields to show is controlled by the $editor_headers
+ option.
- The Mutt Next Generation E-Mail Client 120
+60. $editor
- high bit removed. For example, if the key pressed has an ASCII value of 0xf4,
- then this is treated as if the user had pressed ESC then ``x''. This is
- because the result of removing the high bit from ``0xf4'' is ``0x74'', which is
- the ASCII character ``x''.
+ Type: path
- _\b7_\b._\b4_\b._\b1_\b3_\b5 _\bm_\be_\bt_\bo_\bo
+ Default: ""
- Type: boolean
+ This variable specifies which editor is used by Mutt-ng. It defaults to
+ the value of the $VISUAL, or $EDITOR, environment variable, or to the
+ string "vi" if neither of those are set.
- Default: no
+61. $editor_headers
- If _\bu_\bn_\bs_\be_\bt, Mutt-ng will remove your address (see the ``alternates'' command)
- from the list of recipients when replying to a message.
+ Type: string
- _\b7_\b._\b4_\b._\b1_\b3_\b6 _\bm_\bh_\b__\bp_\bu_\br_\bg_\be
+ Default: "From: To: Cc: Bcc: Subject: Reply-To: Newsgroups: Followup-To:
+ X-Comment-To:"
- Type: boolean
+ If $edit_headers is set, this space-separated list specifies which
+ non-empty header fields to edit in addition to user-defined headers.
- Default: no
+ Note: if $edit_headers had to be turned on by force because $strict_mailto
+ is unset, this option has no effect.
- When _\bu_\bn_\bs_\be_\bt, Mutt-ng will mimic mh's behaviour and rename deleted messages to
- _\b,_\b<_\bo_\bl_\bd _\bf_\bi_\bl_\be _\bn_\ba_\bm_\be_\b> in mh folders instead of really deleting them. If the vari-
- able is set, the message files will simply be deleted.
+62. $encode_from
- _\b7_\b._\b4_\b._\b1_\b3_\b7 _\bm_\bh_\b__\bs_\be_\bq_\b__\bf_\bl_\ba_\bg_\bg_\be_\bd
+ Type: boolean
- Type: string
+ Default: no
- Default: 'flagged'
+ When set, Mutt-ng will quoted-printable encode messages when they contain
+ the string ``From '' (note the trailing space) in the beginning of a line.
+ Useful to avoid the tampering certain mail delivery and transport agents
+ tend to do with messages.
- The name of the MH sequence used for flagged messages.
+ Note: as Mutt-ng currently violates RfC3676 defining format=flowed, it's
+ <em/strongly/ advised to set this option although discouraged by the
+ standard. Alternatively, you must take care of space-stuffing <tt/From /
+ lines (with a trailing space) yourself.
- _\b7_\b._\b4_\b._\b1_\b3_\b8 _\bm_\bh_\b__\bs_\be_\bq_\b__\br_\be_\bp_\bl_\bi_\be_\bd
+63. $entropy_file
- Type: string
+ Type: path
- Default: 'replied'
+ Default: ""
- The name of the MH sequence used to tag replied messages.
+ Availability: SSL
- _\b7_\b._\b4_\b._\b1_\b3_\b9 _\bm_\bh_\b__\bs_\be_\bq_\b__\bu_\bn_\bs_\be_\be_\bn
+ The file which includes random data that is used to initialize SSL library
+ functions.
- Type: string
+64. $envelope_from_address
- Default: 'unseen'
+ Type: e-mail address
- The name of the MH sequence used for unseen messages.
+ Default: ""
- _\b7_\b._\b4_\b._\b1_\b4_\b0 _\bm_\bi_\bm_\be_\b__\bf_\bo_\br_\bw_\ba_\br_\bd
+ Manually sets the envelope sender for outgoing messages. This value is
+ ignored if ``$use_envelope_from'' is unset.
- Type: quadoption
+65. $escape
- Default: no
+ Type: string
- The Mutt Next Generation E-Mail Client 121
+ Default: "~"
- When _\bs_\be_\bt, the message you are forwarding will be attached as a separate MIME
- part instead of included in the main body of the message.
+ Escape character to use for functions in the builtin editor.
- This is useful for forwarding MIME messages so the receiver can properly view
- the message as it was delivered to you. If you like to switch between MIME and
- not MIME from mail to mail, set this variable to ask-no or ask-yes.
+66. $fast_reply
- Also see ``_\b$_\bf_\bo_\br_\bw_\ba_\br_\bd_\b__\bd_\be_\bc_\bo_\bd_\be (section 7.4.72 , page 104)'' and ``_\b$_\bm_\bi_\bm_\be_\b__\bf_\bo_\br_\b-
- _\bw_\ba_\br_\bd_\b__\bd_\be_\bc_\bo_\bd_\be (section 7.4.141 , page 121)''.
+ Type: boolean
- _\b7_\b._\b4_\b._\b1_\b4_\b1 _\bm_\bi_\bm_\be_\b__\bf_\bo_\br_\bw_\ba_\br_\bd_\b__\bd_\be_\bc_\bo_\bd_\be
+ Default: no
- Type: boolean
+ When set, the initial prompt for recipients and subject are skipped when
+ replying to messages, and the initial prompt for subject is skipped when
+ forwarding messages.
- Default: no
+ Note: this variable has no effect when the ``$autoedit'' variable is set.
- Controls the decoding of complex MIME messages into text/plain when forwarding
- a message while ``_\b$_\bm_\bi_\bm_\be_\b__\bf_\bo_\br_\bw_\ba_\br_\bd (section 7.4.140 , page 120)'' is _\bs_\be_\bt. Other-
- wise ``_\b$_\bf_\bo_\br_\bw_\ba_\br_\bd_\b__\bd_\be_\bc_\bo_\bd_\be (section 7.4.72 , page 104)'' is used instead.
+67. $fcc_attach
- _\b7_\b._\b4_\b._\b1_\b4_\b2 _\bm_\bi_\bm_\be_\b__\bf_\bo_\br_\bw_\ba_\br_\bd_\b__\br_\be_\bs_\bt
+ Type: boolean
- Type: quadoption
+ Default: yes
- Default: yes
+ This variable controls whether or not attachments on outgoing messages are
+ saved along with the main body of your message.
- When forwarding multiple attachments of a MIME message from the recvattach
- menu, attachments which cannot be decoded in a reasonable manner will be
- attached to the newly composed message if this option is set.
+68. $fcc_clear
- _\b7_\b._\b4_\b._\b1_\b4_\b3 _\bm_\bi_\bx_\b__\be_\bn_\bt_\br_\by_\b__\bf_\bo_\br_\bm_\ba_\bt
+ Type: boolean
- Type: string
+ Default: no
- Default: '%4n %c %-16s %a'
+ When this variable is set, FCCs will be stored unencrypted and unsigned,
+ even when the actual message is encrypted and/or signed. (PGP only)
- Availability: Mixmaster
+69. $file_charset
- This variable describes the format of a remailer line on the mixmaster chain
- selection screen. The following printf(3)-like sequences are supported:
+ Type: string
- %n
- The running number on the menu.
+ Default: ""
- %c
- Remailer capabilities.
+ This variable is a colon-separated list of character encoding schemes for
+ text file attatchments. If unset, $charset value will be used instead. For
+ example, the following configuration would work for Japanese text
+ handling:
- %s
- The remailer's short name.
+ set file_charset="iso-2022-jp:euc-jp:shift_jis:utf-8"
- %a
- The remailer's e-mail address.
+ Note: ``iso-2022-*'' must be put at the head of the value as shown above
+ if included.
- The Mutt Next Generation E-Mail Client 122
+70. $folder
- _\b7_\b._\b4_\b._\b1_\b4_\b4 _\bm_\bi_\bx_\bm_\ba_\bs_\bt_\be_\br
+ Type: path
- Type: path
+ Default: "~/Mail"
- Default: 'mixmaster'
+ Specifies the default location of your mailboxes. A ``+'' or ``='' at the
+ beginning of a pathname will be expanded to the value of this variable.
+ Note that if you change this variable from the default value you need to
+ make sure that the assignment occurs before you use ``+'' or ``='' for any
+ other variables since expansion takes place during the ``set'' command.
- Availability: Mixmaster
+71. $folder_format
- This variable contains the path to the Mixmaster binary on your system. It is
- used with various sets of parameters to gather the list of known remailers, and
- to finally send a message through the mixmaster chain.
+ Type: string
- _\b7_\b._\b4_\b._\b1_\b4_\b5 _\bm_\bo_\bv_\be
+ Default: "%2C %t %N %F %2l %-8.8u %-8.8g %8s %d %f"
- Type: quadoption
+ This variable allows you to customize the file browser display to your
+ personal taste. This string is similar to ``$index_format'', but has its
+ own set of printf(3)-like sequences:
- Default: ask-no
+ %C
- Controls whether or not Mutt-ng will move read messages from your spool mailbox
- to your ``_\b$_\bm_\bb_\bo_\bx (section 7.4.128 , page 118)'' mailbox, or as a result of a
- ``_\bm_\bb_\bo_\bx_\b-_\bh_\bo_\bo_\bk (section 3.13 , page 34)'' command.
+ current file number
- _\b7_\b._\b4_\b._\b1_\b4_\b6 _\bm_\bs_\bg_\bi_\bd_\b__\bf_\bo_\br_\bm_\ba_\bt
+ %d
- Type: string
+ date/time folder was last modified
- Default: '%Y%m%d%h%M%s.G%P%p'
+ %f
- This is the format for the ``local part'' of the Message-Id: header field gen-
- erated by Mutt-ng. If this variable is empty, no Message-Id: headers will be
- generated. The '%' character marks that certain data will be added to the
- string, similar to printf(3). The following characters are allowed:
+ filename
- %d
- the current day of month
+ %F
- %h
- the current hour
+ file permissions
- %m
- the current month
+ %g
- %M
- the current minute
+ group name (or numeric gid, if missing)
- %O
- the current UNIX timestamp (octal)
+ %l
- %p
- the process ID
+ number of hard links
- %P
- the current Message-ID prefix (a character rotating with every Mes-
- sage-ID being generated)
+ %N
- The Mutt Next Generation E-Mail Client 123
+ N if folder has new mail, blank otherwise
- %r
- a random integer value (decimal)
+ %s
- %R
- a random integer value (hexadecimal)
+ size in bytes
- %s
- the current second
+ %t
- %T
- the current UNIX timestamp (decimal)
+ * if the file is tagged, blank otherwise
- %X
- the current UNIX timestamp (hexadecimal)
+ %u
- %Y
- the current year (Y2K compliant)
+ owner name (or numeric uid, if missing)
- %%
- the '%' character
+ %>X
- N\bNo\bot\bte\be:\b: Please only change this setting if you know what you are doing. Also
- make sure to consult RFC2822 to produce technically _\bv_\ba_\bl_\bi_\bd strings.
+ right justify the rest of the string and pad with character "X"
- _\b7_\b._\b4_\b._\b1_\b4_\b7 _\bn_\ba_\br_\br_\bo_\bw_\b__\bt_\br_\be_\be
+ %|X
- Type: boolean
+ pad to the end of the line with character "X"
- Default: no
+72. $followup_to
- This variable, when _\bs_\be_\bt, makes the thread tree narrower, allowing deeper
- threads to fit on the screen.
+ Type: boolean
- _\b7_\b._\b4_\b._\b1_\b4_\b8 _\bn_\bn_\bt_\bp_\b__\ba_\bs_\bk_\b__\bf_\bo_\bl_\bl_\bo_\bw_\bu_\bp_\b__\bt_\bo
+ Default: yes
- Type: boolean
+ Controls whether or not the Mail-Followup-To: header field is generated
+ when sending mail. When set, Mutt-ng will generate this field when you are
+ replying to a known mailing list, specified with the ``subscribe'' or
+ ``lists'' commands or detected by common mailing list headers.
- Default: no
+ This field has two purposes. First, preventing you from receiving
+ duplicate copies of replies to messages which you send to mailing lists.
+ Second, ensuring that you do get a reply separately for any messages sent
+ to known lists to which you are not subscribed. The header will contain
+ only the list's address for subscribed lists, and both the list address
+ and your own email address for unsubscribed lists. Without this header, a
+ group reply to your message sent to a subscribed list will be sent to both
+ the list and your address, resulting in two copies of the same email for
+ you.
- Availability: NNTP
+73. $force_buffy_check
- If _\bs_\be_\bt, Mutt-ng will prompt you for the Followup-To: header field before edit-
- ing the body of an outgoing news article.
+ Type: boolean
- _\b7_\b._\b4_\b._\b1_\b4_\b9 _\bn_\bn_\bt_\bp_\b__\ba_\bs_\bk_\b__\bx_\b__\bc_\bo_\bm_\bm_\be_\bn_\bt_\b__\bt_\bo
+ Default: no
- Type: boolean
+ When set, it causes Mutt-ng to check for new mail when the buffy-list
+ command is invoked. When unset, buffy_list will just list all mailboxes
+ which are already known to have new mail.
- Default: no
+ Also see the following variables: ``$timeout'', ``$mail_check'' and
+ ``$imap_mail_check''.
- Availability: NNTP
+74. $force_name
- If _\bs_\be_\bt, Mutt-ng will prompt you for the X-Comment-To: header field before edit-
- ing the body of an outgoing news article.
+ Type: boolean
- The Mutt Next Generation E-Mail Client 124
+ Default: no
- _\b7_\b._\b4_\b._\b1_\b5_\b0 _\bn_\bn_\bt_\bp_\b__\bc_\ba_\bc_\bh_\be_\b__\bd_\bi_\br
+ This variable is similar to ``$save_name'', except that Mutt-ng 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.
- Type: path
+ Also see the ``$record'' variable.
- Default: '~/.muttng'
+75. $forward_decode
- Availability: NNTP
+ Type: boolean
- This variable points to directory where Mutt-ng will cache news article head-
- ers. If _\bu_\bn_\bs_\be_\bt, headers will not be saved at all and will be reloaded each time
- when you enter a newsgroup.
+ Default: yes
- As for the header caching in connection with IMAP and/or Maildir, this drasti-
- cally increases speed and lowers traffic.
+ Controls the decoding of complex MIME messages into text/plain when
+ forwarding a message. The message header is also RFC2047 decoded. This
+ variable is only used, if ``$mime_forward'' is unset, otherwise
+ ``$mime_forward_decode'' is used instead.
- _\b7_\b._\b4_\b._\b1_\b5_\b1 _\bn_\bn_\bt_\bp_\b__\bc_\ba_\bt_\bc_\bh_\bu_\bp
+76. $forward_decrypt
- Type: quadoption
+ Type: boolean
- Default: ask-yes
+ Default: yes
- Availability: NNTP
+ Controls the handling of encrypted messages when forwarding a message.
+ When set, the outer layer of encryption is stripped off. This variable is
+ only used if ``$mime_forward'' is set and ``$mime_forward_decode'' is
+ unset. (PGP only)
- If this variable is _\bs_\be_\bt, Mutt-ng will mark all articles in a newsgroup as read
- when you leaving it.
+77. $forward_edit
- _\b7_\b._\b4_\b._\b1_\b5_\b2 _\bn_\bn_\bt_\bp_\b__\bc_\bo_\bn_\bt_\be_\bx_\bt
+ Type: quadoption
- Type: number
+ Default: yes
- Default: 1000
+ This quadoption controls whether or not the user is automatically placed
+ in the editor when forwarding messages. For those who always want to
+ forward with no modification, use a setting of no.
- Availability: NNTP
+78. $forward_format
- This variable controls how many news articles to cache per newsgroup (if
- caching is enabled, see _\b$_\bn_\bn_\bt_\bp_\b__\bc_\ba_\bc_\bh_\be_\b__\bd_\bi_\br (section 7.4.150 , page 123)) and how
- many news articles to show in the ``index'' menu.
+ Type: string
- If there're more articles than defined with _\b$_\bn_\bn_\bt_\bp_\b__\bc_\bo_\bn_\bt_\be_\bx_\bt (section 7.4.152 ,
- page 124), all older ones will be removed/not shown in the index.
+ Default: "[%a: %s]"
- _\b7_\b._\b4_\b._\b1_\b5_\b3 _\bn_\bn_\bt_\bp_\b__\bf_\bo_\bl_\bl_\bo_\bw_\bu_\bp_\b__\bt_\bo_\b__\bp_\bo_\bs_\bt_\be_\br
+ This variable controls the default subject when forwarding a message. It
+ uses the same format sequences as the ``$index_format'' variable.
- Type: quadoption
+79. $forward_quote
- Default: ask-yes
+ Type: boolean
- Availability: NNTP
+ Default: no
- If this variable is _\bs_\be_\bt and the keyword 'poster' is present in the Followup-To:
- header field, a follow-up to the newsgroup is not permitted. The message will
- be mailed to the submitter of the message via mail.
+ When set forwarded messages included in the main body of the message (when
+ ``$mime_forward'' is unset) will be quoted using ``$indent_string''.
- The Mutt Next Generation E-Mail Client 125
+80. $from
- _\b7_\b._\b4_\b._\b1_\b5_\b4 _\bn_\bn_\bt_\bp_\b__\bg_\br_\bo_\bu_\bp_\b__\bi_\bn_\bd_\be_\bx_\b__\bf_\bo_\br_\bm_\ba_\bt
+ Type: e-mail address
- Type: string
+ Default: ""
- Default: '%4C %M%N %5s %-45.45f %d'
+ This variable contains a default from address. It can be overridden using
+ my_hdr (including from send-hooks) and ``$reverse_name''. This variable is
+ ignored if ``$use_from'' is unset.
- Availability: NNTP
+ E.g. you can use send-hook Mutt-ng-devel@lists.berlios.de 'my_hdr From:
+ Foo Bar <foo@bar.fb>' when replying to the Mutt-ng developer's mailing
+ list and Mutt-ng takes this email address.
- This variable allows you to customize the newsgroup browser display to your
- personal taste. This string is similar to ``_\bi_\bn_\bd_\be_\bx_\b__\bf_\bo_\br_\bm_\ba_\bt (section 7.4.113 ,
- page 113)'', but has its own set of printf(3)-like sequences:
+ Defaults to the contents of the environment variable $EMAIL.
- %C current newsgroup number
- %d description of newsgroup (retrieved from server)
- %f newsgroup name
- %M ``-'' if newsgroup not allowed for direct post (moderated for example)
- %N ``N'' if newsgroup is new, ``u'' if unsubscribed, blank otherwise
- %n number of new articles in newsgroup
- %s number of unread articles in newsgroup
- %>X right justify the rest of the string and pad with character "X"
- %|X pad to the end of the line with character "X"
+81. $gecos_mask
- _\b7_\b._\b4_\b._\b1_\b5_\b5 _\bn_\bn_\bt_\bp_\b__\bh_\bo_\bs_\bt
+ Type: regular expression
- Type: string
+ Default: "^[^,]*"
- Default: ''
+ A regular expression used by Mutt-ng to parse the GECOS field of a
+ password entry when expanding the alias. By default the regular expression
+ is set to ``^[^,]*'' which will return the string up to the first ``,''
+ encountered. If the GECOS field contains a string like "lastname,
+ firstname" then you should do: set gecos_mask=".*".
- Availability: NNTP
+ This can be useful if you see the following behavior: you address a e-mail
+ to user ID stevef whose full name is Steve Franklin. If Mutt-ng expands
+ stevef to ``Franklin'' stevef@foo.bar then you should set the gecos_mask
+ to a regular expression that will match the whole name so Mutt-ng will
+ expand ``Franklin'' to ``Franklin, Steve''.
- This variable specifies the name (or address) of the NNTP server to be used.
+82. $hdrs
- It defaults to the value specified via the environment variable $NNTPSERVER or
- contained in the file /etc/nntpserver.
+ Type: boolean
- You can also specify a username and an alternative port for each newsserver,
- e.g.
+ Default: yes
- [nntp[s]://][username[:password]@]newsserver[:port]
+ When unset, the header fields normally added by the ``my_hdr'' command are
+ not created. This variable must be unset before composing a new message or
+ replying in order to take effect. If set, the user defined header fields
+ are added to every new message.
- N\bNo\bot\bte\be:\b: Using a password as shown and stored in a configuration file presents a
- security risk since the superuser of your machine may read it regardless of the
- file's permissions.
+83. $header
- _\b7_\b._\b4_\b._\b1_\b5_\b6 _\bn_\bn_\bt_\bp_\b__\bi_\bn_\be_\bw_\bs
+ Type: boolean
- Type: path
+ Default: no
- Default: ''
+ When set, this variable causes Mutt-ng to include the header of the
+ message you are replying to into the edit buffer. The ``$weed'' setting
+ applies.
- Availability: NNTP
+84. $header_cache
- The Mutt Next Generation E-Mail Client 126
+ Type: path
- If _\bs_\be_\bt, specifies the program and arguments used to deliver news posted by
- Mutt-ng. Otherwise, Mutt-ng posts article using current connection. The fol-
- lowing printf(3)-style sequence is understood:
+ Default: ""
- %s newsserver name
+ Availability: Header Cache
- Example: set inews='/usr/local/bin/inews -hS'
+ The $header_cache variable points to the header cache database.
- _\b7_\b._\b4_\b._\b1_\b5_\b7 _\bn_\bn_\bt_\bp_\b__\bl_\bo_\ba_\bd_\b__\bd_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn
+ If $header_cache points to a directory it will contain a header cache
+ database per folder. If $header_cache points to a file that file will be a
+ single global header cache. By default it is unset so no header caching
+ will be used.
- Type: boolean
+85. $header_cache_compress
- Default: yes
+ Type: boolean
- Availability: NNTP
+ Default: no
- This variable controls whether or not descriptions for newsgroups are to be
- loaded when subscribing to a newsgroup.
+ If enabled the header cache will be compressed. So only one fifth of the
+ usual diskspace is used, but the uncompression can result in a slower open
+ of the cached folder.
- _\b7_\b._\b4_\b._\b1_\b5_\b8 _\bn_\bn_\bt_\bp_\b__\bm_\ba_\bi_\bl_\b__\bc_\bh_\be_\bc_\bk
+86. $help
- Type: number
+ Type: boolean
- Default: 60
+ Default: yes
- Availability: NNTP
+ When set, help lines describing the bindings for the major functions
+ provided by each menu are displayed on the first line of the screen.
- The time in seconds until any operations on a newsgroup except posting a new
- article will cause a recheck for new news. If set to 0, Mutt-ng will recheck on
- each operation in index (stepping, read article, etc.).
+ Note: 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-ng is running. Since this
+ variable is primarily aimed at new users, neither of these should present
+ a major problem.
- _\b7_\b._\b4_\b._\b1_\b5_\b9 _\bn_\bn_\bt_\bp_\b__\bm_\bi_\bm_\be_\b__\bs_\bu_\bb_\bj_\be_\bc_\bt
+87. $hidden_host
- Type: boolean
+ Type: boolean
- Default: yes
+ Default: no
- Availability: NNTP
+ When set, Mutt-ng will skip the host name part of ``$hostname'' variable
+ when adding the domain part to addresses. This variable does not affect
+ the generation of Message-ID: header fields, and it will not lead to the
+ cut-off of first-level domains.
- If _\bu_\bn_\bs_\be_\bt, an 8-bit ``Subject:'' header field in a news article will not be
- encoded according to RFC2047.
+88. $hide_limited
- N\bNo\bot\bte\be:\b: Only change this setting if you know what you are doing.
+ Type: boolean
- _\b7_\b._\b4_\b._\b1_\b6_\b0 _\bn_\bn_\bt_\bp_\b__\bn_\be_\bw_\bs_\br_\bc
+ Default: no
- Type: path
+ When set, Mutt-ng will not show the presence of messages that are hidden
+ by limiting, in the thread tree.
- Default: '~/.newsrc'
+89. $hide_missing
- Availability: NNTP
+ Type: boolean
- The Mutt Next Generation E-Mail Client 127
+ Default: yes
- This file contains information about subscribed newsgroup and articles read so
- far.
+ When set, Mutt-ng will not show the presence of missing messages in the
+ thread tree.
- To ease the use of multiple news servers, the following printf(3)-style
- sequence is understood:
+90. $hide_thread_subject
- %s newsserver name
+ Type: boolean
- _\b7_\b._\b4_\b._\b1_\b6_\b1 _\bn_\bn_\bt_\bp_\b__\bp_\ba_\bs_\bs
+ Default: yes
- Type: string
+ When set, Mutt-ng will not show the subject of messages in the thread tree
+ that have the same subject as their parent or closest previously displayed
+ sibling.
- Default: ''
+91. $hide_top_limited
- Availability: NNTP
+ Type: boolean
- Your password for NNTP account.
+ Default: no
- N\bNo\bot\bte\be:\b: Storing passwords in a configuration file presents a security risk since
- the superuser of your machine may read it regardless of the file's permissions.
+ When set, Mutt-ng will not show the presence of messages that are hidden
+ by limiting, at the top of threads in the thread tree. Note that when
+ $hide_missing is set, this option will have no effect.
- _\b7_\b._\b4_\b._\b1_\b6_\b2 _\bn_\bn_\bt_\bp_\b__\bp_\bo_\bs_\bt_\b__\bm_\bo_\bd_\be_\br_\ba_\bt_\be_\bd
+92. $hide_top_missing
- Type: quadoption
+ Type: boolean
- Default: ask-yes
+ Default: yes
- Availability: NNTP
+ When set, Mutt-ng will not show the presence of missing messages at the
+ top of threads in the thread tree. Note that when $hide_limited is set,
+ this option will have no effect.
- If set to _\by_\be_\bs, Mutt-ng will post articles to newsgroup that have not permis-
- sions to post (e.g. moderated).
+93. $history
- N\bNo\bot\bte\be:\b: if the newsserver does not support posting to that newsgroup or a group
- is totally read-only, that posting will not have any effect.
+ Type: number
- _\b7_\b._\b4_\b._\b1_\b6_\b3 _\bn_\bn_\bt_\bp_\b__\br_\be_\bc_\bo_\bn_\bn_\be_\bc_\bt
+ Default: 10
- Type: quadoption
+ This variable controls the size (in number of strings remembered) of the
+ string history buffer. The buffer is cleared each time the variable is
+ changed.
- Default: ask-yes
+94. $honor_followup_to
- Availability: NNTP
+ Type: quadoption
- Controls whether or not Mutt-ng will try to reconnect to a newsserver when the
- was connection lost.
+ Default: yes
- _\b7_\b._\b4_\b._\b1_\b6_\b4 _\bn_\bn_\bt_\bp_\b__\bs_\ba_\bv_\be_\b__\bu_\bn_\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\bd
+ This variable controls whether or not a Mail-Followup-To: header field is
+ honored when group-replying to a message.
- Type: boolean
+95. $hostname
- Default: no
+ Type: string
- The Mutt Next Generation E-Mail Client 128
+ Default: ""
- Availability: NNTP
+ Specifies the hostname to use after the ``@'' in local e-mail addresses
+ and during generation of Message-ID: headers.
- When _\bs_\be_\bt, info about unsubscribed newsgroups will be saved into the ``newsrc''
- file and into the news cache.
+ Please be sure to really know what you are doing when changing this
+ variable to configure a custom domain part of Message-IDs.
- _\b7_\b._\b4_\b._\b1_\b6_\b5 _\bn_\bn_\bt_\bp_\b__\bs_\bh_\bo_\bw_\b__\bn_\be_\bw_\b__\bn_\be_\bw_\bs
+96. $ignore_list_reply_to
- Type: boolean
+ Type: boolean
- Default: yes
+ Default: no
- Availability: NNTP
+ Affects the behaviour of the reply function when replying to messages from
+ mailing lists. When set, if the ``Reply-To:'' header field is set to the
+ same value as the ``To:'' header field, Mutt-ng assumes that the
+ ``Reply-To:'' header field was set by the mailing list to automate
+ responses to the list, and will ignore this field. To direct a response to
+ the mailing list when this option is set, use the list-reply function;
+ group-reply will reply to both the sender and the list. Remember: This
+ option works only for mailing lists which are explicitly set in your
+ muttngrc configuration file.
- If _\bs_\be_\bt, the newsserver will be asked for new newsgroups on entering the
- browser. Otherwise, it will be done only once for a newsserver. Also controls
- whether or not the number of new articles of subscribed newsgroups will be
- checked.
+97. $imap_authenticators
- _\b7_\b._\b4_\b._\b1_\b6_\b6 _\bn_\bn_\bt_\bp_\b__\bs_\bh_\bo_\bw_\b__\bo_\bn_\bl_\by_\b__\bu_\bn_\br_\be_\ba_\bd
+ Type: string
- Type: boolean
+ Default: ""
- Default: no
+ Availability: IMAP
- Availability: NNTP
+ This is a colon-delimited list of authentication methods Mutt-ng may
+ attempt to use to log in to an IMAP server, in the order Mutt-ng should
+ try them. Authentication methods are either ``login'' or the right side of
+ an IMAP ``AUTH='' capability string, e.g. ``digest-md5'', ``gssapi'' or
+ ``cram-md5''. This parameter is case-insensitive.
- If _\bs_\be_\bt, only subscribed newsgroups that contain unread articles will be dis-
- played in the newsgroup browser.
+ If this parameter is unset (the default) Mutt-ng will try all available
+ methods, in order from most-secure to least-secure.
- _\b7_\b._\b4_\b._\b1_\b6_\b7 _\bn_\bn_\bt_\bp_\b__\bu_\bs_\be_\br
+ Example: set imap_authenticators="gssapi:cram-md5:login"
- Type: string
+ Note: Mutt-ng will only fall back to other authentication methods if the
+ previous methods are unavailable. If a method is available but
+ authentication fails, Mutt-ng will not connect to the IMAP server.
- Default: ''
+98. $imap_check_subscribed
- Availability: NNTP
+ Type: boolean
- Your login name on the NNTP server. If _\bu_\bn_\bs_\be_\bt and the server requires authen-
- tification, Mutt-ng will prompt you for your account name.
+ Default: no
- _\b7_\b._\b4_\b._\b1_\b6_\b8 _\bn_\bn_\bt_\bp_\b__\bx_\b__\bc_\bo_\bm_\bm_\be_\bn_\bt_\b__\bt_\bo
+ When set, mutt will fetch the set of subscribed folders from your server
+ on connection, and add them to the set of mailboxes it polls for new mail.
+ See also the ``mailboxes'' command.
- Type: boolean
+99. $imap_delim_chars
- Default: no
+ Type: string
- Availability: NNTP
+ Default: "/."
- If _\bs_\be_\bt, Mutt-ng will add a ``X-Comment-To:'' header field (that contains full
- name of the original article author) to articles that you followup to.
+ Availability: IMAP
- _\b7_\b._\b4_\b._\b1_\b6_\b9 _\bo_\bp_\be_\br_\ba_\bt_\bi_\bn_\bg_\b__\bs_\by_\bs_\bt_\be_\bm
+ This contains the list of characters which you would like to treat as
+ folder separators for displaying IMAP paths. In particular it helps in
+ using the '=' shortcut for your $folder variable.
- Type: string
+100. $imap_headers
- The Mutt Next Generation E-Mail Client 129
+ Type: string
- Default: ''
+ Default: ""
- This specifies the operating system name for the User-Agent: header field. If
- this is _\bu_\bn_\bs_\be_\bt, it will be set to the operating system name that uname(2)
- returns. If uname(2) fails, ``UNIX'' will be used.
+ Availability: IMAP
- It may, for example, look as: ``mutt-ng 1.5.9i (Linux)''.
+ Mutt-ng requests these header fields in addition to the default headers
+ (``DATE FROM SUBJECT TO CC MESSAGE-ID REFERENCES CONTENT-TYPE
+ CONTENT-DESCRIPTION IN-REPLY-TO REPLY-TO LINES X-LABEL'') from IMAP
+ servers before displaying the ``index'' menu. You may want to add more
+ headers for spam detection.
- _\b7_\b._\b4_\b._\b1_\b7_\b0 _\bp_\ba_\bg_\be_\br
+ Note: This is a space separated list.
- Type: path
+101. $imap_home_namespace
- Default: 'builtin'
+ Type: string
- This variable specifies which pager you would like to use to view messages.
- ``builtin'' means to use the builtin pager, otherwise this variable should
- specify the pathname of the external pager you would like to use.
+ Default: ""
- Using an external pager may have some disadvantages: Additional keystrokes are
- necessary because you can't call Mutt-ng functions directly from the pager, and
- screen resizes cause lines longer than the screen width to be badly formatted
- in the help menu.
+ Availability: IMAP
- _\b7_\b._\b4_\b._\b1_\b7_\b1 _\bp_\ba_\bg_\be_\br_\b__\bc_\bo_\bn_\bt_\be_\bx_\bt
+ You normally want to see your personal folders alongside your INBOX in the
+ IMAP browser. If you see something else, you may set this variable to the
+ IMAP path to your folders.
- Type: number
+102. $imap_keepalive
- Default: 0
+ Type: number
- This variable controls the number of lines of context that are given when dis-
- playing the next or previous page in the internal pager. By default, Mutt-ng
- will display the line after the last one on the screen at the top of the next
- page (0 lines of context).
+ Default: 900
- _\b7_\b._\b4_\b._\b1_\b7_\b2 _\bp_\ba_\bg_\be_\br_\b__\bf_\bo_\br_\bm_\ba_\bt
+ Availability: IMAP
- Type: string
+ This variable specifies the maximum amount of time in seconds that Mutt-ng
+ will wait before polling open IMAP connections, to prevent the server from
+ closing them before Mutt-ng has finished with them.
- Default: '-%Z- %C/%m: %-20.20n %s'
+ The default is well within the RFC-specified minimum amount of time (30
+ minutes) before a server is allowed to do this, but in practice the RFC
+ does get violated every now and then.
- 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 ``_\b$_\bi_\bn_\bd_\be_\bx_\b__\bf_\bo_\br_\bm_\ba_\bt (section 7.4.113 , page 113)''
- section.
+ Reduce this number if you find yourself getting disconnected from your
+ IMAP server due to inactivity.
- _\b7_\b._\b4_\b._\b1_\b7_\b3 _\bp_\ba_\bg_\be_\br_\b__\bi_\bn_\bd_\be_\bx_\b__\bl_\bi_\bn_\be_\bs
+103. $imap_list_subscribed
- Type: number
+ Type: boolean
- Default: 0
+ Default: no
- Determines the number of lines of a mini-index which is shown when in the
- pager. The current message, unless near the top or bottom of the folder, will
- be roughly one third of the way down this mini-index, giving the reader the
+ Availability: IMAP
- The Mutt Next Generation E-Mail Client 130
+ This variable configures whether IMAP folder browsing will look for only
+ subscribed folders or all folders. This can be toggled in the IMAP browser
+ with the toggle-subscribed function.
- context of a few messages before and after the message. This is useful, for
- example, to determine how many messages remain to be read in the current
- thread. One of the lines is reserved for the status bar from the index, so a
- _\bp_\ba_\bg_\be_\br_\b__\bi_\bn_\bd_\be_\bx_\b__\bl_\bi_\bn_\be_\bs of 6 will only show 5 lines of the actual index. A value of
- 0 results in no index being shown. If the number of messages in the current
- folder is less than _\bp_\ba_\bg_\be_\br_\b__\bi_\bn_\bd_\be_\bx_\b__\bl_\bi_\bn_\be_\bs, then the index will only use as many
- lines as it needs.
+104. $imap_login
- _\b7_\b._\b4_\b._\b1_\b7_\b4 _\bp_\ba_\bg_\be_\br_\b__\bs_\bt_\bo_\bp
+ Type: string
- Type: boolean
+ Default: ""
- Default: no
+ Availability: IMAP
- When _\bs_\be_\bt, the internal-pager will n\bno\bot\bt move to the next message when you are at
- the end of a message and invoke the _\bn_\be_\bx_\bt_\b-_\bp_\ba_\bg_\be function.
+ Your login name on the IMAP server.
- _\b7_\b._\b4_\b._\b1_\b7_\b5 _\bp_\bg_\bp_\b__\ba_\bu_\bt_\bo_\b__\bd_\be_\bc_\bo_\bd_\be
+ This variable defaults to the value of ``$imap_user.''
- Type: boolean
+105. $imap_mail_check
- Default: no
+ Type: number
- If _\bs_\be_\bt, Mutt-ng will automatically attempt to decrypt traditional PGP messages
- whenever the user performs an operation which ordinarily would result in the
- contents of the message being operated on. For example, if the user displays a
- pgp-traditional message which has not been manually checked with the check-tra-
- ditional-pgp function, Mutt-ng will automatically check the message for tradi-
- tional pgp.
+ Default: 300
- _\b7_\b._\b4_\b._\b1_\b7_\b6 _\bp_\bg_\bp_\b__\ba_\bu_\bt_\bo_\bi_\bn_\bl_\bi_\bn_\be
+ This variable configures how often (in seconds) Mutt-ng should look for
+ new mail in IMAP folders. This is split from the ``mail_check'' variable
+ to generate less traffic and get more accurate information for local
+ folders.
- Type: boolean
+106. $imap_pass
- Default: no
+ Type: string
- This option controls whether Mutt-ng generates old-style inline (traditional)
- PGP encrypted or signed messages under certain circumstances. This can be
- overridden by use of the _\bp_\bg_\bp_\b-_\bm_\be_\bn_\bu, when inline is not required.
+ Default: ""
- Note that Mutt-ng might automatically use PGP/MIME for messages which consist
- of more than a single MIME part. Mutt-ng can be configured to ask before send-
- ing PGP/MIME messages when inline (traditional) would not work. See also:
- ``_\b$_\bp_\bg_\bp_\b__\bm_\bi_\bm_\be_\b__\ba_\bu_\bt_\bo (section 7.4.192 , page 134)''.
+ Availability: IMAP
- Also note that using the old-style PGP message format is s\bst\btr\bro\bon\bng\bgl\bly\by d\bde\bep\bpr\bre\bec\bca\bat\bte\bed\bd.
- (PGP only)
+ Specifies the password for your IMAP account. If unset, Mutt-ng will
+ prompt you for your password when you invoke the fetch-mail function.
- _\b7_\b._\b4_\b._\b1_\b7_\b7 _\bp_\bg_\bp_\b__\bc_\bh_\be_\bc_\bk_\b__\be_\bx_\bi_\bt
+ Warning: you should only use this option when you are on a fairly secure
+ machine, because the superuser can read your configuration even if you are
+ the only one who can read the file.
- Type: boolean
+107. $imap_passive
- Default: yes
+ Type: boolean
- The Mutt Next Generation E-Mail Client 131
+ Default: yes
- If _\bs_\be_\bt, Mutt-ng will check the exit code of the PGP subprocess when signing or
- encrypting. A non-zero exit code means that the subprocess failed. (PGP only)
+ Availability: IMAP
- _\b7_\b._\b4_\b._\b1_\b7_\b8 _\bp_\bg_\bp_\b__\bc_\bl_\be_\ba_\br_\bs_\bi_\bg_\bn_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ When set, Mutt-ng will not open new IMAP connections to check for new
+ mail. Mutt-ng will only check for new mail over existing IMAP connections.
+ This is useful if you don't want to be prompted to user/password pairs on
+ Mutt-ng invocation, or if opening the connection is slow.
- Type: string
+108. $imap_peek
- Default: ''
+ Type: boolean
- This format is used to create a old-style ``clearsigned'' PGP message.
+ Default: yes
- Note that the use of this format is s\bst\btr\bro\bon\bng\bgl\bly\by d\bde\bep\bpr\bre\bec\bca\bat\bte\bed\bd. (PGP only)
+ Availability: IMAP
- _\b7_\b._\b4_\b._\b1_\b7_\b9 _\bp_\bg_\bp_\b__\bd_\be_\bc_\bo_\bd_\be_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ If set, Mutt-ng will avoid implicitly marking your mail as read whenever
+ you fetch a message from the server. This is generally a good thing, but
+ can make closing an IMAP folder somewhat slower. This option exists to
+ appease speed freaks.
- Type: string
+109. $imap_reconnect
- Default: ''
+ Type: quadoption
- This format strings specifies a command which is used to decode application/pgp
- attachments.
+ Default: ask-yes
- The PGP command formats have their own set of printf(3)-like sequences:
+ Availability: IMAP
- %p
- Expands to PGPPASSFD=0 when a pass phrase is needed, to an empty
- string otherwise. Note: This may be used with a %? construct.
+ Controls whether or not Mutt-ng will try to reconnect to IMAP server when
+ the connection is lost.
- %f
- Expands to the name of a file containing a message.
+110. $imap_servernoise
- %s
- Expands to the name of a file containing the signature part of a
- multipart/signed attachment when verifying it.
+ Type: boolean
- %a
- The value of _\b$_\bp_\bg_\bp_\b__\bs_\bi_\bg_\bn_\b__\ba_\bs (section 7.4.196 , page 135).
+ Default: yes
- %r
- One or more key IDs.
+ Availability: IMAP
- For examples on how to configure these formats for the various versions of PGP
- which are floating around, see the pgp*.rc and gpg.rc files in the samples/
- subdirectory which has been installed on your system alongside the documenta-
- tion. (PGP only)
+ When set, Mutt-ng will display warning messages from the IMAP server as
+ error messages. Since these messages are often harmless, or generated due
+ to configuration problems on the server which are out of the users' hands,
+ you may wish to suppress them at some point.
- _\b7_\b._\b4_\b._\b1_\b8_\b0 _\bp_\bg_\bp_\b__\bd_\be_\bc_\br_\by_\bp_\bt_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd
+111. $imap_user
- Type: string
+ Type: string
- Default: ''
+ Default: ""
- This command is used to decrypt a PGP encrypted message. (PGP only)
+ Availability: IMAP
- The Mutt Next Generation E-Mail Client 132
+ The name of the user whose mail you intend to access on the IMAP server.
- _\b7_\b._\b4_\b._\b1_\b8_\b1 _\bp_\bg_\bp_\b__\be_\bn_\bc_\br_\by_\bp_\bt_\b__\bo_\bn_\bl_\by_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ This variable defaults to your user name on the local machine.
- Type: string
+112. $implicit_autoview
- Default: ''
+ Type: boolean
- This command is used to encrypt a body part without signing it. (PGP only)
+ Default: no
- _\b7_\b._\b4_\b._\b1_\b8_\b2 _\bp_\bg_\bp_\b__\be_\bn_\bc_\br_\by_\bp_\bt_\b__\bs_\bi_\bg_\bn_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ If set, Mutt-ng will look for a mailcap entry with the ``copiousoutput''
+ flag set for every MIME attachment it doesn't have an internal viewer
+ defined for. If such an entry is found, Mutt-ng will use the viewer
+ defined in that entry to convert the body part to text form.
- Type: string
+113. $include
- Default: ''
+ Type: quadoption
- This command is used to both sign and encrypt a body part. (PGP only)
+ Default: ask-yes
- _\b7_\b._\b4_\b._\b1_\b8_\b3 _\bp_\bg_\bp_\b__\be_\bn_\bt_\br_\by_\b__\bf_\bo_\br_\bm_\ba_\bt
+ Controls whether or not a copy of the message(s) you are replying to is
+ included in your reply.
- Type: string
+114. $include_onlyfirst
- Default: '%4n %t%f %4l/0x%k %-4a %2c %u'
+ Type: boolean
- This variable allows you to customize the PGP key selection menu to your per-
- sonal taste. This string is similar to ``_\b$_\bi_\bn_\bd_\be_\bx_\b__\bf_\bo_\br_\bm_\ba_\bt (section 7.4.113 , page
- 113)'', but has its own set of printf(3)-like sequences:
+ Default: no
- %n
- number
+ Controls whether or not Mutt-ng includes only the first attachment of the
+ message you are replying.
- %k
- key id
+115. $indent_string
- %u
- user id
+ Type: string
- %a
- algorithm
+ Default: "> "
- %l
- key length
+ 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.
- %f
- flags
+116. $index_format
- %c
- capabilities
+ Type: string
- %t
- trust/validity of the key-uid association
+ Default: "%4C %Z %{%b %d} %-15.15L (%?l?%4l&%4c?) %s"
- %[<s>]
- date of the key where <s> is an strftime(3) expression
+ This variable allows you to customize the message index display to your
+ personal taste.
- (PGP only)
+ ``Format strings'' are similar to the strings used in the ``C'' function
+ printf(3) to format output (see the man page for more detail). The
+ following sequences are defined in Mutt-ng:
- The Mutt Next Generation E-Mail Client 133
+ %a
- _\b7_\b._\b4_\b._\b1_\b8_\b4 _\bp_\bg_\bp_\b__\be_\bx_\bp_\bo_\br_\bt_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ address of the author
- Type: string
+ %A
- Default: ''
+ reply-to address (if present; otherwise: address of author)
- This command is used to export a public key from the user's key ring. (PGP
- only)
+ %b
- _\b7_\b._\b4_\b._\b1_\b8_\b5 _\bp_\bg_\bp_\b__\bg_\be_\bt_\bk_\be_\by_\bs_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ filename of the original message folder (think mailBox)
- Type: string
+ %B
- Default: ''
+ the list to which the letter was sent, or else the folder name
+ (%b).
- This command is invoked whenever Mutt-ng will need public key information. %r
- is the only printf(3)-like sequence used with this format. (PGP only)
+ %c
- _\b7_\b._\b4_\b._\b1_\b8_\b6 _\bp_\bg_\bp_\b__\bg_\bo_\bo_\bd_\b__\bs_\bi_\bg_\bn
+ number of characters (bytes) in the message
- Type: regular expression
+ %C
- Default: ''
+ current message number
- If you assign a text to this variable, then a PGP signature is only considered
- verified if the output from _\b$_\bp_\bg_\bp_\b__\bv_\be_\br_\bi_\bf_\by_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd (section 7.4.202 , page 136)
- contains the text. Use this variable if the exit code from the command is 0
- even for bad signatures. (PGP only)
+ %d
- _\b7_\b._\b4_\b._\b1_\b8_\b7 _\bp_\bg_\bp_\b__\bi_\bg_\bn_\bo_\br_\be_\b__\bs_\bu_\bb_\bk_\be_\by_\bs
+ date and time of the message in the format specified by
+ ``date_format'' converted to sender's time zone
- Type: boolean
+ %D
- Default: yes
+ date and time of the message in the format specified by
+ ``date_format'' converted to the local time zone
- Setting this variable will cause Mutt-ng to ignore OpenPGP subkeys. Instead,
- the principal key will inherit the subkeys' capabilities. _\bU_\bn_\bs_\be_\bt this if you
- want to play interesting key selection games. (PGP only)
+ %e
- _\b7_\b._\b4_\b._\b1_\b8_\b8 _\bp_\bg_\bp_\b__\bi_\bm_\bp_\bo_\br_\bt_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ current message number in thread
- Type: string
+ %E
- Default: ''
+ number of messages in current thread
- This command is used to import a key from a message into the user's public key
- ring. (PGP only)
+ %f
- _\b7_\b._\b4_\b._\b1_\b8_\b9 _\bp_\bg_\bp_\b__\bl_\bi_\bs_\bt_\b__\bp_\bu_\bb_\br_\bi_\bn_\bg_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ entire From: line (address + real name)
- Type: string
+ %F
- Default: ''
+ author name, or recipient name if the message is from you
- The Mutt Next Generation E-Mail Client 134
+ %H
- This command is used to list the public key ring's contents. The output format
- must be analogous to the one used by gpg --list-keys --with-colons.
+ spam attribute(s) of this message
- This format is also generated by the pgpring utility which comes with Mutt-ng.
- (PGP only)
+ %g
- _\b7_\b._\b4_\b._\b1_\b9_\b0 _\bp_\bg_\bp_\b__\bl_\bi_\bs_\bt_\b__\bs_\be_\bc_\br_\bi_\bn_\bg_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ newsgroup name (if compiled with nntp support)
- Type: string
+ %i
- Default: ''
+ message-id of the current message
- This command is used to list the secret key ring's contents. The output format
- must be analogous to the one used by gpg --list-keys --with-colons.
+ %l
- This format is also generated by the pgpring utility which comes with Mutt-ng.
- (PGP only)
+ number of lines in the message (does not work with maildir, mh,
+ and possibly IMAP folders)
- _\b7_\b._\b4_\b._\b1_\b9_\b1 _\bp_\bg_\bp_\b__\bl_\bo_\bn_\bg_\b__\bi_\bd_\bs
+ %L
- Type: boolean
+ If an address in the To or CC header field matches an address
+ defined by the users ``subscribe'' command, this displays "To
+ <list-name>", otherwise the same as %F.
- Default: no
+ %m
- If _\bs_\be_\bt, use 64 bit PGP key IDs. _\bU_\bn_\bs_\be_\bt uses the normal 32 bit Key IDs. (PGP
- only)
+ total number of message in the mailbox
- _\b7_\b._\b4_\b._\b1_\b9_\b2 _\bp_\bg_\bp_\b__\bm_\bi_\bm_\be_\b__\ba_\bu_\bt_\bo
+ %M
- Type: quadoption
+ number of hidden messages if the thread is collapsed.
- Default: ask-yes
+ %N
- This option controls whether Mutt-ng will prompt you for automatically sending
- a (signed/encrypted) message using PGP/MIME when inline (traditional) fails
- (for any reason).
+ message score
- Also note that using the old-style PGP message format is s\bst\btr\bro\bon\bng\bgl\bly\by d\bde\bep\bpr\bre\bec\bca\bat\bte\bed\bd.
- (PGP only)
+ %n
- _\b7_\b._\b4_\b._\b1_\b9_\b3 _\bp_\bg_\bp_\b__\br_\be_\bp_\bl_\by_\bi_\bn_\bl_\bi_\bn_\be
+ author's real name (or address if missing)
- Type: boolean
+ %O
- Default: no
+ (_O_riginal save folder) Where Mutt-ng would formerly have stashed
+ the message: list name or recipient name if no list
- Setting this variable will cause Mutt-ng to always attempt to create an inline
- (traditional) message when replying to a message which is PGP encrypted/signed
- inline. This can be overridden by use of the _\bp_\bg_\bp_\b-_\bm_\be_\bn_\bu, when inline is not
- required. This option does not automatically detect if the (replied-to) mes-
- sage is inline; instead it relies on Mutt-ng internals for previously
- checked/flagged messages.
+ %s
- Note that Mutt-ng might automatically use PGP/MIME for messages which consist
+ subject of the message
- The Mutt Next Generation E-Mail Client 135
+ %S
- of more than a single MIME part. Mutt-ng can be configured to ask before send-
- ing PGP/MIME messages when inline (traditional) would not work. See also:
- ``_\b$_\bp_\bg_\bp_\b__\bm_\bi_\bm_\be_\b__\ba_\bu_\bt_\bo (section 7.4.192 , page 134)''.
+ status of the message (N/D/d/!/r/*)
- Also note that using the old-style PGP message format is s\bst\btr\bro\bon\bng\bgl\bly\by d\bde\bep\bpr\bre\bec\bca\bat\bte\bed\bd.
- (PGP only)
+ %t
- _\b7_\b._\b4_\b._\b1_\b9_\b4 _\bp_\bg_\bp_\b__\br_\be_\bt_\ba_\bi_\bn_\ba_\bb_\bl_\be_\b__\bs_\bi_\bg_\bs
+ `to:' field (recipients)
- Type: boolean
+ %T
- Default: no
+ the appropriate character from the $to_chars string
- If _\bs_\be_\bt, signed and encrypted messages will consist of nested multipart/signed
- and multipart/encrypted body parts.
+ %u
- This is useful for applications like encrypted and signed mailing lists, where
- the outer layer (multipart/encrypted) can be easily removed, while the inner
- multipart/signed part is retained. (PGP only)
+ user (login) name of the author
- _\b7_\b._\b4_\b._\b1_\b9_\b5 _\bp_\bg_\bp_\b__\bs_\bh_\bo_\bw_\b__\bu_\bn_\bu_\bs_\ba_\bb_\bl_\be
+ %v
- Type: boolean
+ first name of the author, or the recipient if the message is from
+ you
- Default: yes
+ %W
- If _\bs_\be_\bt, Mutt-ng will display non-usable keys on the PGP key selection menu.
- This includes keys which have been revoked, have expired, or have been marked
- as ``disabled'' by the user. (PGP only)
+ name of organization of author (`organization:' field)
- _\b7_\b._\b4_\b._\b1_\b9_\b6 _\bp_\bg_\bp_\b__\bs_\bi_\bg_\bn_\b__\ba_\bs
+ %X
- Type: string
+ number of attachments
- Default: ''
+ %y
- 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., ``0x00112233''). (PGP only)
+ `x-label:' field, if present
- _\b7_\b._\b4_\b._\b1_\b9_\b7 _\bp_\bg_\bp_\b__\bs_\bi_\bg_\bn_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ %Y
- Type: string
+ `x-label' field, if present, and (1) not at part of a thread tree,
+ (2) at the top of a thread, or (3) `x-label' is different from
+ preceding message's `x-label'.
- Default: ''
+ %Z
- This command is used to create the detached PGP signature for a multi-
- part/signed PGP/MIME body part. (PGP only)
+ message status flags
- _\b7_\b._\b4_\b._\b1_\b9_\b8 _\bp_\bg_\bp_\b__\bs_\bo_\br_\bt_\b__\bk_\be_\by_\bs
+ %{fmt}
- Type: sort order
+ the date and time of the message is converted to sender's time
+ zone, and ``fmt'' is expanded by the library function
+ ``strftime''; a leading bang disables locales
- Default: address
+ %[fmt]
- The Mutt Next Generation E-Mail Client 136
+ the date and time of the message is converted to the local time
+ zone, and ``fmt'' is expanded by the library function
+ ``strftime''; a leading bang disables locales
- Specifies how the entries in the ``pgp keys'' menu are sorted. The following
- are legal values:
+ %(fmt)
- address
- sort alphabetically by user id
+ the local date and time when the message was received. ``fmt'' is
+ expanded by the library function ``strftime''; a leading bang
+ disables locales
- keyid
- sort alphabetically by key id
+ %<fmt>
- date
- sort by key creation date
+ the current local time. ``fmt'' is expanded by the library
+ function ``strftime''; a leading bang disables locales.
- trust
- sort by the trust of the key
+ %>X
- If you prefer reverse order of the above values, prefix it with ``reverse-''.
- (PGP only)
+ right justify the rest of the string and pad with character "X"
- _\b7_\b._\b4_\b._\b1_\b9_\b9 _\bp_\bg_\bp_\b__\bs_\bt_\br_\bi_\bc_\bt_\b__\be_\bn_\bc
+ %|X
- Type: boolean
+ pad to the end of the line with character "X"
- Default: yes
+ See also: ``$to_chars''.
- If _\bs_\be_\bt, Mutt-ng will automatically encode PGP/MIME signed messages as quoted-
- printable. Please note that unsetting this variable may lead to problems with
- non-verifyable PGP signatures, so only change this if you know what you are
- doing. (PGP only)
+117. $ispell
- _\b7_\b._\b4_\b._\b2_\b0_\b0 _\bp_\bg_\bp_\b__\bt_\bi_\bm_\be_\bo_\bu_\bt
+ Type: path
- Type: number
+ Default: "ispell"
- Default: 300
+ How to invoke ispell (GNU's spell-checking software).
- The number of seconds after which a cached passphrase will expire if not used.
- Default: 300. (PGP only)
+118. $keep_flagged
- _\b7_\b._\b4_\b._\b2_\b0_\b1 _\bp_\bg_\bp_\b__\bu_\bs_\be_\b__\bg_\bp_\bg_\b__\ba_\bg_\be_\bn_\bt
+ Type: boolean
- Type: boolean
+ Default: no
- Default: no
+ If set, read messages marked as flagged will not be moved from your spool
+ mailbox to your ``$mbox'' mailbox, or as a result of a ``mbox-hook''
+ command.
- If _\bs_\be_\bt, Mutt-ng will use a possibly-running gpg-agent process. (PGP only)
+119. $list_reply
- _\b7_\b._\b4_\b._\b2_\b0_\b2 _\bp_\bg_\bp_\b__\bv_\be_\br_\bi_\bf_\by_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ Type: quadoption
- Type: string
+ Default: no
- Default: ''
+ When set, address replies to the mailing list the original message came
+ from (instead to the author only). Setting this option to ``ask-yes'' or
+ ``ask-no'' will ask if you really intended to reply to the author only.
- This command is used to verify PGP signatures. (PGP only)
+120. $locale
- The Mutt Next Generation E-Mail Client 137
+ Type: string
- _\b7_\b._\b4_\b._\b2_\b0_\b3 _\bp_\bg_\bp_\b__\bv_\be_\br_\bi_\bf_\by_\b__\bk_\be_\by_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ Default: "C"
- Type: string
+ The locale used by strftime(3) to format dates. Legal values are the
+ strings your system accepts for the locale variable LC_TIME.
- Default: ''
+121. $mail_check
- This command is used to verify key information from the key selection menu.
- (PGP only)
+ Type: number
- _\b7_\b._\b4_\b._\b2_\b0_\b4 _\bp_\bi_\bp_\be_\b__\bd_\be_\bc_\bo_\bd_\be
+ Default: 5
- Type: boolean
+ This variable configures how often (in seconds) Mutt-ng should look for
+ new mail.
- Default: no
+ Note: This does not apply to IMAP mailboxes, see $imap_mail_check.
- Used in connection with the _\bp_\bi_\bp_\be_\b-_\bm_\be_\bs_\bs_\ba_\bg_\be command. When _\bu_\bn_\bs_\be_\bt, Mutt-ng will
- pipe the messages without any preprocessing. When _\bs_\be_\bt, Mutt-ng will weed head-
- ers and will attempt to PGP/MIME decode the messages first.
+122. $mailcap_path
- _\b7_\b._\b4_\b._\b2_\b0_\b5 _\bp_\bi_\bp_\be_\b__\bs_\be_\bp
+ Type: string
- Type: string
+ Default: ""
- Default: '\n'
+ This variable specifies which files to consult when attempting to display
+ MIME bodies not directly supported by Mutt-ng.
- The separator to add between messages when piping a list of tagged messages to
- an external Unix command.
+123. $mailcap_sanitize
- _\b7_\b._\b4_\b._\b2_\b0_\b6 _\bp_\bi_\bp_\be_\b__\bs_\bp_\bl_\bi_\bt
+ Type: boolean
- Type: boolean
+ Default: yes
- Default: no
+ If set, Mutt-ng will restrict possible characters in mailcap % expandos to
+ a well-defined set of safe characters. This is the safe setting, but we
+ are not sure it doesn't break some more advanced MIME stuff.
- Used in connection with the _\bp_\bi_\bp_\be_\b-_\bm_\be_\bs_\bs_\ba_\bg_\be command and the ``tag- prefix'' or
- ``tag-prefix-cond'' operators. If this variable is _\bu_\bn_\bs_\be_\bt, when piping a list
- of tagged messages Mutt-ng will concatenate the messages and will pipe them as
- a single folder. When _\bs_\be_\bt, Mutt-ng will pipe the messages one by one. In both
- cases the messages are piped in the current sorted order, and the ``_\b$_\bp_\bi_\bp_\be_\b__\bs_\be_\bp
- (section 7.4.205 , page 137)'' separator is added after each message.
+ DON'T CHANGE THIS SETTING UNLESS YOU ARE REALLY SURE WHAT YOU ARE DOING!
- _\b7_\b._\b4_\b._\b2_\b0_\b7 _\bp_\bo_\bp_\b__\ba_\bu_\bt_\bh_\b__\bt_\br_\by_\b__\ba_\bl_\bl
+124. $maildir_header_cache_verify
- Type: boolean
+ Type: boolean
- Default: yes
+ Default: yes
- Availability: POP
+ Availability: Header Cache
- If _\bs_\be_\bt, Mutt-ng will try all available methods. When _\bu_\bn_\bs_\be_\bt, Mutt-ng will only
- fall back to other authentication methods if the previous methods are unavail-
- able. If a method is available but authentication fails, Mutt-ng will not con-
- nect to the POP server.
+ Check for Maildir unaware programs other than Mutt-ng having modified
+ maildir files when the header cache is in use. This incurs one stat(2) per
+ message every time the folder is opened.
- The Mutt Next Generation E-Mail Client 138
+125. $maildir_trash
- _\b7_\b._\b4_\b._\b2_\b0_\b8 _\bp_\bo_\bp_\b__\ba_\bu_\bt_\bh_\be_\bn_\bt_\bi_\bc_\ba_\bt_\bo_\br_\bs
+ Type: boolean
- Type: string
+ Default: no
- Default: ''
+ If set, messages marked as deleted will be saved with the maildir
+ (T)rashed flag instead of physically deleted.
- Availability: POP
+ NOTE: this only applies to maildir-style mailboxes. Setting it will have
+ no effect on other mailbox types.
- This is a colon-delimited list of authentication methods Mutt-ng may attempt to
- use to log in to an POP server, in the order Mutt-ng should try them. Authen-
- tication methods are either ``user'', ``apop'' or any SASL mechanism, eg
- ``digest-md5'', ``gssapi'' or ``cram-md5''.
+ It is similiar to the trash option.
- This parameter is case-insensitive. If this parameter is _\bu_\bn_\bs_\be_\bt (the default)
- Mutt-ng will try all available methods, in order from most-secure to least-
- secure.
+126. $mark_old
- Example: set pop_authenticators='digest-md5:apop:user'
+ Type: boolean
- _\b7_\b._\b4_\b._\b2_\b0_\b9 _\bp_\bo_\bp_\b__\bd_\be_\bl_\be_\bt_\be
+ Default: yes
- Type: quadoption
+ Controls whether or not Mutt-ng marks newunread messages as old if you
+ exit a mailbox without reading them.
- Default: ask-no
+ With this option set, the next time you start Mutt-ng, the messages will
+ show up with an "O" next to them in the ``index'' menu, indicating that
+ they are old.
- Availability: POP
+127. $markers
- If _\bs_\be_\bt, Mutt-ng will delete successfully downloaded messages from the POP
- server when using the ``fetch-mail'' function. When _\bu_\bn_\bs_\be_\bt, Mutt-ng will down-
- load messages but also leave them on the POP server.
+ Type: boolean
- _\b7_\b._\b4_\b._\b2_\b1_\b0 _\bp_\bo_\bp_\b__\bh_\bo_\bs_\bt
+ Default: yes
- Type: string
+ 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.
- Default: ''
+128. $mask
- Availability: POP
+ Type: regular expression
- The name of your POP server for the ``fetch-mail'' function. You can also
- specify an alternative port, username and password, i.e.:
+ Default: "!^\.[^.]"
- [pop[s]://][username[:password]@]popserver[:port]
+ A regular expression used in the file browser, optionally preceded by the
+ not operator ``!''. Only files whose names match this mask will be shown.
+ The match is always case-sensitive.
- N\bNo\bot\bte\be:\b: Storing passwords in a configuration file presents a security risk since
- the superuser of your machine may read it regardless of the file's permissions.
+129. $max_display_recips
- _\b7_\b._\b4_\b._\b2_\b1_\b1 _\bp_\bo_\bp_\b__\bl_\ba_\bs_\bt
+ Type: number
- Type: boolean
+ Default: 0
- Default: no
+ When set non-zero, this specifies the maximum number of recipient header
+ lines (To:, Cc: and Bcc:) to display in the pager if header weeding is
+ turned on. In case the number of lines exeeds its value, the last line
+ will have 3 dots appended.
- Availability: POP
+130. $max_line_length
- The Mutt Next Generation E-Mail Client 139
+ Type: number
- If this variable is _\bs_\be_\bt, Mutt-ng will try to use the ``LAST'' POP command for
- retrieving only unread messages from the POP server when using the ``fetch-
- mail'' function.
+ Default: 0
- _\b7_\b._\b4_\b._\b2_\b1_\b2 _\bp_\bo_\bp_\b__\bm_\ba_\bi_\bl_\b__\bc_\bh_\be_\bc_\bk
+ When set, the maximum line length for displaying ``format = flowed''
+ messages is limited to this length. A value of 0 (which is also the
+ default) means that the maximum line length is determined by the terminal
+ width and $wrapmargin.
- Type: number
+131. $mbox
- Default: 60
+ Type: path
- Availability: POP
+ Default: "~/mbox"
- This variable configures how often (in seconds) POP should look for new mail.
+ This specifies the folder into which read mail in your ``$spoolfile''
+ folder will be appended.
- _\b7_\b._\b4_\b._\b2_\b1_\b3 _\bp_\bo_\bp_\b__\bp_\ba_\bs_\bs
+132. $mbox_type
- Type: string
+ Type: folder magic
- Default: ''
+ Default: mbox
- Availability: POP
+ The default mailbox type used when creating new folders. May be any of
+ mbox, MMDF, MH and Maildir.
- Specifies the password for your POP account. If _\bu_\bn_\bs_\be_\bt, Mutt-ng will prompt you
- for your password when you open POP mailbox.
+133. $menu_context
- N\bNo\bot\bte\be:\b: Storing passwords in a configuration file presents a security risk since
- the superuser of your machine may read it regardless of the file's permissions.
+ Type: number
- _\b7_\b._\b4_\b._\b2_\b1_\b4 _\bp_\bo_\bp_\b__\br_\be_\bc_\bo_\bn_\bn_\be_\bc_\bt
+ Default: 0
- Type: quadoption
+ This variable controls the number of lines of context that are given when
+ scrolling through menus. (Similar to ``$pager_context''.)
- Default: ask-yes
+134. $menu_move_off
- Availability: POP
+ Type: boolean
- Controls whether or not Mutt-ng will try to reconnect to a POP server when the
- connection is lost.
+ Default: yes
- _\b7_\b._\b4_\b._\b2_\b1_\b5 _\bp_\bo_\bp_\b__\bu_\bs_\be_\br
+ When unset, the bottom entry of menus will never scroll up past the bottom
+ of the screen, unless there are less entries than lines. When set, the
+ bottom entry may move off the bottom.
- Type: string
+135. $menu_scroll
- Default: ''
+ Type: boolean
- Availability: POP
+ Default: no
- Your login name on the POP server.
+ When set, menus will be scrolled up or down one line when you attempt to
+ move across a screen boundary. If unset, the screen is cleared and the
+ next or previous page of the menu is displayed (useful for slow links to
+ avoid many redraws).
- This variable defaults to your user name on the local machine.
+136. $message_format
- _\b7_\b._\b4_\b._\b2_\b1_\b6 _\bp_\bo_\bs_\bt_\b__\bi_\bn_\bd_\be_\bn_\bt_\b__\bs_\bt_\br_\bi_\bn_\bg
+ Type: string
- Type: string
+ Default: "%s"
- The Mutt Next Generation E-Mail Client 140
+ This is the string displayed in the ``attachment'' menu for attachments of
+ type message/rfc822. For a full listing of defined printf(3)-like
+ sequences see the section on ``$index_format''.
- Default: ''
+137. $meta_key
- Similar to the ``_\b$_\ba_\bt_\bt_\br_\bi_\bb_\bu_\bt_\bi_\bo_\bn (section 7.4.17 , page 91)'' variable, Mutt-ng
- will append this string after the inclusion of a message which is being replied
- to.
+ Type: boolean
- _\b7_\b._\b4_\b._\b2_\b1_\b7 _\bp_\bo_\bs_\bt_\bp_\bo_\bn_\be
+ Default: no
- Type: quadoption
+ If set, forces Mutt-ng to interpret keystrokes with the high bit (bit 8)
+ set as if the user had pressed the ESC key and whatever key remains after
+ having the high bit removed. For example, if the key pressed has an ASCII
+ value of 0xf8, then this is treated as if the user had pressed ESC then
+ ``x''. This is because the result of removing the high bit from ``0xf8''
+ is ``0x78'', which is the ASCII character ``x''.
- Default: ask-yes
+138. $metoo
- Controls whether or not messages are saved in the ``_\b$_\bp_\bo_\bs_\bt_\bp_\bo_\bn_\be_\bd (section
- 7.4.218 , page 140)'' mailbox when you elect not to send immediately.
+ Type: boolean
- _\b7_\b._\b4_\b._\b2_\b1_\b8 _\bp_\bo_\bs_\bt_\bp_\bo_\bn_\be_\bd
+ Default: no
- Type: path
+ If unset, Mutt-ng will remove your address (see the ``alternates''
+ command) from the list of recipients when replying to a message.
- Default: '~/postponed'
+139. $mh_purge
- Mutt-ng allows you to indefinitely ``_\bp_\bo_\bs_\bt_\bp_\bo_\bn_\be (section 7.4.217 , page 139)
- sending a message'' which you are editing. When you choose to postpone a mes-
- sage, Mutt-ng saves it in the mailbox specified by this variable. Also see the
- ``_\b$_\bp_\bo_\bs_\bt_\bp_\bo_\bn_\be (section 7.4.217 , page 139)'' variable.
+ Type: boolean
- _\b7_\b._\b4_\b._\b2_\b1_\b9 _\bp_\br_\be_\bc_\bo_\bn_\bn_\be_\bc_\bt
+ Default: no
- Type: string
+ When unset, Mutt-ng will mimic mh's behaviour and rename deleted messages
+ to ,<old file name> in mh folders instead of really deleting them. If the
+ variable is set, the message files will simply be deleted.
- Default: ''
+140. $mh_seq_flagged
- If _\bs_\be_\bt, a shell command to be executed if Mutt-ng fails to establish a connec-
- tion to the server. This is useful for setting up secure connections, e.g. with
- ssh(1). If the command returns a nonzero status, Mutt-ng gives up opening the
- server. Example:
+ Type: string
- preconnect='ssh -f -q -L 1234:mailhost.net:143 mailhost.net sleep 20 <
- /dev/null > /dev/null'
+ Default: "flagged"
- Mailbox ``foo'' on mailhost.net can now be reached as ``{localhost:1234}foo''.
+ The name of the MH sequence used for flagged messages.
- N\bNo\bot\bte\be:\b: For this example to work, you must be able to log in to the remote
- machine without having to enter a password.
+141. $mh_seq_replied
- _\b7_\b._\b4_\b._\b2_\b2_\b0 _\bp_\br_\bi_\bn_\bt
+ Type: string
- Type: quadoption
+ Default: "replied"
- Default: ask-no
+ The name of the MH sequence used to tag replied messages.
- Controls whether or not Mutt-ng really prints messages. This is set to _\ba_\bs_\bk_\b-_\bn_\bo
- by default, because some people accidentally hit ``p'' often.
+142. $mh_seq_unseen
- The Mutt Next Generation E-Mail Client 141
+ Type: string
- _\b7_\b._\b4_\b._\b2_\b2_\b1 _\bp_\br_\bi_\bn_\bt_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ Default: "unseen"
- Type: path
+ The name of the MH sequence used for unseen messages.
- Default: 'lpr'
+143. $mime_forward
- This specifies the command pipe that should be used to print messages.
+ Type: quadoption
- _\b7_\b._\b4_\b._\b2_\b2_\b2 _\bp_\br_\bi_\bn_\bt_\b__\bd_\be_\bc_\bo_\bd_\be
+ Default: no
- Type: boolean
+ 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.
- Default: yes
+ This is useful for forwarding MIME messages so the receiver can properly
+ view the message as it was delivered to you. If you like to switch between
+ MIME and not MIME from mail to mail, set this variable to ask-no or
+ ask-yes.
- Used in connection with the print-message command. If this option is _\bs_\be_\bt, the
- message is decoded before it is passed to the external command specified by
- _\b$_\bp_\br_\bi_\bn_\bt_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd (section 7.4.221 , page 140). If this option is _\bu_\bn_\bs_\be_\bt, no pro-
- cessing will be applied to the message when printing it. The latter setting
- may be useful if you are using some advanced printer filter which is able to
- properly format e-mail messages for printing.
+ Also see ``$forward_decode'' and ``$mime_forward_decode''.
- _\b7_\b._\b4_\b._\b2_\b2_\b3 _\bp_\br_\bi_\bn_\bt_\b__\bs_\bp_\bl_\bi_\bt
+144. $mime_forward_decode
- Type: boolean
+ Type: boolean
- Default: no
+ Default: no
- Used in connection with the print-message command. If this option is _\bs_\be_\bt, the
- command specified by _\b$_\bp_\br_\bi_\bn_\bt_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd (section 7.4.221 , page 140) is executed
- once for each message which is to be printed. If this option is _\bu_\bn_\bs_\be_\bt, the
- command specified by _\b$_\bp_\br_\bi_\bn_\bt_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd (section 7.4.221 , page 140) is executed
- only once, and all the messages are concatenated, with a form feed as the mes-
- sage separator.
+ Controls the decoding of complex MIME messages into text/plain when
+ forwarding a message while ``$mime_forward'' is set. Otherwise
+ ``$forward_decode'' is used instead.
- Those who use the enscript(1) program's mail-printing mode will most likely
- want to set this option.
+145. $mime_forward_rest
- _\b7_\b._\b4_\b._\b2_\b2_\b4 _\bp_\br_\bo_\bm_\bp_\bt_\b__\ba_\bf_\bt_\be_\br
+ Type: quadoption
- Type: boolean
+ Default: yes
- Default: yes
+ When forwarding multiple attachments of a MIME message from the recvattach
+ menu, attachments which cannot be decoded in a reasonable manner will be
+ attached to the newly composed message if this option is set.
- If you use an _\be_\bx_\bt_\be_\br_\bn_\ba_\bl ``_\b$_\bp_\ba_\bg_\be_\br (section 7.4.170 , page 129)'', setting this
- variable will cause Mutt-ng to prompt you for a command when the pager exits
- rather than returning to the index menu. If _\bu_\bn_\bs_\be_\bt, Mutt-ng will return to the
- index menu when the external pager exits.
+146. $mix_entry_format
- _\b7_\b._\b4_\b._\b2_\b2_\b5 _\bq_\bu_\be_\br_\by_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ Type: string
- Type: path
+ Default: "%4n %c %-16s %a"
- Default: ''
+ Availability: Mixmaster
- The Mutt Next Generation E-Mail Client 142
+ This variable describes the format of a remailer line on the mixmaster
+ chain selection screen. The following printf(3)-like sequences are
+ supported:
- This specifies the command that Mutt-ng will use to make external address
- queries. The string should contain a %s, which will be substituted with the
- query string the user types. See ``_\bq_\bu_\be_\br_\by (section 4.7 , page 56)'' for more
- information.
+ %n
- _\b7_\b._\b4_\b._\b2_\b2_\b6 _\bq_\bu_\bi_\bt
+ The running number on the menu.
- Type: quadoption
+ %c
- Default: yes
+ Remailer capabilities.
- This variable controls whether ``quit'' and ``exit'' actually quit from Mutt-
- ng. If it set to _\by_\be_\bs, they do quit, if it is set to _\bn_\bo, they have no effect,
- and if it is set to _\ba_\bs_\bk_\b-_\by_\be_\bs or _\ba_\bs_\bk_\b-_\bn_\bo, you are prompted for confirmation when
- you try to quit.
+ %s
- _\b7_\b._\b4_\b._\b2_\b2_\b7 _\bq_\bu_\bo_\bt_\be_\b__\be_\bm_\bp_\bt_\by
+ The remailer's short name.
- Type: boolean
+ %a
- Default: yes
+ The remailer's e-mail address.
- Controls whether or not empty lines will be quoted using ``_\bi_\bn_\bd_\be_\bn_\bt_\b__\bs_\bt_\br_\bi_\bn_\bg (sec-
- tion 7.4.112 , page 113)''.
+147. $mixmaster
- _\b7_\b._\b4_\b._\b2_\b2_\b8 _\bq_\bu_\bo_\bt_\be_\b__\bq_\bu_\bo_\bt_\be_\bd
+ Type: path
- Type: boolean
+ Default: "mixmaster"
- Default: no
+ Availability: Mixmaster
- Controls how quoted lines will be quoted. If _\bs_\be_\bt, one quote character will be
- added to the end of existing prefix. Otherwise, quoted lines will be prepended
- by ``_\bi_\bn_\bd_\be_\bn_\bt_\b__\bs_\bt_\br_\bi_\bn_\bg (section 7.4.112 , page 113)''.
+ This variable contains the path to the Mixmaster binary on your system. It
+ is used with various sets of parameters to gather the list of known
+ remailers, and to finally send a message through the mixmaster chain.
- _\b7_\b._\b4_\b._\b2_\b2_\b9 _\bq_\bu_\bo_\bt_\be_\b__\br_\be_\bg_\be_\bx_\bp
+148. $move
- Type: regular expression
+ Type: quadoption
- Default: '^([ \t]*[|>:}#])+'
+ Default: ask-no
- A regular expression used in the internal-pager to determine quoted sections of
- text in the body of a message.
+ Controls whether or not Mutt-ng will move read messages from your spool
+ mailbox to your ``$mbox'' mailbox, or as a result of a ``mbox-hook''
+ command.
- N\bNo\bot\bte\be:\b: In order to use the _\bq_\bu_\bo_\bt_\be_\bdx\bx patterns in the internal pager, you need to
- set this to a regular expression that matches _\be_\bx_\ba_\bc_\bt_\bl_\by the quote characters at
- the beginning of quoted lines.
+149. $msgid_format
- _\b7_\b._\b4_\b._\b2_\b3_\b0 _\br_\be_\ba_\bd_\b__\bi_\bn_\bc
+ Type: string
- Type: number
+ Default: "%Y%m%d%h%M%s.G%P%p"
- Default: 10
+ This is the format for the ``local part'' of the Message-ID: header field
+ generated by Mutt-ng. If this variable is empty, no Message-ID: headers
+ will be generated. The '%' character marks that certain data will be added
+ to the string, similar to printf(3). The following characters are allowed:
- The Mutt Next Generation E-Mail Client 143
+ %d
- If set to a value greater than 0, Mutt-ng will display which message it is cur-
- rently on when reading a mailbox. The message is printed after _\br_\be_\ba_\bd_\b__\bi_\bn_\bc mes-
- sages have been read (e.g., if set to 25, Mutt-ng 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.
+ the current day of month
- Also see the ``_\b$_\bw_\br_\bi_\bt_\be_\b__\bi_\bn_\bc (section 7.4.344 , page 170)'' variable.
+ %h
- _\b7_\b._\b4_\b._\b2_\b3_\b1 _\br_\be_\ba_\bd_\b__\bo_\bn_\bl_\by
+ the current hour
- Type: boolean
+ %m
- Default: no
+ the current month
- If set, all folders are opened in read-only mode.
+ %M
- _\b7_\b._\b4_\b._\b2_\b3_\b2 _\br_\be_\ba_\bl_\bn_\ba_\bm_\be
+ the current minute
- Type: string
+ %O
- Default: ''
+ the current UNIX timestamp (octal)
- This variable specifies what ``real'' or ``personal'' name should be used when
- sending messages.
+ %p
- By default, this is the GECOS field from /etc/passwd.
+ the process ID
- _\bN_\bo_\bt_\be_\b: This variable will _\bn_\bo_\bt be used when the user has set a real name in the
- _\b$_\bf_\br_\bo_\bm (section 7.4.77 , page 105) variable.
+ %P
- _\b7_\b._\b4_\b._\b2_\b3_\b3 _\br_\be_\bc_\ba_\bl_\bl
+ the current Message-ID prefix (a character rotating with every
+ Message-ID being generated)
- Type: quadoption
+ %r
- Default: ask-yes
+ a random integer value (decimal)
- Controls whether or not Mutt-ng recalls postponed messages when composing a new
- message. Also see ``_\b$_\bp_\bo_\bs_\bt_\bp_\bo_\bn_\be_\bd (section 7.4.218 , page 140)''.
+ %R
- Setting this variable to _\by_\be_\bs is not generally useful, and thus not recommended.
+ a random integer value (hexadecimal)
- _\b7_\b._\b4_\b._\b2_\b3_\b4 _\br_\be_\bc_\bo_\br_\bd
+ %s
- Type: path
+ the current second
- Default: ''
+ %T
- 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 ``_\bm_\by_\b__\bh_\bd_\br (section 3.15 , page 35)'' com-
- mand to create a Bcc: header field with your email address in it.)
+ the current UNIX timestamp (decimal)
- The Mutt Next Generation E-Mail Client 144
+ %X
- The value of _\b$_\br_\be_\bc_\bo_\br_\bd _\b(_\bs_\be_\bc_\bt_\bi_\bo_\bn _\b7_\b._\b4_\b._\b2_\b3_\b4 _\b, _\bp_\ba_\bg_\be _\b1_\b4_\b3_\b) is overridden by the
- ``_\b$_\bf_\bo_\br_\bc_\be_\b__\bn_\ba_\bm_\be (section 7.4.71 , page 103)'' and ``_\b$_\bs_\ba_\bv_\be_\b__\bn_\ba_\bm_\be (section
- 7.4.245 , page 146)'' variables, and the ``_\bf_\bc_\bc_\b-_\bh_\bo_\bo_\bk (section 3.18 , page
- 36)'' command.
+ the current UNIX timestamp (hexadecimal)
- _\b7_\b._\b4_\b._\b2_\b3_\b5 _\br_\be_\bp_\bl_\by_\b__\br_\be_\bg_\be_\bx_\bp
+ %Y
- Type: regular expression
+ the current year (Y2K compliant)
- Default: '^(re([\[0-9\]+])*|aw):[ \t]*'
+ %%
- A regular expression used to recognize reply messages when threading and reply-
- ing. The default value corresponds to the English ``Re:'' and the German
- ``Aw:''.
+ the '%' character
- _\b7_\b._\b4_\b._\b2_\b3_\b6 _\br_\be_\bp_\bl_\by_\b__\bs_\be_\bl_\bf
+ Note: Please only change this setting if you know what you are doing. Also
+ make sure to consult RFC2822 to produce technically valid strings.
- Type: boolean
+150. $muttng_bindir
- Default: no
+ Type: system property
- If _\bu_\bn_\bs_\be_\bt and you are replying to a message sent by you, Mutt-ng will assume
- that you want to reply to the recipients of that message rather than to your-
- self.
+ Value: /opt/freebsd4/mutt-ng/bin
- _\b7_\b._\b4_\b._\b2_\b3_\b7 _\br_\be_\bp_\bl_\by_\b__\bt_\bo
+ This is a read-only system property and specifies the directory containing
+ the muttng binary.
- Type: quadoption
+151. $muttng_docdir
- Default: ask-yes
+ Type: system property
- If _\bs_\be_\bt, when replying to a message, Mutt-ng will use the address listed in the
- ``Reply-To:'' header field as the recipient of the reply. If _\bu_\bn_\bs_\be_\bt, it will
- use the address in the ``From:'' header field instead.
+ Value: /opt/freebsd4/mutt-ng/doc/muttng
- 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.
+ This is a read-only system property and specifies the directory containing
+ the muttng documentation.
- _\b7_\b._\b4_\b._\b2_\b3_\b8 _\br_\be_\bs_\bo_\bl_\bv_\be
+152. $muttng_folder_name
- Type: boolean
+ Type: system property
- Default: yes
+ Value:
- When set, the cursor will be automatically advanced to the next (possibly
- undeleted) message whenever a command that modifies the current message is exe-
- cuted.
+ This is a read-only system property and, at runtime, specifies the last
+ part of the full path or URI of the folder currently open (if any), i.e.
+ everything after the last ``/''.
- _\b7_\b._\b4_\b._\b2_\b3_\b9 _\br_\be_\bv_\be_\br_\bs_\be_\b__\ba_\bl_\bi_\ba_\bs
+153. $muttng_folder_path
- Type: boolean
+ Type: system property
- Default: no
+ Value:
- The Mutt Next Generation E-Mail Client 145
+ This is a read-only system property and, at runtime, specifies the full
+ path or URI of the folder currently open (if any).
- This variable controls whether or not Mutt-ng 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:
+154. $muttng_hcache_backend
- alias juser abd30425@somewhere.net (Joe User)
+ Type: system property
- and then you receive mail which contains the following header:
+ Value: qdbm
- From: abd30425@somewhere.net
+ This is a read-only system property and specifies the header chaching's
+ database backend.
- 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 CompuServe addresses).
+155. $muttng_pwd
- _\b7_\b._\b4_\b._\b2_\b4_\b0 _\br_\be_\bv_\be_\br_\bs_\be_\b__\bn_\ba_\bm_\be
+ Type: system property
- Type: boolean
+ Value:
- Default: no
+ This is a read-only system property and, at runtime, specifies the current
+ working directory of the muttng binary.
- It may sometimes arrive that you receive mail to a certain machine, move the
- messages to another machine, and reply to some the messages from there. If
- this variable is _\bs_\be_\bt, the default From: line of the reply messages is built
- using the address where you received the messages you are replying to i\bif\bf that
- address matches your alternates. If the variable is _\bu_\bn_\bs_\be_\bt, or the address that
- would be used doesn't match your alternates, the From: line will use your
- address on the current machine.
+156. $muttng_revision
- _\b7_\b._\b4_\b._\b2_\b4_\b1 _\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\ba_\bl_\bn_\ba_\bm_\be
+ Type: system property
- Type: boolean
+ Value: 541
- Default: yes
+ This is a read-only system property and specifies muttng's subversion
+ revision string.
- This variable fine-tunes the behaviour of the _\br_\be_\bv_\be_\br_\bs_\be_\b__\bn_\ba_\bm_\be (section 7.4.240 ,
- page 145) feature. When it is _\bs_\be_\bt, Mutt-ng will use the address from incoming
- messages as-is, possibly including eventual real names. When it is _\bu_\bn_\bs_\be_\bt,
- Mutt-ng will override any such real names with the setting of the _\br_\be_\ba_\bl_\bn_\ba_\bm_\be
- (section 7.4.232 , page 143) variable.
+157. $muttng_sysconfdir
- _\b7_\b._\b4_\b._\b2_\b4_\b2 _\br_\bf_\bc_\b2_\b0_\b4_\b7_\b__\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br_\bs
+ Type: system property
- Type: boolean
+ Value: /opt/freebsd4/mutt-ng/etc
- Default: no
+ This is a read-only system property and specifies the directory containing
+ the muttng system-wide configuration.
- When this variable is _\bs_\be_\bt, Mutt-ng will decode RFC-2047-encoded MIME parame-
- ters. You want to set this variable when Mutt-ng suggests you to save attach-
- ments to files named like this:
+158. $muttng_version
- =?iso-8859-1?Q?file=5F=E4=5F991116=2Ezip?=
+ Type: system property
- When this variable is _\bs_\be_\bt interactively, the change doesn't have the desired
- effect before you have changed folders.
+ Value: devel
- The Mutt Next Generation E-Mail Client 146
+ This is a read-only system property and specifies muttng's version string.
- Note that this use of RFC 2047's encoding is explicitly, prohibited by the
- standard, but nevertheless encountered in the wild.
+159. $narrow_tree
- Also note that setting this parameter will _\bn_\bo_\bt have the effect that Mutt-ng
- _\bg_\be_\bn_\be_\br_\ba_\bt_\be_\bs this kind of encoding. Instead, Mutt-ng will unconditionally use the
- encoding specified in RFC 2231.
+ Type: boolean
- _\b7_\b._\b4_\b._\b2_\b4_\b3 _\bs_\ba_\bv_\be_\b__\ba_\bd_\bd_\br_\be_\bs_\bs
+ Default: no
- Type: boolean
+ This variable, when set, makes the thread tree narrower, allowing deeper
+ threads to fit on the screen.
- Default: no
+160. $net_inc
- If _\bs_\be_\bt, Mutt-ng will take the sender's full address when choosing a default
- folder for saving a mail. If ``_\b$_\bs_\ba_\bv_\be_\b__\bn_\ba_\bm_\be (section 7.4.245 , page 146)'' or
- ``_\b$_\bf_\bo_\br_\bc_\be_\b__\bn_\ba_\bm_\be (section 7.4.71 , page 103)'' is _\bs_\be_\bt too, the selection of the
- fcc folder will be changed as well.
+ Type: number
- _\b7_\b._\b4_\b._\b2_\b4_\b4 _\bs_\ba_\bv_\be_\b__\be_\bm_\bp_\bt_\by
+ Default: 10
- Type: boolean
+ Operations that expect to transfer a large amount of data over the network
+ will update their progress every net_inc kilobytes. If set to 0, no
+ progress messages will be displayed.
- Default: yes
+ See also ``$read_inc'' and ``$write_inc''.
- When _\bu_\bn_\bs_\be_\bt, mailboxes which contain no saved messages will be removed when
- closed (the exception is ``_\b$_\bs_\bp_\bo_\bo_\bl_\bf_\bi_\bl_\be (section 7.4.301 , page 159)'' which is
- never removed). If _\bs_\be_\bt, mailboxes are never removed.
+161. $nntp_ask_followup_to
- N\bNo\bot\bte\be:\b: This only applies to mbox and MMDF folders, Mutt-ng does not delete MH
- and Maildir directories.
+ Type: boolean
- _\b7_\b._\b4_\b._\b2_\b4_\b5 _\bs_\ba_\bv_\be_\b__\bn_\ba_\bm_\be
+ Default: no
- Type: boolean
+ Availability: NNTP
- Default: no
+ If set, Mutt-ng will prompt you for the Followup-To: header field before
+ editing the body of an outgoing news article.
- 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 mailbox in the ``_\b$_\bf_\bo_\bl_\bd_\be_\br (section 7.4.67 ,
- page 102)'' directory with the _\bu_\bs_\be_\br_\bn_\ba_\bm_\be 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 ``_\b$_\br_\be_\bc_\bo_\br_\bd (section 7.4.234 , page 143)'' mailbox.
+162. $nntp_ask_x_comment_to
- Also see the ``_\b$_\bf_\bo_\br_\bc_\be_\b__\bn_\ba_\bm_\be (section 7.4.71 , page 103)'' variable.
+ Type: boolean
- _\b7_\b._\b4_\b._\b2_\b4_\b6 _\bs_\bc_\bo_\br_\be
+ Default: no
- Type: boolean
+ Availability: NNTP
- Default: yes
+ If set, Mutt-ng will prompt you for the X-Comment-To: header field before
+ editing the body of an outgoing news article.
- When this variable is _\bu_\bn_\bs_\be_\bt, scoring is turned off. This can be useful to
- selectively disable scoring for certain folders when the
+163. $nntp_cache_dir
- The Mutt Next Generation E-Mail Client 147
+ Type: path
- ``_\b$_\bs_\bc_\bo_\br_\be_\b__\bt_\bh_\br_\be_\bs_\bh_\bo_\bl_\bd_\b__\bd_\be_\bl_\be_\bt_\be (section 7.4.247 , page 146)'' variable and friends
- are used.
+ Default: "~/.muttng"
- _\b7_\b._\b4_\b._\b2_\b4_\b7 _\bs_\bc_\bo_\br_\be_\b__\bt_\bh_\br_\be_\bs_\bh_\bo_\bl_\bd_\b__\bd_\be_\bl_\be_\bt_\be
+ Availability: NNTP
- Type: number
+ This variable points to directory where Mutt-ng will cache news article
+ headers. If unset, headers will not be saved at all and will be reloaded
+ each time when you enter a newsgroup.
- Default: -1
+ As for the header caching in connection with IMAP and/or Maildir, this
+ drastically increases speed and lowers traffic.
- Messages which have been assigned a score equal to or lower than the value of
- this variable are automatically marked for deletion by Mutt-ng. Since Mutt-ng
- scores are always greater than or equal to zero, the default setting of this
- variable will never mark a message for deletion.
+164. $nntp_catchup
- _\b7_\b._\b4_\b._\b2_\b4_\b8 _\bs_\bc_\bo_\br_\be_\b__\bt_\bh_\br_\be_\bs_\bh_\bo_\bl_\bd_\b__\bf_\bl_\ba_\bg
+ Type: quadoption
- Type: number
+ Default: ask-yes
- Default: 9999
+ Availability: NNTP
- Messages which have been assigned a score greater than or equal to this vari-
- able's value are automatically marked ``flagged''.
+ If this variable is set, Mutt-ng will mark all articles in a newsgroup as
+ read when you leaving it.
- _\b7_\b._\b4_\b._\b2_\b4_\b9 _\bs_\bc_\bo_\br_\be_\b__\bt_\bh_\br_\be_\bs_\bh_\bo_\bl_\bd_\b__\br_\be_\ba_\bd
+165. $nntp_context
- Type: number
+ Type: number
- Default: -1
+ Default: 1000
- Messages which have been assigned a score equal to or lower than the value of
- this variable are automatically marked as read by Mutt-ng. Since Mutt-ng
- scores are always greater than or equal to zero, the default setting of this
- variable will never mark a message read.
+ Availability: NNTP
- _\b7_\b._\b4_\b._\b2_\b5_\b0 _\bs_\be_\bn_\bd_\b__\bc_\bh_\ba_\br_\bs_\be_\bt
+ This variable controls how many news articles to cache per newsgroup (if
+ caching is enabled, see $nntp_cache_dir) and how many news articles to
+ show in the ``index'' menu.
- Type: string
+ If there're more articles than defined with $nntp_context, all older ones
+ will be removed/not shown in the index.
- Default: 'us-ascii:iso-8859-1:utf-8'
+166. $nntp_followup_to_poster
- A list of character sets for outgoing messages. Mutt-ng will use the first
- character set into which the text can be converted exactly. If your ``_\b$_\bc_\bh_\ba_\br_\bs_\be_\bt
- (section 7.4.26 , page 93)'' is not iso-8859-1 and recipients may not under-
- stand UTF-8, it is advisable to include in the list an appropriate widely used
- standard character set (such as iso-8859-2, koi8-r or iso-2022-jp) either
- instead of or after iso-8859-1.
+ Type: quadoption
- _\b7_\b._\b4_\b._\b2_\b5_\b1 _\bs_\be_\bn_\bd_\bm_\ba_\bi_\bl
+ Default: ask-yes
- Type: path
+ Availability: NNTP
- Default: '/usr/sbin/sendmail -oem -oi'
+ If this variable is set and the keyword "poster" is present in the
+ Followup-To: header field, a follow-up to the newsgroup is not permitted.
+ The message will be mailed to the submitter of the message via mail.
- Specifies the program and arguments used to deliver mail sent by Mutt-ng.
+167. $nntp_group_index_format
- The Mutt Next Generation E-Mail Client 148
+ Type: string
- Mutt-ng expects that the specified program interprets additional arguments as
- recipient addresses.
+ Default: "%4C %M%N %5s %-45.45f %d"
- _\b7_\b._\b4_\b._\b2_\b5_\b2 _\bs_\be_\bn_\bd_\bm_\ba_\bi_\bl_\b__\bw_\ba_\bi_\bt
+ Availability: NNTP
- Type: number
+ This variable allows you to customize the newsgroup browser display to
+ your personal taste. This string is similar to ``index_format'', but has
+ its own set of printf(3)-like sequences:
- Default: 0
+ %C current newsgroup number
+ %d description of newsgroup (retrieved from server)
+ %f newsgroup name
+ %M ``-'' if newsgroup not allowed for direct post (moderated for example)
+ %N ``N'' if newsgroup is new, ``u'' if unsubscribed, blank otherwise
+ %n number of new articles in newsgroup
+ %s number of unread articles in newsgroup
+ %>X right justify the rest of the string and pad with character "X"
+ %|X pad to the end of the line with character "X"
- Specifies the number of seconds to wait for the ``_\b$_\bs_\be_\bn_\bd_\bm_\ba_\bi_\bl (section 7.4.251 ,
- page 147)'' process to finish before giving up and putting delivery in the
- background.
- Mutt-ng interprets the value of this variable as follows:
+168. $nntp_host
- >0
- number of seconds to wait for sendmail to finish before continuing
+ Type: string
- 0
- wait forever for sendmail to finish
+ Default: ""
- <0
- always put sendmail in the background without waiting
+ Availability: NNTP
- Note that if you specify a value other than 0, the output of the child process
- will be put in a temporary file. If there is some error, you will be informed
- as to where to find the output.
+ This variable specifies the name (or address) of the NNTP server to be
+ used.
- _\b7_\b._\b4_\b._\b2_\b5_\b3 _\bs_\bh_\be_\bl_\bl
+ It defaults to the value specified via the environment variable
+ $NNTPSERVER or contained in the file /etc/nntpserver.
- Type: path
+ You can also specify a username and an alternative port for each
+ newsserver, e.g.
- Default: ''
+ [nntp[s]://][username[:password]@]newsserver[:port]
- Command to use when spawning a subshell. By default, the user's login shell
- from /etc/passwd is used.
+ Note: Using a password as shown and stored in a configuration file
+ presents a security risk since the superuser of your machine may read it
+ regardless of the file's permissions.
- _\b7_\b._\b4_\b._\b2_\b5_\b4 _\bs_\bi_\bd_\be_\bb_\ba_\br_\b__\bb_\bo_\bu_\bn_\bd_\ba_\br_\by
+169. $nntp_inews
- Type: string
+ Type: path
- Default: '.'
+ Default: ""
- When the sidebar is displayed and _\b$_\bs_\bi_\bd_\be_\bb_\ba_\br_\b__\bs_\bh_\bo_\br_\bt_\be_\bn_\b__\bh_\bi_\be_\br_\ba_\br_\bc_\bh_\by (section
- 7.4.258 , page 149) is _\bs_\be_\bt, this variable specifies the characters at which to
- split a folder name into ``hierarchy items.''
+ Availability: NNTP
- _\b7_\b._\b4_\b._\b2_\b5_\b5 _\bs_\bi_\bd_\be_\bb_\ba_\br_\b__\bd_\be_\bl_\bi_\bm
+ If set, specifies the program and arguments used to deliver news posted by
+ Mutt-ng. Otherwise, Mutt-ng posts article using current connection. The
+ following printf(3)-style sequence is understood:
- Type: string
+ %s newsserver name
- Default: '|'
- This specifies the delimiter between the sidebar (if visible) and other
+ Example: set inews="/usr/local/bin/inews -hS"
- The Mutt Next Generation E-Mail Client 149
+170. $nntp_load_description
- screens.
+ Type: boolean
- _\b7_\b._\b4_\b._\b2_\b5_\b6 _\bs_\bi_\bd_\be_\bb_\ba_\br_\b__\bn_\be_\bw_\bm_\ba_\bi_\bl_\b__\bo_\bn_\bl_\by
+ Default: yes
- Type: boolean
+ Availability: NNTP
- Default: no
+ This variable controls whether or not descriptions for newsgroups are to
+ be loaded when subscribing to a newsgroup.
- If _\bs_\be_\bt, only folders with new mail will be shown in the sidebar.
+171. $nntp_mail_check
- _\b7_\b._\b4_\b._\b2_\b5_\b7 _\bs_\bi_\bd_\be_\bb_\ba_\br_\b__\bn_\bu_\bm_\bb_\be_\br_\b__\bf_\bo_\br_\bm_\ba_\bt
+ Type: number
- Type: string
+ Default: 60
- Default: '%m%?n?(%n)?%?f?[%f]?'
+ Availability: NNTP
- This variable controls how message counts are printed when the sidebar is
- enabled. If this variable is _\be_\bm_\bp_\bt_\by (_\ba_\bn_\bd _\bo_\bn_\bl_\by _\bi_\bf), no numbers will be printed
- _\ba_\bn_\bd mutt-ng won't frequently count mail (which may be a great speedup esp. with
- mbox-style mailboxes.)
+ The time in seconds until any operations on a newsgroup except posting a
+ new article will cause a recheck for new news. If set to 0, Mutt-ng will
+ recheck on each operation in index (stepping, read article, etc.).
- The following printf(3)-like sequences are supported all of which may be
- printed non-zero:
+172. $nntp_mime_subject
- %d
- Number of deleted messages. 1)
+ Type: boolean
- %F
- Number of flagged messages.
+ Default: yes
- %m
- Total number of messages.
+ Availability: NNTP
- %M
- Total number of messages shown, i.e. not hidden by a limit. 1)
+ If unset, an 8-bit ``Subject:'' header field in a news article will not be
+ encoded according to RFC2047.
- %n
- Number of new messages.
+ Note: Only change this setting if you know what you are doing.
- %t
- Number of tagged messages. 1)
+173. $nntp_newsrc
- 1) These expandos only have a non-zero value for the current mailbox and will
- always be zero otherwise.
+ Type: path
- _\b7_\b._\b4_\b._\b2_\b5_\b8 _\bs_\bi_\bd_\be_\bb_\ba_\br_\b__\bs_\bh_\bo_\br_\bt_\be_\bn_\b__\bh_\bi_\be_\br_\ba_\br_\bc_\bh_\by
+ Default: "~/.newsrc"
- Type: boolean
+ Availability: NNTP
- Default: no
+ This file contains information about subscribed newsgroup and articles
+ read so far.
- When _\bs_\be_\bt, the ``hierarchy'' of the sidebar entries will be shortened only if
- they cannot be printed in full length (because ``_\b$_\bs_\bi_\bd_\be_\bb_\ba_\br_\b__\bw_\bi_\bd_\bt_\bh (section
- 7.4.260 , page 150)'' is set to a too low value). For example, if the
+ To ease the use of multiple news servers, the following printf(3)-style
+ sequence is understood:
- The Mutt Next Generation E-Mail Client 150
+ %s newsserver name
- newsgroup name ``de.alt.sysadmin.recovery'' doesn't fit on the screen, it'll
- get shortened ``d.a.s.recovery'' while ``de.alt.d0'' still would and thus will
- not get shortened.
- At which characters this compression is done is controled via the _\b$_\bs_\bi_\bd_\be_\b-
- _\bb_\ba_\br_\b__\bb_\bo_\bu_\bn_\bd_\ba_\br_\by (section 7.4.254 , page 148) variable.
+174. $nntp_pass
- _\b7_\b._\b4_\b._\b2_\b5_\b9 _\bs_\bi_\bd_\be_\bb_\ba_\br_\b__\bv_\bi_\bs_\bi_\bb_\bl_\be
+ Type: string
- Type: boolean
+ Default: ""
- Default: no
+ Availability: NNTP
- This specifies whether or not to show the sidebar (a list of folders specified
- with the ``mailboxes'' command).
+ Your password for NNTP account.
- _\b7_\b._\b4_\b._\b2_\b6_\b0 _\bs_\bi_\bd_\be_\bb_\ba_\br_\b__\bw_\bi_\bd_\bt_\bh
+ Note: Storing passwords in a configuration file presents a security risk
+ since the superuser of your machine may read it regardless of the file's
+ permissions.
- Type: number
+175. $nntp_post_moderated
- Default: 0
+ Type: quadoption
- The width of the sidebar.
+ Default: ask-yes
- _\b7_\b._\b4_\b._\b2_\b6_\b1 _\bs_\bi_\bg_\b__\bd_\ba_\bs_\bh_\be_\bs
+ Availability: NNTP
- Type: boolean
+ If set to yes, Mutt-ng will post articles to newsgroup that have not
+ permissions to post (e.g. moderated).
- Default: yes
+ Note: if the newsserver does not support posting to that newsgroup or a
+ group is totally read-only, that posting will not have any effect.
- If set, a line containing ``-- '' (dash, dash, space) will be inserted before
- your ``_\b$_\bs_\bi_\bg_\bn_\ba_\bt_\bu_\br_\be (section 7.4.263 , page 150)''. It is s\bst\btr\bro\bon\bng\bgl\bly\by 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.
+176. $nntp_reconnect
- For example, Mutt-ng has the ability to highlight the signature in a different
- color in the builtin pager.
+ Type: quadoption
- _\b7_\b._\b4_\b._\b2_\b6_\b2 _\bs_\bi_\bg_\b__\bo_\bn_\b__\bt_\bo_\bp
+ Default: ask-yes
- Type: boolean
+ Availability: NNTP
- Default: no
+ Controls whether or not Mutt-ng will try to reconnect to a newsserver when
+ the was connection lost.
- If _\bs_\be_\bt, the signature will be included before any quoted or forwarded text. It
- is s\bst\btr\bro\bon\bng\bgl\bly\by recommended that you do not set this variable unless you really
- know what you are doing, and are prepared to take some heat from netiquette
- guardians.
+177. $nntp_save_unsubscribed
- _\b7_\b._\b4_\b._\b2_\b6_\b3 _\bs_\bi_\bg_\bn_\ba_\bt_\bu_\br_\be
+ Type: boolean
- Type: path
+ Default: no
- The Mutt Next Generation E-Mail Client 151
+ Availability: NNTP
- Default: '~/.signature'
+ When set, info about unsubscribed newsgroups will be saved into the
+ ``newsrc'' file and into the news cache.
- Specifies the filename of your signature, which is appended to all outgoing
- messages. If the filename ends with a pipe (``|''), it is assumed that file-
- name is a shell command and input should be read from its stdout.
+178. $nntp_show_new_news
- _\b7_\b._\b4_\b._\b2_\b6_\b4 _\bs_\bi_\bg_\bn_\bo_\bf_\bf_\b__\bs_\bt_\br_\bi_\bn_\bg
+ Type: boolean
- Type: string
+ Default: yes
- Default: ''
+ Availability: NNTP
- If _\bs_\be_\bt, this string will be inserted before the signature. This is useful for
- people that want to sign off every message they send with their name.
+ If set, the newsserver will be asked for new newsgroups on entering the
+ browser. Otherwise, it will be done only once for a newsserver. Also
+ controls whether or not the number of new articles of subscribed
+ newsgroups will be checked.
- If you want to insert your website's URL, additional contact information or
- witty quotes into your mails, better use a signature file instead of the sig-
- noff string.
+179. $nntp_show_only_unread
- _\b7_\b._\b4_\b._\b2_\b6_\b5 _\bs_\bi_\bm_\bp_\bl_\be_\b__\bs_\be_\ba_\br_\bc_\bh
+ Type: boolean
- Type: string
+ Default: no
- Default: '~f %s | ~s %s'
+ Availability: NNTP
- Specifies how Mutt-ng should expand a simple search into a real search pattern.
- A simple search is one that does not contain any of the ~ operators. See
- ``_\bp_\ba_\bt_\bt_\be_\br_\bn_\bs (section 7.2 , page 81)'' for more information on search patterns.
+ If set, only subscribed newsgroups that contain unread articles will be
+ displayed in the newsgroup browser.
- For example, if you simply type ``joe'' at a search or limit prompt, Mutt-ng
- will automatically expand it to the value specified by this variable. For the
- default value it would be:
+180. $nntp_user
- ~f joe | ~s joe
+ Type: string
- _\b7_\b._\b4_\b._\b2_\b6_\b6 _\bs_\bl_\be_\be_\bp_\b__\bt_\bi_\bm_\be
+ Default: ""
- Type: number
+ Availability: NNTP
- Default: 1
+ Your login name on the NNTP server. If unset and the server requires
+ authentification, Mutt-ng will prompt you for your account name.
- Specifies time, in seconds, to pause while displaying certain informational
- messages, while moving from folder to folder and after expunging messages from
- the current folder. The default is to pause one second, so a value of zero for
- this option suppresses the pause.
+181. $nntp_x_comment_to
- _\b7_\b._\b4_\b._\b2_\b6_\b7 _\bs_\bm_\ba_\br_\bt_\b__\bw_\br_\ba_\bp
+ Type: boolean
- Type: boolean
+ Default: no
- Default: yes
+ Availability: NNTP
- Controls the display of lines longer than the screen width in the internal
- pager. If _\bs_\be_\bt, long lines are wrapped at a word boundary. If _\bu_\bn_\bs_\be_\bt, lines are
+ If set, Mutt-ng will add a ``X-Comment-To:'' header field (that contains
+ full name of the original article author) to articles that you followup
+ to.
- The Mutt Next Generation E-Mail Client 152
+182. $operating_system
- simply wrapped at the screen edge. Also see the ``_\b$_\bm_\ba_\br_\bk_\be_\br_\bs (section 7.4.124 ,
- page 117)'' variable.
+ Type: string
- _\b7_\b._\b4_\b._\b2_\b6_\b8 _\bs_\bm_\bi_\bl_\be_\by_\bs
+ Default: ""
- Type: regular expression
+ This specifies the operating system name for the User-Agent: header field.
+ If this is unset, it will be set to the operating system name that
+ uname(2) returns. If uname(2) fails, ``UNIX'' will be used.
- Default: '(>From )|(:[-^]?[][)(><}{|/DP])'
+ It may, for example, look as: ``mutt-ng 1.5.9i (Linux)''.
- The _\bp_\ba_\bg_\be_\br uses this variable to catch some common false positives of
- ``_\b$_\bq_\bu_\bo_\bt_\be_\b__\br_\be_\bg_\be_\bx_\bp (section 7.4.229 , page 142)'', most notably smileys in the
- beginning of a line
+183. $pager
- _\b7_\b._\b4_\b._\b2_\b6_\b9 _\bs_\bm_\bi_\bm_\be_\b__\ba_\bs_\bk_\b__\bc_\be_\br_\bt_\b__\bl_\ba_\bb_\be_\bl
+ Type: path
- Type: boolean
+ Default: "builtin"
- Default: yes
+ This variable specifies which pager you would like to use to view
+ messages. ``builtin'' means to use the builtin pager, otherwise this
+ variable should specify the pathname of the external pager you would like
+ to use.
- This flag controls whether you want to be asked to enter a label for a certifi-
- cate about to be added to the database or not. It is _\bs_\be_\bt by default. (S/MIME
- only)
+ Using an external pager may have some disadvantages: Additional keystrokes
+ are necessary because you can't call Mutt-ng functions directly from the
+ pager, and screen resizes cause lines longer than the screen width to be
+ badly formatted in the help menu.
- _\b7_\b._\b4_\b._\b2_\b7_\b0 _\bs_\bm_\bi_\bm_\be_\b__\bc_\ba_\b__\bl_\bo_\bc_\ba_\bt_\bi_\bo_\bn
+184. $pager_context
- Type: path
+ Type: number
- Default: ''
+ Default: 0
- This variable contains the name of either a directory, or a file which contains
- trusted certificates for use with OpenSSL. (S/MIME only)
+ 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-ng will display the line after the last one on the screen at the top
+ of the next page (0 lines of context).
- _\b7_\b._\b4_\b._\b2_\b7_\b1 _\bs_\bm_\bi_\bm_\be_\b__\bc_\be_\br_\bt_\bi_\bf_\bi_\bc_\ba_\bt_\be_\bs
+185. $pager_format
- Type: path
+ Type: string
- Default: ''
+ Default: "-%Z- %C/%m: %-20.20n %s"
- Since there is no pubring/secring as with PGP, Mutt-ng has to handle storage
- and retrieval of keys by itself. This is very basic right now, and keys and
- certificates are stored in two different directories, both named as the hash-
- value retrieved from OpenSSL. There is an index file which contains mailbox-
- address keyid pairs, and which can be manually edited. This one points to the
- location of the certificates. (S/MIME only)
+ 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 ``$index_format'' section.
- _\b7_\b._\b4_\b._\b2_\b7_\b2 _\bs_\bm_\bi_\bm_\be_\b__\bd_\be_\bc_\br_\by_\bp_\bt_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd
+186. $pager_index_lines
- Type: string
+ Type: number
- Default: ''
+ Default: 0
- This format string specifies a command which is used to decrypt application/x-
- pkcs7-mime attachments.
+ Determines the number of lines of a mini-index which is shown when in the
+ pager. The current message, unless near the top or bottom of the folder,
+ will be roughly one third of the way down this mini-index, giving the
+ reader the context of a few messages before and after the message. This is
+ useful, for example, to determine how many messages remain to be read in
+ the current thread. One of the lines is reserved for the status bar from
+ the index, so a pager_index_lines of 6 will only show 5 lines of the
+ actual index. A value of 0 results in no index being shown. If the number
+ of messages in the current folder is less than pager_index_lines, then the
+ index will only use as many lines as it needs.
- The Mutt Next Generation E-Mail Client 153
+187. $pager_stop
- The OpenSSL command formats have their own set of printf(3)-like sequences sim-
- ilar to PGP's:
+ Type: boolean
- %f
- Expands to the name of a file containing a message.
+ Default: no
- %s
- Expands to the name of a file containing the signature part of a
- multipart/signed attachment when verifying it.
+ When set, the internal-pager will not move to the next message when you
+ are at the end of a message and invoke the next-page function.
- %k
- The key-pair specified with _\b$_\bs_\bm_\bi_\bm_\be_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bk_\be_\by (section 7.4.274 ,
- page 153)
+188. $pgp_auto_decode
- %c
- One or more certificate IDs.
+ Type: boolean
- %a
- The algorithm used for encryption.
+ Default: no
- %C
- CA location: Depending on whether _\b$_\bs_\bm_\bi_\bm_\be_\b__\bc_\ba_\b__\bl_\bo_\bc_\ba_\bt_\bi_\bo_\bn (section
- 7.4.270 , page 152) points to a directory or file, this expands to
- '-CApath _\b$_\bs_\bm_\bi_\bm_\be_\b__\bc_\ba_\b__\bl_\bo_\bc_\ba_\bt_\bi_\bo_\bn (section 7.4.270 , page 152)' or
- '-CAfile _\b$_\bs_\bm_\bi_\bm_\be_\b__\bc_\ba_\b__\bl_\bo_\bc_\ba_\bt_\bi_\bo_\bn (section 7.4.270 , page 152)'.
+ If set, Mutt-ng will automatically attempt to decrypt traditional PGP
+ messages whenever the user performs an operation which ordinarily would
+ result in the contents of the message being operated on. For example, if
+ the user displays a pgp-traditional message which has not been manually
+ checked with the check-traditional-pgp function, Mutt-ng will
+ automatically check the message for traditional pgp.
- For examples on how to configure these formats, see the smime.rc in the sam-
- ples/ subdirectory which has been installed on your system alongside the docu-
- mentation. (S/MIME only)
+189. $pgp_autoinline
- _\b7_\b._\b4_\b._\b2_\b7_\b3 _\bs_\bm_\bi_\bm_\be_\b__\bd_\be_\bc_\br_\by_\bp_\bt_\b__\bu_\bs_\be_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bk_\be_\by
+ Type: boolean
- Type: boolean
+ Default: no
- Default: yes
+ This option controls whether Mutt-ng generates old-style inline
+ (traditional) PGP encrypted or signed messages under certain
+ circumstances. This can be overridden by use of the pgp-menu, when inline
+ is not required.
- If _\bs_\be_\bt (default) this tells Mutt-ng to use the default key for decryption. Oth-
- erwise, if manage multiple certificate-key-pairs, Mutt-ng will try to use the
- mailbox-address to determine the key to use. It will ask you to supply a key,
- if it can't find one. (S/MIME only)
+ Note that Mutt-ng might automatically use PGP/MIME for messages which
+ consist of more than a single MIME part. Mutt-ng can be configured to ask
+ before sending PGP/MIME messages when inline (traditional) would not work.
+ See also: ``$pgp_mime_auto''.
- _\b7_\b._\b4_\b._\b2_\b7_\b4 _\bs_\bm_\bi_\bm_\be_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt_\b__\bk_\be_\by
+ Also note that using the old-style PGP message format is
+ stronglydeprecated. (PGP only)
- Type: string
+190. $pgp_check_exit
- Default: ''
+ Type: boolean
- This is the default key-pair to use for signing. This must be set to the keyid
- (the hash-value that OpenSSL generates) to work properly (S/MIME only)
+ Default: yes
- _\b7_\b._\b4_\b._\b2_\b7_\b5 _\bs_\bm_\bi_\bm_\be_\b__\be_\bn_\bc_\br_\by_\bp_\bt_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ If set, Mutt-ng will check the exit code of the PGP subprocess when
+ signing or encrypting. A non-zero exit code means that the subprocess
+ failed. (PGP only)
- Type: string
+191. $pgp_clearsign_command
- The Mutt Next Generation E-Mail Client 154
+ Type: string
- Default: ''
+ Default: ""
- This command is used to create encrypted S/MIME messages. (S/MIME only)
+ This format is used to create a old-style ``clearsigned'' PGP message.
- _\b7_\b._\b4_\b._\b2_\b7_\b6 _\bs_\bm_\bi_\bm_\be_\b__\be_\bn_\bc_\br_\by_\bp_\bt_\b__\bw_\bi_\bt_\bh
+ Note that the use of this format is stronglydeprecated. (PGP only)
- Type: string
+192. $pgp_decode_command
- Default: ''
+ Type: string
- This sets the algorithm that should be used for encryption. Valid choices are
- ``des'', ``des3'', ``rc2-40'', ``rc2-64'', ``\frc2-128''.
+ Default: ""
- If _\bu_\bn_\bs_\be_\bt ``_\b3_\bd_\be_\bs'' (TripleDES) is used. (S/MIME only)
+ This format strings specifies a command which is used to decode
+ application/pgp attachments.
- _\b7_\b._\b4_\b._\b2_\b7_\b7 _\bs_\bm_\bi_\bm_\be_\b__\bg_\be_\bt_\b__\bc_\be_\br_\bt_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ The PGP command formats have their own set of printf(3)-like sequences:
- Type: string
+ %p
- Default: ''
+ Expands to PGPPASSFD=0 when a pass phrase is needed, to an empty
+ string otherwise. Note: This may be used with a %? construct.
- This command is used to extract X509 certificates from a PKCS7 structure.
- (S/MIME only)
+ %f
- _\b7_\b._\b4_\b._\b2_\b7_\b8 _\bs_\bm_\bi_\bm_\be_\b__\bg_\be_\bt_\b__\bc_\be_\br_\bt_\b__\be_\bm_\ba_\bi_\bl_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ Expands to the name of a file containing a message.
- Type: string
+ %s
- Default: ''
+ Expands to the name of a file containing the signature part of a
+ multipart/signed attachment when verifying it.
- This command is used to extract the mail address(es) used for storing X509 cer-
- tificates, and for verification purposes (to check whether the certificate was
- issued for the sender's mailbox). (S/MIME only)
+ %a
- _\b7_\b._\b4_\b._\b2_\b7_\b9 _\bs_\bm_\bi_\bm_\be_\b__\bg_\be_\bt_\b__\bs_\bi_\bg_\bn_\be_\br_\b__\bc_\be_\br_\bt_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ The value of $pgp_sign_as.
- Type: string
+ %r
- Default: ''
+ One or more key IDs.
- This command is used to extract only the signers X509 certificate from a S/MIME
- signature, so that the certificate's owner may get compared to the email's
- ``From:'' header field. (S/MIME only)
+ For examples on how to configure these formats for the various versions of
+ PGP which are floating around, see the pgp*.rc and gpg.rc files in the
+ samples/ subdirectory which has been installed on your system alongside
+ the documentation. (PGP only)
- _\b7_\b._\b4_\b._\b2_\b8_\b0 _\bs_\bm_\bi_\bm_\be_\b__\bi_\bm_\bp_\bo_\br_\bt_\b__\bc_\be_\br_\bt_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd
+193. $pgp_decrypt_command
- Type: string
+ Type: string
- Default: ''
+ Default: ""
- This command is used to import a certificate via smime_keysng. (S/MIME only)
+ This command is used to decrypt a PGP encrypted message. (PGP only)
- _\b7_\b._\b4_\b._\b2_\b8_\b1 _\bs_\bm_\bi_\bm_\be_\b__\bi_\bs_\b__\bd_\be_\bf_\ba_\bu_\bl_\bt
+194. $pgp_encrypt_only_command
- The Mutt Next Generation E-Mail Client 155
+ Type: string
- Type: boolean
+ Default: ""
- Default: no
+ This command is used to encrypt a body part without signing it. (PGP only)
- The default behaviour of Mutt-ng is to use PGP on all auto-sign/encryption
- operations. To override and to use OpenSSL instead this must be _\bs_\be_\bt.
+195. $pgp_encrypt_sign_command
- However, this has no effect while replying, since Mutt-ng will automatically
- select the same application that was used to sign/encrypt the original message.
+ Type: string
- (Note that this variable can be overridden by unsetting _\b$_\bc_\br_\by_\bp_\bt_\b__\ba_\bu_\bt_\bo_\bs_\bm_\bi_\bm_\be (sec-
- tion 7.4.39 , page 96).) (S/MIME only)
+ Default: ""
- _\b7_\b._\b4_\b._\b2_\b8_\b2 _\bs_\bm_\bi_\bm_\be_\b__\bk_\be_\by_\bs
+ This command is used to both sign and encrypt a body part. (PGP only)
- Type: path
+196. $pgp_entry_format
- Default: ''
+ Type: string
- Since there is no pubring/secring as with PGP, Mutt-ng has to handle storage ad
- retrieval of keys/certs by itself. This is very basic right now, and stores
- keys and certificates in two different directories, both named as the hash-
- value retrieved from OpenSSL. There is an index file which contains mailbox-
- address keyid pair, and which can be manually edited. This one points to the
- location of the private keys. (S/MIME only)
+ Default: "%4n %t%f %4l/0x%k %-4a %2c %u"
- _\b7_\b._\b4_\b._\b2_\b8_\b3 _\bs_\bm_\bi_\bm_\be_\b__\bp_\bk_\b7_\bo_\bu_\bt_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ This variable allows you to customize the PGP key selection menu to your
+ personal taste. This string is similar to ``$index_format'', but has its
+ own set of printf(3)-like sequences:
- Type: string
+ %n
- Default: ''
+ number
- This command is used to extract PKCS7 structures of S/MIME signatures, in order
- to extract the public X509 certificate(s). (S/MIME only)
+ %k
- _\b7_\b._\b4_\b._\b2_\b8_\b4 _\bs_\bm_\bi_\bm_\be_\b__\bs_\bi_\bg_\bn_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ key id
- Type: string
+ %u
- Default: ''
+ user id
- This command is used to created S/MIME signatures of type multipart/signed,
- which can be read by all mail clients. (S/MIME only)
+ %a
- _\b7_\b._\b4_\b._\b2_\b8_\b5 _\bs_\bm_\bi_\bm_\be_\b__\bs_\bi_\bg_\bn_\b__\bo_\bp_\ba_\bq_\bu_\be_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ algorithm
- Type: string
+ %l
- Default: ''
+ key length
- This command is used to created S/MIME signatures of type application/x-
- pkcs7-signature, which can only be handled by mail clients supporting the
- S/MIME extension. (S/MIME only)
+ %f
- The Mutt Next Generation E-Mail Client 156
+ flags
- _\b7_\b._\b4_\b._\b2_\b8_\b6 _\bs_\bm_\bi_\bm_\be_\b__\bt_\bi_\bm_\be_\bo_\bu_\bt
+ %c
- Type: number
+ capabilities
- Default: 300
+ %t
- The number of seconds after which a cached passphrase will expire if not used.
- (S/MIME only)
+ trust/validity of the key-uid association
- _\b7_\b._\b4_\b._\b2_\b8_\b7 _\bs_\bm_\bi_\bm_\be_\b__\bv_\be_\br_\bi_\bf_\by_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ %[<s>]
- Type: string
+ date of the key where <s> is an strftime(3) expression
- Default: ''
+ (PGP only)
- This command is used to verify S/MIME signatures of type multipart/signed.
- (S/MIME only)
+197. $pgp_export_command
- _\b7_\b._\b4_\b._\b2_\b8_\b8 _\bs_\bm_\bi_\bm_\be_\b__\bv_\be_\br_\bi_\bf_\by_\b__\bo_\bp_\ba_\bq_\bu_\be_\b__\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ Type: string
- Type: string
+ Default: ""
- Default: ''
+ This command is used to export a public key from the user's key ring. (PGP
+ only)
- This command is used to verify S/MIME signatures of type application/x-
- pkcs7-mime. (S/MIME only)
+198. $pgp_getkeys_command
- _\b7_\b._\b4_\b._\b2_\b8_\b9 _\bs_\bm_\bt_\bp_\b__\be_\bn_\bv_\be_\bl_\bo_\bp_\be
+ Type: string
- Type: string
+ Default: ""
- Default: ''
+ This command is invoked whenever Mutt-ng will need public key information.
+ %r is the only printf(3)-like sequence used with this format. (PGP only)
- Availability: SMTP
+199. $pgp_good_sign
- If this variable is non-empty, it'll be used as the envelope sender. If it's
- empty (the default), the value of the regular From: header will be used.
+ Type: regular expression
- This may be necessary as some providers don't allow for arbitrary values as the
- envelope sender but only a particular one which may not be the same as the
- user's desired From: header.
+ Default: ""
- _\b7_\b._\b4_\b._\b2_\b9_\b0 _\bs_\bm_\bt_\bp_\b__\bh_\bo_\bs_\bt
+ If you assign a text to this variable, then a PGP signature is only
+ considered verified if the output from $pgp_verify_command contains the
+ text. Use this variable if the exit code from the command is 0 even for
+ bad signatures. (PGP only)
- Type: string
+200. $pgp_ignore_subkeys
- Default: ''
+ Type: boolean
- Availability: SMTP
+ Default: yes
- Defines the SMTP host which will be used to deliver mail, as opposed to invok-
- ing the sendmail binary. Setting this variable overrides the value of ``_\b$_\bs_\be_\bn_\bd_\b-
- _\bm_\ba_\bi_\bl (section 7.4.251 , page 147)'', and any associated variables.
+ Setting this variable will cause Mutt-ng to ignore OpenPGP subkeys.
+ Instead, the principal key will inherit the subkeys' capabilities. Unset
+ this if you want to play interesting key selection games. (PGP only)
- The Mutt Next Generation E-Mail Client 157
+201. $pgp_import_command
- _\b7_\b._\b4_\b._\b2_\b9_\b1 _\bs_\bm_\bt_\bp_\b__\bp_\ba_\bs_\bs
+ Type: string
- Type: string
+ Default: ""
- Default: ''
+ This command is used to import a key from a message into the user's public
+ key ring. (PGP only)
- Availability: SMTP
+202. $pgp_list_pubring_command
- Defines the password to use with SMTP AUTH. If ``_\b$_\bs_\bm_\bt_\bp_\b__\bu_\bs_\be_\br (section
- 7.4.294 , page 157)'' is set, but this variable is not, you will be prompted
- for a password when sending.
+ Type: string
- N\bNo\bot\bte\be:\b: Storing passwords in a configuration file presents a security risk since
- the superuser of your machine may read it regardless of the file's permissions.
+ Default: ""
- _\b7_\b._\b4_\b._\b2_\b9_\b2 _\bs_\bm_\bt_\bp_\b__\bp_\bo_\br_\bt
+ This command is used to list the public key ring's contents. The output
+ format must be analogous to the one used by gpg --list-keys --with-colons.
- Type: number
+ This format is also generated by the pgpring utility which comes with
+ Mutt-ng. (PGP only)
- Default: 25
+203. $pgp_list_secring_command
- Availability: SMTP
+ Type: string
- Defines the port that the SMTP host is listening on for mail delivery. Must be
- specified as a number.
+ Default: ""
- Defaults to 25, the standard SMTP port, but RFC 2476-compliant SMTP servers
- will probably desire 587, the mail submission port.
+ This command is used to list the secret key ring's contents. The output
+ format must be analogous to the one used by gpg --list-keys --with-colons.
- _\b7_\b._\b4_\b._\b2_\b9_\b3 _\bs_\bm_\bt_\bp_\b__\bu_\bs_\be_\b__\bt_\bl_\bs
+ This format is also generated by the pgpring utility which comes with
+ Mutt-ng. (PGP only)
- Type: string
+204. $pgp_long_ids
- Default: ''
+ Type: boolean
- Availability: SMTP (and SSL)
+ Default: no
- Defines wether to use STARTTLS. If this option is set to ``_\br_\be_\bq_\bu_\bi_\br_\be_\bd'' and the
- server does not support STARTTLS or there is an error in the TLS Handshake, the
- connection will fail. Setting this to ``_\be_\bn_\ba_\bb_\bl_\be_\bd'' will try to start TLS and
- continue without TLS in case of an error. Muttng still needs to have SSL sup-
- port enabled in order to use it.
+ If set, use 64 bit PGP key IDs. Unset uses the normal 32 bit Key IDs. (PGP
+ only)
- _\b7_\b._\b4_\b._\b2_\b9_\b4 _\bs_\bm_\bt_\bp_\b__\bu_\bs_\be_\br
+205. $pgp_mime_auto
- Type: string
+ Type: quadoption
- Default: ''
+ Default: ask-yes
- Availability: SMTP
+ This option controls whether Mutt-ng will prompt you for automatically
+ sending a (signed/encrypted) message using PGP/MIME when inline
+ (traditional) fails (for any reason).
- Defines the username to use with SMTP AUTH. Setting this variable will cause
- Mutt-ng to attempt to use SMTP AUTH when sending.
+ Also note that using the old-style PGP message format is
+ stronglydeprecated. (PGP only)
- The Mutt Next Generation E-Mail Client 158
+206. $pgp_replyinline
- _\b7_\b._\b4_\b._\b2_\b9_\b5 _\bs_\bo_\br_\bt
+ Type: boolean
- Type: sort order
+ Default: no
- Default: date
+ Setting this variable will cause Mutt-ng to always attempt to create an
+ inline (traditional) message when replying to a message which is PGP
+ encrypted/signed inline. This can be overridden by use of the pgp-menu,
+ when inline is not required. This option does not automatically detect if
+ the (replied-to) message is inline; instead it relies on Mutt-ng internals
+ for previously checked/flagged messages.
- Specifies how to sort messages in the _\bi_\bn_\bd_\be_\bx menu. Valid values are:
+ Note that Mutt-ng might automatically use PGP/MIME for messages which
+ consist of more than a single MIME part. Mutt-ng can be configured to ask
+ before sending PGP/MIME messages when inline (traditional) would not work.
+ See also: ``$pgp_mime_auto''.
- date or date-sent
- date-received
- from
- mailbox-order (unsorted)
- score
- size
- spam
- subject
- threads
- to
+ Also note that using the old-style PGP message format is
+ stronglydeprecated. (PGP only)
- You may optionally use the ``reverse-'' prefix to specify reverse sorting order
- (example: set sort=reverse-date-sent).
+207. $pgp_retainable_sigs
- _\b7_\b._\b4_\b._\b2_\b9_\b6 _\bs_\bo_\br_\bt_\b__\ba_\bl_\bi_\ba_\bs
+ Type: boolean
- Type: sort order
+ Default: no
- Default: alias
+ If set, signed and encrypted messages will consist of nested
+ multipart/signed and multipart/encrypted body parts.
- Specifies how the entries in the ``alias'' menu are sorted. The following are
- legal values:
+ This is useful for applications like encrypted and signed mailing lists,
+ where the outer layer (multipart/encrypted) can be easily removed, while
+ the inner multipart/signed part is retained. (PGP only)
- address (sort alphabetically by email address)
- alias (sort alphabetically by alias name)
- unsorted (leave in order specified in .muttrc)
+208. $pgp_show_unusable
- _\b7_\b._\b4_\b._\b2_\b9_\b7 _\bs_\bo_\br_\bt_\b__\ba_\bu_\bx
+ Type: boolean
- Type: sort order
+ Default: yes
- Default: date
+ If set, Mutt-ng will display non-usable keys on the PGP key selection
+ menu. This includes keys which have been revoked, have expired, or have
+ been marked as ``disabled'' by the user. (PGP only)
- When sorting by threads, this variable controls how threads are sorted in rela-
- tion to other threads, and how the branches of the thread trees are sorted.
- This can be set to any value that ``_\b$_\bs_\bo_\br_\bt (section 7.4.295 , page 157)'' can,
- except threads (in that case, Mutt-ng will just use date-sent). You can also
- specify the ``last-'' prefix in addition to ``reverse-'' prefix, but last- must
- come after reverse-. The last- prefix causes messages to be sorted against its
- siblings by which has the last descendant, using the rest of sort_aux as an
- ordering.
+209. $pgp_sign_as
- The Mutt Next Generation E-Mail Client 159
+ Type: string
- For instance, set sort_aux=last-date-received would mean that if a new message
- is received in a thread, that thread becomes the last one displayed (or the
- first, if you have set sort=reverse-threads.)
+ Default: ""
- N\bNo\bot\bte\be:\b: For reversed ``_\b$_\bs_\bo_\br_\bt (section 7.4.295 , page 157)'' order _\b$_\bs_\bo_\br_\bt_\b__\ba_\bu_\bx
- (section 7.4.297 , page 158) is reversed again (which is not the right thing
- to do, but kept to not break any existing configuration setting).
+ 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., ``0x00112233''). (PGP only)
- _\b7_\b._\b4_\b._\b2_\b9_\b8 _\bs_\bo_\br_\bt_\b__\bb_\br_\bo_\bw_\bs_\be_\br
+210. $pgp_sign_command
- Type: sort order
+ Type: string
- Default: alpha
+ Default: ""
- Specifies how to sort entries in the file browser. By default, the entries are
- sorted alphabetically. Valid values:
+ This command is used to create the detached PGP signature for a
+ multipart/signed PGP/MIME body part. (PGP only)
- alpha (alphabetically)
- date
- size
- unsorted
+211. $pgp_sort_keys
- You may optionally use the ``reverse-'' prefix to specify reverse sorting order
- (example: set sort_browser=reverse-date).
+ Type: sort order
- _\b7_\b._\b4_\b._\b2_\b9_\b9 _\bs_\bo_\br_\bt_\b__\br_\be
+ Default: address
- Type: boolean
+ Specifies how the entries in the ``pgp keys'' menu are sorted. The
+ following are legal values:
- Default: yes
+ address
- This variable is only useful when sorting by threads with ``_\b$_\bs_\bt_\br_\bi_\bc_\bt_\b__\bt_\bh_\br_\be_\ba_\bd_\bs
- (section 7.4.316 , page 165)'' _\bu_\bn_\bs_\be_\bt. In that case, it changes the heuristic
- Mutt-ng uses to thread messages by subject. With _\b$_\bs_\bo_\br_\bt_\b__\br_\be (section 7.4.299 ,
- page 159) _\bs_\be_\bt, Mutt-ng will only attach a message as the child of another mes-
- sage by subject if the subject of the child message starts with a substring
- matching the setting of ``_\b$_\br_\be_\bp_\bl_\by_\b__\br_\be_\bg_\be_\bx_\bp (section 7.4.235 , page 143)''. With
- _\b$_\bs_\bo_\br_\bt_\b__\br_\be (section 7.4.299 , page 159) _\bu_\bn_\bs_\be_\bt, Mutt-ng will attach the message
- whether or not this is the case, as long as the non-``_\b$_\br_\be_\bp_\bl_\by_\b__\br_\be_\bg_\be_\bx_\bp (section
- 7.4.235 , page 143)'' parts of both messages are identical.
+ sort alphabetically by user id
- _\b7_\b._\b4_\b._\b3_\b0_\b0 _\bs_\bp_\ba_\bm_\b__\bs_\be_\bp_\ba_\br_\ba_\bt_\bo_\br
+ keyid
- Type: string
+ sort alphabetically by key id
- Default: ','
+ date
- ``_\bs_\bp_\ba_\bm_\b__\bs_\be_\bp_\ba_\br_\ba_\bt_\bo_\br (section 7.4.300 , page 159)'' controls what happens when
- multiple spam headers are matched: if _\bu_\bn_\bs_\be_\bt, each successive header will over-
- write any previous matches value for the spam label. If _\bs_\be_\bt, each successive
- match will append to the previous, using ``_\bs_\bp_\ba_\bm_\b__\bs_\be_\bp_\ba_\br_\ba_\bt_\bo_\br (section 7.4.300 ,
- page 159)'' as a separator.
+ sort by key creation date
- The Mutt Next Generation E-Mail Client 160
+ trust
- _\b7_\b._\b4_\b._\b3_\b0_\b1 _\bs_\bp_\bo_\bo_\bl_\bf_\bi_\bl_\be
+ sort by the trust of the key
- Type: path
+ If you prefer reverse order of the above values, prefix it with
+ ``reverse-''. (PGP only)
- Default: ''
+212. $pgp_strict_enc
- If your spool mailbox is in a non-default place where Mutt-ng cannot find it,
- you can specify its location with this variable. Mutt-ng will automatically
- set this variable to the value of the environment variable $MAIL if it is not
- set.
+ Type: boolean
- _\b7_\b._\b4_\b._\b3_\b0_\b2 _\bs_\bs_\bl_\b__\bc_\ba_\b__\bc_\be_\br_\bt_\bi_\bf_\bi_\bc_\ba_\bt_\be_\bs_\b__\bf_\bi_\bl_\be
+ Default: yes
- Type: path
+ If set, Mutt-ng will automatically encode PGP/MIME signed messages as
+ quoted-printable. Please note that unsetting this variable may lead to
+ problems with non-verifyable PGP signatures, so only change this if you
+ know what you are doing. (PGP only)
- Default: ''
+213. $pgp_timeout
- This variable specifies a file containing trusted CA certificates. Any server
- certificate that is signed with one of these CA certificates are also automati-
- cally accepted.
+ Type: number
- Example: set ssl_ca_certificates_file=/etc/ssl/certs/ca-certificates.crt
+ Default: 300
- _\b7_\b._\b4_\b._\b3_\b0_\b3 _\bs_\bs_\bl_\b__\bc_\bl_\bi_\be_\bn_\bt_\b__\bc_\be_\br_\bt
+ The number of seconds after which a cached passphrase will expire if not
+ used. Default: 300. (PGP only)
- Type: path
+214. $pgp_use_gpg_agent
- Default: ''
+ Type: boolean
- Availability: SSL
+ Default: no
- The file containing a client certificate and its associated private key.
+ If set, Mutt-ng will use a possibly-running gpg-agent process. (PGP only)
- _\b7_\b._\b4_\b._\b3_\b0_\b4 _\bs_\bs_\bl_\b__\bf_\bo_\br_\bc_\be_\b__\bt_\bl_\bs
+215. $pgp_verify_command
- Type: boolean
+ Type: string
- Default: no
+ Default: ""
- If this variable is _\bs_\be_\bt, mutt-ng will require that all connections to remote
- servers be encrypted. Furthermore it will attempt to negotiate TLS even if the
- server does not advertise the capability, since it would otherwise have to
- abort the connection anyway. This option supersedes ``_\b$_\bs_\bs_\bl_\b__\bs_\bt_\ba_\br_\bt_\bt_\bl_\bs (section
- 7.4.306 , page 160)''.
+ This command is used to verify PGP signatures. (PGP only)
- _\b7_\b._\b4_\b._\b3_\b0_\b5 _\bs_\bs_\bl_\b__\bm_\bi_\bn_\b__\bd_\bh_\b__\bp_\br_\bi_\bm_\be_\b__\bb_\bi_\bt_\bs
+216. $pgp_verify_key_command
- Type: number
+ Type: string
- Default: 0
+ Default: ""
- Availability: GNUTLS
+ This command is used to verify key information from the key selection
+ menu. (PGP only)
- This variable specifies the minimum acceptable prime size (in bits) for use in
+217. $pipe_decode
- The Mutt Next Generation E-Mail Client 161
+ Type: boolean
- any Diffie-Hellman key exchange. A value of 0 will use the default from the
- GNUTLS library.
+ Default: no
- _\b7_\b._\b4_\b._\b3_\b0_\b6 _\bs_\bs_\bl_\b__\bs_\bt_\ba_\br_\bt_\bt_\bl_\bs
+ Used in connection with the pipe-message command. When unset, Mutt-ng will
+ pipe the messages without any preprocessing. When set, Mutt-ng will weed
+ headers and will attempt to PGP/MIME decode the messages first.
- Type: quadoption
+218. $pipe_sep
- Default: yes
+ Type: string
- Availability: SSL or GNUTLS
+ Default: "\n"
- If _\bs_\be_\bt (the default), Mutt-ng will attempt to use STARTTLS on servers advertis-
- ing the capability. When _\bu_\bn_\bs_\be_\bt, Mutt-ng will not attempt to use STARTTLS
- regardless of the server's capabilities.
+ The separator to add between messages when piping a list of tagged
+ messages to an external Unix command.
- _\b7_\b._\b4_\b._\b3_\b0_\b7 _\bs_\bs_\bl_\b__\bu_\bs_\be_\b__\bs_\bs_\bl_\bv_\b2
+219. $pipe_split
- Type: boolean
+ Type: boolean
- Default: yes
+ Default: no
- Availability: SSL
+ Used in connection with the pipe-message command and the ``tag- prefix''
+ or ``tag-prefix-cond'' operators. If this variable is unset, when piping a
+ list of tagged messages Mutt-ng will concatenate the messages and will
+ pipe them as a single folder. When set, Mutt-ng will pipe the messages one
+ by one. In both cases the messages are piped in the current sorted order,
+ and the ``$pipe_sep'' separator is added after each message.
- This variables specifies whether to attempt to use SSLv2 in the SSL authentica-
- tion process.
+220. $pop_auth_try_all
- _\b7_\b._\b4_\b._\b3_\b0_\b8 _\bs_\bs_\bl_\b__\bu_\bs_\be_\b__\bs_\bs_\bl_\bv_\b3
+ Type: boolean
- Type: boolean
+ Default: yes
- Default: yes
+ Availability: POP
- Availability: SSL or GNUTLS
+ If set, Mutt-ng will try all available methods. When unset, Mutt-ng will
+ only fall back to other authentication methods if the previous methods are
+ unavailable. If a method is available but authentication fails, Mutt-ng
+ will not connect to the POP server.
- This variables specifies whether to attempt to use SSLv3 in the SSL authentica-
- tion process.
+221. $pop_authenticators
- _\b7_\b._\b4_\b._\b3_\b0_\b9 _\bs_\bs_\bl_\b__\bu_\bs_\be_\b__\bt_\bl_\bs_\bv_\b1
+ Type: string
- Type: boolean
+ Default: ""
- Default: yes
+ Availability: POP
- Availability: SSL or GNUTLS
+ This is a colon-delimited list of authentication methods Mutt-ng may
+ attempt to use to log in to an POP server, in the order Mutt-ng should try
+ them. Authentication methods are either ``user'', ``apop'' or any SASL
+ mechanism, eg ``digest-md5'', ``gssapi'' or ``cram-md5''.
- This variables specifies whether to attempt to use TLSv1 in the SSL authentica-
- tion process.
+ This parameter is case-insensitive. If this parameter is unset (the
+ default) Mutt-ng will try all available methods, in order from most-secure
+ to least-secure.
- _\b7_\b._\b4_\b._\b3_\b1_\b0 _\bs_\bs_\bl_\b__\bu_\bs_\be_\bs_\by_\bs_\bt_\be_\bm_\bc_\be_\br_\bt_\bs
+ Example: set pop_authenticators="digest-md5:apop:user"
- Type: boolean
+222. $pop_delete
- Default: yes
+ Type: quadoption
- The Mutt Next Generation E-Mail Client 162
+ Default: ask-no
- Availability: SSL
+ Availability: POP
- If set to _\by_\be_\bs, Mutt-ng will use CA certificates in the system-wide certificate
- store when checking if server certificate is signed by a trusted CA.
+ If set, Mutt-ng will delete successfully downloaded messages from the POP
+ server when using the ``fetch-mail'' function. When unset, Mutt-ng will
+ download messages but also leave them on the POP server.
- _\b7_\b._\b4_\b._\b3_\b1_\b1 _\bs_\bt_\ba_\bt_\bu_\bs_\b__\bc_\bh_\ba_\br_\bs
+223. $pop_host
- Type: string
+ Type: string
- Default: '-*%A'
+ Default: ""
- Controls the characters used by the ``%r'' indicator in ``_\b$_\bs_\bt_\ba_\bt_\bu_\bs_\b__\bf_\bo_\br_\bm_\ba_\bt (sec-
- tion 7.4.312 , page 162)''. The first character is used when the mailbox is
- unchanged. The second is used when the mailbox has been changed, and it needs
- to be resynchronized. The third is used if the mailbox is in read-only mode, or
- if the mailbox will not be written when exiting that mailbox (You can toggle
- whether to write changes to a mailbox with the toggle-write operation, bound by
- default to ``%''). The fourth is used to indicate that the current folder has
- been opened in attach-message mode (Certain operations like composing a new
- mail, replying, forwarding, etc. are not permitted in this mode).
+ Availability: POP
- _\b7_\b._\b4_\b._\b3_\b1_\b2 _\bs_\bt_\ba_\bt_\bu_\bs_\b__\bf_\bo_\br_\bm_\ba_\bt
+ The name of your POP server for the ``fetch-mail'' function. You can also
+ specify an alternative port, username and password, i.e.:
- Type: string
+ [pop[s]://][username[:password]@]popserver[:port]
- Default: '-%r-Mutt-ng: %f [Msgs:%?M?%M/?%m%?n? New:%n?%?o? Old:%o?%?d?
- Del:%d?%?F? Flag:%F?%?t? Tag:%t?%?p? Post:%p?%?b? Inc:%b?%?l?
- %l?]---(%s/%S)-%>-(%P)---'
+ Note: Storing passwords in a configuration file presents a security risk
+ since the superuser of your machine may read it regardless of the file's
+ permissions.
- Controls the format of the status line displayed in the _\bi_\bn_\bd_\be_\bx menu. This
- string is similar to ``_\b$_\bi_\bn_\bd_\be_\bx_\b__\bf_\bo_\br_\bm_\ba_\bt (section 7.4.113 , page 113)'', but has
- its own set of printf(3)-like sequences:
+224. $pop_last
- %b
- number of mailboxes with new mail *
+ Type: boolean
- %B
- the short pathname of the current mailbox
+ Default: no
- %d
- number of deleted messages *
+ Availability: POP
- %f
- the full pathname of the current mailbox
+ If this variable is set, Mutt-ng will try to use the ``LAST'' POP command
+ for retrieving only unread messages from the POP server when using the
+ ``fetch-mail'' function.
- %F
- number of flagged messages *
+225. $pop_mail_check
- %h
- local hostname
+ Type: number
- %l
- size (in bytes) of the current mailbox *
+ Default: 60
- The Mutt Next Generation E-Mail Client 163
+ Availability: POP
- %L
- size (in bytes) of the messages shown (i.e., which match the cur-
- rent limit) *
+ This variable configures how often (in seconds) Mutt-ng should look for
+ new mail.
- %m
- the number of messages in the mailbox *
+226. $pop_pass
- %M
- the number of messages shown (i.e., which match the current limit)
- *
+ Type: string
- %n
- number of new messages in the mailbox *
+ Default: ""
- %o
- number of old unread messages *
+ Availability: POP
- %p
- number of postponed messages *
+ Specifies the password for your POP account. If unset, Mutt-ng will prompt
+ you for your password when you open POP mailbox.
- %P
- percentage of the way through the index
+ Note: Storing passwords in a configuration file presents a security risk
+ since the superuser of your machine may read it regardless of the file's
+ permissions.
- %r
- modified/read-only/won't-write/attach-message indicator, according
- to _\b$_\bs_\bt_\ba_\bt_\bu_\bs_\b__\bc_\bh_\ba_\br_\bs (section 7.4.311 , page 161)
+227. $pop_reconnect
- %s
- current sorting mode (_\b$_\bs_\bo_\br_\bt (section 7.4.295 , page 157))
+ Type: quadoption
- %S
- current aux sorting method (_\b$_\bs_\bo_\br_\bt_\b__\ba_\bu_\bx (section 7.4.297 , page
- 158))
+ Default: ask-yes
- %t
- number of tagged messages *
+ Availability: POP
- %u
- number of unread messages *
+ Controls whether or not Mutt-ng will try to reconnect to a POP server if
+ the connection is lost.
- %v
- Mutt-ng version string
+228. $pop_user
- %V
- currently active limit pattern, if any *
+ Type: string
- %>X
- right justify the rest of the string and pad with 'X'
+ Default: ""
- %|X
- pad to the end of the line with 'X'
+ Availability: POP
- * = can be optionally printed if nonzero
+ Your login name on the POP server.
- The Mutt Next Generation E-Mail Client 164
+ This variable defaults to your user name on the local machine.
- Some of the above sequences can be used to optionally print a string if their
- value is nonzero. For example, you may only want to see the number of flagged
- messages if such messages exist, since zero is not particularly meaningful. To
- optionally print a string based upon one of the above sequences, the following
- construct is used
+229. $post_indent_string
- %?<sequence_char>?<optional_string>?
+ Type: string
- where _\bs_\be_\bq_\bu_\be_\bn_\bc_\be_\b__\bc_\bh_\ba_\br is a character from the table above, and _\bo_\bp_\bt_\bi_\bo_\bn_\ba_\bl_\b__\bs_\bt_\br_\bi_\bn_\bg is
- the string you would like printed if _\bs_\be_\bq_\bu_\be_\bn_\bc_\be_\b__\bc_\bh_\ba_\br is nonzero. _\bo_\bp_\bt_\bi_\bo_\bn_\ba_\bl_\b__\bs_\bt_\br_\bi_\bn_\bg
- m\bma\bay\by contain other sequences as well as normal text, but you may n\bno\bot\bt nest
- optional strings.
+ Default: ""
- Here is an example illustrating how to optionally print the number of new mes-
- sages in a mailbox:
+ Similar to the ``$attribution'' variable, Mutt-ng will append this string
+ after the inclusion of a message which is being replied to.
- %?n?%n new messages.?
+230. $postpone
- Additionally you can switch between two strings, the first one, if a value is
- zero, the second one, if the value is nonzero, by using the following con-
- struct:
+ Type: quadoption
- %?<sequence_char>?<if_string>&<else_string>?
+ Default: ask-yes
- You can additionally force the result of any printf(3)-like sequence to be low-
- ercase by prefixing the sequence character with an underscore (_) sign. For
- example, if you want to display the local hostname in lowercase, you would use:
+ Controls whether or not messages are saved in the ``$postponed'' mailbox
+ when you elect not to send immediately.
- %_h
+231. $postponed
- If you prefix the sequence character with a colon (:) character, Mutt-ng will
- replace any dots in the expansion by underscores. This might be helpful with
- IMAP folders that don't like dots in folder names.
+ Type: path
- _\b7_\b._\b4_\b._\b3_\b1_\b3 _\bs_\bt_\ba_\bt_\bu_\bs_\b__\bo_\bn_\b__\bt_\bo_\bp
+ Default: "~/postponed"
- Type: boolean
+ Mutt-ng allows you to indefinitely ``postpone sending a message'' which
+ you are editing. When you choose to postpone a message, Mutt-ng saves it
+ in the mailbox specified by this variable. Also see the ``$postpone''
+ variable.
- Default: no
+232. $preconnect
- Setting this variable causes the ``status bar'' to be displayed on the first
- line of the screen rather than near the bottom.
+ Type: string
- _\b7_\b._\b4_\b._\b3_\b1_\b4 _\bs_\bt_\br_\bi_\bc_\bt_\b__\bm_\ba_\bi_\bl_\bt_\bo
+ Default: ""
- Type: boolean
+ If set, a shell command to be executed if Mutt-ng fails to establish a
+ connection to the server. This is useful for setting up secure
+ connections, e.g. with ssh(1). If the command returns a nonzero status,
+ Mutt-ng gives up opening the server. Example:
- Default: yes
+ preconnect="ssh -f -q -L 1234:mailhost.net:143 mailhost.net sleep 20 <
+ /dev/null > /dev/null"
- With mailto: style links, a body as well as arbitrary header information may be
- embedded. This may lead to (user) headers being overwriten without note if
- ``_\b$_\be_\bd_\bi_\bt_\b__\bh_\be_\ba_\bd_\be_\br_\bs (section 7.4.57 , page 100)'' is unset.
+ Mailbox ``foo'' on mailhost.net can now be reached as
+ ``{localhost:1234}foo''.
- If this variable is _\bs_\be_\bt, mutt-ng is strict and allows anything to be changed.
+ Note: For this example to work, you must be able to log in to the remote
+ machine without having to enter a password.
- The Mutt Next Generation E-Mail Client 165
+233. $print
- If it's _\bu_\bn_\bs_\be_\bt, all headers given will be prefixed with ``X-Mailto-'' and the
- message including headers will be shown in the editor regardless of what
- ``_\b$_\be_\bd_\bi_\bt_\b__\bh_\be_\ba_\bd_\be_\br_\bs (section 7.4.57 , page 100)'' is set to.
+ Type: quadoption
- _\b7_\b._\b4_\b._\b3_\b1_\b5 _\bs_\bt_\br_\bi_\bc_\bt_\b__\bm_\bi_\bm_\be
+ Default: ask-no
- Type: boolean
+ Controls whether or not Mutt-ng really prints messages. This is set to
+ ask-no by default, because some people accidentally hit ``p'' often.
- Default: yes
+234. $print_command
- When _\bu_\bn_\bs_\be_\bt, non MIME-compliant messages that doesn't have any charset indica-
- tion in the ``Content-Type:'' header field can be displayed (non MIME-compliant
- messages are often generated by old mailers or buggy mailers like MS Outlook
- Express). See also _\b$_\ba_\bs_\bs_\bu_\bm_\be_\bd_\b__\bc_\bh_\ba_\br_\bs_\be_\bt (section 7.4.12 , page 89).
+ Type: path
- This option also replaces linear-white-space between encoded-word and *text to
- a single space to prevent the display of MIME-encoded ``Subject:'' header field
- from being devided into multiple lines.
+ Default: "lpr"
- _\b7_\b._\b4_\b._\b3_\b1_\b6 _\bs_\bt_\br_\bi_\bc_\bt_\b__\bt_\bh_\br_\be_\ba_\bd_\bs
+ This specifies the command pipe that should be used to print messages.
- Type: boolean
+235. $print_decode
- Default: no
+ Type: boolean
- If _\bs_\be_\bt, threading will only make use of the ``In-Reply-To:'' and ``Refer-
- ences:'' header fields when you ``_\b$_\bs_\bo_\br_\bt (section 7.4.295 , page 157)'' by mes-
- sage 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.
+ Default: yes
- _\b7_\b._\b4_\b._\b3_\b1_\b7 _\bs_\bt_\br_\bi_\bp_\b__\bw_\ba_\bs
+ Used in connection with the print-message command. If this option is set,
+ the message is decoded before it is passed to the external command
+ specified by $print_command. If this option is unset, no processing will
+ be applied to the message when printing it. The latter setting may be
+ useful if you are using some advanced printer filter which is able to
+ properly format e-mail messages for printing.
- Type: boolean
+236. $print_split
- Default: no
+ Type: boolean
- When _\bs_\be_\bt, mutt-ng will remove the trailing part of the ``Subject:'' line which
- matches _\b$_\bs_\bt_\br_\bi_\bp_\b__\bw_\ba_\bs_\b__\br_\be_\bg_\be_\bx (section 7.4.318 , page 165) when replying. This is
- useful to properly react on subject changes and reduce ``subject noise.'' (esp.
- in Usenet)
+ Default: no
- _\b7_\b._\b4_\b._\b3_\b1_\b8 _\bs_\bt_\br_\bi_\bp_\b__\bw_\ba_\bs_\b__\br_\be_\bg_\be_\bx
+ Used in connection with the print-message command. If this option is set,
+ the command specified by $print_command is executed once for each message
+ which is to be printed. If this option is unset, the command specified by
+ $print_command is executed only once, and all the messages are
+ concatenated, with a form feed as the message separator.
- Type: regular expression
+ Those who use the enscript(1) program's mail-printing mode will most
+ likely want to set this option.
- Default: '\([Ww][Aa][RrSs]: .*\)[ ]*$'
+237. $prompt_after
- When non-empty and _\b$_\bs_\bt_\br_\bi_\bp_\b__\bw_\ba_\bs (section 7.4.317 , page 165) is _\bs_\be_\bt, mutt-ng
- will remove this trailing part of the ``Subject'' line when replying if it
- won't be empty afterwards.
+ Type: boolean
- The Mutt Next Generation E-Mail Client 166
+ Default: yes
- _\b7_\b._\b4_\b._\b3_\b1_\b9 _\bs_\bt_\bu_\bf_\bf_\b__\bq_\bu_\bo_\bt_\be_\bd
+ If you use an external ``$pager'', setting this variable will cause
+ Mutt-ng to prompt you for a command when the pager exits rather than
+ returning to the index menu. If unset, Mutt-ng will return to the index
+ menu when the external pager exits.
- Type: boolean
+238. $query_command
- Default: no
+ Type: path
- If _\bs_\be_\bt, attachments with flowed format will have their quoting ``stuffed'',
- i.e. a space will be inserted between the quote characters and the actual text.
+ Default: ""
- _\b7_\b._\b4_\b._\b3_\b2_\b0 _\bs_\bu_\bs_\bp_\be_\bn_\bd
+ This specifies the command that Mutt-ng will use to make external address
+ queries. The string should contain a %s, which will be substituted with
+ the query string the user types. See ``query'' for more information.
- Type: boolean
+239. $quit
- Default: yes
+ Type: quadoption
- When _\bu_\bn_\bs_\be_\bt, Mutt-ng won't stop when the user presses the terminal's _\bs_\bu_\bs_\bp key,
- usually CTRL+Z. This is useful if you run Mutt-ng inside an xterm using a com-
- mand like ``xterm -e muttng.''
+ Default: yes
- _\b7_\b._\b4_\b._\b3_\b2_\b1 _\bt_\be_\bx_\bt_\b__\bf_\bl_\bo_\bw_\be_\bd
+ This variable controls whether ``quit'' and ``exit'' actually quit from
+ Mutt-ng. If it set to yes, they do quit, if it is set to no, they have no
+ effect, and if it is set to ask-yes or ask-no, you are prompted for
+ confirmation when you try to quit.
- Type: boolean
+240. $quote_empty
- Default: no
+ Type: boolean
- When _\bs_\be_\bt, Mutt-ng will generate text/plain; format=flowed attachments. This
- format is easier to handle for some mailing software, and generally just looks
- like ordinary text. To actually make use of this format's features, you'll
- need support in your editor.
+ Default: yes
- Note that _\b$_\bi_\bn_\bd_\be_\bn_\bt_\b__\bs_\bt_\br_\bi_\bn_\bg (section 7.4.112 , page 113) is ignored when this
- option is set.
+ Controls whether or not empty lines will be quoted using
+ ``indent_string''.
- _\b7_\b._\b4_\b._\b3_\b2_\b2 _\bt_\bh_\bo_\br_\bo_\bu_\bg_\bh_\b__\bs_\be_\ba_\br_\bc_\bh
+241. $quote_quoted
- Type: boolean
+ Type: boolean
- Default: no
+ Default: no
- Affects the ~b and ~h search operations described in section ``_\bp_\ba_\bt_\bt_\be_\br_\bn_\bs (sec-
- tion 7.2 , page 81)'' above. If _\bs_\be_\bt, the headers and attachments of messages
- to be searched are decoded before searching. If _\bu_\bn_\bs_\be_\bt, messages are searched
- as they appear in the folder.
+ Controls how quoted lines will be quoted. If set, one quote character will
+ be added to the end of existing prefix. Otherwise, quoted lines will be
+ prepended by ``indent_string''.
- _\b7_\b._\b4_\b._\b3_\b2_\b3 _\bt_\bh_\br_\be_\ba_\bd_\b__\br_\be_\bc_\be_\bi_\bv_\be_\bd
+242. $quote_regexp
- Type: boolean
+ Type: regular expression
- Default: no
+ Default: "^([ \t]*[|>:}#])+"
- When _\bs_\be_\bt, Mutt-ng uses the date received rather than the date sent to thread
- messages by subject.
+ A regular expression used in the internal-pager to determine quoted
+ sections of text in the body of a message.
- The Mutt Next Generation E-Mail Client 167
+ Note: In order to use the quotedx patterns in the internal pager, you need
+ to set this to a regular expression that matches exactly the quote
+ characters at the beginning of quoted lines.
- _\b7_\b._\b4_\b._\b3_\b2_\b4 _\bt_\bi_\bl_\bd_\be
+243. $read_inc
- Type: boolean
+ Type: number
- Default: no
+ Default: 10
- When _\bs_\be_\bt, the internal-pager will pad blank lines to the bottom of the screen
- with a tilde (~).
+ If set to a value greater than 0, Mutt-ng will display which message it is
+ currently on when reading a mailbox. The message is printed after read_inc
+ messages have been read (e.g., if set to 25, Mutt-ng 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.
- _\b7_\b._\b4_\b._\b3_\b2_\b5 _\bt_\bi_\bm_\be_\bo_\bu_\bt
+ Also see the ``$write_inc'' variable.
- Type: number
+244. $read_only
- Default: 600
+ Type: boolean
- This variable controls the _\bn_\bu_\bm_\bb_\be_\br _\bo_\bf _\bs_\be_\bc_\bo_\bn_\bd_\bs Mutt-ng 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-ng to never time out.
+ Default: no
- _\b7_\b._\b4_\b._\b3_\b2_\b6 _\bt_\bm_\bp_\bd_\bi_\br
+ If set, all folders are opened in read-only mode.
- Type: path
+245. $realname
- Default: ''
+ Type: string
- This variable allows you to specify where Mutt-ng will place its temporary
- files needed for displaying and composing messages. If this variable is not
- set, the environment variable $TMPDIR is used. If $TMPDIR is not set then
- '/tmp' is used.
+ Default: ""
- _\b7_\b._\b4_\b._\b3_\b2_\b7 _\bt_\bo_\b__\bc_\bh_\ba_\br_\bs
+ This variable specifies what ``real'' or ``personal'' name should be used
+ when sending messages.
- Type: string
+ By default, this is the GECOS field from /etc/passwd.
- Default: ' +TCFL'
+ Note: This variable will not be used when the user has set a real name in
+ the $from variable.
- Controls the character used to indicate mail addressed to you. The first char-
- acter 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 _\by_\bo_\bu. The sixth character is used to indicate
- when a mail was sent to a mailing-list you're subscribe to (default: L).
+246. $recall
- _\b7_\b._\b4_\b._\b3_\b2_\b8 _\bt_\br_\ba_\bs_\bh
+ Type: quadoption
- Type: path
+ Default: ask-yes
- Default: ''
+ Controls whether or not Mutt-ng recalls postponed messages when composing
+ a new message. Also see ``$postponed''.
- If _\bs_\be_\bt, this variable specifies the path of the trash folder where the mails
- marked for deletion will be moved, instead of being irremediably purged.
+ Setting this variable to yes is not generally useful, and thus not
+ recommended.
- The Mutt Next Generation E-Mail Client 168
+247. $record
- N\bNo\bot\bte\be: When you delete a message in the trash folder, it is really deleted, so
- that there is no way to recover mail.
+ Type: path
- _\b7_\b._\b4_\b._\b3_\b2_\b9 _\bt_\bu_\bn_\bn_\be_\bl
+ Default: ""
- Type: string
+ 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 Bcc: header field with your email address in it.)
- Default: ''
+ The value of $record is overridden by the ``$force_name'' and
+ ``$save_name'' variables, and the ``fcc-hook'' command.
- Setting this variable will cause Mutt-ng to open a pipe to a command instead of
- a raw socket. You may be able to use this to set up preauthenticated connec-
- tions to your IMAP/POP3 server. Example:
+248. $reply_regexp
- tunnel='ssh -q mailhost.net /usr/local/libexec/imapd'
+ Type: regular expression
- N\bNo\bot\bte\be:\b: For this example to work you must be able to log in to the remote machine
- without having to enter a password.
+ Default: "^(re([\[0-9\]+])*|aw):[ \t]*"
- _\b7_\b._\b4_\b._\b3_\b3_\b0 _\bu_\bm_\ba_\bs_\bk
+ A regular expression used to recognize reply messages when threading and
+ replying. The default value corresponds to the English ``Re:'' and the
+ German ``Aw:''.
- Type: number
+249. $reply_self
- Default: 0077
+ Type: boolean
- This sets the umask that will be used by Mutt-ng when creating all kinds of
- files. If _\bu_\bn_\bs_\be_\bt, the default value is 077.
+ Default: no
- _\b7_\b._\b4_\b._\b3_\b3_\b1 _\bu_\bn_\bc_\bo_\bl_\bl_\ba_\bp_\bs_\be_\b__\bj_\bu_\bm_\bp
+ If unset and you are replying to a message sent by you, Mutt-ng will
+ assume that you want to reply to the recipients of that message rather
+ than to yourself.
- Type: boolean
+250. $reply_to
- Default: no
+ Type: quadoption
- When _\bs_\be_\bt, Mutt-ng will jump to the next unread message, if any, when the cur-
- rent thread is _\bu_\bncollapsed.
+ Default: ask-yes
- _\b7_\b._\b4_\b._\b3_\b3_\b2 _\bu_\bs_\be_\b__\b8_\bb_\bi_\bt_\bm_\bi_\bm_\be
+ If set, when replying to a message, Mutt-ng will use the address listed in
+ the ``Reply-To:'' header field as the recipient of the reply. If unset, it
+ will use the address in the ``From:'' header field instead.
- Type: boolean
+ 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.
- Default: no
+251. $resolve
- W\bWa\bar\brn\bni\bin\bng\bg:\b: do not set this variable unless you are using a version of sendmail
- which supports the -B8BITMIME flag (such as sendmail 8.8.x) or in connection
- with the SMTP support via libESMTP. Otherwise you may not be able to send
- mail.
+ Type: boolean
- When _\bs_\be_\bt, Mutt-ng will either invoke ``_\b$_\bs_\be_\bn_\bd_\bm_\ba_\bi_\bl (section 7.4.251 , page
- 147)'' with the -B8BITMIME flag when sending 8-bit messages to enable ESMTP
- negotiation or tell libESMTP to do so.
+ Default: yes
- _\b7_\b._\b4_\b._\b3_\b3_\b3 _\bu_\bs_\be_\b__\bd_\bo_\bm_\ba_\bi_\bn
+ When set, the cursor will be automatically advanced to the next (possibly
+ undeleted) message whenever a command that modifies the current message is
+ executed.
- Type: boolean
+252. $reverse_alias
- The Mutt Next Generation E-Mail Client 169
+ Type: boolean
- Default: yes
+ Default: no
- When _\bs_\be_\bt, Mutt-ng will qualify all local addresses (ones without the @host por-
- tion) with the value of ``_\b$_\bh_\bo_\bs_\bt_\bn_\ba_\bm_\be (section 7.4.92 , page 108)''. If _\bu_\bn_\bs_\be_\bt,
- no addresses will be qualified.
+ This variable controls whether or not Mutt-ng 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:
- _\b7_\b._\b4_\b._\b3_\b3_\b4 _\bu_\bs_\be_\b__\bf_\br_\bo_\bm
+ alias juser abd30425@somewhere.net (Joe User)
- Type: boolean
+ and then you receive mail which contains the following header:
- Default: yes
+ From: abd30425@somewhere.net
- When _\bs_\be_\bt, Mutt-ng will generate the ``From:'' header field when sending mes-
- sages. If _\bu_\bn_\bs_\be_\bt, no ``From:'' header field will be generated unless the user
- explicitly sets one using the ``_\bm_\by_\b__\bh_\bd_\br (section 3.15 , page 35)'' command.
+ 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 CompuServe addresses).
- _\b7_\b._\b4_\b._\b3_\b3_\b5 _\bu_\bs_\be_\b__\bi_\bd_\bn
+253. $reverse_name
- Type: boolean
+ Type: boolean
- Default: yes
+ Default: no
- Availability: IDN
+ It may sometimes arrive that you receive mail to a certain machine, move
+ the messages to another machine, and reply to some the messages from
+ there. If this variable is set, the default From: line of the reply
+ messages is built using the address where you received the messages you
+ are replying to if that address matches your alternates. If the variable
+ is unset, or the address that would be used doesn't match your alternates,
+ the From: line will use your address on the current machine.
- When _\bs_\be_\bt, Mutt-ng will show you international domain names decoded.
+254. $reverse_realname
- N\bNo\bot\bte\be:\b: You can use IDNs for addresses even if this is _\bu_\bn_\bs_\be_\bt. This variable only
- affects decoding.
+ Type: boolean
- _\b7_\b._\b4_\b._\b3_\b3_\b6 _\bu_\bs_\be_\b__\bi_\bp_\bv_\b6
+ Default: yes
- Type: boolean
+ This variable fine-tunes the behaviour of the reverse_name feature. When
+ it is set, Mutt-ng will use the address from incoming messages as-is,
+ possibly including eventual real names. When it is unset, Mutt-ng will
+ override any such real names with the setting of the realname variable.
- Default: yes
+255. $rfc2047_parameters
- When _\bs_\be_\bt, Mutt-ng will look for IPv6 addresses of hosts it tries to contact.
- If this option is _\bu_\bn_\bs_\be_\bt, Mutt-ng will restrict itself to IPv4 addresses. Nor-
- mally, the default should work.
+ Type: boolean
- _\b7_\b._\b4_\b._\b3_\b3_\b7 _\bu_\bs_\be_\br_\b__\ba_\bg_\be_\bn_\bt
+ Default: no
- Type: boolean
+ When this variable is set, Mutt-ng will decode RFC-2047-encoded MIME
+ parameters. You want to set this variable when Mutt-ng suggests you to
+ save attachments to files named like this:
- Default: yes
+ =?iso-8859-1?Q?file=5F=E4=5F991116=2Ezip?=
- When _\bs_\be_\bt, Mutt-ng will add a ``User-Agent:'' header to outgoing messages, indi-
- cating which version of Mutt-ng was used for composing them.
+ When this variable is set interactively, the change doesn't have the
+ desired effect before you have changed folders.
- _\b7_\b._\b4_\b._\b3_\b3_\b8 _\bv_\bi_\bs_\bu_\ba_\bl
+ Note that this use of RFC 2047's encoding is explicitly, prohibited by the
+ standard, but nevertheless encountered in the wild.
- Type: path
+ Also note that setting this parameter will not have the effect that
+ Mutt-ng generates this kind of encoding. Instead, Mutt-ng will
+ unconditionally use the encoding specified in RFC 2231.
- Default: ''
+256. $save_address
- The Mutt Next Generation E-Mail Client 170
+ Type: boolean
- Specifies the visual editor to invoke when the _\b~_\bv command is given in the
- builtin editor.
+ Default: no
- _\b7_\b._\b4_\b._\b3_\b3_\b9 _\bw_\ba_\bi_\bt_\b__\bk_\be_\by
+ If set, Mutt-ng will take the sender's full address when choosing a
+ default folder for saving a mail. If ``$save_name'' or ``$force_name'' is
+ set too, the selection of the fcc folder will be changed as well.
- Type: boolean
+257. $save_empty
- Default: yes
+ Type: boolean
- Controls whether Mutt-ng will ask you to press a key after _\bs_\bh_\be_\bl_\bl_\b- _\be_\bs_\bc_\ba_\bp_\be, _\bp_\bi_\bp_\be_\b-
- _\bm_\be_\bs_\bs_\ba_\bg_\be, _\bp_\bi_\bp_\be_\b-_\be_\bn_\bt_\br_\by, _\bp_\br_\bi_\bn_\bt_\b-_\bm_\be_\bs_\bs_\ba_\bg_\be, and _\bp_\br_\bi_\bn_\bt_\b-_\be_\bn_\bt_\br_\by commands.
+ Default: yes
- It is also used when viewing attachments with ``_\ba_\bu_\bt_\bo_\b__\bv_\bi_\be_\bw (section 5.4 , page
- 76)'', provided that the corresponding mailcap entry has a needsterminal flag,
- and the external program is interactive.
+ 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.
- When _\bs_\be_\bt, Mutt-ng will always ask for a key. When _\bu_\bn_\bs_\be_\bt, Mutt-ng will wait for
- a key only if the external command returned a non-zero status.
+ Note: This only applies to mbox and MMDF folders, Mutt-ng does not delete
+ MH and Maildir directories.
- _\b7_\b._\b4_\b._\b3_\b4_\b0 _\bw_\be_\be_\bd
+258. $save_name
- Type: boolean
+ Type: boolean
- Default: yes
+ Default: no
- When _\bs_\be_\bt, Mutt-ng will weed headers when displaying, forwarding, printing, or
- replying to messages.
+ 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 mailbox in the ``$folder''
+ directory with the username 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.
- _\b7_\b._\b4_\b._\b3_\b4_\b1 _\bw_\br_\ba_\bp_\b__\bs_\be_\ba_\br_\bc_\bh
+ Also see the ``$force_name'' variable.
- Type: boolean
+259. $score
- Default: yes
+ Type: boolean
- Controls whether searches wrap around the end of the mailbox.
+ Default: yes
- When _\bs_\be_\bt, searches will wrap around the first (or last) message. When _\bu_\bn_\bs_\be_\bt,
- searches will not wrap.
+ When this variable is unset, scoring is turned off. This can be useful to
+ selectively disable scoring for certain folders when the
+ ``$score_threshold_delete'' variable and friends are used.
- _\b7_\b._\b4_\b._\b3_\b4_\b2 _\bw_\br_\ba_\bp_\bm_\ba_\br_\bg_\bi_\bn
+260. $score_threshold_delete
- Type: number
+ Type: number
- Default: 0
+ Default: -1
- Controls the size of the margin remaining at the right side of the terminal
- when Mutt-ng's pager does smart wrapping.
+ Messages which have been assigned a score equal to or lower than the value
+ of this variable are automatically marked for deletion by Mutt-ng. Since
+ Mutt-ng scores are always greater than or equal to zero, the default
+ setting of this variable will never mark a message for deletion.
- _\b7_\b._\b4_\b._\b3_\b4_\b3 _\bw_\br_\bi_\bt_\be_\b__\bb_\bc_\bc
+261. $score_threshold_flag
- Type: boolean
+ Type: number
- Default: yes
+ Default: 9999
- The Mutt Next Generation E-Mail Client 171
+ Messages which have been assigned a score greater than or equal to this
+ variable's value are automatically marked ``flagged''.
- Controls whether Mutt-ng writes out the Bcc header when preparing messages to
- be sent. Exim users may wish to _\bu_\bn_\bs_\be_\bt this.
+262. $score_threshold_read
- _\b7_\b._\b4_\b._\b3_\b4_\b4 _\bw_\br_\bi_\bt_\be_\b__\bi_\bn_\bc
+ Type: number
- Type: number
+ Default: -1
- Default: 10
+ Messages which have been assigned a score equal to or lower than the value
+ of this variable are automatically marked as read by Mutt-ng. Since
+ Mutt-ng scores are always greater than or equal to zero, the default
+ setting of this variable will never mark a message read.
- When writing a mailbox, a message will be printed every _\bw_\br_\bi_\bt_\be_\b__\bi_\bn_\bc messages to
- indicate progress. If set to 0, only a single message will be displayed before
- writing a mailbox.
+263. $send_charset
- Also see the ``_\b$_\br_\be_\ba_\bd_\b__\bi_\bn_\bc (section 7.4.230 , page 142)'' variable.
+ Type: string
- _\b7_\b._\b4_\b._\b3_\b4_\b5 _\bx_\bt_\be_\br_\bm_\b__\bi_\bc_\bo_\bn
+ Default: "us-ascii:iso-8859-1:utf-8"
- Type: string
+ A list of character sets for outgoing messages. Mutt-ng will use the first
+ character set into which the text can be converted exactly. If your
+ ``$charset'' is not iso-8859-1 and recipients may not understand UTF-8, it
+ is advisable to include in the list an appropriate widely used standard
+ character set (such as iso-8859-2, koi8-r or iso-2022-jp) either instead
+ of or after iso-8859-1.
- Default: 'M%?n?AIL&ail?'
+264. $sendmail
- Controls the format of the X11 icon title, as long as _\b$_\bx_\bt_\be_\br_\bm_\b__\bs_\be_\bt_\b__\bt_\bi_\bt_\bl_\be_\bs (sec-
- tion 7.4.347 , page 171) is _\bs_\be_\bt. This string is identical in formatting to the
- one used by ``_\b$_\bs_\bt_\ba_\bt_\bu_\bs_\b__\bf_\bo_\br_\bm_\ba_\bt (section 7.4.312 , page 162)''.
+ Type: path
- _\b7_\b._\b4_\b._\b3_\b4_\b6 _\bx_\bt_\be_\br_\bm_\b__\bl_\be_\ba_\bv_\be
+ Default: "/usr/sbin/sendmail -oem -oi"
- Type: string
+ Specifies the program and arguments used to deliver mail sent by Mutt-ng.
+ Mutt-ng expects that the specified program interprets additional arguments
+ as recipient addresses.
- Default: ''
+265. $sendmail_wait
- If _\b$_\bx_\bt_\be_\br_\bm_\b__\bs_\be_\bt_\b__\bt_\bi_\bt_\bl_\be_\bs (section 7.4.347 , page 171) is _\bs_\be_\bt, this string will be
- used to set the title when leaving mutt-ng. For terminal-based programs,
- there's no easy and portable way to read the current title so mutt-ng cannot
- read it upon startup and restore it when exiting.
+ Type: number
- Based on the xterm FAQ, the following might work:
+ Default: 0
- set xterm_leave = '`test x$DISPLAY != x && xprop -id $WINDOWID | grep WM_NAME |
- cut -d ''' -f 2`'
+ Specifies the number of seconds to wait for the ``$sendmail'' process to
+ finish before giving up and putting delivery in the background.
- _\b7_\b._\b4_\b._\b3_\b4_\b7 _\bx_\bt_\be_\br_\bm_\b__\bs_\be_\bt_\b__\bt_\bi_\bt_\bl_\be_\bs
+ Mutt-ng interprets the value of this variable as follows:
- Type: boolean
+ >0
- Default: no
+ number of seconds to wait for sendmail to finish before continuing
- Controls whether Mutt-ng sets the xterm title bar and icon name (as long as
- you're in an appropriate terminal). The default must be _\bu_\bn_\bs_\be_\bt to force in the
- validity checking.
+ 0
- _\b7_\b._\b4_\b._\b3_\b4_\b8 _\bx_\bt_\be_\br_\bm_\b__\bt_\bi_\bt_\bl_\be
+ wait forever for sendmail to finish
- Type: string
+ <0
- The Mutt Next Generation E-Mail Client 172
+ always put sendmail in the background without waiting
- Default: 'Mutt-ng with %?m?%m messages&no messages?%?n? [%n New]?'
+ Note that if you specify a value other than 0, the output of the child
+ process will be put in a temporary file. If there is some error, you will
+ be informed as to where to find the output.
- Controls the format of the title bar of the xterm provided that
- _\b$_\bx_\bt_\be_\br_\bm_\b__\bs_\be_\bt_\b__\bt_\bi_\bt_\bl_\be_\bs (section 7.4.347 , page 171) has been _\bs_\be_\bt. This string is
- identical in formatting to the one used by ``_\b$_\bs_\bt_\ba_\bt_\bu_\bs_\b__\bf_\bo_\br_\bm_\ba_\bt (section 7.4.312 ,
- page 162)''.
+266. $shell
- _\b7_\b._\b5 _\bF_\bu_\bn_\bc_\bt_\bi_\bo_\bn_\bs
-
- The following is the list of available functions listed by the mapping in which
- they are available. The default key setting is given, and an explanation of
- what the function does. The key bindings of these functions can be changed
- with the _\bb_\bi_\bn_\bd (section 3.4 , page 24) command.
-
- _\b7_\b._\b5_\b._\b1 _\bg_\be_\bn_\be_\br_\bi_\bc
-
- The _\bg_\be_\bn_\be_\br_\bi_\bc menu is not a real menu, but specifies common functions (such as
- movement) available in all menus except for _\bp_\ba_\bg_\be_\br and _\be_\bd_\bi_\bt_\bo_\br. Changing set-
- tings for this menu will affect the default bindings for all menus (except as
- noted).
-
- bottom-page L move to the bottom of the page
- current-bottom not bound move current entry to bottom of page
- current-middle not bound move current entry to middle of page
- current-top not bound move current entry to top of page
- enter-command : enter a muttngrc command
- exit q exit this menu
- first-entry = move to the first entry
- half-down ] scroll down 1/2 page
- half-up [ scroll up 1/2 page
- help ? this screen
- jump number jump to an index number
- last-entry * move to the last entry
- middle-page M move to the middle of the page
- next-entry j move to the next entry
- next-line > scroll down one line
- next-page z move to the next page
- previous-entry k move to the previous entry
- previous-line < scroll up one line
- previous-page Z move to the previous page
- refresh ^L clear and redraw the screen
- search / search for a regular expression
- search-next n search for next match
- search-opposite not bound search for next match in opposite direction
- search-reverse ESC / search backwards for a regular expression
- select-entry RET select the current entry
- shell-escape ! run a program in a subshell
- tag-entry t toggle the tag on the current entry
- tag-prefix ; apply next command to tagged entries
- tag-prefix-cond not bound apply next function ONLY to tagged messages
- top-page H move to the top of the page
- what-key not bound display the keycode for a key press
-
- The Mutt Next Generation E-Mail Client 173
-
- _\b7_\b._\b5_\b._\b2 _\bi_\bn_\bd_\be_\bx
-
- The Mutt Next Generation E-Mail Client 174
-
- bounce-message b remail a message to another user
- change-folder c open a different folder
- change-folder-readonly ESC c open a different folder in read only mode
- check-traditional-pgp ESC P check for classic pgp
- clear-flag W clear a status flag from a message
- copy-message C copy a message to a file/mailbox
- create-alias a create an alias from a message sender
- decode-copy ESC C decode a message and copy it to a file/mailbox
- decode-save ESC s decode a message and save it to a file/mailbox
- delete-message d delete the current entry
- delete-pattern D delete messages matching a pattern
- delete-subthread ESC d delete all messages in subthread
- delete-thread ^D delete all messages in thread
- display-address @ display full address of sender
- display-toggle-weed h display message and toggle header weeding
- display-message RET display a message
- edit e edit the current message
- edit-type ^E edit the current message's Content-Type
- exit x exit without saving changes
- extract-keys ^K extract PGP public keys
- fetch-mail G retrieve mail from POP server
- flag-message F toggle a message's 'important' flag
- forget-passphrase ^F wipe PGP passphrase from memory
- forward-message f forward a message with comments
- group-reply g reply to all recipients
- limit l show only messages matching a pattern
- list-reply L reply to specified mailing list
- mail m compose a new mail message
- mail-key ESC k mail a PGP public key
- next-new TAB jump to the next new message
- next-subthread ESC n jump to the next subthread
- next-thread ^N jump to the next thread
- next-undeleted j move to the next undeleted message
- next-unread not bound jump to the next unread message
- parent-message P jump to parent message in thread
- pipe-message | pipe message/attachment to a shell command
- previous-new ESC TAB jump to the previous new message
- previous-page Z move to the previous page
- previous-subthread ESC p jump to previous subthread
- previous-thread ^P jump to previous thread
- previous-undeleted k move to the last undelete message
- previous-unread not bound jump to the previous unread message
- print-message p print the current entry
- query Q query external program for addresses
- quit q save changes to mailbox and quit
- read-subthread ESC r mark the current subthread as read
- read-thread ^R mark the current thread as read
- recall-message R recall a postponed message
- reply r reply to a message
- resend-message ESC e resend message and preserve MIME structure
- save-message s save message/attachment to a file
- set-flag w set a status flag on a message
- show-version V show the Mutt-ng version number and date
- show-limit ESC l show currently active limit pattern, if any
-
- The Mutt Next Generation E-Mail Client 175
-
- sort-mailbox o sort messages
- sort-reverse O sort messages in reverse order
- sync-mailbox $ save changes to mailbox
- tag-pattern T tag messages matching a pattern
- tag-thread ESC t tag/untag all messages in the current thread
- toggle-new N toggle a message's 'new' flag
- toggle-write % toggle whether the mailbox will be rewritten
- undelete-message u undelete the current entry
- undelete-pattern U undelete messages matching a pattern
- undelete-subthread ESC u undelete all messages in subthread
- undelete-thread ^U undelete all messages in thread
- untag-pattern ^T untag messages matching a pattern
- view-attachments v show MIME attachments
-
- _\b7_\b._\b5_\b._\b3 _\bp_\ba_\bg_\be_\br
-
- The Mutt Next Generation E-Mail Client 176
-
- bottom not bound jump to the bottom of the message
- bounce-message b remail a message to another user
- change-folder c open a different folder
- change-folder-readonly ESC c open a different folder in read only mode
- check-traditional-pgp ESC P check for classic pgp
- copy-message C copy a message to a file/mailbox
- create-alias a create an alias from a message sender
- decode-copy ESC C decode a message and copy it to a file/mailbox
- decode-save ESC s decode a message and save it to a file/mailbox
- delete-message d delete the current entry
- delete-subthread ESC d delete all messages in subthread
- delete-thread ^D delete all messages in thread
- display-address @ display full address of sender
- display-toggle-weed h display message and toggle header weeding
- edit e edit the current message
- edit-type ^E edit the current message's Content-Type
- enter-command : enter a muttngrc command
- exit i return to the main-menu
- extract-keys ^K extract PGP public keys
- flag-message F toggle a message's 'important' flag
- forget-passphrase ^F wipe PGP passphrase from memory
- forward-message f forward a message with comments
- group-reply g reply to all recipients
- half-up not bound move up one-half page
- half-down not bound move down one-half page
- help ? this screen
- list-reply L reply to specified mailing list
- mail m compose a new mail message
- mail-key ESC k mail a PGP public key
- mark-as-new N toggle a message's 'new' flag
- next-line RET scroll down one line
- next-entry J move to the next entry
- next-new TAB jump to the next new message
- next-page move to the next page
- next-subthread ESC n jump to the next subthread
- next-thread ^N jump to the next thread
- next-undeleted j move to the next undeleted message
- next-unread not bound jump to the next unread message
- parent-message P jump to parent message in thread
- pipe-message | pipe message/attachment to a shell command
- previous-line BackSpace scroll up one line
- previous-entry K move to the previous entry
- previous-new not bound jump to the previous new message
- previous-page - move to the previous page
- previous-subthread ESC p jump to previous subthread
- previous-thread ^P jump to previous thread
- previous-undeleted k move to the last undelete message
- previous-unread not bound jump to the previous unread message
- print-message p print the current entry
- quit Q save changes to mailbox and quit
- read-subthread ESC r mark the current subthread as read
- read-thread ^R mark the current thread as read
- recall-message R recall a postponed message
- redraw-screen ^L clear and redraw the screen
-
- The Mutt Next Generation E-Mail Client 177
-
- reply r reply to a message
- save-message s save message/attachment to a file
- search / search for a regular expression
- search-next n search for next match
- search-opposite not bound search for next match in opposite direction
- search-reverse ESC / search backwards for a regular expression
- search-toggle \ toggle search pattern coloring
- shell-escape ! invoke a command in a subshell
- show-version V show the Mutt-ng version number and date
- skip-quoted S skip beyond quoted text
- sync-mailbox $ save changes to mailbox
- tag-message t tag a message
- toggle-quoted T toggle display of quoted text
- top ^ jump to the top of the message
- undelete-message u undelete the current entry
- undelete-subthread ESC u undelete all messages in subthread
- undelete-thread ^U undelete all messages in thread
- view-attachments v show MIME attachments
-
- _\b7_\b._\b5_\b._\b4 _\ba_\bl_\bi_\ba_\bs
-
- search / search for a regular expression
- search-next n search for next match
- search-reverse ESC / search backwards for a regular expression
-
- _\b7_\b._\b5_\b._\b5 _\bq_\bu_\be_\br_\by
-
- create-alias a create an alias from a message sender
- mail m compose a new mail message
- query Q query external program for addresses
- query-append A append new query results to current results
- search / search for a regular expression
- search-next n search for next match
- search-opposite not bound search for next match in opposite direction
- search-reverse ESC / search backwards for a regular expression
-
- _\b7_\b._\b5_\b._\b6 _\ba_\bt_\bt_\ba_\bc_\bh
-
- The Mutt Next Generation E-Mail Client 178
-
- bounce-message b remail a message to another user
- collapse-parts v toggle display of subparts
- delete-entry d delete the current entry
- display-toggle-weed h display message and toggle header weeding
- edit-type ^E edit the current entry's Content-Type
- extract-keys ^K extract PGP public keys
- forward-message f forward a message with comments
- group-reply g reply to all recipients
- list-reply L reply to specified mailing list
- pipe-entry | pipe message/attachment to a shell command
- print-entry p print the current entry
- reply r reply to a message
- resend-message ESC e resend message and preserve MIME structure
- save-entry s save message/attachment to a file
- undelete-entry u undelete the current entry
- view-attach RET view attachment using mailcap entry if necessary
- view-mailcap m force viewing of attachment using mailcap
- view-text T view attachment as text
-
- _\b7_\b._\b5_\b._\b7 _\bc_\bo_\bm_\bp_\bo_\bs_\be
-
- The Mutt Next Generation E-Mail Client 179
-
- attach-file a attach a file(s) to this message
- attach-message A attach message(s) to this message
- attach-key ESC k attach a PGP public key
- copy-file C save message/attachment to a file
- detach-file D delete the current entry
- display-toggle-weed h display message and toggle header weeding
- edit-bcc b edit the BCC list
- edit-cc c edit the CC list
- edit-description d edit attachment description
- edit-encoding ^E edit attachment transfer-encoding
- edit-fcc f enter a file to save a copy of this message in
- edit-from ESC f edit the from: field
- edit-file ^X e edit the file to be attached
- edit-headers E edit the message with headers
- edit e edit the message
- edit-mime m edit attachment using mailcap entry
- edit-reply-to r edit the Reply-To field
- edit-subject s edit the subject of this message
- edit-to t edit the TO list
- edit-type ^T edit attachment type
- filter-entry F filter attachment through a shell command
- forget-passphrase ^F wipe PGP passphrase from memory
- ispell i run ispell on the message
- new-mime n compose new attachment using mailcap entry
- pgp-menu p show PGP options
- pipe-entry | pipe message/attachment to a shell command
- postpone-message P save this message to send later
- print-entry l print the current entry
- rename-file R rename/move an attached file
- send-message y send the message
- toggle-unlink u toggle whether to delete file after sending it
- view-attach RET view attachment using mailcap entry if necessary
- write-fcc w write the message to a folder
-
- _\b7_\b._\b5_\b._\b8 _\bp_\bo_\bs_\bt_\bp_\bo_\bn_\be
-
- delete-entry d delete the current entry
- undelete-entry u undelete the current entry
-
- _\b7_\b._\b5_\b._\b9 _\bb_\br_\bo_\bw_\bs_\be_\br
-
- The Mutt Next Generation E-Mail Client 180
-
- change-dir c change directories
- check-new TAB check mailboxes for new mail
- enter-mask m enter a file mask
- search / search for a regular expression
- search-next n search for next match
- search-reverse ESC / search backwards for a regular expression
- select-new N select a new file in this directory
- sort o sort messages
- sort-reverse O sort messages in reverse order
- toggle-mailboxes TAB toggle whether to browse mailboxes or all files
- view-file SPACE view file
- subscribe s subscribe to current mailbox (IMAP Only)
- unsubscribe u unsubscribe to current mailbox (IMAP Only)
- toggle-subscribed T toggle view all/subscribed mailboxes (IMAP Only)
+ Type: path
- _\b7_\b._\b5_\b._\b1_\b0 _\bp_\bg_\bp
+ Default: ""
- view-name % view the key's user id
- verify-key c verify a PGP public key
+ Command to use when spawning a subshell. By default, the user's login
+ shell from /etc/passwd is used.
- _\b7_\b._\b5_\b._\b1_\b1 _\be_\bd_\bi_\bt_\bo_\br
+267. $sidebar_boundary
- backspace BackSpace delete the char in front of the cursor
- backward-char ^B move the cursor one character to the left
- backward-word ESC b move the cursor to the previous word
- bol ^A jump to the beginning of the line
- buffy-cycle Space cycle among incoming mailboxes
- capitalize-word ESC c uppercase the first character in the word
- complete TAB complete filename or alias
- complete-query ^T complete address with query
- delete-char ^D delete the char under the cursor
- downcase-word ESC l lowercase all characters in current word
- eol ^E jump to the end of the line
- forward-char ^F move the cursor one character to the right
- forward-word ESC f move the cursor to the next word
- history-down not bound scroll down through the history list
- history-up not bound scroll up through the history list
- kill-eol ^K delete chars from cursor to end of line
- kill-eow ESC d delete chars from cursor to end of word
- kill-line ^U delete all chars on the line
- kill-word ^W delete the word in front of the cursor
- quote-char ^V quote the next typed key
- transpose-chars not bound transpose character under cursor with previous
- upcase-word ESC u uppercase all characters in current word
+ Type: string
- _\b8_\b. _\bM_\bi_\bs_\bc_\be_\bl_\bl_\ba_\bn_\by
+ Default: "."
- The Mutt Next Generation E-Mail Client 181
+ When the sidebar is displayed and $sidebar_shorten_hierarchy is set, this
+ variable specifies the characters at which to split a folder name into
+ ``hierarchy items.''
- _\b8_\b._\b1 _\bA_\bc_\bk_\bn_\bo_\bw_\bl_\be_\bd_\bg_\bm_\be_\bn_\bt_\bs
+268. $sidebar_delim
- Kari Hurtta <kari.hurtta@fmi.fi> co-developed the original MIME parsing code
- back in the ELM-ME days.
+ Type: string
- The following people have been very helpful to the development of Mutt:
+ Default: "|"
- Vikas Agnihotri <vikasa@writeme.com>,
+ This specifies the delimiter between the sidebar (if visible) and other
+ screens.
- Francois Berjon <Francois.Berjon@aar.alcatel-alsthom.fr>,
+269. $sidebar_newmail_only
- Aric Blumer <aric@fore.com>,
+ Type: boolean
- John Capo <jc@irbs.com>,
+ Default: no
- David Champion <dgc@uchicago.edu,
+ If set, only folders with new mail will be shown in the sidebar.
- Brendan Cully <brendan@kublai.com>,
+270. $sidebar_number_format
- Liviu Daia <daia@stoilow.imar.ro>,
+ Type: string
- Thomas E. Dickey <dickey@herndon4.his.com>,
+ Default: "%m%?n?(%n)?%?f?[%f]?"
- David DeSimone <fox@convex.hp.com>,
+ This variable controls how message counts are printed when the sidebar is
+ enabled. If this variable is empty (and only if), no numbers will be
+ printed and Mutt-ng won't frequently count mail (which may be a great
+ speedup esp. with mbox-style mailboxes.)
- Nickolay N. Dudorov <nnd@wint.itfs.nsk.su>,
+ The following printf(3)-like sequences are supported all of which may be
+ printed non-zero:
- Ruslan Ermilov <ru@freebsd.org>,
+ %d
- Edmund Grimley Evans <edmundo@rano.org,
+ Number of deleted messages. 1)
- Michael Finken <finken@conware.de>,
+ %F
- Sven Guckes <guckes@math.fu-berlin.de>,
+ Number of flagged messages.
- Lars Hecking <lhecking@nmrc.ie>,
+ %m
- Mark Holloman <holloman@nando.net>,
+ Total number of messages.
- Andreas Holzmann <holzmann@fmi.uni-passau.de>,
+ %M
- Marco d'Itri <md@linux.it>,
+ Total number of messages shown, i.e. not hidden by a limit. 1)
- Bjrn Jacke <bjacke@suse.com>,
+ %n
- Byrial Jensen <byrial@image.dk>,
+ Number of new messages.
- David Jeske <jeske@igcom.net>,
+ %t
- Christophe Kalt <kalt@hugo.int-evry.fr>,
+ Number of tagged messages. 1)
- Tommi Komulainen <Tommi.Komulainen@iki.fi>,
+ 1) These expandos only have a non-zero value for the current mailbox and
+ will always be zero otherwise.
- Felix von Leitner (a.k.a ``Fefe'') <leitner@math.fu-berlin.de>,
+271. $sidebar_shorten_hierarchy
- The Mutt Next Generation E-Mail Client 182
+ Type: boolean
- Brandon Long <blong@fiction.net>,
+ Default: no
- Jimmy Mkel <jmy@flashback.net>,
+ When set, the ``hierarchy'' of the sidebar entries will be shortened only
+ if they cannot be printed in full length (because ``$sidebar_width'' is
+ set to a too low value). For example, if the newsgroup name
+ ``de.alt.sysadmin.recovery'' doesn't fit on the screen, it'll get
+ shortened ``d.a.s.recovery'' while ``de.alt.d0'' still would and thus will
+ not get shortened.
- Lars Marowsky-Bree <lmb@pointer.in-minden.de>,
+ At which characters this compression is done is controled via the
+ $sidebar_boundary variable.
- Thomas ``Mike'' Michlmayr <mike@cosy.sbg.ac.at>,
+272. $sidebar_visible
- Andrew W. Nosenko <awn@bcs.zp.ua>,
+ Type: boolean
- David O'Brien <obrien@Nuxi.cs.ucdavis.edu>,
+ Default: no
- Clint Olsen <olsenc@ichips.intel.com>,
+ This specifies whether or not to show the sidebar (a list of folders
+ specified with the ``mailboxes'' command).
- Park Myeong Seok <pms@romance.kaist.ac.kr>,
+273. $sidebar_width
- Thomas Parmelan <tom@ankh.fr.eu.org>,
+ Type: number
- Ollivier Robert <roberto@keltia.freenix.fr>,
+ Default: 0
- Thomas Roessler <roessler@does-not-exist.org>,
+ The width of the sidebar.
- Roland Rosenfeld <roland@spinnaker.de>,
+274. $sig_dashes
- TAKIZAWA Takashi <taki@luna.email.ne.jp>,
+ Type: boolean
- Allain Thivillon <Allain.Thivillon@alma.fr>,
+ Default: yes
- Gero Treuner <gero@faveve.uni-stuttgart.de>,
+ If set, a line containing ``-- '' (dash, dash, space) 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.
- Vsevolod Volkov <vvv@lucky.net>,
+ For example, Mutt-ng has the ability to highlight the signature in a
+ different color in the builtin pager.
- Ken Weinert <kenw@ihs.com>
+275. $sig_on_top
- Mutt-ng is developed by the following people:
+ Type: boolean
- Andreas Krennmair <ak@synflood.at>
+ Default: no
- Nico Golde <nico@ngolde.de>
+ If set, the signature will be included before any quoted or forwarded
+ text. It is strongly recommended that you do not set this variable unless
+ you really know what you are doing, and are prepared to take some heat
+ from netiquette guardians.
- Rocco Rutte <pdmef@cs.tu-berlin.de>
+276. $signature
- The following people have been very helpful to the development of Mutt-ng:
+ Type: path
- Christian Gall <cg@cgall.de>
+ Default: "~/.signature"
- Iain Lea <iain@bricbrac.de>
+ 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.
- Andreas Kneib <akneib@gmx.net>
+277. $signoff_string
- Carsten Schoelzki <cjs@weisshuhn.de>
+ Type: string
- Elimar Riesebieter <riesebie@lxtec.de>
+ Default: ""
- The Mutt Next Generation E-Mail Client 183
+ If set, this string will be inserted before the signature. This is useful
+ for people that want to sign off every message they send with their name.
- _\b8_\b._\b2 _\bA_\bb_\bo_\bu_\bt _\bt_\bh_\bi_\bs _\bd_\bo_\bc_\bu_\bm_\be_\bn_\bt
+ If you want to insert your website's URL, additional contact information
+ or witty quotes into your mails, better use a signature file instead of
+ the signoff string.
- This document was written in SGML, and then rendered using the sgml-tools pack-
- age.
+278. $simple_search
- The Mutt Next Generation E-Mail Client 184
+ Type: string
- CONTENTS
+ Default: "~f %s | ~s %s"
- 1. Introduction .......................................................... 1
- 1.1 Overview ........................................................ 1
- 1.2 Mutt-ng Home Page ............................................... 1
- 1.3 Mailing Lists ................................................... 1
- 1.4 Software Distribution Sites ..................................... 2
- 1.5 IRC ............................................................. 2
- 1.6 Weblog .......................................................... 2
- 1.7 Copyright ....................................................... 2
+ Specifies how Mutt-ng should expand a simple search into a real search
+ pattern. A simple search is one that does not contain any of the ~
+ operators. See ``patterns'' for more information on search patterns.
- 2. Getting Started ..................................................... 2
- 2.1 Basic Concepts .............................................. 2
- 2.1.1 Screens and Menus 3
- 2.1.2 Configuration 3
- 2.1.3 Functions 3
- 2.1.4 Interaction 4
- 2.1.5 Modularization 4
- 2.1.6 Patterns 4
- 2.2 Screens and Menus ........................................... 4
- 2.2.1 Index 4
- 2.2.2 Pager 5
- 2.2.3 File Browser 5
- 2.2.4 Sidebar 5
- 2.2.5 Help 5
- 2.2.6 Compose Menu 6
- 2.2.7 Alias Menu 6
- 2.2.8 Attachment Menu 6
- 2.2.9 Key Menu 6
- 2.3 Moving Around in Menus .......................................... 6
- 2.4 Editing Input Fields ............................................ 7
- 2.5 Reading Mail - The Index and Pager .............................. 8
- 2.5.1 The Message Index 8
- 2.5.2 The Pager 9
- 2.5.3 Threaded Mode 11
- 2.5.4 Miscellaneous Functions 11
- 2.6 Sending Mail ................................................... 14
- 2.6.1 Composing new messages 14
- 2.6.2 Replying 16
- 2.6.3 Editing the message header 17
- 2.6.4 Using Mutt-ng with PGP 18
- 2.6.5 Sending anonymous messages via mixmaster 19
- 2.7 Forwarding and Bouncing Mail ................................... 19
- 2.8 Postponing Mail ................................................ 20
-
- 3. Configuration ........................................................ 21
- 3.1 Locations of Configuration Files ............................... 21
- 3.2 Syntax of Initialization Files ................................. 21
- 3.3 Defining/Using aliases ......................................... 23
- 3.4 Changing the default key bindings .............................. 24
- 3.5 Defining aliases for character sets ........................... 26
-
- i
-
- 3.6 Setting variables based upon mailbox ........................... 26
- 3.7 Keyboard macros ................................................ 27
- 3.8 Using color and mono video attributes .......................... 28
- 3.9 Ignoring (weeding) unwanted message headers .................... 30
- 3.10 Alternative addresses .......................................... 31
- 3.11 Format = Flowed .............................................. 31
- 3.11.1 Introduction 31
- 3.11.2 Receiving: Display Setup 31
- 3.11.3 Sending 32
- 3.11.4 Additional Notes 33
- 3.12 Mailing lists .................................................. 33
- 3.13 Using Multiple spool mailboxes ................................. 34
- 3.14 Defining mailboxes which receive mail .......................... 34
- 3.15 User defined headers ........................................... 35
- 3.16 Defining the order of headers when viewing messages ............ 36
- 3.17 Specify default save filename .................................. 36
- 3.18 Specify default Fcc: mailbox when composing .................... 36
- 3.19 Specify default save filename and default Fcc: mailbox at once . 37
- 3.20 Change settings based upon message recipients .................. 37
- 3.21 Change settings before formatting a message .................... 38
- 3.22 Choosing the cryptographic key of the recipient ................ 38
- 3.23 Adding key sequences to the keyboard buffer .................... 38
- 3.24 Executing functions ............................................ 39
- 3.25 Message Scoring ................................................ 39
- 3.26 Spam detection ................................................. 40
- 3.27 Setting variables .............................................. 42
- 3.28 Reading initialization commands from another file .............. 43
- 3.29 Removing hooks ................................................. 43
- 3.30 Sharing Setups ............................................. 43
- 3.30.1 Character Sets 43
- 3.30.2 Modularization 44
- 3.30.3 Conditional parts 44
- 3.31 Obsolete Variables ............................................. 46
-
- 4. Advanced Usage ....................................................... 46
- 4.1 Regular Expressions ............................................ 46
- 4.2 Patterns ....................................................... 49
- 4.2.1 Complex Patterns 49
- 4.2.2 Patterns and Dates 50
- 4.3 Format Strings ............................................. 50
- 4.3.1 Introduction 50
- 4.3.2 Conditional Expansion 52
- 4.3.3 Modifications and Padding 53
- 4.4 Using Tags ..................................................... 53
- 4.5 Using Hooks .................................................... 54
- 4.5.1 Message Matching in Hooks 55
- 4.6 Using the sidebar .............................................. 55
- 4.7 External Address Queries ....................................... 56
- 4.8 Mailbox Formats ................................................ 57
- 4.9 Mailbox Shortcuts .............................................. 58
- 4.10 Handling Mailing Lists ......................................... 58
- 4.11 Editing threads ................................................ 59
- 4.11.1 Linking threads 60
-
- ii
-
- 4.11.2 Breaking threads 60
- 4.12 Delivery Status Notification (DSN) Support ..................... 60
- 4.13 POP3 Support (OPTIONAL) ........................................ 60
- 4.14 IMAP Support (OPTIONAL) ........................................ 61
- 4.14.1 The Folder Browser 62
- 4.14.2 Authentication 62
- 4.15 NNTP Support (OPTIONAL) ........................................ 63
- 4.15.1 Again: Scoring 63
- 4.16 SMTP Support (OPTIONAL) ........................................ 64
- 4.17 Managing multiple IMAP/POP/NNTP accounts (OPTIONAL) ............ 65
- 4.18 Start a WWW Browser on URLs (EXTERNAL) ......................... 65
- 4.19 Compressed folders Support (OPTIONAL) .......................... 65
- 4.19.1 Open a compressed mailbox for reading 66
- 4.19.2 Write a compressed mailbox 66
- 4.19.3 Append a message to a compressed mailbox 67
- 4.19.4 Encrypted folders 68
-
- 5. Mutt-ng's MIME Support ............................................... 68
- 5.1 Using MIME in Mutt ............................................. 68
- 5.1.1 Viewing MIME messages in the pager 68
- 5.1.2 The Attachment Menu 69
- 5.1.3 The Compose Menu 69
- 5.2 MIME Type configuration with mime.types ........................ 69
- 5.3 MIME Viewer configuration with mailcap ......................... 70
- 5.3.1 The Basics of the mailcap file 71
- 5.3.2 Secure use of mailcap 72
- 5.3.3 Advanced mailcap Usage 72
- 5.3.4 Example mailcap files 75
- 5.4 MIME Autoview .................................................. 76
- 5.5 MIME Multipart/Alternative ..................................... 77
- 5.6 MIME Lookup .................................................... 77
-
- 6. Security Considerations ............................................ 78
- 6.1 Passwords .................................................. 78
- 6.2 Temporary Files ............................................ 78
- 6.3 Information Leaks ............................................ 78
- 6.3.1 Message-ID: headers 78
- 6.3.2 mailto:-style links 79
- 6.4 External applications ...................................... 79
- 6.4.1 mailcap 79
- 6.4.2 Other 80
-
- 7. Reference ............................................................ 80
- 7.1 Command line options ........................................... 80
- 7.2 Patterns ....................................................... 81
- 7.3 Configuration Commands ......................................... 83
- 7.4 Configuration variables .......................................... 85
- 7.4.1 abort_noattach 86
- 7.4.2 abort_nosubject 87
- 7.4.3 abort_unmodified 87
- 7.4.4 alias_file 87
- 7.4.5 alias_format 87
- 7.4.6 allow_8bit 88
-
- iii
-
- 7.4.7 allow_ansi 88
- 7.4.8 arrow_cursor 88
- 7.4.9 ascii_chars 88
- 7.4.10 askbcc 89
- 7.4.11 askcc 89
- 7.4.12 assumed_charset 89
- 7.4.13 attach_format 89
- 7.4.14 attach_remind_regexp 90
- 7.4.15 attach_sep 90
- 7.4.16 attach_split 91
- 7.4.17 attribution 91
- 7.4.18 auto_tag 91
- 7.4.19 autoedit 91
- 7.4.20 beep 92
- 7.4.21 beep_new 92
- 7.4.22 bounce 92
- 7.4.23 bounce_delivered 92
- 7.4.24 braille_friendly 92
- 7.4.25 certificate_file 92
- 7.4.26 charset 93
- 7.4.27 check_new 93
- 7.4.28 collapse_unread 93
- 7.4.29 compose_format 93
- 7.4.30 config_charset 94
- 7.4.31 confirmappend 94
- 7.4.32 confirmcreate 94
- 7.4.33 connect_timeout 94
- 7.4.34 content_type 95
- 7.4.35 copy 95
- 7.4.36 crypt_autoencrypt 95
- 7.4.37 crypt_autopgp 95
- 7.4.38 crypt_autosign 95
- 7.4.39 crypt_autosmime 96
- 7.4.40 crypt_replyencrypt 96
- 7.4.41 crypt_replysign 96
- 7.4.42 crypt_replysignencrypted 96
- 7.4.43 crypt_timestamp 96
- 7.4.44 crypt_use_gpgme 97
- 7.4.45 crypt_verify_sig 97
- 7.4.46 date_format 97
- 7.4.47 default_hook 97
- 7.4.48 delete 98
- 7.4.49 delete_space 98
- 7.4.50 delete_untag 98
- 7.4.51 digest_collapse 98
- 7.4.52 display_filter 98
- 7.4.53 dotlock_program 99
- 7.4.54 dsn_notify 99
- 7.4.55 dsn_return 99
- 7.4.56 duplicate_threads 99
- 7.4.57 edit_headers 100
- 7.4.58 editor 100
- 7.4.59 encode_from 100
-
- iv
-
- 7.4.60 entropy_file 100
- 7.4.61 envelope_from 101
- 7.4.62 escape 101
- 7.4.63 fast_reply 101
- 7.4.64 fcc_attach 101
- 7.4.65 fcc_clear 101
- 7.4.66 file_charset 101
- 7.4.67 folder 102
- 7.4.68 folder_format 102
- 7.4.69 followup_to 103
- 7.4.70 force_buffy_check 103
- 7.4.71 force_name 103
- 7.4.72 forward_decode 104
- 7.4.73 forward_decrypt 104
- 7.4.74 forward_edit 104
- 7.4.75 forward_format 104
- 7.4.76 forward_quote 104
- 7.4.77 from 105
- 7.4.78 gecos_mask 105
- 7.4.79 hdrs 105
- 7.4.80 header 105
- 7.4.81 header_cache 106
- 7.4.82 header_cache_compress 106
- 7.4.83 help 106
- 7.4.84 hidden_host 106
- 7.4.85 hide_limited 107
- 7.4.86 hide_missing 107
- 7.4.87 hide_thread_subject 107
- 7.4.88 hide_top_limited 107
- 7.4.89 hide_top_missing 107
- 7.4.90 history 107
- 7.4.91 honor_followup_to 108
- 7.4.92 hostname 108
- 7.4.93 ignore_list_reply_to 108
- 7.4.94 imap_authenticators 108
- 7.4.95 imap_check_subscribed 109
- 7.4.96 imap_delim_chars 109
- 7.4.97 imap_headers 109
- 7.4.98 imap_home_namespace 109
- 7.4.99 imap_keepalive 110
- 7.4.100 imap_list_subscribed 110
- 7.4.101 imap_login 110
- 7.4.102 imap_mail_check 110
- 7.4.103 imap_pass 111
- 7.4.104 imap_passive 111
- 7.4.105 imap_peek 111
- 7.4.106 imap_reconnect 111
- 7.4.107 imap_servernoise 112
- 7.4.108 imap_user 112
- 7.4.109 implicit_autoview 112
- 7.4.110 include 112
- 7.4.111 include_onlyfirst 112
- 7.4.112 indent_string 113
-
- v
-
- 7.4.113 index_format 113
- 7.4.114 ispell 115
- 7.4.115 keep_flagged 116
- 7.4.116 list_reply 116
- 7.4.117 locale 116
- 7.4.118 mail_check 116
- 7.4.119 mailcap_path 116
- 7.4.120 mailcap_sanitize 117
- 7.4.121 maildir_header_cache_verify 117
- 7.4.122 maildir_trash 117
- 7.4.123 mark_old 117
- 7.4.124 markers 118
- 7.4.125 mask 118
- 7.4.126 max_display_recips 118
- 7.4.127 max_line_length 118
- 7.4.128 mbox 118
- 7.4.129 mbox_type 118
- 7.4.130 menu_context 119
- 7.4.131 menu_move_off 119
- 7.4.132 menu_scroll 119
- 7.4.133 message_format 119
- 7.4.134 meta_key 119
- 7.4.135 metoo 120
- 7.4.136 mh_purge 120
- 7.4.137 mh_seq_flagged 120
- 7.4.138 mh_seq_replied 120
- 7.4.139 mh_seq_unseen 120
- 7.4.140 mime_forward 120
- 7.4.141 mime_forward_decode 121
- 7.4.142 mime_forward_rest 121
- 7.4.143 mix_entry_format 121
- 7.4.144 mixmaster 122
- 7.4.145 move 122
- 7.4.146 msgid_format 122
- 7.4.147 narrow_tree 123
- 7.4.148 nntp_ask_followup_to 123
- 7.4.149 nntp_ask_x_comment_to 123
- 7.4.150 nntp_cache_dir 124
- 7.4.151 nntp_catchup 124
- 7.4.152 nntp_context 124
- 7.4.153 nntp_followup_to_poster 124
- 7.4.154 nntp_group_index_format 125
- 7.4.155 nntp_host 125
- 7.4.156 nntp_inews 125
- 7.4.157 nntp_load_description 126
- 7.4.158 nntp_mail_check 126
- 7.4.159 nntp_mime_subject 126
- 7.4.160 nntp_newsrc 126
- 7.4.161 nntp_pass 127
- 7.4.162 nntp_post_moderated 127
- 7.4.163 nntp_reconnect 127
- 7.4.164 nntp_save_unsubscribed 127
- 7.4.165 nntp_show_new_news 128
-
- vi
-
- 7.4.166 nntp_show_only_unread 128
- 7.4.167 nntp_user 128
- 7.4.168 nntp_x_comment_to 128
- 7.4.169 operating_system 128
- 7.4.170 pager 129
- 7.4.171 pager_context 129
- 7.4.172 pager_format 129
- 7.4.173 pager_index_lines 129
- 7.4.174 pager_stop 130
- 7.4.175 pgp_auto_decode 130
- 7.4.176 pgp_autoinline 130
- 7.4.177 pgp_check_exit 130
- 7.4.178 pgp_clearsign_command 131
- 7.4.179 pgp_decode_command 131
- 7.4.180 pgp_decrypt_command 131
- 7.4.181 pgp_encrypt_only_command 132
- 7.4.182 pgp_encrypt_sign_command 132
- 7.4.183 pgp_entry_format 132
- 7.4.184 pgp_export_command 133
- 7.4.185 pgp_getkeys_command 133
- 7.4.186 pgp_good_sign 133
- 7.4.187 pgp_ignore_subkeys 133
- 7.4.188 pgp_import_command 133
- 7.4.189 pgp_list_pubring_command 133
- 7.4.190 pgp_list_secring_command 134
- 7.4.191 pgp_long_ids 134
- 7.4.192 pgp_mime_auto 134
- 7.4.193 pgp_replyinline 134
- 7.4.194 pgp_retainable_sigs 135
- 7.4.195 pgp_show_unusable 135
- 7.4.196 pgp_sign_as 135
- 7.4.197 pgp_sign_command 135
- 7.4.198 pgp_sort_keys 135
- 7.4.199 pgp_strict_enc 136
- 7.4.200 pgp_timeout 136
- 7.4.201 pgp_use_gpg_agent 136
- 7.4.202 pgp_verify_command 136
- 7.4.203 pgp_verify_key_command 137
- 7.4.204 pipe_decode 137
- 7.4.205 pipe_sep 137
- 7.4.206 pipe_split 137
- 7.4.207 pop_auth_try_all 137
- 7.4.208 pop_authenticators 138
- 7.4.209 pop_delete 138
- 7.4.210 pop_host 138
- 7.4.211 pop_last 138
- 7.4.212 pop_mail_check 139
- 7.4.213 pop_pass 139
- 7.4.214 pop_reconnect 139
- 7.4.215 pop_user 139
- 7.4.216 post_indent_string 139
- 7.4.217 postpone 140
- 7.4.218 postponed 140
-
- vii
-
- 7.4.219 preconnect 140
- 7.4.220 print 140
- 7.4.221 print_command 141
- 7.4.222 print_decode 141
- 7.4.223 print_split 141
- 7.4.224 prompt_after 141
- 7.4.225 query_command 141
- 7.4.226 quit 142
- 7.4.227 quote_empty 142
- 7.4.228 quote_quoted 142
- 7.4.229 quote_regexp 142
- 7.4.230 read_inc 142
- 7.4.231 read_only 143
- 7.4.232 realname 143
- 7.4.233 recall 143
- 7.4.234 record 143
- 7.4.235 reply_regexp 144
- 7.4.236 reply_self 144
- 7.4.237 reply_to 144
- 7.4.238 resolve 144
- 7.4.239 reverse_alias 144
- 7.4.240 reverse_name 145
- 7.4.241 reverse_realname 145
- 7.4.242 rfc2047_parameters 145
- 7.4.243 save_address 146
- 7.4.244 save_empty 146
- 7.4.245 save_name 146
- 7.4.246 score 146
- 7.4.247 score_threshold_delete 147
- 7.4.248 score_threshold_flag 147
- 7.4.249 score_threshold_read 147
- 7.4.250 send_charset 147
- 7.4.251 sendmail 147
- 7.4.252 sendmail_wait 148
- 7.4.253 shell 148
- 7.4.254 sidebar_boundary 148
- 7.4.255 sidebar_delim 148
- 7.4.256 sidebar_newmail_only 149
- 7.4.257 sidebar_number_format 149
- 7.4.258 sidebar_shorten_hierarchy 149
- 7.4.259 sidebar_visible 150
- 7.4.260 sidebar_width 150
- 7.4.261 sig_dashes 150
- 7.4.262 sig_on_top 150
- 7.4.263 signature 150
- 7.4.264 signoff_string 151
- 7.4.265 simple_search 151
- 7.4.266 sleep_time 151
- 7.4.267 smart_wrap 151
- 7.4.268 smileys 152
- 7.4.269 smime_ask_cert_label 152
- 7.4.270 smime_ca_location 152
- 7.4.271 smime_certificates 152
-
- viii
-
- 7.4.272 smime_decrypt_command 152
- 7.4.273 smime_decrypt_use_default_key 153
- 7.4.274 smime_default_key 153
- 7.4.275 smime_encrypt_command 153
- 7.4.276 smime_encrypt_with 154
- 7.4.277 smime_get_cert_command 154
- 7.4.278 smime_get_cert_email_command 154
- 7.4.279 smime_get_signer_cert_command 154
- 7.4.280 smime_import_cert_command 154
- 7.4.281 smime_is_default 154
- 7.4.282 smime_keys 155
- 7.4.283 smime_pk7out_command 155
- 7.4.284 smime_sign_command 155
- 7.4.285 smime_sign_opaque_command 155
- 7.4.286 smime_timeout 156
- 7.4.287 smime_verify_command 156
- 7.4.288 smime_verify_opaque_command 156
- 7.4.289 smtp_envelope 156
- 7.4.290 smtp_host 156
- 7.4.291 smtp_pass 157
- 7.4.292 smtp_port 157
- 7.4.293 smtp_use_tls 157
- 7.4.294 smtp_user 157
- 7.4.295 sort 158
- 7.4.296 sort_alias 158
- 7.4.297 sort_aux 158
- 7.4.298 sort_browser 159
- 7.4.299 sort_re 159
- 7.4.300 spam_separator 159
- 7.4.301 spoolfile 160
- 7.4.302 ssl_ca_certificates_file 160
- 7.4.303 ssl_client_cert 160
- 7.4.304 ssl_force_tls 160
- 7.4.305 ssl_min_dh_prime_bits 160
- 7.4.306 ssl_starttls 161
- 7.4.307 ssl_use_sslv2 161
- 7.4.308 ssl_use_sslv3 161
- 7.4.309 ssl_use_tlsv1 161
- 7.4.310 ssl_usesystemcerts 161
- 7.4.311 status_chars 162
- 7.4.312 status_format 162
- 7.4.313 status_on_top 164
- 7.4.314 strict_mailto 164
- 7.4.315 strict_mime 165
- 7.4.316 strict_threads 165
- 7.4.317 strip_was 165
- 7.4.318 strip_was_regex 165
- 7.4.319 stuff_quoted 166
- 7.4.320 suspend 166
- 7.4.321 text_flowed 166
- 7.4.322 thorough_search 166
- 7.4.323 thread_received 166
- 7.4.324 tilde 167
-
- ix
-
- 7.4.325 timeout 167
- 7.4.326 tmpdir 167
- 7.4.327 to_chars 167
- 7.4.328 trash 167
- 7.4.329 tunnel 168
- 7.4.330 umask 168
- 7.4.331 uncollapse_jump 168
- 7.4.332 use_8bitmime 168
- 7.4.333 use_domain 168
- 7.4.334 use_from 169
- 7.4.335 use_idn 169
- 7.4.336 use_ipv6 169
- 7.4.337 user_agent 169
- 7.4.338 visual 169
- 7.4.339 wait_key 170
- 7.4.340 weed 170
- 7.4.341 wrap_search 170
- 7.4.342 wrapmargin 170
- 7.4.343 write_bcc 170
- 7.4.344 write_inc 171
- 7.4.345 xterm_icon 171
- 7.4.346 xterm_leave 171
- 7.4.347 xterm_set_titles 171
- 7.4.348 xterm_title 171
- 7.5 Functions ....................................................... 172
- 7.5.1 generic 172
- 7.5.2 index 173
- 7.5.3 pager 175
- 7.5.4 alias 177
- 7.5.5 query 177
- 7.5.6 attach 177
- 7.5.7 compose 178
- 7.5.8 postpone 179
- 7.5.9 browser 179
- 7.5.10 pgp 180
- 7.5.11 editor 180
-
- 8. Miscellany ............................................................ 180
- 8.1 Acknowledgments ................................................. 181
- 8.2 About this document ............................................. 183
-
- x
+ For example, if you simply type ``joe'' at a search or limit prompt,
+ Mutt-ng will automatically expand it to the value specified by this
+ variable. For the default value it would be:
+ ~f joe | ~s joe
+
+279. $sleep_time
+
+ Type: number
+
+ Default: 1
+
+ Specifies time, in seconds, to pause while displaying certain
+ informational messages, while moving from folder to folder and after
+ expunging messages from the current folder. The default is to pause one
+ second, so a value of zero for this option suppresses the pause.
+
+280. $smart_wrap
+
+ Type: boolean
+
+ Default: yes
+
+ Controls the display of lines longer than 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.
+
+281. $smileys
+
+ Type: regular expression
+
+ Default: "(>From )|(:[-^]?[][)(><}{|/DP])"
+
+ The pager uses this variable to catch some common false positives of
+ ``$quote_regexp'', most notably smileys in the beginning of a line
+
+282. $smime_ask_cert_label
+
+ Type: boolean
+
+ Default: yes
+
+ This flag controls whether you want to be asked to enter a label for a
+ certificate about to be added to the database or not. It is set by
+ default. (S/MIME only)
+
+283. $smime_ca_location
+
+ Type: path
+
+ Default: ""
+
+ This variable contains the name of either a directory, or a file which
+ contains trusted certificates for use with OpenSSL. (S/MIME only)
+
+284. $smime_certificates
+
+ Type: path
+
+ Default: ""
+
+ Since there is no pubring/secring as with PGP, Mutt-ng has to handle
+ storage and retrieval of keys by itself. This is very basic right now, and
+ keys and certificates are stored in two different directories, both named
+ as the hash-value retrieved from OpenSSL. There is an index file which
+ contains mailbox-address keyid pairs, and which can be manually edited.
+ This one points to the location of the certificates. (S/MIME only)
+
+285. $smime_decrypt_command
+
+ Type: string
+
+ Default: ""
+
+ This format string specifies a command which is used to decrypt
+ application/x-pkcs7-mime attachments.
+
+ The OpenSSL command formats have their own set of printf(3)-like sequences
+ similar to PGP's:
+
+ %f
+
+ Expands to the name of a file containing a message.
+
+ %s
+
+ Expands to the name of a file containing the signature part of a
+ multipart/signed attachment when verifying it.
+
+ %k
+
+ The key-pair specified with $smime_default_key
+
+ %c
+
+ One or more certificate IDs.
+
+ %a
+
+ The algorithm used for encryption.
+
+ %C
+
+ CA location: Depending on whether $smime_ca_location points to a
+ directory or file, this expands to "-CApath $smime_ca_location" or
+ "-CAfile $smime_ca_location".
+
+ For examples on how to configure these formats, see the smime.rc in the
+ samples/ subdirectory which has been installed on your system alongside
+ the documentation. (S/MIME only)
+
+286. $smime_decrypt_use_default_key
+
+ Type: boolean
+
+ Default: yes
+
+ If set (default) this tells Mutt-ng to use the default key for decryption.
+ Otherwise, if manage multiple certificate-key-pairs, Mutt-ng will try to
+ use the mailbox-address to determine the key to use. It will ask you to
+ supply a key, if it can't find one. (S/MIME only)
+
+287. $smime_default_key
+
+ Type: string
+
+ Default: ""
+
+ This is the default key-pair to use for signing. This must be set to the
+ keyid (the hash-value that OpenSSL generates) to work properly (S/MIME
+ only)
+
+288. $smime_encrypt_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to create encrypted S/MIME messages. (S/MIME only)
+
+289. $smime_encrypt_with
+
+ Type: string
+
+ Default: ""
+
+ This sets the algorithm that should be used for encryption. Valid choices
+ are ``des'', ``des3'', ``rc2-40'', ``rc2-64'', ``\frc2-128''.
+
+ If unset ``3des'' (TripleDES) is used. (S/MIME only)
+
+290. $smime_get_cert_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to extract X509 certificates from a PKCS7 structure.
+ (S/MIME only)
+
+291. $smime_get_cert_email_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to extract the mail address(es) used for storing X509
+ certificates, and for verification purposes (to check whether the
+ certificate was issued for the sender's mailbox). (S/MIME only)
+
+292. $smime_get_signer_cert_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to extract only the signers X509 certificate from a
+ S/MIME signature, so that the certificate's owner may get compared to the
+ email's ``From:'' header field. (S/MIME only)
+
+293. $smime_import_cert_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to import a certificate via smime_keysng. (S/MIME
+ only)
+
+294. $smime_is_default
+
+ Type: boolean
+
+ Default: no
+
+ The default behaviour of Mutt-ng is to use PGP on all auto-sign/encryption
+ operations. To override and to use OpenSSL instead this must be set.
+
+ However, this has no effect while replying, since Mutt-ng will
+ automatically select the same application that was used to sign/encrypt
+ the original message.
+
+ (Note that this variable can be overridden by unsetting $crypt_autosmime.)
+ (S/MIME only)
+
+295. $smime_keys
+
+ Type: path
+
+ Default: ""
+
+ Since there is no pubring/secring as with PGP, Mutt-ng has to handle
+ storage ad retrieval of keys/certs by itself. This is very basic right
+ now, and stores keys and certificates in two different directories, both
+ named as the hash-value retrieved from OpenSSL. There is an index file
+ which contains mailbox-address keyid pair, and which can be manually
+ edited. This one points to the location of the private keys. (S/MIME only)
+
+296. $smime_pk7out_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to extract PKCS7 structures of S/MIME signatures, in
+ order to extract the public X509 certificate(s). (S/MIME only)
+
+297. $smime_sign_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to created S/MIME signatures of type
+ multipart/signed, which can be read by all mail clients. (S/MIME only)
+
+298. $smime_sign_opaque_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to created S/MIME signatures of type
+ application/x-pkcs7-signature, which can only be handled by mail clients
+ supporting the S/MIME extension. (S/MIME only)
+
+299. $smime_timeout
+
+ Type: number
+
+ Default: 300
+
+ The number of seconds after which a cached passphrase will expire if not
+ used. (S/MIME only)
+
+300. $smime_verify_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to verify S/MIME signatures of type multipart/signed.
+ (S/MIME only)
+
+301. $smime_verify_opaque_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to verify S/MIME signatures of type
+ application/x-pkcs7-mime. (S/MIME only)
+
+302. $smtp_host
+
+ Type: string
+
+ Default: ""
+
+ Availability: SMTP
+
+ Defines the SMTP host which will be used to deliver mail, as opposed to
+ invoking the sendmail binary. Setting this variable overrides the value of
+ ``$sendmail'', and any associated variables.
+
+303. $smtp_pass
+
+ Type: string
+
+ Default: ""
+
+ Availability: SMTP
+
+ Defines the password to use with SMTP AUTH. If ``$smtp_user'' is set, but
+ this variable is not, you will be prompted for a password when sending.
+
+ Note: Storing passwords in a configuration file presents a security risk
+ since the superuser of your machine may read it regardless of the file's
+ permissions.
+
+304. $smtp_port
+
+ Type: number
+
+ Default: 25
+
+ Availability: SMTP
+
+ Defines the port that the SMTP host is listening on for mail delivery.
+ Must be specified as a number.
+
+ Defaults to 25, the standard SMTP port, but RFC 2476-compliant SMTP
+ servers will probably desire 587, the mail submission port.
+
+305. $smtp_use_tls
+
+ Type: string
+
+ Default: ""
+
+ Availability: SMTP (and SSL)
+
+ Defines wether to use STARTTLS. If this option is set to ``required'' and
+ the server does not support STARTTLS or there is an error in the TLS
+ Handshake, the connection will fail. Setting this to ``enabled'' will try
+ to start TLS and continue without TLS in case of an error. Muttng still
+ needs to have SSL support enabled in order to use it.
+
+306. $smtp_user
+
+ Type: string
+
+ Default: ""
+
+ Availability: SMTP
+
+ Defines the username to use with SMTP AUTH. Setting this variable will
+ cause Mutt-ng to attempt to use SMTP AUTH when sending.
+
+307. $sort
+
+ Type: sort order
+
+ Default: date
+
+ Specifies how to sort messages in the index menu. Valid values are:
+
+ date or date-sent
+ date-received
+ from
+ mailbox-order (unsorted)
+ score
+ size
+ spam
+ subject
+ threads
+ to
+
+
+ You may optionally use the ``reverse-'' prefix to specify reverse sorting
+ order (example: set sort=reverse-date-sent).
+
+308. $sort_alias
+
+ Type: sort order
+
+ Default: alias
+
+ Specifies how the entries in the ``alias'' menu are sorted. The following
+ are legal values:
+
+ address (sort alphabetically by email address)
+ alias (sort alphabetically by alias name)
+ unsorted (leave in order specified in .muttrc)
+
+
+309. $sort_aux
+
+ Type: sort order
+
+ Default: date
+
+ When sorting by threads, this variable controls how threads are sorted in
+ relation to other threads, and how the branches of the thread trees are
+ sorted. This can be set to any value that ``$sort'' can, except threads
+ (in that case, Mutt-ng will just use date-sent). You can also specify the
+ ``last-'' prefix in addition to ``reverse-'' prefix, but last- must come
+ after reverse-. The last- prefix causes messages to be sorted against its
+ siblings by which has the last descendant, using the rest of sort_aux as
+ an ordering.
+
+ For instance, set sort_aux=last-date-received would mean that if a new
+ message is received in a thread, that thread becomes the last one
+ displayed (or the first, if you have set sort=reverse-threads.)
+
+ Note: For reversed ``$sort'' order $sort_aux is reversed again (which is
+ not the right thing to do, but kept to not break any existing
+ configuration setting).
+
+310. $sort_browser
+
+ Type: sort order
+
+ Default: alpha
+
+ Specifies how to sort entries in the file browser. By default, the entries
+ are sorted alphabetically. Valid values:
+
+ alpha (alphabetically)
+ date
+ size
+ unsorted
+
+
+ You may optionally use the ``reverse-'' prefix to specify reverse sorting
+ order (example: set sort_browser=reverse-date).
+
+311. $sort_re
+
+ Type: boolean
+
+ Default: yes
+
+ This variable is only useful when sorting by threads with
+ ``$strict_threads'' unset. In that case, it changes the heuristic Mutt-ng
+ uses to thread messages by subject. With $sort_reset, Mutt-ng will only
+ attach a message as the child of another message by subject if the subject
+ of the child message starts with a substring matching the setting of
+ ``$reply_regexp''. With $sort_reunset, Mutt-ng will attach the message
+ whether or not this is the case, as long as the non-``$reply_regexp''
+ parts of both messages are identical.
+
+312. $spam_separator
+
+ Type: string
+
+ Default: ","
+
+ ``spam_separator'' controls what happens when multiple spam headers are
+ matched: if unset, each successive header will overwrite any previous
+ matches value for the spam label. If set, each successive match will
+ append to the previous, using ``spam_separator'' as a separator.
+
+313. $spoolfile
+
+ Type: path
+
+ Default: ""
+
+ If your spool mailbox is in a non-default place where Mutt-ng cannot find
+ it, you can specify its location with this variable. Mutt-ng will
+ automatically set this variable to the value of the environment variable
+ $MAIL if it is not set.
+
+314. $ssl_ca_certificates_file
+
+ Type: path
+
+ Default: ""
+
+ This variable specifies a file containing trusted CA certificates. Any
+ server certificate that is signed with one of these CA certificates are
+ also automatically accepted.
+
+ Example: set ssl_ca_certificates_file=/etc/ssl/certs/ca-certificates.crt
+
+315. $ssl_client_cert
+
+ Type: path
+
+ Default: ""
+
+ Availability: SSL
+
+ The file containing a client certificate and its associated private key.
+
+316. $ssl_force_tls
+
+ Type: boolean
+
+ Default: no
+
+ If this variable is set, Mutt-ng will require that all connections to
+ remote servers be encrypted. Furthermore it will attempt to negotiate TLS
+ even if the server does not advertise the capability, since it would
+ otherwise have to abort the connection anyway. This option supersedes
+ ``$ssl_starttls''.
+
+317. $ssl_min_dh_prime_bits
+
+ Type: number
+
+ Default: 0
+
+ Availability: GNUTLS
+
+ This variable specifies the minimum acceptable prime size (in bits) for
+ use in any Diffie-Hellman key exchange. A value of 0 will use the default
+ from the GNUTLS library.
+
+318. $ssl_starttls
+
+ Type: quadoption
+
+ Default: yes
+
+ Availability: SSL or GNUTLS
+
+ If set (the default), Mutt-ng will attempt to use STARTTLS on servers
+ advertising the capability. When unset, Mutt-ng will not attempt to use
+ STARTTLS regardless of the server's capabilities.
+
+319. $ssl_use_sslv2
+
+ Type: boolean
+
+ Default: yes
+
+ Availability: SSL
+
+ This variables specifies whether to attempt to use SSLv2 in the SSL
+ authentication process.
+
+320. $ssl_use_sslv3
+
+ Type: boolean
+
+ Default: yes
+
+ Availability: SSL or GNUTLS
+
+ This variables specifies whether to attempt to use SSLv3 in the SSL
+ authentication process.
+
+321. $ssl_use_tlsv1
+
+ Type: boolean
+
+ Default: yes
+
+ Availability: SSL or GNUTLS
+
+ This variables specifies whether to attempt to use TLSv1 in the SSL
+ authentication process.
+
+322. $ssl_usesystemcerts
+
+ Type: boolean
+
+ Default: yes
+
+ Availability: SSL
+
+ If set to yes, Mutt-ng will use CA certificates in the system-wide
+ certificate store when checking if server certificate is signed by a
+ trusted CA.
+
+323. $status_chars
+
+ Type: string
+
+ Default: "-*%A"
+
+ Controls the characters used by the ``%r'' indicator in
+ ``$status_format''. The first character is used when the mailbox is
+ unchanged. The second is used when the mailbox has been changed, and it
+ needs to be resynchronized. The third is used if the mailbox is in
+ read-only mode, or if the mailbox will not be written when exiting that
+ mailbox (You can toggle whether to write changes to a mailbox with the
+ toggle-write operation, bound by default to ``%''). The fourth is used to
+ indicate that the current folder has been opened in attach-message mode
+ (Certain operations like composing a new mail, replying, forwarding, etc.
+ are not permitted in this mode).
+
+324. $status_format
+
+ Type: string
+
+ Default: "-%r-Mutt-ng: %f [Msgs:%?M?%M/?%m%?n? New:%n?%?o? Old:%o?%?d?
+ Del:%d?%?F? Flag:%F?%?t? Tag:%t?%?p? Post:%p?%?b? Inc:%b?%?l?
+ %l?]---(%s/%S)-%>-(%P)---"
+
+ Controls the format of the status line displayed in the index menu. This
+ string is similar to ``$index_format'', but has its own set of
+ printf(3)-like sequences:
+
+ %b
+
+ number of mailboxes with new mail *
+
+ %B
+
+ the short pathname of the current mailbox
+
+ %d
+
+ number of deleted messages *
+
+ %f
+
+ the full pathname of the current mailbox
+
+ %F
+
+ number of flagged messages *
+
+ %h
+
+ local hostname
+
+ %l
+
+ size (in bytes) of the current mailbox *
+
+ %L
+
+ size (in bytes) of the messages shown (i.e., which match the
+ current limit) *
+
+ %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 *
+
+ %o
+
+ number of old unread messages *
+
+ %p
+
+ number of postponed messages *
+
+ %P
+
+ percentage of the way through the index
+
+ %r
+
+ modified/read-only/won't-write/attach-message indicator, according
+ to $status_chars
+
+ %s
+
+ current sorting mode ($sort)
+
+ %S
+
+ current aux sorting method ($sort_aux)
+
+ %t
+
+ number of tagged messages *
+
+ %u
+
+ number of unread messages *
+
+ %v
+
+ Mutt-ng version string
+
+ %V
+
+ currently active limit pattern, if any *
+
+ %>X
+
+ right justify the rest of the string and pad with "X"
+
+ %|X
+
+ pad to the end of the line with "X"
+
+ * = can be optionally printed if nonzero
+
+ Some of the above sequences can be used to optionally print a string if
+ their value is nonzero. For example, you may only want to see the number
+ of flagged messages if such messages exist, since zero is not particularly
+ meaningful. To optionally print a string based upon one of the above
+ sequences, the following construct is used
+
+ %?<sequence_char>?<optional_string>?
+
+ where sequence_char is a character from the table above, and
+ optional_string is the string you would like printed if sequence_char is
+ nonzero. optional_stringmay contain other sequences as well as normal
+ text, but you may not nest optional strings.
+
+ Here is an example illustrating how to optionally print the number of new
+ messages in a mailbox:
+
+ %?n?%n new messages.?
+
+ Additionally you can switch between two strings, the first one, if a value
+ is zero, the second one, if the value is nonzero, by using the following
+ construct:
+
+ %?<sequence_char>?<if_string>&<else_string>?
+
+ You can additionally force the result of any printf(3)-like sequence to be
+ lowercase by prefixing the sequence character with an underscore (_) sign.
+ For example, if you want to display the local hostname in lowercase, you
+ would use:
+
+ %_h
+
+ If you prefix the sequence character with a colon (:) character, Mutt-ng
+ will replace any dots in the expansion by underscores. This might be
+ helpful with IMAP folders that don't like dots in folder names.
+
+325. $status_on_top
+
+ Type: boolean
+
+ Default: no
+
+ Setting this variable causes the ``status bar'' to be displayed on the
+ first line of the screen rather than near the bottom.
+
+326. $strict_mailto
+
+ Type: boolean
+
+ Default: yes
+
+ With mailto: style links, a body as well as arbitrary header information
+ may be embedded. This may lead to (user) headers being overwriten without
+ note if ``$edit_headers'' is unset.
+
+ If this variable is set, Mutt-ng is strict and allows anything to be
+ changed. If it's unset, all headers given will be prefixed with
+ ``X-Mailto-'' and the message including headers will be shown in the
+ editor regardless of what ``$edit_headers'' is set to.
+
+327. $strict_mime
+
+ Type: boolean
+
+ Default: yes
+
+ When unset, non MIME-compliant messages that doesn't have any charset
+ indication in the ``Content-Type:'' header field can be displayed (non
+ MIME-compliant messages are often generated by old mailers or buggy
+ mailers like MS Outlook Express). See also $assumed_charset.
+
+ This option also replaces linear-white-space between encoded-word and
+ *text to a single space to prevent the display of MIME-encoded
+ ``Subject:'' header field from being devided into multiple lines.
+
+328. $strict_threads
+
+ Type: boolean
+
+ Default: no
+
+ If set, threading will only make use of the ``In-Reply-To:'' and
+ ``References:'' header fields when you ``$sort'' 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. See also ``$sort_re'' for a less drastic
+ way of controlling this behaviour.
+
+329. $strip_was
+
+ Type: boolean
+
+ Default: no
+
+ When set, Mutt-ng will remove the trailing part of the ``Subject:'' line
+ which matches $strip_was_regex when replying. This is useful to properly
+ react on subject changes and reduce ``subject noise.'' (esp. in Usenet)
+
+330. $strip_was_regex
+
+ Type: regular expression
+
+ Default: "\([Ww][Aa][RrSs]: .*\)[ ]*$"
+
+ When non-empty and $strip_was is set, Mutt-ng will remove this trailing
+ part of the ``Subject'' line when replying if it won't be empty
+ afterwards.
+
+331. $stuff_quoted
+
+ Type: boolean
+
+ Default: no
+
+ If set, attachments with flowed format will have their quoting
+ ``stuffed'', i.e. a space will be inserted between the quote characters
+ and the actual text.
+
+332. $suspend
+
+ Type: boolean
+
+ Default: yes
+
+ When unset, Mutt-ng won't stop when the user presses the terminal's susp
+ key, usually CTRL+Z. This is useful if you run Mutt-ng inside an xterm
+ using a command like ``xterm -e muttng.''
+
+333. $text_flowed
+
+ Type: boolean
+
+ Default: no
+
+ When set, Mutt-ng will generate text/plain; format=flowed attachments.
+ This format is easier to handle for some mailing software, and generally
+ just looks like ordinary text. To actually make use of this format's
+ features, you'll need support in your editor.
+
+ Note that $indent_string is ignored when this option is set.
+
+334. $thorough_search
+
+ Type: boolean
+
+ Default: no
+
+ Affects the ~b and ~h search operations described in section ``patterns''
+ above. If set, the headers and attachments of messages to be searched are
+ decoded before searching. If unset, messages are searched as they appear
+ in the folder.
+
+335. $thread_received
+
+ Type: boolean
+
+ Default: no
+
+ When set, Mutt-ng uses the date received rather than the date sent to
+ thread messages by subject.
+
+336. $tilde
+
+ Type: boolean
+
+ Default: no
+
+ When set, the internal-pager will pad blank lines to the bottom of the
+ screen with a tilde (~).
+
+337. $timeout
+
+ Type: number
+
+ Default: 600
+
+ This variable controls the number of seconds Mutt-ng 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-ng to never time out.
+
+338. $tmpdir
+
+ Type: path
+
+ Default: ""
+
+ This variable allows you to specify where Mutt-ng will place its temporary
+ files needed for displaying and composing messages. If this variable is
+ not set, the environment variable $TMPDIR is used. If $TMPDIR is not set
+ then "/tmp" is used.
+
+339. $to_chars
+
+ Type: string
+
+ Default: " +TCFL"
+
+ 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 you. The sixth
+ character is used to indicate when a mail was sent to a mailing-list
+ you're subscribe to (default: L).
+
+340. $trash
+
+ Type: path
+
+ Default: ""
+
+ If set, this variable specifies the path of the trash folder where the
+ mails marked for deletion will be moved, instead of being irremediably
+ purged.
+
+ Note: When you delete a message in the trash folder, it is really deleted,
+ so that there is no way to recover mail.
+
+341. $tunnel
+
+ Type: string
+
+ Default: ""
+
+ Setting this variable will cause Mutt-ng to open a pipe to a command
+ instead of a raw socket. You may be able to use this to set up
+ preauthenticated connections to your IMAP/POP3 server. Example:
+
+ tunnel="ssh -q mailhost.net /usr/local/libexec/imapd"
+
+ Note: For this example to work you must be able to log in to the remote
+ machine without having to enter a password.
+
+342. $umask
+
+ Type: number
+
+ Default: 0077
+
+ This sets the umask that will be used by Mutt-ng when creating all kinds
+ of files. If unset, the default value is 077.
+
+343. $uncollapse_jump
+
+ Type: boolean
+
+ Default: no
+
+ When set, Mutt-ng will jump to the next unread message, if any, when the
+ current thread is uncollapsed.
+
+344. $use_8bitmime
+
+ Type: boolean
+
+ Default: no
+
+ Warning: do not set this variable unless you are using a version of
+ sendmail which supports the -B8BITMIME flag (such as sendmail 8.8.x) or in
+ connection with the SMTP support via libESMTP. Otherwise you may not be
+ able to send mail.
+
+ When set, Mutt-ng will either invoke ``$sendmail'' with the -B8BITMIME
+ flag when sending 8-bit messages to enable ESMTP negotiation or tell
+ libESMTP to do so.
+
+345. $use_domain
+
+ Type: boolean
+
+ Default: yes
+
+ When set, Mutt-ng will qualify all local addresses (ones without the @host
+ portion) with the value of ``$hostname''. If unset, no addresses will be
+ qualified.
+
+346. $use_envelope_from
+
+ Type: boolean
+
+ Default: no
+
+ When set, Mutt-ng will use ``$envelope_from_address'' as the envelope
+ sender if that is set, otherwise it will attempt to derive it from the
+ "From:" header.
+
+ Note: This information is passed to sendmail command using the "-f"
+ command line switch and passed to the SMTP server for libESMTP (if support
+ is compiled in).
+
+347. $use_from
+
+ Type: boolean
+
+ Default: yes
+
+ When set, Mutt-ng will generate the ``From:'' header field when sending
+ messages. If unset, no ``From:'' header field will be generated unless the
+ user explicitly sets one using the ``my_hdr'' command.
+
+348. $use_idn
+
+ Type: boolean
+
+ Default: yes
+
+ Availability: IDN
+
+ When set, Mutt-ng will show you international domain names decoded.
+
+ Note: You can use IDNs for addresses even if this is unset. This variable
+ only affects decoding.
+
+349. $use_ipv6
+
+ Type: boolean
+
+ Default: yes
+
+ When set, Mutt-ng will look for IPv6 addresses of hosts it tries to
+ contact. If this option is unset, Mutt-ng will restrict itself to IPv4
+ addresses. Normally, the default should work.
+
+350. $visual
+
+ Type: path
+
+ Default: ""
+
+ Specifies the visual editor to invoke when the ~v command is given in the
+ builtin editor.
+
+351. $wait_key
+
+ Type: boolean
+
+ Default: yes
+
+ Controls whether Mutt-ng will ask you to press a key after shell- escape,
+ pipe-message, pipe-entry, print-message, and print-entry commands.
+
+ It is also used when viewing attachments with ``auto_view'', provided that
+ the corresponding mailcap entry has a needsterminal flag, and the external
+ program is interactive.
+
+ When set, Mutt-ng will always ask for a key. When unset, Mutt-ng will wait
+ for a key only if the external command returned a non-zero status.
+
+352. $weed
+
+ Type: boolean
+
+ Default: yes
+
+ When set, Mutt-ng will weed headers when displaying, forwarding, printing,
+ or replying to messages.
+
+353. $wrap_search
+
+ Type: boolean
+
+ Default: yes
+
+ Controls whether searches wrap around the end of the mailbox.
+
+ When set, searches will wrap around the first (or last) message. When
+ unset, searches will not wrap.
+
+354. $wrapmargin
+
+ Type: number
+
+ Default: 0
+
+ Controls the size of the margin remaining at the right side of the
+ terminal when Mutt-ng's pager does smart wrapping.
+
+355. $write_bcc
+
+ Type: boolean
+
+ Default: yes
+
+ Controls whether Mutt-ng writes out the Bcc header when preparing messages
+ to be sent. Exim users may wish to unset this.
+
+356. $write_inc
+
+ Type: number
+
+ Default: 10
+
+ When writing a mailbox, a message will be printed every write_inc 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.
+
+357. $xterm_icon
+
+ Type: string
+
+ Default: "M%?n?AIL&ail?"
+
+ Controls the format of the X11 icon title, as long as $xterm_set_titles is
+ set. This string is identical in formatting to the one used by
+ ``$status_format''.
+
+358. $xterm_leave
+
+ Type: string
+
+ Default: ""
+
+ If $xterm_set_titles is set, this string will be used to set the title
+ when leaving Mutt-ng. For terminal-based programs, there's no easy and
+ portable way to read the current title so Mutt-ng cannot read it upon
+ startup and restore it when exiting.
+
+ Based on the xterm FAQ, the following might work:
+
+ set xterm_leave = "`test x$DISPLAY != x && xprop -id $WINDOWID | grep
+ WM_NAME | cut -d '"' -f 2`"
+
+359. $xterm_set_titles
+
+ Type: boolean
+
+ Default: no
+
+ Controls whether Mutt-ng sets the xterm title bar and icon name (as long
+ as you're in an appropriate terminal). The default must be unset to force
+ in the validity checking.
+
+360. $xterm_title
+
+ Type: string
+
+ Default: "Mutt-ng with %?m?%m messages&no messages?%?n? [%n New]?"
+
+ Controls the format of the title bar of the xterm provided that
+ $xterm_set_titles has been set. This string is identical in formatting to
+ the one used by ``$status_format''.
+
+5. Functions
+
+ The following is the list of available functions listed by the mapping in
+ which they are available. The default key setting is given, and an
+ explanation of what the function does. The key bindings of these functions
+ can be changed with the bind command.
+
+ 5.1. generic
+
+ The generic menu is not a real menu, but specifies common functions (such
+ as movement) available in all menus except for pager and editor. Changing
+ settings for this menu will affect the default bindings for all menus
+ (except as noted).
+
+ Table 7.4. Reference: Default Generic Function Bindings
+
+ Function Default Key Description
+ <bottom-page> L move to the bottom of the page
+ <current-bottom> move current entry to bottom of page
+ <current-middle> move current entry to middle of page
+ <current-top> move current entry to top of page
+ <enter-command> : enter a muttngrc command
+ <exit> q exit this menu
+ <first-entry> = move to the first entry
+ <half-down> ] scroll down 1/2 page
+ <half-up> [ scroll up 1/2 page
+ <help> ? this screen
+ <jump> number jump to an index number
+ <last-entry> * move to the last entry
+ <middle-page> M move to the middle of the page
+ <next-entry> j move to the next entry
+ <next-line> > scroll down one line
+ <next-page> z move to the next page
+ <previous-entry> k move to the previous entry
+ <previous-line> > scroll up one line
+ <previous-page> Z move to the previous page
+ <refresh> C-L clear and redraw the screen
+ <search> / search for a regular expression
+ <search-next> n search for next match
+ <search-opposite> search for next match in opposite direction
+ <search-reverse> E-/ search backwards for a regular expression
+ <select-entry> Return select the current entry
+ <shell-escape> ! run a program in a subshell
+ <tag-entry> t toggle the tag on the current entry
+ <tag-prefix> ; apply next command to tagged entries
+ <tag-prefix-cond> apply next function ONLY to tagged messages
+ <top-page> H move to the top of the page
+ <what-key> display the keycode for a key press
+
+ 5.2. index
+
+ Table 7.5. Reference: Default Index Function Bindings
+
+ Function Default Key Description
+ <bounce-message> b remail a message to another user
+ <change-folder> c open a different folder
+ <change-folder-readonly> E-c open a different folder in read
+ only mode
+ <check-traditional-pgp> E-P check for classic pgp
+ <clear-flag> W clear a status flag from a message
+ <copy-message> C copy a message to a file/mailbox
+ <create-alias> a create an alias from a message
+ sender
+ <decode-copy> E-C decode a message and copy it to a
+ file/mailbox
+ <decode-save> E-s decode a message and save it to a
+ file/mailbox
+ <delete-message> d delete the current entry
+ <delete-pattern> D delete messages matching a pattern
+ <delete-subthread> E-d delete all messages in subthread
+ <delete-thread> C-D delete all messages in thread
+ <display-address> @ display full address of sender
+ <display-toggle-weed> h display message and toggle header
+ weeding
+ <display-message> Return display a message
+ <edit> e edit the current message
+ <edit-type> C-E edit the current message's
+ Content-Type
+ <exit> x exit without saving changes
+ <extract-keys> C-K extract PGP public keys
+ <fetch-mail> G retrieve mail from POP server
+ <flag-message> F toggle a message's 'important' flag
+ <forget-passphrase> C-F wipe PGP passphrase from memory
+ <forward-message> f forward a message with comments
+ <group-reply> g reply to all recipients
+ <limit> l show only messages matching a
+ pattern
+ <list-reply> L reply to specified mailing list
+ <mail> m compose a new mail message
+ <mail-key> E-k mail a PGP public key
+ <next-new> jump to the next new message
+ <next-new-then-unread> Tab jump to the next new or unread
+ message
+ <next-subthread> E-n jump to the next subthread
+ <next-thread> C-N jump to the next thread
+ <next-undeleted> j move to the next undeleted message
+ <next-unread> jump to the next unread message
+ <parent-message> P jump to parent message in thread
+ <pipe-message> | pipe message/attachment to a shell
+ command
+ <previous-new> jump to the previous new message
+ <previous-new-then-unread> E-Tab jump to the previous new or unread
+ message
+ <previous-page> Z move to the previous page
+ <previous-subthread> E-p jump to previous subthread
+ <previous-thread> C-P jump to previous thread
+ <previous-undeleted> k move to the last undelete message
+ <previous-unread> jump to the previous unread message
+ <print-message> p print the current entry
+ <query> Q query external program for
+ addresses
+ <quit> q save changes to mailbox and quit
+ <read-subthread> E-r mark the current subthread as read
+ <read-thread> C-R mark the current thread as read
+ <recall-message> R recall a postponed message
+ <reply> r reply to a message
+ <resend-message> E-e resend message and preserve MIME
+ structure
+ <save-message> s save message/attachment to a file
+ <set-flag> w set a status flag on a message
+ <show-version> V show the Mutt-ng version number and
+ date
+ <show-limit> E-l show currently active limit
+ pattern, if any
+ <sort-mailbox> o sort messages
+ <sort-reverse> O sort messages in reverse order
+ <sync-mailbox> $ save changes to mailbox
+ <tag-pattern> T tag messages matching a pattern
+ <tag-thread> E-t tag/untag all messages in the
+ current thread
+ <toggle-new> N toggle a message's 'new' flag
+ <toggle-write> % toggle whether the mailbox will be
+ rewritten
+ <undelete-message> u undelete the current entry
+ <undelete-pattern> U undelete messages matching a
+ pattern
+ <undelete-subthread> E-u undelete all messages in subthread
+ <undelete-thread> C-U undelete all messages in thread
+ <untag-pattern> C-T untag messages matching a pattern
+ <view-attachments> v show MIME attachments
+
+ 5.3. pager
+
+ Table 7.6. Reference: Default Pager Function Bindings
+
+ Function Default Key Description
+ <bottom> jump to the bottom of the message
+ <bounce-message> b remail a message to another user
+ <change-folder> c open a different folder
+ <change-folder-readonly> E-c open a different folder in read
+ only mode
+ <check-traditional-pgp> E-P check for classic pgp
+ <copy-message> C copy a message to a file/mailbox
+ <create-alias> a create an alias from a message
+ <senderdecode-copy> E-C decode a message and copy it to a
+ file/mailbox
+ <decode-save> E-s decode a message and save it to a
+ file/mailbox
+ <delete-message> d delete the current entry
+ <delete-subthread> E-d delete all messages in subthread
+ <delete-thread> C-D delete all messages in thread
+ <display-address> @ display full address of sender
+ <display-toggle-weed> h display message and toggle header
+ weeding
+ <edit> e edit the current message
+ <edit-type> C-E edit the current message's
+ Content-Type
+ <enter-command> : enter a muttngrc command
+ <exit> i return to the main-menu
+ <extract-keys> C-K extract PGP public keys
+ <flag-message> F toggle a message's 'important' flag
+ <forget-passphrase> C-F wipe PGP passphrase from memory
+ <forward-message> f forward a message with comments
+ <group-reply> g reply to all recipients
+ <half-up> move up one-half page
+ <half-down> move down one-half page
+ <help> ? this screen
+ <list-reply> L reply to specified mailing list
+ <mail> m compose a new mail message
+ <mail-key> E-k mail a PGP public key
+ <mark-as-new> N toggle a message's 'new' flag
+ <next-line> Return scroll down one line
+ <next-entry> J move to the next entry
+ <next-new> jump to the next new message
+ <next-new-then-unread> Tab jump to the next new or unread
+ message
+ <next-page> move to the next page
+ <next-subthread> E-n jump to the next subthread
+ <next-thread> C-N jump to the next thread
+ <next-undeleted> j move to the next undeleted message
+ <next-unread> jump to the next unread message
+ <parent-message> P jump to parent message in thread
+ <pipe-message> | pipe message/attachment to a shell
+ command
+ <previous-line> BackSpace scroll up one line
+ <previous-entry> K move to the previous entry
+ <previous-new> jump to the previous new message
+ <previous-new-then-unread> jump to the previous new or unread
+ message
+ <previous-page> - move to the previous page
+ <previous-subthread> E-p jump to previous subthread
+ <previous-thread> C-P jump to previous thread
+ <previous-undeleted> k move to the last undelete message
+ <previous-unread> jump to the previous unread message
+ <print-message> p print the current entry
+ <quit> Q save changes to mailbox and quit
+ <read-subthread> E-r mark the current subthread as read
+ <read-thread> C-R mark the current thread as read
+ <recall-message> R recall a postponed message
+ <redraw-screen> C-L clear and redraw the screen
+ <reply> r reply to a message
+ <save-message> s save message/attachment to a file
+ <search> / search for a regular expression
+ <search-next> n search for next match
+ <search-opposite> search for next match in opposite
+ direction
+ <search-reverse> E-/ search backwards for a regular
+ expression
+ <search-toggle> \ toggle search pattern coloring
+ <shell-escape> ! invoke a command in a subshell
+ <show-version> V show the Mutt-ng version number and
+ date
+ <skip-quoted> S skip beyond quoted text
+ <sync-mailbox> $ save changes to mailbox
+ <tag-message> t tag a message
+ <toggle-quoted> T toggle display of quoted text
+ <top> ^ jump to the top of the message
+ <undelete-message> u undelete the current entry
+ <undelete-subthread> E-u undelete all messages in subthread
+ <undelete-thread> C-U undelete all messages in thread
+ <view-attachments> v show MIME attachments
+
+ 5.4. alias
+
+ Table 7.7. Reference: Default Alias Menu Function Bindings
+
+ Function Default Key Description
+ <search> / search for a regular expression
+ <search-next> n search for next match
+ <search-reverse> E-/ search backwards for a regular expression
+
+ 5.5. query
+
+ Table 7.8. Reference: Default Query Menu Function Bindings
+
+ Function Default Key Description
+ <create-alias> a create an alias from a message sender
+ <mail> m compose a new mail message
+ <query> Q query external program for addresses
+ <query-append> A append new query results to current results
+ <search> / search for a regular expression
+ <search-next> n search for next match
+ <search-opposite> search for next match in opposite direction
+ <search-reverse> E-/ search backwards for a regular expression
+
+ 5.6. attach
+
+ Table 7.9. Reference: Default Attachment Menu Function Bindings
+
+ Function Default Key Description
+ <bounce-message> b remail a message to another user
+ <collapse-parts> v toggle display of subparts
+ <delete-entry> d delete the current entry
+ <display-toggle-weed> h display message and toggle header
+ weeding
+ <edit-type> C-E edit the current entry's Content-Type
+ <extract-keys> C-K extract PGP public keys
+ <forward-message> f forward a message with comments
+ <group-reply> g reply to all recipients
+ <list-reply> L reply to specified mailing list
+ <pipe-entry> | pipe message/attachment to a shell
+ command
+ <print-entry> p print the current entry
+ <reply> r reply to a message
+ <resend-message> E-e resend message and preserve MIME
+ structure
+ <save-entry> s save message/attachment to a file
+ <undelete-entry> u undelete the current entry
+ <view-attach> Return view attachment using mailcap entry if
+ necessary
+ <view-mailcap> m force viewing of attachment using
+ mailcap
+ <view-text> T view attachment as text
+
+ 5.7. compose
+
+ Table 7.10. Reference: Default Compose Menu Function Bindings
+
+ Function Default Key Description
+ <attach-file> a attach a file(s) to this message
+ <attach-message> A attach message(s) to this message
+ <attach-key> E-k attach a PGP public key
+ <copy-file> C save message/attachment to a file
+ <detach-file> D delete the current entry
+ <display-toggle-weed> h display message and toggle header
+ weeding
+ <edit-bcc> b edit the BCC list
+ <edit-cc> c edit the CC list
+ <edit-description> d edit attachment description
+ <edit-encoding> C-E edit attachment transfer-encoding
+ <edit-fcc> f enter a file to save a copy of this
+ message in
+ <edit-from> E-f edit the from: field
+ <edit-file> C-X e edit the file to be attached
+ <edit-headers> E edit the message with headers
+ <edit> e edit the message
+ <edit-mime> m edit attachment using mailcap entry
+ <edit-reply-to> r edit the Reply-To field
+ <edit-subject> s edit the subject of this message
+ <edit-to> t edit the TO list
+ <edit-type> C-T edit attachment type
+ <filter-entry> F filter attachment through a shell
+ command
+ <forget-passphrase> C-F wipe PGP passphrase from memory
+ <ispell> i run ispell on the message
+ <new-mime> n compose new attachment using mailcap
+ entry
+ <pgp-menu> p show PGP options
+ <pipe-entry> | pipe message/attachment to a shell
+ command
+ <postpone-message> P save this message to send later
+ <print-entry> l print the current entry
+ <rename-file> R rename/move an attached file
+ <send-message> y send the message
+ <toggle-unlink> u toggle whether to delete file after
+ sending it
+ <view-attach> Return view attachment using mailcap entry if
+ necessary
+ <write-fcc> w write the message to a folder
+
+ 5.8. postpone
+
+ Table 7.11. Reference: Default Postpone Menu Function Bindings
+
+ Function Default Key Description
+ <delete-entry> d delete the current entry
+ <undelete-entry> u undelete the current entry
+
+ 5.9. browser
+
+ Table 7.12. Reference: Default Browser Menu Function Bindings
+
+ Function Default Key Description
+ <change-dir> c change directories
+ <check-new> Tab check mailboxes for new mail
+ <enter-mask> m enter a file mask
+ <search> / search for a regular expression
+ <search-next> n search for next match
+ <search-reverse> E-/ search backwards for a regular expression
+ <select-new> N select a new file in this directory
+ <sort> o sort messages
+ <sort-reverse> O sort messages in reverse order
+ <toggle-mailboxes> Tab toggle whether to browse mailboxes or all
+ files
+ <view-file> Space view file
+ <subscribe> s subscribe to current mailbox (IMAP Only)
+ <unsubscribe> u unsubscribe to current mailbox (IMAP Only)
+ <toggle-subscribed> T toggle view all/subscribed mailboxes (IMAP
+ Only)
+
+ 5.10. pgp
+
+ Table 7.13. Reference: Default PGP Menu Function Bindings
+
+ Function Default Key Description
+ <view-name> % view the key's user id
+ <verify-key> c verify a PGP public key
+
+ 5.11. editor
+
+ Table 7.14. Reference: Default Editor Function Bindings
+
+ Function Default Key Description
+ <backspace> BackSpace delete the char in front of the cursor
+ <backward-char> C-B move the cursor one character to the left
+ <backward-word> E-b move the cursor to the previous word
+ <bol> C-A jump to the beginning of the line
+ <buffy-cycle> Space cycle among incoming mailboxes
+ <capitalize-word> E-c uppercase the first character in the word
+ <complete> Tab complete filename or alias
+ <complete-query> C-T complete address with query
+ <delete-char> C-D delete the char under the cursor
+ <downcase-word> E-l lowercase all characters in current word
+ <eol> C-E jump to the end of the line
+ <forward-char> C-F move the cursor one character to the right
+ <forward-word> E-f move the cursor to the next word
+ <history-down> scroll down through the history list
+ <history-up> scroll up through the history list
+ <kill-eol> C-K delete chars from cursor to end of line
+ <kill-eow> E-d delete chars from cursor to end of word
+ <kill-line> C-U delete all chars on the line
+ <kill-word> C-W delete the word in front of the cursor
+ <quote-char> C-V quote the next typed key
+ <transpose-chars> transpose character under cursor with
+ previous
+ <upcase-word> E-u uppercase all characters in current word
+
+ 5.12. sidebar
+
+ Table 7.15. Referene: Default Sidebar Function Bindings
+
+ Key Function Description
+ <sidebar-scroll-up> Scrolls the mailbox list up 1 page
+ <sidebar-scroll-down> Scrolls the mailbox list down 1 page
+ <sidebar-next> Highlights the next mailbox
+ <sidebar-next-new> Highlights the next mailbox with new mail
+ <sidebar-previous> Highlights the previous mailbox
+ <sidebar-open> Opens the currently highlighted mailbox
+
+Appendix A. Acknowledgments
+
+ Kari Hurtta <kari.hurtta@fmi.fi> 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
+ (sorted by surnames):
+
+ o Vikas Agnihotri <vikasa@writeme.com>
+ o Francois Berjon < Francois.Berjon@aar.alcatel-alsthom.fr>
+ o Aric Blumer <aric@fore.com>
+ o John Capo <jc@irbs.com>
+ o David Champion <dgc@uchicago.edu>
+ o Brendan Cully <brendan@kublai.com>
+ o Liviu Daia <daia@stoilow.imar.ro>
+ o Thomas E. Dickey <dickey@herndon4.his.com>
+ o David DeSimone <fox@convex.hp.com>
+ o Nickolay N. Dudorov <nnd@wint.itfs.nsk.su>
+ o Ruslan Ermilov <ru@freebsd.org>
+ o Edmund Grimley Evans <edmundo@rano.org>
+ o Michael Finken <finken@conware.de>
+ o Sven Guckes <guckes@math.fu-berlin.de>
+ o Lars Hecking <lhecking@nmrc.ie>
+ o Mark Holloman <holloman@nando.net>
+ o Andreas Holzmann <holzmann@fmi.uni-passau.de>
+ o Marco d'Itri <md@linux.it>
+ o Björn Jacke <bjacke@suse.com>
+ o Byrial Jensen <byrial@image.dk>
+ o David Jeske <jeske@igcom.net>
+ o Christophe Kalt <kalt@hugo.int-evry.fr>
+ o Tommi Komulainen <Tommi.Komulainen@iki.fi>
+ o Felix von Leitner (a.k.a ``Fefe'') < leitner@math.fu-berlin.de >
+ o Brandon Long <blong@fiction.net>
+ o Jimmy Mäkeä <jmy@flashback.net>
+ o Lars Marowsky-Bree <lmb@pointer.in-minden.de>
+ o Thomas ``Mike'' Michlmayr <mike@cosy.sbg.ac.at>
+ o Andrew W. Nosenko <awn@bcs.zp.ua>
+ o David O'Brien <obrien@Nuxi.cs.ucdavis.edu>
+ o Clint Olsen <olsenc@ichips.intel.com>
+ o Park Myeong Seok <pms@romance.kaist.ac.kr>
+ o Thomas Parmelan <tom@ankh.fr.eu.org>
+ o Ollivier Robert <roberto@keltia.freenix.fr>
+ o Thomas Roessler <roessler@does-not-exist.org>
+ o Roland Rosenfeld <roland@spinnaker.de>
+ o TAKIZAWA Takashi <taki@luna.email.ne.jp>
+ o Allain Thivillon <Allain.Thivillon@alma.fr>
+ o Gero Treuner <gero@70t.de>
+ o Vsevolod Volkov <vvv@lucky.net>
+ o Ken Weinert <kenw@ihs.com>
+
+ Mutt-ng is developed by the following people:
+
+ o Andreas Krennmair <ak@synflood.at>
+ o Nico Golde <nico@ngolde.de>
+ o Rocco Rutte <pdmef@cs.tu-berlin.de>
+
+ The following people have been very helpful to the development of Mutt-ng
+ (sorted by surnames):
+
+ o Christian Gall <cg@cgall.de>
+ o Iain Lea <iain@bricbrac.de>
+ o Andreas Kneib <akneib@gmx.net>
+ o Felix Meinhold <felix.meinhold@gmx.net>
+ o Carsten Schoelzki <cjs@weisshuhn.de>
+ o Elimar Riesebieter <riesebie@lxtec.de>
+
+Appendix B. Hacking Documentation
+
+ This manual is written in XML and transformed via a XSLT stylesheet into
+ valid DocBook/XML and/or LaTeX to be again transformed via a XSLT
+ stylesheet into the final formats.
+
+ This two pass processing is required to keep the file size low and to
+ sanitize use, i.e. drastically lower the typing overhead.
+
+ To achieve the latter, the sources come with a file called
+ muttng-manual.xsl introducing the muttng-doc namespace which offers the
+ following tags to be used (note: this is far from being complete, any help
+ towards consistency is highly appreciated).
+
+ <muttng-doc:man name="" [sect=""]/>
+
+ References to manual pages. If the sect parameter is omitted,
+ it'll be 1 for the commands section. There's no auto-indexing yet.
+
+ <muttng-doc:envvar name=""/>
+
+ References to environment variables. The name parameter must
+ contain upper-case letters only without the dollar sign as it'll
+ be added automatically. Auto-indexing is done.
+
+ <muttng-doc:hook name=""/>
+
+ References to hooks. The string -hook will be added automatically
+ to the value given in the name parameter. All entries will be
+ auto-indexed.
+
+ <muttng-doc:pattern name="" [full="1"]/>
+
+ References to patterns. The name parameter must only contain the
+ letter/symbol for the pattern as the tilde symbol/equal sign will
+ be added automatically. Auto-indexing is done. If the full
+ parameter is given the equal sign as well as tilde will be printed
+ for a fully complete reference.
+
+ <muttng-doc:key [mod="C|E"]>key</muttng-doc:key>
+
+ Referencing a key.. Because it's somewhat untrivial to always get
+ the right escaping for LaTeX, there's a tag for it. The optional
+ modifiers C or E stand for Control and Escape respectively. To
+ still allow escaping, the actual key sequences must be given
+ within the tag.
+
+ <muttng-doc:funcdef name=""/>
+
+ Defining a command.. It's used to define a command with the name
+ given in the name parameter. The default key binding must be given
+ via <muttng-doc:key/> (see above). The string will be
+ automatically enclosed in <>. Auto-indexing is done. Also an
+ anchor with id func-[name] will be added with [name] being the
+ value of the name parameter.
+
+ <muttng-doc:funcref name=""/>
+
+ References to functions.. This is practically the same as the
+ above except that there's no anchor defined.
+
+ <muttng-doc:vardef name=""/>
+
+ Defining a variable. This is to be used by makedoc only to define
+ a command with a given name and XML-normalized link given via id.
+ Auto-indexing is done. The name parameter's value will be prefixed
+ with a dollar sign as for environment variables.
+
+ <muttng-doc:varref name=""/>
+
+ References to variables. This practically is the same as above
+ except that the text inbetween won't be wrapped within a <sect1>
+ tag. Auto-indexing is the same as for the above. This one is
+ intended for manual use.
+
+ <muttng-doc:web url""/>
+
+ Pretty print a linked URL. As for E-Mail addresses where the text
+ (mostly) equals the link's target, URLs must be enclosed in <>
+ (also this reduced redudant URL typing).
+
+ <muttng-doc:rfc num=""/>
+
+ References to RfC documents. Use this to produce links to RfC
+ document with number given as the num parameter. A link to
+ <http://www.faqs.org/> will be made. Auto-indexing is done under
+ RfC.
+
+ <muttng-doc:cmddef name="" [noanchor="1"]/>
+
+ Defining a configuration command. The name of the command is given
+ as the name parameter. In case a single command has multiple
+ possible calling sequences, specify noanchor="1" for subsequent
+ use. Auto-indexing is done. Specify the arguments within the tag.
+
+ <muttng-doc:cmdref name=""/>
+
+ References to configuration commands. Use this to refer to
+ commands as it builds the proper internal reference name.
+ Auto-indexing is done.
+
+ <muttng-doc:lstconf/>, <muttng-doc:lstmail/>, <muttng-doc:lstshell/>
+
+ Screen layout by context. These are used to specify environments
+ for different types of screen output. For DocBook output, all of
+ these simply map to <screen/>. But as a possible future migration
+ to LaTeX may be ahead, different languages defined for the
+ listings.sty packages may be used to have proper syntax
+ highlighting for these so that there must be a context sensitive
+ distinction.
+
+ <muttng-doc:special [docbook=""] [latex=""]/>
+
+ This is intended for specifying special strings for either
+ DocBook/XML or LaTeX.
+
+ Additional notes follow.
+
+ o To not fully bloat the XSL stylesheet procuding the LaTeX code, all
+ tables must have an attribute called texstr which is directly passed
+ to longtable.
+
+Index
+
+ Symbols
+
+ ~$/ =$, Patterns
+
+ ~*/ =*, Patterns
+
+ ~=/ ==, Patterns
+
+ ~A/ =A, Patterns
+
+ ~b/ =b, Complex Patterns, Patterns
+
+ ~B/ =B, Patterns
+
+ ~c/ =c, Patterns
+
+ ~C/ =C, Patterns
+
+ ~d/ =d, Patterns and Dates, Patterns
+
+ ~D/ =D, Patterns
+
+ ~E/ =E, Patterns
+
+ ~e/ =e, Patterns
+
+ ~f/ =f, Complex Patterns, Patterns
+
+ ~F/ =F, Patterns
+
+ ~g/ =g, Patterns
+
+ ~G/ =G, Patterns
+
+ ~H/ =H, Spam detection, Patterns
+
+ ~h/ =h, Patterns
+
+ ~i/ =i, Patterns
+
+ ~k/ =k, Patterns
+
+ ~L/ =L, Patterns
+
+ ~l/ =l, Patterns
+
+ ~m/ =m, Patterns
+
+ ~M/ =M, Patterns
+
+ ~n/ =n, Message Scoring, Patterns
+
+ ~N/ =N, Patterns
+
+ ~O/ =O, Patterns
+
+ ~p/ =p, Patterns
+
+ ~P/ =P, Patterns
+
+ ~Q/ =Q, Patterns
+
+ ~R/ =R, Patterns
+
+ ~r/ =r, Patterns
+
+ ~s/ =s, Complex Patterns, Patterns
+
+ ~S/ =S, Patterns
+
+ ~T/ =T, Patterns
+
+ ~t/ =t, Patterns
+
+ ~U/ =U, Complex Patterns, Patterns
+
+ ~u/ =u, Patterns
+
+ ~v/ =v, Patterns
+
+ ~V/ =V, Patterns
+
+ ~w/ =w, Patterns
+
+ ~x/ =x, Complex Patterns, Patterns
+
+ ~X/ =X, Patterns
+
+ ~y/ =y, Handling Mailing Lists, Patterns
+
+ ~z/ =z, Patterns
+
+ A
+
+ $abort_noattach , $abort_noattach
+
+ $abort_nosubject , $abort_nosubject
+
+ $abort_unmodified , $abort_unmodified
+
+ account-hook, Managing multiple IMAP/POP/NNTP accounts (OPTIONAL),
+ Configuration Commands
+
+ $agent_string , Configuration variables
+
+ $agent_string , $agent_string
+
+ alias, Miscellaneous Functions, Defining/Using aliases, Configuration
+ Commands
+
+ $alias_file, Miscellaneous Functions, Defining/Using aliases
+
+ $alias_file , $alias_file
+
+ $alias_format , $alias_format
+
+ $allow_8bit , $allow_8bit
+
+ $allow_ansi , $allow_ansi
+
+ alternates, Alternative addresses, Configuration Commands
+
+ alternative_order, MIME Multipart/Alternative, Configuration Commands
+
+ append-hook, Compressed folders Support (OPTIONAL), Append a message to a
+ compressed mailbox, Encrypted folders, Configuration Commands
+
+ $arrow_cursor , $arrow_cursor
+
+ $ascii_chars , $ascii_chars
+
+ $askbcc , $askbcc
+
+ $askcc , $askcc
+
+ $assumed_charset , $assumed_charset
+
+ <attach-file>, Composing new messages, compose
+
+ <attach-key>, Composing new messages, compose
+
+ <attach-message>, Composing new messages, compose
+
+ attachments, Attachment Searching and Counting
+
+ $attach_format , $attach_format
+
+ $attach_remind_regexp , $attach_remind_regexp
+
+ $attach_sep , $attach_sep
+
+ $attach_split , $attach_split
+
+ $attribution, Change settings based upon message recipients, $attribution
+
+ $auto_tag, Using Tags
+
+ $autoedit , $autoedit
+
+ $auto_tag , $auto_tag
+
+ auto_view, The Pager, Optional Fields, Search Order, MIME Autoview, MIME
+ Multipart/Alternative, Configuration Commands
+
+ B
+
+ <backspace>, Editing Input Fields, editor
+
+ <backward-char>, Editing Input Fields, editor
+
+ <backward-word>, Editing Input Fields, editor
+
+ $beep , $beep
+
+ $beep_new , $beep_new
+
+ bind, Editing Input Fields, Changing the default key bindings, Keyboard
+ macros, Configuration Commands
+
+ <bol>, Editing Input Fields, editor
+
+ <bottom>, pager
+
+ <bottom-page>, generic
+
+ <bounce>, Sending Mail, $bounce
+
+ <bounce-message>, index, pager, attach
+
+ $bounce_delivered , $bounce_delivered
+
+ $braille_friendly , $braille_friendly
+
+ <buffy-cycle>, editor
+
+ C
+
+ <capitalize-word>, Editing Input Fields, editor
+
+ $certificate_file , $certificate_file
+
+ <change-dir>, browser
+
+ <change-folder>, index, pager
+
+ <change-folder-readonly>, index, pager
+
+ $charset , $charset
+
+ charset-hook, Defining aliases for character sets, Configuration Commands
+
+ <check-new>, browser
+
+ <check-traditional-pgp>, Miscellaneous Functions, index, pager
+
+ $check_new , $check_new
+
+ <clear-flag>, index
+
+ close-hook, Compressed folders Support (OPTIONAL), Write a compressed
+ mailbox, Append a message to a compressed mailbox, Configuration Commands
+
+ <collapse-all>, Threaded Mode
+
+ <collapse-parts>, attach
+
+ <collapse-thread>, Threaded Mode
+
+ $collapse_unread , $collapse_unread
+
+ color, The Pager, Using color and mono video attributes, Configuration
+ Commands
+
+ $COLORFGBG, Using color and mono video attributes
+
+ <complete>, Editing Input Fields, editor
+
+ <complete-query>, Editing Input Fields, editor
+
+ <compose>, Sending Mail
+
+ $compose_format , $compose_format
+
+ $config_charset , $config_charset
+
+ $confirmappend , $confirmappend
+
+ $confirmcreate , $confirmcreate
+
+ $connect_timeout , $connect_timeout
+
+ $content_type , $content_type
+
+ $copy , $copy
+
+ <copy-file>, compose
+
+ <copy-message>, index, pager
+
+ <create-alias>, Miscellaneous Functions, Defining/Using aliases, index,
+ pager, query
+
+ $crypt_autoencrypt , Configuration variables
+
+ $crypt_autosign , Configuration variables
+
+ crypt-hook, Choosing the cryptographic key of the recipient, Configuration
+ Commands
+
+ $crypt_replyencrypt , Configuration variables
+
+ $crypt_replysign , Configuration variables
+
+ $crypt_replysignencrypted , Configuration variables
+
+ $crypt_verify_sig , Configuration variables
+
+ $crypt_autoencrypt , $crypt_autoencrypt
+
+ $crypt_autopgp , $crypt_autopgp
+
+ $crypt_autosign , $crypt_autosign
+
+ $crypt_autosmime , $crypt_autosmime
+
+ $crypt_replyencrypt , $crypt_replyencrypt
+
+ $crypt_replysign , $crypt_replysign
+
+ $crypt_replysignencrypted , $crypt_replysignencrypted
+
+ $crypt_timestamp , $crypt_timestamp
+
+ $crypt_use_gpgme , $crypt_use_gpgme
+
+ $crypt_verify_sig , $crypt_verify_sig
+
+ <current-bottom>, generic
+
+ <current-middle>, generic
+
+ <current-top>, generic
+
+ D
+
+ $date_format , $date_format
+
+ $debug_level , $debug_level
+
+ <decode-copy>, index
+
+ <decode-save>, index, pager
+
+ default-hook, Message Matching in Hooks
+
+ $default_hook , $default_hook
+
+ $delete , $delete
+
+ <delete-char>, Editing Input Fields, editor
+
+ <delete-entry>, attach, postpone
+
+ <delete-message>, index, pager
+
+ <delete-pattern>, index
+
+ $delete_space, Additional Notes
+
+ <delete-subthread>, Threaded Mode, index, pager
+
+ <delete-thread>, Threaded Mode, index, pager
+
+ $delete_space , $delete_space
+
+ $delete_untag , $delete_untag
+
+ <detach-file>, Composing new messages, compose
+
+ $digest_collapse , $digest_collapse
+
+ <display-address>, index, pager
+
+ <display-message>, index
+
+ <display-toggle-weed>, Miscellaneous Functions, index, pager, attach,
+ compose
+
+ $display_filter , $display_filter
+
+ $dotlock_program , $dotlock_program
+
+ <downcase-word>, Editing Input Fields, editor
+
+ $dsn_notify, Delivery Status Notification (DSN) Support
+
+ $dsn_return, Delivery Status Notification (DSN) Support
+
+ $dsn_notify , $dsn_notify
+
+ $dsn_return , $dsn_return
+
+ $duplicate_threads , $duplicate_threads
+
+ E
+
+ <edit>, Miscellaneous Functions, index, pager, compose
+
+ <edit-bcc>, Composing new messages, compose
+
+ <edit-cc>, Composing new messages, compose
+
+ <edit-description>, Composing new messages, compose
+
+ <edit-encoding>, compose
+
+ <edit-fcc>, Composing new messages, compose
+
+ <edit-file>, compose
+
+ <edit-from>, Composing new messages, compose
+
+ $edit_headers, Editing the message header, User defined headers,
+ mailto:-style links, Configuration variables, compose
+
+ <edit-mime>, compose
+
+ <edit-reply-to>, Composing new messages, compose
+
+ <edit-subject>, Composing new messages, compose
+
+ <edit-to>, Composing new messages, compose
+
+ <edit-type>, Miscellaneous Functions, index, pager, attach, compose
+
+ $EDITOR, Manual Conventions, Composing new messages
+
+ $editor , $editor
+
+ $editor_headers, Editing the message header, Defining/Using aliases
+
+ $editor_headers , $editor_headers
+
+ $edit_headers , $edit_headers
+
+ $encode_from , $encode_from
+
+ <enter-command>, Miscellaneous Functions, generic, pager
+
+ <enter-mask>, browser
+
+ $entropy_file , $entropy_file
+
+ $envelope_from_address , $envelope_from_address
+
+ <eol>, Editing Input Fields, editor
+
+ $escape , $escape
+
+ exec, Executing functions, Configuration Commands
+
+ <exit>, generic, index, pager
+
+ <extract-keys>, Miscellaneous Functions, index, pager, attach
+
+ F
+
+ $fast_reply , $fast_reply
+
+ fcc-hook, Specify default Fcc: mailbox when composing, Specify default
+ save filename and default Fcc: mailbox at once, Using Hooks, Message
+ Matching in Hooks, Configuration Commands
+
+ fcc-save-hook, Specify default save filename, Specify default Fcc: mailbox
+ when composing, Specify default save filename and default Fcc: mailbox at
+ once, Using Hooks, Configuration Commands
+
+ $fcc_attach , $fcc_attach
+
+ $fcc_clear , $fcc_clear
+
+ <fetch-mail>, index
+
+ $file_charset , $file_charset
+
+ <filter-entry>, compose
+
+ <first-entry>, Moving Around in Menus, generic
+
+ <flag-message>, index, pager
+
+ $folder, Configuration Variables, Defining mailboxes which receive mail,
+ Mailbox Shortcuts, $folder
+
+ folder-hook, Setting variables based upon mailbox, Spam detection, Using
+ Hooks, Managing multiple IMAP/POP/NNTP accounts (OPTIONAL), Configuration
+ Commands
+
+ $folder_format , $folder_format
+
+ $followup_to, Mailing lists, Handling Mailing Lists
+
+ $followup_to , $followup_to
+
+ $force_buffy_check , $force_buffy_check
+
+ $force_name , $force_name
+
+ <forget-passphrase>, Miscellaneous Functions, Composing new messages,
+ index, pager, compose
+
+ <forward>, Sending Mail
+
+ <forward-char>, Editing Input Fields, editor
+
+ $forward_decode , Configuration variables
+
+ $forward_decrypt , Configuration variables
+
+ $forward_format , Configuration variables
+
+ <forward-message>, index, pager, attach
+
+ $forward_quote , Configuration variables
+
+ <forward-word>, Editing Input Fields, editor
+
+ $forward_decode , $forward_decode
+
+ $forward_decrypt , $forward_decrypt
+
+ $forward_edit , $forward_edit
+
+ $forward_format , $forward_format
+
+ $forward_quote , $forward_quote
+
+ $from , $from
+
+ G
+
+ $gecos_mask , $gecos_mask
+
+ <group-reply>, Sending Mail, index, pager, attach
+
+ H
+
+ <half-down>, generic, pager
+
+ <half-up>, generic, pager
+
+ $hdrs , $hdrs
+
+ hdr_order, Defining the order of headers when viewing messages,
+ Configuration Commands
+
+ $header , $header
+
+ $header_cache , $header_cache
+
+ $header_cache_compress , $header_cache_compress
+
+ <help>, Moving Around in Menus, $help, generic, pager
+
+ $hidden_host , $hidden_host
+
+ $hide_limited , $hide_limited
+
+ $hide_missing , $hide_missing
+
+ $hide_thread_subject , $hide_thread_subject
+
+ $hide_top_limited , $hide_top_limited
+
+ $hide_top_missing , $hide_top_missing
+
+ $history , $history
+
+ <history-down>, Editing Input Fields, editor
+
+ <history-up>, Editing Input Fields, editor
+
+ $HOME, MIME Type configuration with mime.types, MIME Viewer configuration
+ with mailcap
+
+ $honor_followup_to, Miscellaneous Functions, Handling Mailing Lists
+
+ $honor_followup_to , $honor_followup_to
+
+ $HOSTNAME, Environment Variables
+
+ $hostname , $hostname
+
+ I
+
+ iconv-hook, Defining aliases for character sets
+
+ ignore, Miscellaneous Functions, Ignoring (weeding) unwanted message
+ headers, Configuration Commands
+
+ $ignore_list_reply_to , $ignore_list_reply_to
+
+ $imap_authenticators, Authentication
+
+ $imap_home_namespace, Configuration Variables
+
+ $imap_list_subscribed, IMAP Support (OPTIONAL)
+
+ $imap_mail_check, Manual Conventions, Conditional parts, IMAP Support
+ (OPTIONAL)
+
+ $imap_pass, Authentication
+
+ $imap_user, Authentication
+
+ $imap_authenticators , $imap_authenticators
+
+ $imap_check_subscribed , $imap_check_subscribed
+
+ $imap_delim_chars , $imap_delim_chars
+
+ $imap_headers , $imap_headers
+
+ $imap_home_namespace , $imap_home_namespace
+
+ $imap_keepalive , $imap_keepalive
+
+ $imap_list_subscribed , $imap_list_subscribed
+
+ $imap_login , $imap_login
+
+ $imap_mail_check , $imap_mail_check
+
+ $imap_pass , $imap_pass
+
+ $imap_passive , $imap_passive
+
+ $imap_peek , $imap_peek
+
+ $imap_reconnect , $imap_reconnect
+
+ $imap_servernoise , $imap_servernoise
+
+ $imap_user , $imap_user
+
+ $implicit_autoview , $implicit_autoview
+
+ $include , $include
+
+ $include_onlyfirst , $include_onlyfirst
+
+ $indent_string , Configuration variables
+
+ $indent_string , $indent_string
+
+ $index_format, Threaded Mode, Spam detection, Handling Mailing Lists,
+ Configuration variables
+
+ $index_format , $index_format
+
+ <ispell>, Composing new messages, $ispell, compose
+
+ J
+
+ <jump>, generic
+
+ K
+
+ $keep_flagged , $keep_flagged
+
+ <kill-eol>, Editing Input Fields, editor
+
+ <kill-eow>, Editing Input Fields, editor
+
+ <kill-line>, Editing Input Fields, editor
+
+ <kill-word>, Editing Input Fields, editor
+
+ L
+
+ <last-entry>, Moving Around in Menus, generic
+
+ <limit>, index
+
+ <list-reply>, Miscellaneous Functions, Sending Mail, index, pager, attach
+
+ lists, Miscellaneous Functions, Mailing lists, Handling Mailing Lists,
+ Configuration Commands
+
+ $list_reply , $list_reply
+
+ $locale, Change settings based upon message recipients, $locale
+
+ M
+
+ macro, Miscellaneous Functions, Keyboard macros, Adding key sequences to
+ the keyboard buffer, Using Tags, Configuration Commands
+
+ <mail>, index, pager, query
+
+ <mail-key>, Sending Mail, index, pager
+
+ mailboxes, Defining mailboxes which receive mail, Configuration Commands
+
+ $mailcap_path, mailcap
+
+ $mailcap_sanitize, Secure use of mailcap, mailcap
+
+ $mailcap_path , $mailcap_path
+
+ $mailcap_sanitize , $mailcap_sanitize
+
+ $maildir_header_cache_verify , $maildir_header_cache_verify
+
+ $maildir_trash , $maildir_trash
+
+ $mail_check , $mail_check
+
+ <mark-as-new>, pager
+
+ $markers , $markers
+
+ $mark_old , $mark_old
+
+ $mask , $mask
+
+ $max_display_recips , $max_display_recips
+
+ $max_line_length , $max_line_length
+
+ $mbox, Mailbox Shortcuts, $mbox
+
+ mbox-hook, Using Multiple spool mailboxes, Using Hooks, Configuration
+ Commands
+
+ $mbox_type, Mailbox Formats, Append a message to a compressed mailbox
+
+ $mbox_type , $mbox_type
+
+ $menu_context , $menu_context
+
+ $menu_move_off , $menu_move_off
+
+ $menu_scroll , $menu_scroll
+
+ $message_format , Configuration variables
+
+ message-hook, Change settings before formatting a message, Using Hooks,
+ Message Matching in Hooks, MIME Autoview, Configuration Commands
+
+ $message_format , $message_format
+
+ $meta_key , $meta_key
+
+ $metoo , $metoo
+
+ $mh_purge , $mh_purge
+
+ $mh_seq_flagged , $mh_seq_flagged
+
+ $mh_seq_replied , $mh_seq_replied
+
+ $mh_seq_unseen , $mh_seq_unseen
+
+ <middle-page>, generic
+
+ $mime_forward , Configuration variables
+
+ $mime_forward , $mime_forward
+
+ $mime_forward_decode , $mime_forward_decode
+
+ $mime_forward_rest , $mime_forward_rest
+
+ mime_lookup, MIME Lookup, Configuration Commands
+
+ $mix_entry_format, Sending anonymous messages via mixmaster
+
+ $mixmaster , $mixmaster
+
+ $mix_entry_format , $mix_entry_format
+
+ mono, Using color and mono video attributes, Configuration Commands
+
+ $move , $move
+
+ $msgid_format, Message-ID: headers
+
+ $msgid_format , $msgid_format
+
+ $muttng_bindir , $muttng_bindir
+
+ $muttng_docdir , $muttng_docdir
+
+ $muttng_folder_name , $muttng_folder_name
+
+ $muttng_folder_path , $muttng_folder_path
+
+ $muttng_hcache_backend , $muttng_hcache_backend
+
+ $muttng_pwd , $muttng_pwd
+
+ $muttng_revision , $muttng_revision
+
+ $muttng_sysconfdir , $muttng_sysconfdir
+
+ $muttng_version , $muttng_version
+
+ my_hdr, User defined headers, Configuration Commands
+
+ N
+
+ $narrow_tree , $narrow_tree
+
+ $net_inc , $net_inc
+
+ <new-mime>, compose
+
+ <next-entry>, Moving Around in Menus, generic, pager
+
+ <next-line>, generic, pager
+
+ <next-new>, index, pager
+
+ <next-new-then-unread>, index, pager
+
+ <next-page>, generic, pager
+
+ <next-subthread>, Threaded Mode, index, pager
+
+ <next-thread>, Threaded Mode, index, pager
+
+ <next-undeleted>, index, pager
+
+ <next-unread>, index, pager
+
+ $nntp_ask_followup_to , Configuration variables
+
+ $nntp_ask_x_comment_to , Configuration variables
+
+ $nntp_cache_dir , Configuration variables
+
+ $nntp_catchup , Configuration variables
+
+ $nntp_followup_to_poster , Configuration variables
+
+ $nntp_group_index_format , Configuration variables
+
+ $nntp_host , Configuration variables
+
+ $nntp_inews , Configuration variables
+
+ $nntp_mail_check , Configuration variables
+
+ $nntp_mime_subject , Configuration variables
+
+ $nntp_newsrc, NNTP Support (OPTIONAL), Configuration variables
+
+ $nntp_post_moderated , Configuration variables
+
+ $nntp_save_unsubscribed , Configuration variables
+
+ $nntp_show_new_news , Configuration variables
+
+ $nntp_show_only_unread , Configuration variables
+
+ $nntp_x_comment_to , Configuration variables
+
+ $NNTPSERVER, NNTP Support (OPTIONAL)
+
+ $nntp_ask_followup_to , $nntp_ask_followup_to
+
+ $nntp_ask_x_comment_to , $nntp_ask_x_comment_to
+
+ $nntp_cache_dir , $nntp_cache_dir
+
+ $nntp_catchup , $nntp_catchup
+
+ $nntp_context , $nntp_context
+
+ $nntp_followup_to_poster , $nntp_followup_to_poster
+
+ $nntp_group_index_format , $nntp_group_index_format
+
+ $nntp_host , $nntp_host
+
+ $nntp_inews , $nntp_inews
+
+ $nntp_load_description , $nntp_load_description
+
+ $nntp_mail_check , $nntp_mail_check
+
+ $nntp_mime_subject , $nntp_mime_subject
+
+ $nntp_newsrc , $nntp_newsrc
+
+ $nntp_pass , $nntp_pass
+
+ $nntp_post_moderated , $nntp_post_moderated
+
+ $nntp_reconnect , $nntp_reconnect
+
+ $nntp_save_unsubscribed , $nntp_save_unsubscribed
+
+ $nntp_show_new_news , $nntp_show_new_news
+
+ $nntp_show_only_unread , $nntp_show_only_unread
+
+ $nntp_user , $nntp_user
+
+ $nntp_x_comment_to , $nntp_x_comment_to
+
+ nospam, Spam detection, Configuration Commands
+
+ O
+
+ open-hook, Compressed folders Support (OPTIONAL), Open a compressed
+ mailbox for reading, Write a compressed mailbox, Append a message to a
+ compressed mailbox, Configuration Commands
+
+ $operating_system , $operating_system
+
+ P
+
+ <page-down>, Moving Around in Menus
+
+ <page-up>, Moving Around in Menus
+
+ $pager , $pager
+
+ $pager_index_lines, Conditional parts
+
+ $pager_context , $pager_context
+
+ $pager_format , $pager_format
+
+ $pager_index_lines , $pager_index_lines
+
+ $pager_stop , $pager_stop
+
+ <parent-message>, Threaded Mode, index, pager
+
+ pattern-hook, Specify default save filename, Specify default Fcc: mailbox
+ when composing, Change settings based upon message recipients, Change
+ settings before formatting a message
+
+ $pgp_autoinline , Configuration variables
+
+ $pgp_entry_format, Using Mutt-ng with PGP
+
+ <pgp-menu>, Composing new messages, compose
+
+ $pgp_replyinline , Configuration variables
+
+ $pgp_sign_as, Using Mutt-ng with PGP
+
+ $pgp_autoinline , $pgp_autoinline
+
+ $pgp_auto_decode , $pgp_auto_decode
+
+ $pgp_check_exit , $pgp_check_exit
+
+ $pgp_clearsign_command , $pgp_clearsign_command
+
+ $pgp_decode_command , $pgp_decode_command
+
+ $pgp_decrypt_command , $pgp_decrypt_command
+
+ $pgp_encrypt_only_command , $pgp_encrypt_only_command
+
+ $pgp_encrypt_sign_command , $pgp_encrypt_sign_command
+
+ $pgp_entry_format , $pgp_entry_format
+
+ $pgp_export_command , $pgp_export_command
+
+ $pgp_getkeys_command , $pgp_getkeys_command
+
+ $pgp_good_sign , $pgp_good_sign
+
+ $pgp_ignore_subkeys , $pgp_ignore_subkeys
+
+ $pgp_import_command , $pgp_import_command
+
+ $pgp_list_pubring_command , $pgp_list_pubring_command
+
+ $pgp_list_secring_command , $pgp_list_secring_command
+
+ $pgp_long_ids , $pgp_long_ids
+
+ $pgp_mime_auto , $pgp_mime_auto
+
+ $pgp_replyinline , $pgp_replyinline
+
+ $pgp_retainable_sigs , $pgp_retainable_sigs
+
+ $pgp_show_unusable , $pgp_show_unusable
+
+ $pgp_sign_as , $pgp_sign_as
+
+ $pgp_sign_command , $pgp_sign_command
+
+ $pgp_sort_keys , $pgp_sort_keys
+
+ $pgp_strict_enc , $pgp_strict_enc
+
+ $pgp_timeout , $pgp_timeout
+
+ $pgp_use_gpg_agent , $pgp_use_gpg_agent
+
+ $pgp_verify_command , $pgp_verify_command
+
+ $pgp_verify_key_command , $pgp_verify_key_command
+
+ $pipe_decode, Miscellaneous Functions
+
+ <pipe-entry>, attach, compose
+
+ <pipe-message>, Miscellaneous Functions, index, pager
+
+ $pipe_split, Miscellaneous Functions
+
+ $pipe_decode , $pipe_decode
+
+ $pipe_sep , $pipe_sep
+
+ $pipe_split , $pipe_split
+
+ $pop_mail_check, POP3 Support (OPTIONAL), Configuration variables
+
+ $pop_authenticators , $pop_authenticators
+
+ $pop_auth_try_all , $pop_auth_try_all
+
+ $pop_delete , $pop_delete
+
+ $pop_host , $pop_host
+
+ $pop_last , $pop_last
+
+ $pop_mail_check , $pop_mail_check
+
+ $pop_pass , $pop_pass
+
+ $pop_reconnect , $pop_reconnect
+
+ $pop_user , $pop_user
+
+ $post_indent_string , Configuration variables
+
+ $postpone, Postponing Mail, $postpone
+
+ <postpone-message>, Composing new messages, compose
+
+ $postponed, Postponing Mail, $postponed
+
+ $post_indent_string , $post_indent_string
+
+ $preconnect , $preconnect
+
+ <previous-entry>, Moving Around in Menus, generic, pager
+
+ <previous-line>, generic, pager
+
+ <previous-new>, index, pager
+
+ <previous-new-then-unread>, index, pager
+
+ <previous-page>, generic, index, pager
+
+ <previous-subthread>, Threaded Mode, index, pager
+
+ <previous-thread>, Threaded Mode, index, pager
+
+ <previous-undeleted>, index, pager
+
+ <previous-unread>, index, pager
+
+ $print , $print
+
+ $print_command , Configuration variables
+
+ <print-entry>, attach, compose
+
+ <print-message>, index, pager
+
+ $print_command , $print_command
+
+ $print_decode , $print_decode
+
+ $print_split , $print_split
+
+ $prompt_after , $prompt_after
+
+ push, Adding key sequences to the keyboard buffer, Using Tags,
+ Configuration Commands
+
+ Q
+
+ <query>, index, query
+
+ <query-append>, query
+
+ $query_command, External Address Queries
+
+ $query_command , $query_command
+
+ <quit>, Moving Around in Menus, Composing new messages, $quit, index,
+ pager
+
+ <quote-char>, Editing Input Fields, editor
+
+ $quote_regexp, Miscellaneous Functions, Using color and mono video
+ attributes
+
+ $quote_empty , $quote_empty
+
+ $quote_quoted , $quote_quoted
+
+ $quote_regexp , $quote_regexp
+
+ R
+
+ <read-subthread>, Threaded Mode, index, pager
+
+ <read-thread>, Threaded Mode, index, pager
+
+ $read_inc , $read_inc
+
+ $read_only , $read_only
+
+ $realname , $realname
+
+ $recall , $recall
+
+ <recall-message>, index, pager
+
+ $record, Environment Variables, Specify default Fcc: mailbox when
+ composing, Mailbox Shortcuts, $record
+
+ <redraw-screen>, pager
+
+ <refresh>, generic
+
+ <rename-file>, compose
+
+ <reply>, Sending Mail, index, pager, attach
+
+ reply-hook, Change settings based upon message recipients, Configuration
+ Commands
+
+ $reply_to, Alternative addresses, Handling Mailing Lists
+
+ $reply_regexp , $reply_regexp
+
+ $reply_self , $reply_self
+
+ $reply_to , $reply_to
+
+ <resend-message>, Miscellaneous Functions, The Attachment Menu, index,
+ attach
+
+ reset, Setting variables, Configuration Commands
+
+ $resolve , $resolve
+
+ $reverse_alias , $reverse_alias
+
+ $reverse_name , $reverse_name
+
+ $reverse_realname , $reverse_realname
+
+ RfC
+
+ 1524, MIME Viewer configuration with mailcap, Command
+ Expansion, mailcap
+
+ 1894, Delivery Status Notification (DSN) Support
+
+ 2822, Again: Scoring
+
+ 3676, Sending
+
+ 822, User defined headers
+
+ $rfc2047_parameters , $rfc2047_parameters
+
+ S
+
+ $save_empty, Compressed folders Support (OPTIONAL)
+
+ <save-entry>, attach
+
+ save-hook, Specify default save filename, Specify default save filename
+ and default Fcc: mailbox at once, Using Hooks, Message Matching in Hooks,
+ Mailbox Shortcuts, Configuration Commands
+
+ <save-message>, index, pager
+
+ $save_address , $save_address
+
+ $save_empty , $save_empty
+
+ $save_name , $save_name
+
+ score, Message Scoring, Configuration Commands, $score
+
+ $score_threshold_delete, Message Scoring
+
+ $score_threshold_flag, Message Scoring
+
+ $score_threshold_read, Message Scoring
+
+ $score_threshold_delete , $score_threshold_delete
+
+ $score_threshold_flag , $score_threshold_flag
+
+ $score_threshold_read , $score_threshold_read
+
+ <search>, generic, pager, alias, query, browser
+
+ <search-next>, generic, pager, alias, query, browser
+
+ <search-opposite>, generic, pager, query
+
+ <search-reverse>, generic, pager, alias, query, browser
+
+ <search-toggle>, pager
+
+ <select-entry>, generic
+
+ <select-new>, browser
+
+ send-hook, Change settings based upon message recipients, Using Hooks,
+ Message Matching in Hooks, Configuration Commands
+
+ <send-message>, Composing new messages, compose
+
+ send2-hook, Change settings based upon message recipients
+
+ <senderdecode-copy>, pager
+
+ $sendmail, Change settings based upon message recipients, $sendmail
+
+ $sendmail_wait , $sendmail_wait
+
+ $send_charset , $send_charset
+
+ set, Setting variables, Configuration Commands
+
+ <set-flag>, index
+
+ $shell , $shell
+
+ <shell-escape>, Miscellaneous Functions, generic, pager
+
+ <show-limit>, index
+
+ <show-version>, index, pager
+
+ <sidebar-next>, sidebar
+
+ <sidebar-next-new>, sidebar
+
+ <sidebar-open>, sidebar
+
+ <sidebar-previous>, sidebar
+
+ <sidebar-scroll-down>, sidebar
+
+ <sidebar-scroll-up>, sidebar
+
+ $sidebar_shorten_hierarchy , Configuration variables
+
+ $sidebar_boundary , $sidebar_boundary
+
+ $sidebar_delim , $sidebar_delim
+
+ $sidebar_newmail_only , $sidebar_newmail_only
+
+ $sidebar_number_format , $sidebar_number_format
+
+ $sidebar_shorten_hierarchy , $sidebar_shorten_hierarchy
+
+ $sidebar_visible , $sidebar_visible
+
+ $sidebar_width , $sidebar_width
+
+ $signature, Change settings based upon message recipients, $signature
+
+ $signoff_string , $signoff_string
+
+ $sig_dashes , $sig_dashes
+
+ $sig_on_top , $sig_on_top
+
+ $simple_search , $simple_search
+
+ <skip-quoted>, Miscellaneous Functions, pager
+
+ $sleep_time , $sleep_time
+
+ $smart_wrap , $smart_wrap
+
+ $smileys , $smileys
+
+ $smime_default_key , Configuration variables
+
+ <smime-menu>, Composing new messages
+
+ $smime_ask_cert_label , $smime_ask_cert_label
+
+ $smime_ca_location , $smime_ca_location
+
+ $smime_certificates , $smime_certificates
+
+ $smime_decrypt_command , $smime_decrypt_command
+
+ $smime_decrypt_use_default_key , $smime_decrypt_use_default_key
+
+ $smime_default_key , $smime_default_key
+
+ $smime_encrypt_command , $smime_encrypt_command
+
+ $smime_encrypt_with , $smime_encrypt_with
+
+ $smime_get_cert_command , $smime_get_cert_command
+
+ $smime_get_cert_email_command , $smime_get_cert_email_command
+
+ $smime_get_signer_cert_command , $smime_get_signer_cert_command
+
+ $smime_import_cert_command , $smime_import_cert_command
+
+ $smime_is_default , $smime_is_default
+
+ $smime_keys , $smime_keys
+
+ $smime_pk7out_command , $smime_pk7out_command
+
+ $smime_sign_command , $smime_sign_command
+
+ $smime_sign_opaque_command , $smime_sign_opaque_command
+
+ $smime_timeout , $smime_timeout
+
+ $smime_verify_command , $smime_verify_command
+
+ $smime_verify_opaque_command , $smime_verify_opaque_command
+
+ $smtp_envelope, SMTP Support (OPTIONAL)
+
+ $smtp_host, SMTP Support (OPTIONAL)
+
+ $smtp_pass, SMTP Support (OPTIONAL), Configuration variables
+
+ $smtp_use_tls, SMTP Support (OPTIONAL)
+
+ $smtp_user, SMTP Support (OPTIONAL), Configuration variables
+
+ $smtp_host , $smtp_host
+
+ $smtp_pass , $smtp_pass
+
+ $smtp_port , $smtp_port
+
+ $smtp_user , $smtp_user
+
+ $smtp_use_tls , $smtp_use_tls
+
+ $sort , $sort, browser
+
+ <sort-mailbox>, index
+
+ <sort-reverse>, index, browser
+
+ $sort_alias , $sort_alias
+
+ $sort_aux , $sort_aux
+
+ $sort_browser , $sort_browser
+
+ $sort_re , $sort_re
+
+ source, Miscellaneous Functions, Defining/Using aliases, Reading
+ initialization commands from another file, Configuration Commands
+
+ spam, Spam detection, Configuration Commands
+
+ $spam_separator , $spam_separator
+
+ $spoolfile, Setting variables based upon mailbox, Defining mailboxes which
+ receive mail, Mailbox Shortcuts, POP3 Support (OPTIONAL), $spoolfile
+
+ $ssl_ca_certificates_file , $ssl_ca_certificates_file
+
+ $ssl_client_cert , $ssl_client_cert
+
+ $ssl_force_tls , $ssl_force_tls
+
+ $ssl_min_dh_prime_bits , $ssl_min_dh_prime_bits
+
+ $ssl_starttls , $ssl_starttls
+
+ $ssl_usesystemcerts , $ssl_usesystemcerts
+
+ $ssl_use_sslv2 , $ssl_use_sslv2
+
+ $ssl_use_sslv3 , $ssl_use_sslv3
+
+ $ssl_use_tlsv1 , $ssl_use_tlsv1
+
+ $status_format, Composing new messages, Introduction
+
+ $status_chars , $status_chars
+
+ $status_format , $status_format
+
+ $status_on_top , $status_on_top
+
+ $strict_mailto, mailto:-style links
+
+ $strict_threads, Threaded Mode
+
+ $strict_mailto , $strict_mailto
+
+ $strict_mime , $strict_mime
+
+ $strict_threads , $strict_threads
+
+ $strip_was , $strip_was
+
+ $strip_was_regex , $strip_was_regex
+
+ $stuff_quoted , $stuff_quoted
+
+ subscribe, Mailing lists, Configuration Commands, browser
+
+ $suspend , $suspend
+
+ <sync-mailbox>, Manual Conventions, index, pager
+
+ T
+
+ <tag-entry>, generic
+
+ <tag-message>, pager
+
+ <tag-pattern>, index
+
+ <tag-prefix>, generic
+
+ <tag-prefix-cond>, generic
+
+ <tag-thread>, Threaded Mode, index
+
+ $text_flowed , $text_flowed
+
+ $thorough_search , $thorough_search
+
+ $thread_received , $thread_received
+
+ $tilde , $tilde
+
+ $timeout, IMAP Support (OPTIONAL), $timeout
+
+ $tmpdir, Temporary Files, $tmpdir
+
+ $to_chars, Status Flags
+
+ toggle, Setting variables, Configuration Commands
+
+ <toggle-mailboxes>, browser
+
+ <toggle-new>, index
+
+ <toggle-quoted>, Miscellaneous Functions, pager
+
+ <toggle-subscribed>, browser
+
+ <toggle-unlink>, compose
+
+ <toggle-write>, index
+
+ <top>, pager
+
+ <top-page>, generic
+
+ $to_chars , $to_chars
+
+ <transpose-chars>, editor
+
+ $trash , $trash
+
+ $tunnel , $tunnel
+
+ U
+
+ $umask, Temporary Files, $umask
+
+ unalias, Defining/Using aliases, Configuration Commands
+
+ unalternates, Alternative addresses, Configuration Commands
+
+ unalternative_order, MIME Multipart/Alternative, Configuration Commands
+
+ unattachments, Attachment Searching and Counting
+
+ unauto_view, MIME Autoview, Configuration Commands
+
+ $uncollapse_jump , $uncollapse_jump
+
+ uncolor, Using color and mono video attributes, Configuration Commands
+
+ <undelete-entry>, attach, postpone
+
+ <undelete-message>, index, pager
+
+ <undelete-pattern>, index
+
+ <undelete-subthread>, Threaded Mode, index, pager
+
+ <undelete-thread>, Threaded Mode, index, pager
+
+ unhdr_order, Defining the order of headers when viewing messages,
+ Configuration Commands
+
+ unhook, Removing hooks, Configuration Commands
+
+ unignore, Ignoring (weeding) unwanted message headers, Configuration
+ Commands
+
+ unlists, Mailing lists, Configuration Commands
+
+ unmailboxes, Defining mailboxes which receive mail
+
+ unmime_lookup, MIME Lookup, Configuration Commands
+
+ unmono, Using color and mono video attributes, Configuration Commands
+
+ unmy_hdr, User defined headers, Configuration Commands
+
+ unscore, Message Scoring, Configuration Commands
+
+ unset, Setting variables, Configuration Commands
+
+ unsubscribe, Mailing lists, Configuration Commands, browser
+
+ <untag-pattern>, index
+
+ <upcase-word>, Editing Input Fields, editor
+
+ $use_8bitmime, SMTP Support (OPTIONAL)
+
+ $use_8bitmime , $use_8bitmime
+
+ $use_domain , $use_domain
+
+ $use_envelope_from , $use_envelope_from
+
+ $use_from , $use_from
+
+ $use_idn , $use_idn
+
+ $use_ipv6 , $use_ipv6
+
+ V
+
+ <verify-key>, pgp
+
+ <view-attach>, attach, compose
+
+ <view-attachments>, index, pager
+
+ <view-file>, browser
+
+ <view-mailcap>, attach
+
+ <view-name>, pgp
+
+ <view-text>, attach
+
+ $VISUAL, Composing new messages
+
+ $visual , $visual
+
+ W
+
+ $wait_key, Miscellaneous Functions, Optional Fields
+
+ $wait_key , $wait_key
+
+ $weed, Miscellaneous Functions, $weed
+
+ <what-key>, generic
+
+ $wrapmargin , $wrapmargin
+
+ $wrap_search , $wrap_search
+
+ <write-fcc>, Composing new messages, compose
+
+ $write_bcc , $write_bcc
+
+ $write_inc , $write_inc
+
+ X
+
+ $xterm_icon , $xterm_icon
+
+ $xterm_leave , $xterm_leave
+
+ $xterm_set_titles , $xterm_set_titles
+
+ $xterm_title , $xterm_title