Rocco Rutte:
[apps/madmutt.git] / doc / manual.txt
1
2                            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
3
4                       by Andreas Krennmair <ak@synflood.at> and others
5                 originally based on _\bm_\bu_\bt_\bt by Michael Elkins <me@cs.hmc.edu> and others
6
7                                         version devel
8
9                                           A\bAb\bbs\bst\btr\bra\bac\bct\bt
10
11             Michael Elinks on mutt, circa 1995: ``All mail clients suck. This one just
12             sucks less.'' - Sven Guckes on mutt, ca. 2003: ``But it still sucks!''
13
14        _\b1_\b.  _\bI_\bn_\bt_\br_\bo_\bd_\bu_\bc_\bt_\bi_\bo_\bn
15
16        _\b1_\b._\b1  _\bO_\bv_\be_\br_\bv_\bi_\be_\bw
17
18        M\bMu\but\btt\bt-\b-n\bng\bg is a small but very powerful text-based MIME mail client.  Mutt-ng is
19        highly configurable, and is well suited to the mail power user with advanced
20        features like key bindings, keyboard macros, mail threading, regular expression
21        searches and a powerful pattern matching language for selecting groups of mes-
22        sages.
23
24        This documentation additionally contains documentation to M\bMu\but\btt\bt-\b-N\bNG\bG, a fork from
25        Mutt with the goal to fix all the little annoyances of Mutt, to integrate all
26        the Mutt patches that are floating around in the web, and to add other new fea-
27        tures. Features specific to Mutt-ng will be discussed in an extra section.
28        Don't be confused when most of the documentation talk about Mutt and not Mutt-
29        ng, Mutt-ng contains all Mutt features, plus many more.
30
31        _\b1_\b._\b2  _\bM_\bu_\bt_\bt_\b-_\bn_\bg _\bH_\bo_\bm_\be _\bP_\ba_\bg_\be
32
33        http://www.muttng.org
34
35        _\b1_\b._\b3  _\bM_\ba_\bi_\bl_\bi_\bn_\bg _\bL_\bi_\bs_\bt_\bs
36
37           +\bo mutt-ng-users@lists.berlios.de -- This is where the mutt-ng user support
38             happens.
39
40        The Mutt Next Generation E-Mail Client                                        1
41
42        The Mutt Next Generation E-Mail Client                                        2
43
44           +\bo mutt-ng-devel@lists.berlios.de -- The development mailing list for mutt-ng
45
46        _\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
47
48        So far, there are no official releases of Mutt-ng, but you can download daily
49        snapshots from http://mutt-ng.berlios.de/snapshots/
50
51        _\b1_\b._\b5  _\bI_\bR_\bC
52
53        Visit channel _\b#_\bm_\bu_\bt_\bt_\bn_\bg on irc.freenode.net (www.freenode.net) to chat with other
54        people interested in Mutt-ng.
55
56        _\b1_\b._\b6  _\bW_\be_\bb_\bl_\bo_\bg
57
58        If you want to read fresh news about the latest development in Mutt-ng, and get
59        informed about stuff like interesting, Mutt-ng-related articles and packages
60        for your favorite distribution, you can read and/or subscribe to our Mutt-ng
61        development weblog.
62
63        _\b1_\b._\b7  _\bC_\bo_\bp_\by_\br_\bi_\bg_\bh_\bt
64
65        Mutt is Copyright (C) 1996-2000 Michael R. Elkins <me@cs.hmc.edu> and others
66
67        This program is free software; you can redistribute it and/or modify it under
68        the terms of the GNU General Public License as published by the Free Software
69        Foundation; either version 2 of the License, or (at your option) any later ver-
70        sion.
71
72        This program is distributed in the hope that it will be useful, but WITHOUT ANY
73        WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
74        PARTICULAR PURPOSE.  See the GNU General Public License for more details.
75
76        You should have received a copy of the GNU General Public License along with
77        this program; if not, write to the Free Software Foundation, Inc., 59 Temple
78        Place - Suite 330, Boston, MA  02111, USA.
79
80        _\b2_\b.  _\bG_\be_\bt_\bt_\bi_\bn_\bg _\bS_\bt_\ba_\br_\bt_\be_\bd
81
82        _\b2_\b._\b1  _\bB_\ba_\bs_\bi_\bc _\bC_\bo_\bn_\bc_\be_\bp_\bt_\bs
83
84        The Mutt Next Generation E-Mail Client                                        3
85
86        _\b2_\b._\b1_\b._\b1  _\bS_\bc_\br_\be_\be_\bn_\bs _\ba_\bn_\bd _\bM_\be_\bn_\bu_\bs
87
88        mutt-ng offers different screens of which every has its special purpose:
89
90           +\bo The _\bi_\bn_\bd_\be_\bx displays the contents of the currently opened mailbox.
91
92           +\bo The _\bp_\ba_\bg_\be_\br is responsible for displaying messages, that is, the header, the
93             body and all attached parts.
94
95           +\bo The _\bf_\bi_\bl_\be _\bb_\br_\bo_\bw_\bs_\be_\br offers operations on and displays information of all
96             folders mutt-ng should watch for mail.
97
98           +\bo The _\bs_\bi_\bd_\be_\bb_\ba_\br offers a permanent view of which mailboxes contain how many
99             total, new and/or flagged mails.
100
101           +\bo The _\bh_\be_\bl_\bp _\bs_\bc_\br_\be_\be_\bn lists for all currently available commands how to invoke
102             them as well as a short description.
103
104           +\bo The _\bc_\bo_\bm_\bp_\bo_\bs_\be menu is a comfortable interface take last actions before send-
105             ing mail: change subjects, attach files, remove attachements, etc.
106
107           +\bo The _\ba_\bt_\bt_\ba_\bc_\bh_\be_\bm_\be_\bn_\bt menu gives a summary and the tree structure of the
108             attachements of the current message.
109
110           +\bo The _\ba_\bl_\bi_\ba_\bs menu lists all or a fraction of the aliases a user has defined.
111
112           +\bo The _\bk_\be_\by menu used in connection with encryption lets users choose the
113             right key to encrypt with.
114
115        When mutt-ng is started without any further options, it'll open the users
116        default mailbox and display the index.
117
118        _\b2_\b._\b1_\b._\b2  _\bC_\bo_\bn_\bf_\bi_\bg_\bu_\br_\ba_\bt_\bi_\bo_\bn
119
120        Mutt-ng does _\bn_\bo_\bt feature an internal configuration interface or menu due to the
121        simple fact that this would be too complex to handle (currently there are sev-
122        eral _\bh_\bu_\bn_\bd_\br_\be_\bd variables which fine-tune the behaviour.)
123
124        Mutt-ng is configured using configuration files which allow users to add com-
125        ments or manage them via version control systems to ease maintenance.
126
127        Also, mutt-ng comes with a shell script named grml-muttng kindly contributed by
128        users which really helps and eases the creation of a user's configuration file.
129        When downloading the source code via a snapshot or via subversion, it can be
130        found in the contrib directory.
131
132        _\b2_\b._\b1_\b._\b3  _\bF_\bu_\bn_\bc_\bt_\bi_\bo_\bn_\bs
133
134        Mutt-ng offers great flexibility due to the use of functions: internally, every
135        action a user can make mutt-ng perform is named ``function.'' Those functions
136
137        The Mutt Next Generation E-Mail Client                                        4
138
139        are assigned to keys (or even key sequences) and may be completely adjusted to
140        user's needs. The basic idea is that the impatient users get a very intuitive
141        interface to start off with and advanced users virtually get no limits to
142        adjustments.
143
144        _\b2_\b._\b1_\b._\b4  _\bI_\bn_\bt_\be_\br_\ba_\bc_\bt_\bi_\bo_\bn
145
146        Mutt-ng has two basic concepts of user interaction:
147
148          1.  There is one dedicated line on the screen used to query the user for
149              input, issue any command, query variables and display error and informa-
150              tional messages. As for every type of user input, this requires manual
151              action leading to the need of input.
152
153          2.  The automatized interface for interaction are the so called _\bh_\bo_\bo_\bk_\bs. Hooks
154              specify actions the user wants to be performed at well-defined situa-
155              tions: what to do when entering which folder, what to do when displaying
156              or replying to what kind of message, etc. These are optional, i.e. a user
157              doesn't need to specify them but can do so.
158
159        _\b2_\b._\b1_\b._\b5  _\bM_\bo_\bd_\bu_\bl_\ba_\br_\bi_\bz_\ba_\bt_\bi_\bo_\bn
160
161        Although mutt-ng has many functionality built-in, many features can be dele-
162        gated to external tools to increase flexibility: users can define programs to
163        filter a message through before displaying, users can use any program they want
164        for displaying a message, message types (such as PDF or PostScript) for which
165        mutt-ng doesn't have a built-in filter can be rendered by arbitrary tools and
166        so forth. Although mutt-ng has an alias mechanism built-in, it features using
167        external tools to query for nearly every type of addresses from sources like
168        LDAP, databases or just the list of locally known users.
169
170        _\b2_\b._\b1_\b._\b6  _\bP_\ba_\bt_\bt_\be_\br_\bn_\bs
171
172        Mutt-ng has a built-in pattern matching ``language'' which is as widely used as
173        possible to present a consistent interface to users. The same ``pattern terms''
174        can be used for searching, scoring, message selection and much more.
175
176        _\b2_\b._\b2  _\bS_\bc_\br_\be_\be_\bn_\bs _\ba_\bn_\bd _\bM_\be_\bn_\bu_\bs
177
178        _\b2_\b._\b2_\b._\b1  _\bI_\bn_\bd_\be_\bx
179
180        The index is the screen that you usually see first when you start mutt-ng. It
181        gives an overview over your emails in the currently opened mailbox. By default,
182        this is your system mailbox.  The information you see in the index is a list of
183
184        The Mutt Next Generation E-Mail Client                                        5
185
186        emails, each with its number on the left, its flags (new email, important
187        email, email that has been forwarded or replied to, tagged email, ...), the
188        date when email was sent, its sender, the email size, and the subject. Addi-
189        tionally, the index also shows thread hierarchies: when you reply to an email,
190        and the other person replies back, you can see the other's person email in a
191        "sub-tree" below.  This is especially useful for personal email between a group
192        of people or when you've subscribed to mailing lists.
193
194        _\b2_\b._\b2_\b._\b2  _\bP_\ba_\bg_\be_\br
195
196        The pager is responsible for showing the email content. On the top of the pager
197        you have an overview over the most important email headers like the sender, the
198        recipient, the subject, and much more information. How much information you
199        actually see depends on your configuration, which we'll describe below.
200
201        Below the headers, you see the email body which usually contains the message.
202        If the email contains any attachments, you will see more information about them
203        below the email body, or, if the attachments are text files, you can view them
204        directly in the pager.
205
206        To give the user a good overview, it is possible to configure mutt-ng to show
207        different things in the pager with different colors. Virtually everything that
208        can be described with a regular expression can be colored, e.g. URLs, email
209        addresses or smileys.
210
211        _\b2_\b._\b2_\b._\b3  _\bF_\bi_\bl_\be _\bB_\br_\bo_\bw_\bs_\be_\br
212
213        The file browser is the interface to the local or remote file system. When
214        selecting a mailbox to open, the browser allows custom sorting of items, limit-
215        ing the items shown by a regular expression and a freely adjustable format of
216        what to display in which way. It also allows for easy navigation through the
217        file system when selecting file(s) to attach to a message, select multiple
218        files to attach and many more.
219
220        _\b2_\b._\b2_\b._\b4  _\bS_\bi_\bd_\be_\bb_\ba_\br
221
222        The sidebar comes in handy to manage mails which are spread over different
223        folders. All folders users setup mutt-ng to watch for new mail will be listed.
224        The listing includes not only the name but also the number of total messages,
225        the number of new and flagged messages. Items with new mail may be colored dif-
226        ferent from those with flagged mail, items may be shortened or compress if
227        they're they to long to be printed in full form so that by abbreviated names,
228        user still now what the name stands for.
229
230        _\b2_\b._\b2_\b._\b5  _\bH_\be_\bl_\bp
231
232        The Mutt Next Generation E-Mail Client                                        6
233
234        The help screen is meant to offer a quick help to the user. It lists the cur-
235        rent configuration of key bindings and their associated commands including a
236        short description, and currently unbound functions that still need to be asso-
237        ciated with a key binding (or alternatively, they can be called via the mutt-ng
238        command prompt).
239
240        _\b2_\b._\b2_\b._\b6  _\bC_\bo_\bm_\bp_\bo_\bs_\be _\bM_\be_\bn_\bu
241
242        The compose menu features a split screen containing the information which
243        really matter before actually sending a message by mail or posting an article
244        to a newsgroup: who gets the message as what (recipient, newsgroup, who gets
245        what kind of copy). Additionally, users may set security options like deciding
246        whether to sign, encrypt or sign and encrypt a message with/for what keys.
247
248        Also, it's used to attach messages, news articles or files to a message, to re-
249        edit any attachment including the message itself.
250
251        _\b2_\b._\b2_\b._\b7  _\bA_\bl_\bi_\ba_\bs _\bM_\be_\bn_\bu
252
253        The alias menu is used to help users finding the recipients of messages. For
254        users who need to contact many people, there's no need to remember addresses or
255        names completely because it allows for searching, too. The alias mechanism and
256        thus the alias menu also features grouping several addresses by a shorter nick-
257        name, the actual alias, so that users don't have to select each single recipi-
258        ent manually.
259
260        _\b2_\b._\b2_\b._\b8  _\bA_\bt_\bt_\ba_\bc_\bh_\bm_\be_\bn_\bt _\bM_\be_\bn_\bu
261
262        As will be later discussed in detail, mutt-ng features a good and stable MIME
263        implementation, that is, is greatly supports sending and receiving messages of
264        arbitrary type. The attachment menu displays a message's structure in detail:
265        what content parts are attached to which parent part (which gives a true tree
266        structure), which type is of what type and what size.  Single parts may saved,
267        deleted or modified to offer great and easy access to message's internals.
268
269        _\b2_\b._\b2_\b._\b9  _\bK_\be_\by _\bM_\be_\bn_\bu
270
271        FIXME
272
273        _\b2_\b._\b3  _\bM_\bo_\bv_\bi_\bn_\bg _\bA_\br_\bo_\bu_\bn_\bd _\bi_\bn _\bM_\be_\bn_\bu_\bs
274
275        Information is presented in menus, very similar to ELM.  Here is a table
276
277        The Mutt Next Generation E-Mail Client                                        7
278
279        showing the common keys used to navigate menus in Mutt-ng.
280
281             j or Down       next-entry      move to the next entry
282             k or Up         previous-entry  move to the previous entry
283             z or PageDn     page-down       go to the next page
284             Z or PageUp     page-up         go to the previous page
285             = or Home       first-entry     jump to the first entry
286             * or End        last-entry      jump to the last entry
287             q               quit            exit the current menu
288             ?               help            list all key bindings for the current menu
289
290        _\b2_\b._\b4  _\bE_\bd_\bi_\bt_\bi_\bn_\bg _\bI_\bn_\bp_\bu_\bt _\bF_\bi_\be_\bl_\bd_\bs
291
292        Mutt-ng has a builtin line editor which is used as the primary way to input
293        textual data such as email addresses or filenames.  The keys used to move
294        around while editing are very similar to those of Emacs.
295
296             ^A or <Home>    bol             move to the start of the line
297             ^B or <Left>    backward-char   move back one char
298             Esc B          backward-word  move back one word
299             ^D or <Delete>  delete-char     delete the char under the cursor
300             ^E or <End>     eol             move to the end of the line
301             ^F or <Right>   forward-char    move forward one char
302             Esc F          forward-word   move forward one word
303             <Tab>           complete        complete filename or alias
304             ^T              complete-query  complete address with query
305             ^K              kill-eol        delete to the end of the line
306             ESC d          kill-eow  delete to the end of the word
307             ^W              kill-word       kill the word in front of the cursor
308             ^U              kill-line       delete entire line
309             ^V              quote-char      quote the next typed key
310             <Up>            history-up      recall previous string from history
311             <Down>          history-down    recall next string from history
312             <BackSpace>     backspace       kill the char in front of the cursor
313             Esc u          upcase-word    convert word to upper case
314             Esc l          downcase-word  convert word to lower case
315             Esc c          capitalize-word capitalize the word
316             ^G              n/a             abort
317             <Return>        n/a             finish editing
318
319        You can remap the _\be_\bd_\bi_\bt_\bo_\br functions using the _\bb_\bi_\bn_\bd (section 3.4  , page 24) com-
320        mand.  For example, to make the _\bD_\be_\bl_\be_\bt_\be key delete the character in front of the
321        cursor rather than under, you could use
322
323        bind editor <delete> backspace
324
325        The Mutt Next Generation E-Mail Client                                        8
326
327        _\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
328
329        Similar to many other mail clients, there are two modes in which mail is read
330        in Mutt-ng.  The first is the index of messages in the mailbox, which is called
331        the ``index'' in Mutt-ng.  The second mode is the display of the message con-
332        tents.  This is called the ``pager.''
333
334        The next few sections describe the functions provided in each of these modes.
335
336        _\b2_\b._\b5_\b._\b1  _\bT_\bh_\be _\bM_\be_\bs_\bs_\ba_\bg_\be _\bI_\bn_\bd_\be_\bx
337
338             c               change to a different mailbox
339             ESC c           change to a folder in read-only mode
340             C               copy the current message to another mailbox
341             ESC C           decode a message and copy it to a folder
342             ESC s           decode a message and save it to a folder
343             D               delete messages matching a pattern
344             d               delete the current message
345             F               mark as important
346             l               show messages matching a pattern
347             N               mark message as new
348             o               change the current sort method
349             O               reverse sort the mailbox
350             q               save changes and exit
351             s               save-message
352             T               tag messages matching a pattern
353             t               toggle the tag on a message
354             ESC t           toggle tag on entire message thread
355             U               undelete messages matching a pattern
356             u               undelete-message
357             v               view-attachments
358             x               abort changes and exit
359             <Return>        display-message
360             <Tab>           jump to the next new message
361             @               show the author's full e-mail address
362             $               save changes to mailbox
363             /               search
364             ESC /           search-reverse
365             ^L              clear and redraw the screen
366             ^T              untag messages matching a pattern
367
368        _\b2_\b._\b5_\b._\b1_\b._\b1  _\bS_\bt_\ba_\bt_\bu_\bs _\bF_\bl_\ba_\bg_\bs
369
370        In addition to who sent the message and the subject, a short summary of the
371        disposition of each message is printed beside the message number.  Zero or more
372        of the following ``flags'' may appear, which mean:
373
374              D
375                    message is deleted (is marked for deletion)
376
377              d
378                    message have attachments marked for deletion
379
380        The Mutt Next Generation E-Mail Client                                        9
381
382              K
383                    contains a PGP public key
384
385              N
386                    message is new
387
388              O
389                    message is old
390
391              P
392                    message is PGP encrypted
393
394              r
395                    message has been replied to
396
397              S
398                    message is signed, and the signature is succesfully verified
399
400              s
401                    message is signed
402
403              !
404                    message is flagged
405
406              *
407                    message is tagged
408
409        Some of the status flags can be turned on or off using
410
411           +\bo s\bse\bet\bt-\b-f\bfl\bla\bag\bg (default: w)
412
413           +\bo c\bcl\ble\bea\bar\br-\b-f\bfl\bla\bag\bg (default: W)
414
415        Furthermore, the following flags reflect who the message is addressed to.  They
416        can be customized with the _\b$_\bt_\bo_\b__\bc_\bh_\ba_\br_\bs (section 7.4.327  , page 167) variable.
417
418              +
419                    message is to you and you only
420
421              T
422                    message is to you, but also to or cc'ed to others
423
424              C
425                    message is cc'ed to you
426
427              F
428                    message is from you
429
430              L
431                    message is sent to a subscribed mailing list
432
433        _\b2_\b._\b5_\b._\b2  _\bT_\bh_\be _\bP_\ba_\bg_\be_\br
434
435        By default, Mutt-ng uses its builtin pager to display the body of messages.
436
437        The Mutt Next Generation E-Mail Client                                       10
438
439        The pager is very similar to the Unix program _\bl_\be_\bs_\bs though not nearly as fea-
440        tureful.
441
442             <Return>        go down one line
443             <Space>         display the next page (or next message if at the end of a message)
444             -               go back to the previous page
445             n               search for next match
446             S               skip beyond quoted text
447             T               toggle display of quoted text
448             ?               show key bindings
449             /               search for a regular expression (pattern)
450             ESC /           search backwards for a regular expression
451             \               toggle search pattern coloring
452             ^               jump to the top of the message
453
454        In addition, many of the functions from the _\bi_\bn_\bd_\be_\bx are available in the pager,
455        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
456        external pager to view messages).
457
458        Also, the internal pager supports a couple other advanced features. For one, it
459        will accept and translate the ``standard'' nroff sequences for bold and under-
460        line. These sequences are a series of either the letter, backspace (^H), the
461        letter again for bold or the letter, backspace, ``_'' for denoting underline.
462        Mutt-ng will attempt to display these in bold and underline respectively if
463        your terminal supports them. If not, you can use the bold and underline _\bc_\bo_\bl_\bo_\br
464        (section 3.8  , page 28) objects to specify a color or mono attribute for them.
465
466        Additionally, the internal pager supports the ANSI escape sequences for charac-
467        ter attributes.  Mutt-ng translates them into the correct color and character
468        settings.  The sequences Mutt-ng supports are:
469
470             ESC [ Ps;Ps;Ps;...;Ps m
471             where Ps =
472             0    All Attributes Off
473             1    Bold on
474             4    Underline on
475             5    Blink on
476             7    Reverse video on
477             3x   Foreground color is x
478             4x   Background color is x
479
480             Colors are
481             0    black
482             1    red
483             2    green
484             3    yellow
485             4    blue
486             5    magenta
487             6    cyan
488             7    white
489
490        The Mutt Next Generation E-Mail Client                                       11
491
492        Mutt-ng uses these attributes for handling text/enriched messages, and they can
493        also be used by an external _\ba_\bu_\bt_\bo_\bv_\bi_\be_\bw (section 5.4  , page 76) script for high-
494        lighting purposes.  N\bNo\bot\bte\be:\b: If you change the colors for your display, for exam-
495        ple by changing the color associated with color2 for your xterm, then that
496        color will be used instead of green.
497
498        _\b2_\b._\b5_\b._\b3  _\bT_\bh_\br_\be_\ba_\bd_\be_\bd _\bM_\bo_\bd_\be
499
500        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
501        a few additional functions available in the _\bi_\bn_\bd_\be_\bx and _\bp_\ba_\bg_\be_\br modes.
502
503             ^D      delete-thread           delete all messages in the current thread
504             ^U      undelete-thread         undelete all messages in the current thread
505             ^N      next-thread             jump to the start of the next thread
506             ^P      previous-thread         jump to the start of the previous thread
507             ^R      read-thread             mark the current thread as read
508             ESC d   delete-subthread        delete all messages in the current subthread
509             ESC u   undelete-subthread      undelete all messages in the current subthread
510             ESC n   next-subthread          jump to the start of the next subthread
511             ESC p   previous-subthread      jump to the start of the previous subthread
512             ESC r   read-subthread          mark the current subthread as read
513             ESC t   tag-thread              toggle the tag on the current thread
514             ESC v     collapse-thread          toggle collapse for the current thread
515             ESC V     collapse-all        toggle collapse for all threads
516             P       parent-message          jump to parent message in thread
517
518        N\bNo\bot\bte\be:\b: Collapsing a thread displays only the first message in the thread and
519        hides the others. This is useful when threads contain so many messages that you
520        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-
521        tion 7.4.113  , page 113).  For example, you could use "%?M?(#%03M)&(%4l)?" in
522        _\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
523        hidden messages if the thread is collapsed.
524
525        See also: _\b$_\bs_\bt_\br_\bi_\bc_\bt_\b__\bt_\bh_\br_\be_\ba_\bd_\bs (section 7.4.316  , page 165).
526
527        _\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
528
529        c\bcr\bre\bea\bat\bte\be-\b-a\bal\bli\bia\bas\bs
530         (default: a)
531
532        Creates a new alias based upon the current message (or prompts for a new one).
533        Once editing is complete, an _\ba_\bl_\bi_\ba_\bs (section 3.3  , page 23) command is added to
534        the file specified by the _\b$_\ba_\bl_\bi_\ba_\bs_\b__\bf_\bi_\bl_\be (section 7.4.4  , page 87) variable for
535        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
536        add the aliases specified there-in, you must also _\bs_\bo_\bu_\br_\bc_\be (section 3.28  , page
537        43) the file.
538
539        c\bch\bhe\bec\bck\bk-\b-t\btr\bra\bad\bdi\bit\bti\bio\bon\bna\bal\bl-\b-p\bpg\bgp\bp
540         (default: ESC P)
541
542        This function will search the current message for content signed or encrypted
543        with PGP the "traditional" way, that is, without proper MIME tagging.
544
545        The Mutt Next Generation E-Mail Client                                       12
546
547        Technically, this function will temporarily change the MIME content types of
548        the body parts containing PGP data; this is similar to the _\be_\bd_\bi_\bt_\b-_\bt_\by_\bp_\be (section
549        2.5.4  , page 12) function's effect.
550
551        d\bdi\bis\bsp\bpl\bla\bay\by-\b-t\bto\bog\bgg\bgl\ble\be-\b-w\bwe\bee\bed\bd
552         (default: h)
553
554        Toggles the weeding of message header fields specified by _\bi_\bg_\bn_\bo_\br_\be (section
555        3.9  , page 30) commands.
556
557        e\bed\bdi\bit\bt
558         (default: e)
559
560        This command (available in the ``index'' and ``pager'') allows you to edit the
561        raw current message as it's present in the mail folder.  After you have fin-
562        ished editing, the changed message will be appended to the current folder, and
563        the original message will be marked for deletion.
564
565        e\bed\bdi\bit\bt-\b-t\bty\byp\bpe\be
566
567        (default: ^E on the attachment menu, and in the pager and index menus; ^T on
568        the compose menu)
569
570        This command is used to temporarily edit an attachment's content type to fix,
571        for instance, bogus character set parameters.  When invoked from the index or
572        from the pager, you'll have the opportunity to edit the top-level attachment's
573        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
574        change any attachment's content type. These changes are not persistent, and get
575        lost upon changing folders.
576
577        Note that this command is also available on the _\bc_\bo_\bm_\bp_\bo_\bs_\be _\bm_\be_\bn_\bu (section 5.1.3  ,
578        page 69).  There, it's used to fine-tune the properties of attachments you are
579        going to send.
580
581        e\ben\bnt\bte\ber\br-\b-c\bco\bom\bmm\bma\ban\bnd\bd
582         (default: ``:'')
583
584        This command is used to execute any command you would normally put in a config-
585        uration file.  A common use is to check the settings of variables, or in con-
586        junction with _\bm_\ba_\bc_\br_\bo_\bs (section 3.7  , page 27) to change settings on the fly.
587
588        e\bex\bxt\btr\bra\bac\bct\bt-\b-k\bke\bey\bys\bs
589         (default: ^K)
590
591        This command extracts PGP public keys from the current or tagged message(s) and
592        adds them to your PGP public key ring.
593
594        f\bfo\bor\brg\bge\bet\bt-\b-p\bpa\bas\bss\bsp\bph\bhr\bra\bas\bse\be
595         (default: ^F)
596
597        This command wipes the passphrase(s) from memory. It is useful, if you mis-
598        spelled the passphrase.
599
600        The Mutt Next Generation E-Mail Client                                       13
601
602        l\bli\bis\bst\bt-\b-r\bre\bep\bpl\bly\by
603         (default: L)
604
605        Reply to the current or tagged message(s) by extracting any addresses which
606        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  ,
607        page 33) commands, but also honor any Mail-Followup-To header(s) if the
608        _\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.
609        Using this when replying to messages posted to mailing lists helps avoid dupli-
610        cate copies being sent to the author of the message you are replying to.
611
612        p\bpi\bip\bpe\be-\b-m\bme\bes\bss\bsa\bag\bge\be
613         (default: |)
614
615        Asks for an external Unix command and pipes the current or tagged message(s) to
616        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
617        (section 7.4.206  , page 137), _\b$_\bp_\bi_\bp_\be_\b__\bs_\be_\bp (section 7.4.205  , page 137) and
618        _\b$_\bw_\ba_\bi_\bt_\b__\bk_\be_\by (section 7.4.339  , page 169) control the exact behavior of this
619        function.
620
621        r\bre\bes\bse\ben\bnd\bd-\b-m\bme\bes\bss\bsa\bag\bge\be
622         (default: ESC e)
623
624        With resend-message, mutt takes the current message as a template for a new
625        message.  This function is best described as "recall from arbitrary folders".
626        It can conveniently be used to forward MIME messages while preserving the orig-
627        inal mail structure. Note that the amount of headers included here depends on
628        the value of the _\b$_\bw_\be_\be_\bd (section 7.4.340  , page 170) variable.
629
630        This function is also available from the attachment menu. You can use this to
631        easily resend a message which was included with a bounce message as a mes-
632        sage/rfc822 body part.
633
634        s\bsh\bhe\bel\bll\bl-\b-e\bes\bsc\bca\bap\bpe\be
635         (default: !)
636
637        Asks for an external Unix command and executes it.  The _\b$_\bw_\ba_\bi_\bt_\b__\bk_\be_\by (section
638        7.4.339  , page 169) can be used to control whether Mutt-ng will wait for a key
639        to be pressed when the command returns (presumably to let the user read the
640        output of the command), based on the return status of the named command.
641
642        t\bto\bog\bgg\bgl\ble\be-\b-q\bqu\buo\bot\bte\bed\bd
643         (default: T)
644
645        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
646        detect quoted text when displaying the body of the message.  This function tog-
647        gles the display of the quoted material in the message.  It is particularly
648        useful when are interested in just the response and there is a large amount of
649        quoted text in the way.
650
651        s\bsk\bki\bip\bp-\b-q\bqu\buo\bot\bte\bed\bd
652         (default: S)
653
654        This function will go to the next line of non-quoted text which come after a
655        line of quoted text in the internal pager.
656
657        The Mutt Next Generation E-Mail Client                                       14
658
659        _\b2_\b._\b6  _\bS_\be_\bn_\bd_\bi_\bn_\bg _\bM_\ba_\bi_\bl
660
661        The following bindings are available in the _\bi_\bn_\bd_\be_\bx for sending messages.
662
663             m       compose         compose a new message
664             r       reply           reply to sender
665             g       group-reply     reply to all recipients
666             L       list-reply      reply to mailing list address
667             f       forward         forward message
668             b       bounce          bounce (remail) message
669             ESC k   mail-key        mail a PGP public key to someone
670
671        Bouncing a message sends the message as is to the recipient you specify.  For-
672        warding a message allows you to add comments or modify the message you are for-
673        warding.  These items are discussed in greater detail in the next chapter
674        _\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).
675
676        _\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
677
678        When you want to send an email using mutt-ng, simply press m on your keyboard.
679        Then, mutt-ng asks for the recipient via a prompt in the last line:
680
681             To:
682
683        After you've finished entering the recipient(s), press return. If you want to
684        send an email to more than one recipient, separate the email addresses using
685        the comma ",". Mutt-ng then asks you for the email subject. Again, press return
686        after you've entered it. After that, mutt-ng got the most important information
687        from you, and starts up an editor where you can then enter your email.
688
689        The editor that is called is selected in the following way: you can e.g. set it
690        in the mutt-ng configuration:
691
692             set editor = "vim +/^$/ -c ':set tw=72'"
693             set editor = "nano"
694             set editor = "emacs"
695
696        If you don't set your preferred editor in your configuration, mutt-ng first
697        looks whether the environment variable $VISUAL is set, and if so, it takes its
698        value as editor command. Otherwise, it has a look at $EDITOR and takes its
699        value if it is set. If no editor command can be found, mutt-ng simply assumes
700        vi to be the default editor, since it's the most widespread editor in the Unix
701        world and it's pretty safe to assume that it is installed and available.
702
703        When you've finished entering your message, save it and quit your editor. Mutt-
704        ng will then present you with a summary screen, the compose menu.  On the top,
705        you see a summary of the most important available key commands.  Below that,
706        you see the sender, the recipient(s), Cc and/or Bcc recipient(s), the subject,
707
708        The Mutt Next Generation E-Mail Client                                       15
709
710        the reply-to address, and optionally information where the sent email will be
711        stored and whether it should be digitally signed and/or encrypted.
712
713        Below that, you see a list of "attachments". The mail you've just entered
714        before is also an attachment, but due to its special type (it's plain text), it
715        will be displayed as the normal message on the receiver's side.
716
717        At this point, you can add more attachments, pressing a, you can edit the
718        recipient addresses, pressing t for the "To:" field, c for the "Cc:" field, and
719        b for the "Bcc: field. You can also edit the subject the subject by simply
720        pressing s or the email message that you've entered before by pressing e. You
721        will then again return to the editor. You can even edit the sender, by pressing
722        <esc>f, but this shall only be used with caution.
723
724        Alternatively, you can configure mutt-ng in a way that most of the above set-
725        tings can be edited using the editor. Therefore, you only need to add the fol-
726        lowing to your configuration:
727
728             set edit_headers
729
730        Once you have finished editing the body of your mail message, you are returned
731        to the _\bc_\bo_\bm_\bp_\bo_\bs_\be menu.  The following options are available:
732
733             a       attach-file             attach a file
734             A    attach-message      attach message(s) to the message
735             ESC k   attach-key              attach a PGP public key
736             d       edit-description        edit description on attachment
737             D       detach-file             detach a file
738             t       edit-to                 edit the To field
739             ESC f   edit-from               edit the From field
740             r       edit-reply-to           edit the Reply-To field
741             c       edit-cc                 edit the Cc field
742             b       edit-bcc                edit the Bcc field
743             y       send-message            send the message
744             s       edit-subject            edit the Subject
745             S       smime-menu              select S/MIME options
746             f       edit-fcc                specify an ``Fcc'' mailbox
747             p       pgp-menu                select PGP options
748             P       postpone-message        postpone this message until later
749             q       quit                    quit (abort) sending the message
750             w    write-fcc      write the message to a folder
751             i       ispell                  check spelling (if available on your system)
752             ^F      forget-passphrase       wipe passphrase(s) from memory
753
754        N\bNo\bot\bte\be:\b: The attach-message function will prompt you for a folder to attach mes-
755        sages from. You can now tag messages in that folder and they will be attached
756        to the message you are sending. Note that certain operations like composing a
757        new mail, replying, forwarding, etc. are not permitted when you are in that
758        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
759        'A' to indicate that you are in attach-message mode.
760
761        The Mutt Next Generation E-Mail Client                                       16
762
763        _\b2_\b._\b6_\b._\b2  _\bR_\be_\bp_\bl_\by_\bi_\bn_\bg
764
765        _\b2_\b._\b6_\b._\b2_\b._\b1  _\bS_\bi_\bm_\bp_\bl_\be _\bR_\be_\bp_\bl_\bi_\be_\bs
766
767        When you want to reply to an email message, select it in the index menu and
768        then press r. Mutt-ng's behaviour is then similar to the behaviour when you
769        compose a message: first, you will be asked for the recipient, then for the
770        subject, and then, mutt-ng will start the editor with the quote attribution and
771        the quoted message. This can e.g. look like the example below.
772
773             On Mon, Mar 07, 2005 at 05:02:12PM +0100, Michael Svensson wrote:
774             > Bill, can you please send last month's progress report to Mr.
775             > Morgan? We also urgently need the cost estimation for the new
776             > production server that we want to set up before our customer's
777             > project will go live.
778
779        You can start editing the email message. It is strongly recommended to put your
780        answer _\bb_\be_\bl_\bo_\bw the quoted text and to only quote what is really necessary and
781        that you refer to. Putting your answer on top of the quoted message, is,
782        although very widespread, very often not considered to be a polite way to
783        answer emails.
784
785        The quote attribution is configurable, by default it is set to
786
787             set attribution = "On %d, %n wrote:"
788
789        It can also be set to something more compact, e.g.
790
791             set attribution = "attribution="* %n <%a> [%(%y-%m-%d %H:%M)]:"
792
793        The example above results in the following attribution:
794
795             * Michael Svensson <svensson@foobar.com> [05-03-06 17:02]:
796             > Bill, can you please send last month's progress report to Mr.
797             > Morgan? We also urgently need the cost estimation for the new
798             > production server that we want to set up before our customer's
799             > project will go live.
800
801        Generally, try to keep your attribution short yet information-rich. It is _\bn_\bo_\bt
802        the right place for witty quotes, long "attribution" novels or anything like
803        that: the right place for such things is - if at all - the email signature at
804        the very bottom of the message.
805
806        When you're done with writing your message, save and quit the editor. As
807        before, you will return to the compose menu, which is used in the same way as
808
809        The Mutt Next Generation E-Mail Client                                       17
810
811        before.
812
813        _\b2_\b._\b6_\b._\b2_\b._\b2  _\bG_\br_\bo_\bu_\bp _\bR_\be_\bp_\bl_\bi_\be_\bs
814
815        In the situation where a group of people uses email as a discussion, most of
816        the emails will have one or more recipients, and probably several "Cc:" recipi-
817        ents. The group reply functionality ensures that when you press g instead of r
818        to do a reply, each and every recipient that is contained in the original mes-
819        sage will receive a copy of the message, either as normal recipient or as "Cc:"
820        recipient.
821
822        _\b2_\b._\b6_\b._\b2_\b._\b3  _\bL_\bi_\bs_\bt _\bR_\be_\bp_\bl_\bi_\be_\bs
823
824        When you use mailing lists, it's generally better to send your reply to a mes-
825        sage only to the list instead of the list and the original author. To make this
826        easy to use, mutt-ng features list replies.
827
828        To do a list reply, simply press L. If the email contains a Mail-Followup-To:
829        header, its value will be used as reply address. Otherwise, mutt-ng searches
830        through all mail addresses in the original message and tries to match them a
831        list of regular expressions which can be specified using the lists command.  If
832        any of the regular expression matches, a mailing list address has been found,
833        and it will be used as reply address.
834
835             lists linuxevent@luga\.at vuln-dev@ mutt-ng-users@
836
837        Nowadays, most mailing list software like GNU Mailman adds a Mail-Followup-To:
838        header to their emails anyway, so setting lists is hardly ever necessary in
839        practice.
840
841        _\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
842
843        When editing the header of your outgoing message, there are a couple of special
844        features available.
845
846        If you specify
847
848        Fcc: _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be
849
850        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
851        the _\bc_\bo_\bm_\bp_\bo_\bs_\be menu.
852
853        You can also attach files to your message by specifying
854
855        The Mutt Next Generation E-Mail Client                                       18
856
857        Attach: _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be  [ _\bd_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn ]
858
859        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
860        use as the description of the attached file.
861
862        When replying to messages, if you remove the _\bI_\bn_\b-_\bR_\be_\bp_\bl_\by_\b-_\bT_\bo_\b: field from the header
863        field, Mutt-ng will not generate a _\bR_\be_\bf_\be_\br_\be_\bn_\bc_\be_\bs_\b: field, which allows you to cre-
864        ate a new message thread.
865
866        Also see _\be_\bd_\bi_\bt_\b__\bh_\be_\ba_\bd_\be_\br_\bs (section 7.4.57  , page 100).
867
868        _\b2_\b._\b6_\b._\b4  _\bU_\bs_\bi_\bn_\bg _\bM_\bu_\bt_\bt_\b-_\bn_\bg _\bw_\bi_\bt_\bh _\bP_\bG_\bP
869
870        If you want to use PGP, you can specify
871
872        Pgp: [ E | S | S_\b<_\bi_\bd_\b> ]
873
874        ``E'' encrypts, ``S'' signs and ``S<id>'' signs with the given key, setting
875        _\b$_\bp_\bg_\bp_\b__\bs_\bi_\bg_\bn_\b__\ba_\bs (section 7.4.196  , page 135) permanently.
876
877        If you have told mutt to PGP encrypt a message, it will guide you through a key
878        selection process when you try to send the message.  Mutt-ng will not ask you
879        any questions about keys which have a certified user ID matching one of the
880        message recipients' mail addresses.  However, there may be situations in which
881        there are several keys, weakly certified user ID fields, or where no matching
882        keys can be found.
883
884        In these cases, you are dropped into a menu with a list of keys from which you
885        can select one.  When you quit this menu, or mutt can't find any matching keys,
886        you are prompted for a user ID.  You can, as usually, abort this prompt using
887        ^G.  When you do so, mutt will return to the compose screen.
888
889        Once you have successfully finished the key selection, the message will be
890        encrypted using the selected public keys, and sent out.
891
892        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-
893        _\bm_\ba_\bt (section 7.4.183  , page 132)) have obvious meanings.  But some explana-
894        tions on the capabilities, flags, and validity fields are in order.
895
896        The flags sequence (%f) will expand to one of the following flags:
897
898             R            The key has been revoked and can't be used.
899             X            The key is expired and can't be used.
900             d            You have marked the key as disabled.
901             c            There are unknown critical self-signature
902                          packets.
903
904        The capabilities field (%c) expands to a two-character sequence representing a
905        key's capabilities.  The first character gives the key's encryption capabili-
906        ties: A minus sign (-\b-) means that the key cannot be used for encryption.  A dot
907        (.\b.) means that it's marked as a signature key in one of the user IDs, but may
908
909        The Mutt Next Generation E-Mail Client                                       19
910
911        also be used for encryption.  The letter e\be indicates that this key can be used
912        for encryption.
913
914        The second character indicates the key's signing capabilities.  Once again, a
915        ``-\b-'' implies ``not for signing'', ``.\b.'' implies that the key is marked as an
916        encryption key in one of the user-ids, and ``s\bs'' denotes a key which can be
917        used for signing.
918
919        Finally, the validity field (%t) indicates how well-certified a user-id is.  A
920        question mark (?\b?) indicates undefined validity, a minus character (-\b-) marks an
921        untrusted association, a space character means a partially trusted association,
922        and a plus character (+\b+) indicates complete validity.
923
924        _\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
925
926        You may also have configured mutt to co-operate with Mixmaster, an anonymous
927        remailer.  Mixmaster permits you to send your messages anonymously using a
928        chain of remailers. Mixmaster support in mutt is for mixmaster version 2.04
929        (beta 45 appears to be the latest) and 2.03.  It does not support earlier ver-
930        sions or the later so-called version 3 betas, of which the latest appears to be
931        called 2.9b23.
932
933        To use it, you'll have to obey certain restrictions.  Most important, you can-
934        not use the Cc and Bcc headers.  To tell Mutt-ng to use mixmaster, you have to
935        select a remailer chain, using the mix function on the compose menu.
936
937        The chain selection screen is divided into two parts.  In the (larger) upper
938        part, you get a list of remailers you may use.  In the lower part, you see the
939        currently selected chain of remailers.
940
941        You can navigate in the chain using the chain-prev and chain-next functions,
942        which are by default bound to the left and right arrows and to the h and l keys
943        (think vi keyboard bindings).  To insert a remailer at the current chain posi-
944        tion, use the insert function.  To append a remailer behind the current chain
945        position, use select-entry or append.  You can also delete entries from the
946        chain, using the corresponding function.  Finally, to abandon your changes,
947        leave the menu, or accept them pressing (by default) the Return key.
948
949        Note that different remailers do have different capabilities, indicated in the
950        %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  ,
951        page 121)).  Most important is the ``middleman'' capability, indicated by a
952        capital ``M'': This means that the remailer in question cannot be used as the
953        final element of a chain, but will only forward messages to other mixmaster
954        remailers.  For details on the other capabilities, please have a look at the
955        mixmaster documentation.
956
957        _\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
958
959        The Mutt Next Generation E-Mail Client                                       20
960
961        Often, it is necessary to forward mails to other people.  Therefore, mutt-ng
962        supports forwarding messages in two different ways.
963
964        The first one is regular forwarding, as you probably know it from other mail
965        clients. You simply press f, enter the recipient email address, the subject of
966        the forwarded email, and then you can edit the message to be forwarded in the
967        editor. The forwarded message is separated from the rest of the message via the
968        two following markers:
969
970             ----- Forwarded message from Lucas User <luser@example.com> -----
971
972             From: Lucas User <luser@example.com>
973             Date: Thu, 02 Dec 2004 03:08:34 +0100
974             To: Michael Random <mrandom@example.com>
975             Subject: Re: blackmail
976
977             Pay me EUR 50,000.- cash or your favorite stuffed animal will die
978             a horrible death.
979
980             ----- End forwarded message -----
981
982        When you're done with editing the mail, save and quit the editor, and you will
983        return to the compose menu, the same menu you also encounter when composing or
984        replying to mails.
985
986        The second mode of forwarding emails with mutt-ng is the so-called _\bb_\bo_\bu_\bn_\bc_\bi_\bn_\bg:
987        when you bounce an email to another address, it will be sent in practically the
988        same format you send it (except for headers that are created during transport-
989        ing the message). To bounce a message, press b and enter the recipient email
990        address. By default, you are then asked whether you really want to bounce the
991        message to the specified recipient. If you answer with yes, the message will
992        then be bounced.
993
994        To the recipient, the bounced email will look as if he got it like a regular
995        email where he was Bcc: recipient. The only possibility to find out whether it
996        was a bounced email is to carefully study the email headers and to find out
997        which host really sent the email.
998
999        _\b2_\b._\b8  _\bP_\bo_\bs_\bt_\bp_\bo_\bn_\bi_\bn_\bg _\bM_\ba_\bi_\bl
1000
1001        At times it is desirable to delay sending a message that you have already begun
1002        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,
1003        the body of your message and attachments are stored in the mailbox specified by
1004        the _\b$_\bp_\bo_\bs_\bt_\bp_\bo_\bn_\be_\bd (section 7.4.218  , page 140) variable.  This means that you can
1005        recall the message even if you exit Mutt-ng and then restart it at a later
1006        time.
1007
1008        Once a message is postponed, there are several ways to resume it.  From the
1009        command line you can use the ``-p'' option, or if you _\bc_\bo_\bm_\bp_\bo_\bs_\be a new message
1010
1011        The Mutt Next Generation E-Mail Client                                       21
1012
1013        from the _\bi_\bn_\bd_\be_\bx or _\bp_\ba_\bg_\be_\br you will be prompted if postponed messages exist.  If
1014        multiple messages are currently postponed, the _\bp_\bo_\bs_\bt_\bp_\bo_\bn_\be_\bd menu will pop up and
1015        you can select which message you would like to resume.
1016
1017        N\bNo\bot\bte\be:\b: If you postpone a reply to a message, the reply setting of the message is
1018        only updated when you actually finish the message and send it.  Also, you must
1019        be in the same folder with the message you replied to for the status of the
1020        message to be updated.
1021
1022        See also the _\b$_\bp_\bo_\bs_\bt_\bp_\bo_\bn_\be (section 7.4.217  , page 139) quad-option.
1023
1024        _\b3_\b.  _\bC_\bo_\bn_\bf_\bi_\bg_\bu_\br_\ba_\bt_\bi_\bo_\bn
1025
1026        _\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
1027
1028        While the default configuration (or ``preferences'') make Mutt-ng usable right
1029        out of the box, it is often desirable to tailor Mutt-ng to suit your own
1030        tastes. When Mutt-ng is first invoked, it will attempt to read the ``system''
1031        configuration file (defaults set by your local system administrator), unless
1032        the ``-n'' _\bc_\bo_\bm_\bm_\ba_\bn_\bd _\bl_\bi_\bn_\be (section 7.1  , page 80) option is specified.  This
1033        file is typically /usr/local/share/muttng/Muttngrc or /etc/Muttngrc, Mutt-ng
1034        users will find this file in /usr/local/share/muttng/Muttrc or /etc/Muttngrc.
1035        Mutt will next look for a file named .muttrc in your home directory, Mutt-ng
1036        will look for .muttngrc.  If this file does not exist and your home directory
1037        has a subdirectory named .mutt, mutt try to load a file named .muttng/muttngrc.
1038
1039        .muttrc (or .muttngrc for Mutt-ng) is the file where you will usually place
1040        your _\bc_\bo_\bm_\bm_\ba_\bn_\bd_\bs (section 7.3  , page 83) to configure Mutt-ng.
1041
1042        _\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
1043
1044        An initialization file consists of a series of _\bc_\bo_\bm_\bm_\ba_\bn_\bd_\bs (section 7.3  , page
1045        83).  Each line of the file may contain one or more commands.  When multiple
1046        commands are used, they must be separated by a semicolon (;).
1047
1048             set realname='Mutt-ng user' ; ignore x-
1049
1050        The hash mark, or pound sign (``#''), is used as a ``comment'' character. You
1051        can use it to annotate your initialization file. All text after the comment
1052        character to the end of the line is ignored. For example,
1053
1054             my_hdr X-Disclaimer: Why are you listening to me? # This is a comment
1055
1056        Single quotes (') and double quotes (') can be used to quote strings which
1057
1058        The Mutt Next Generation E-Mail Client                                       22
1059
1060        contain spaces or other special characters.  The difference between the two
1061        types of quotes is similar to that of many popular shell programs, namely that
1062        a single quote is used to specify a literal string (one that is not interpreted
1063        for shell variables or quoting with a backslash [see next paragraph]), while
1064        double quotes indicate a string for which should be evaluated.  For example,
1065        backtics are evaluated inside of double quotes, but n\bno\bot\bt for single quotes.
1066
1067        \ quotes the next character, just as in shells such as bash and zsh.  For exam-
1068        ple, if want to put quotes ``''' inside of a string, you can use ``\'' to force
1069        the next character to be a literal instead of interpreted character.
1070
1071             set realname="Michael \"MuttDude\" Elkins"
1072
1073        ``\\'' means to insert a literal ``\'' into the line.  ``\n'' and ``\r'' have
1074        their usual C meanings of linefeed and carriage-return, respectively.
1075
1076        A \ at the end of a line can be used to split commands over multiple lines,
1077        provided that the split points don't appear in the middle of command names.
1078
1079        Please note that, unlike the various shells, mutt-ng interprets a ``\'' at the
1080        end of a line also in comments. This allows you to disable a command split over
1081        multiple lines with only one ``#''.
1082
1083             # folder-hook . \
1084               set realname="Michael \"MuttDude\" Elkins"
1085
1086        When testing your config files, beware the following caveat. The backslash at
1087        the end of the commented line extends the current line with the next line -
1088        then referred to as a ``continuation line''.  As the first line is commented
1089        with a hash (#) all following continuation lines are also part of a comment and
1090        therefore are ignored, too. So take care of comments when continuation lines
1091        are involved within your setup files!
1092
1093        Abstract example:
1094
1095             line1\
1096             line2a # line2b\
1097             line3\
1098             line4
1099             line5
1100
1101        line1 ``continues'' until line4. however, the part after the # is a comment
1102        which includes line3 and line4. line5 is a new line of its own and thus is
1103        interpreted again.
1104
1105        It is also possible to substitute the output of a Unix command in an initial-
1106        ization file.  This is accomplished by enclosing the command in backquotes
1107        (``).  For example,
1108
1109        The Mutt Next Generation E-Mail Client                                       23
1110
1111             my_hdr X-Operating-System: `uname -a`
1112
1113        The output of the Unix command ``uname -a'' will be substituted before the line
1114        is parsed.  Note that since initialization files are line oriented, only the
1115        first line of output from the Unix command will be substituted.
1116
1117        UNIX environments can be accessed like the way it is done in shells like sh and
1118        bash: Prepend the name of the environment by a ``$''.  For example,
1119
1120             set record=+sent_on_$HOSTNAME
1121
1122        This also applies for all configuration variables known to mutt-ng, for example
1123
1124             set imap_home_namespace = $folder
1125
1126        The commands understood by mutt are explained in the next paragraphs.  For a
1127        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).
1128
1129        _\b3_\b._\b3  _\bD_\be_\bf_\bi_\bn_\bi_\bn_\bg_\b/_\bU_\bs_\bi_\bn_\bg _\ba_\bl_\bi_\ba_\bs_\be_\bs
1130
1131        Usage: alias _\bk_\be_\by _\ba_\bd_\bd_\br_\be_\bs_\bs [ , _\ba_\bd_\bd_\br_\be_\bs_\bs, ... ]
1132
1133        It's usually very cumbersome to remember or type out the address of someone you
1134        are communicating with.  Mutt-ng allows you to create ``aliases'' which map a
1135        short string to a full address.
1136
1137        N\bNo\bot\bte\be:\b: if you want to create an alias for a group (by specifying more than one
1138        address), you m\bmu\bus\bst\bt separate the addresses with a comma (``,'').
1139
1140        To remove an alias or aliases (``*'' means all aliases):
1141
1142        unalias [ * | _\bk_\be_\by _\b._\b._\b. ]
1143
1144             alias muttdude me@cs.hmc.edu (Michael Elkins)
1145             alias theguys manny, moe, jack
1146
1147        Unlike other mailers, Mutt-ng doesn't require aliases to be defined in a spe-
1148        cial file.  The alias command can appear anywhere in a configuration file, as
1149        long as this file is _\bs_\bo_\bu_\br_\bc_\be_\bd (section 3.28  , page 43).  Consequently, you can
1150        have multiple alias files, or you can have all aliases defined in your muttrc.
1151
1152        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
1153        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)
1154        variable (which is ~/.muttrc by default). This file is not special either, in
1155        the sense that Mutt-ng will happily append aliases to any file, but in order
1156        for the new aliases to take effect you need to explicitly _\bs_\bo_\bu_\br_\bc_\be (section
1157        3.28  , page 43) this file too.
1158
1159        The Mutt Next Generation E-Mail Client                                       24
1160
1161        For example:
1162
1163             source /usr/local/share/Mutt-ng.aliases
1164             source ~/.mail_aliases
1165             set alias_file=~/.mail_aliases
1166
1167        To use aliases, you merely use the alias at any place in mutt where mutt
1168        prompts for addresses, such as the _\bT_\bo_\b: or _\bC_\bc_\b: prompt.  You can also enter
1169        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
1170        (section 7.4.57  , page 100) variable set.
1171
1172        In addition, at the various address prompts, you can use the tab character to
1173        expand a partial alias to the full alias.  If there are multiple matches, mutt
1174        will bring up a menu with the matching aliases.  In order to be presented with
1175        the full list of aliases, you must hit tab with out a partial alias, such as at
1176        the beginning of the prompt or after a comma denoting multiple addresses.
1177
1178        In the alias menu, you can select as many aliases as you want with the _\bs_\be_\bl_\be_\bc_\bt_\b-
1179        _\be_\bn_\bt_\br_\by key (default: RET), and use the _\be_\bx_\bi_\bt key (default: q) to return to the
1180        address prompt.
1181
1182        _\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
1183
1184        Usage: bind _\bm_\ba_\bp _\bk_\be_\by _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn
1185
1186        This command allows you to change the default key bindings (operation invoked
1187        when pressing a key).
1188
1189        _\bm_\ba_\bp specifies in which menu the binding belongs.  Multiple maps may be speci-
1190        fied by separating them with commas (no additional whitespace is allowed). The
1191        currently defined maps are:
1192
1193              generic
1194                    This is not a real menu, but is used as a fallback for all of the
1195                    other menus except for the pager and editor modes.  If a key is not
1196                    defined in another menu, Mutt-ng will look for a binding to use in
1197                    this menu.  This allows you to bind a key to a certain function in
1198                    multiple menus instead of having multiple bind statements to accom-
1199                    plish the same task.
1200
1201              alias
1202                    The alias menu is the list of your personal aliases as defined in
1203                    your muttrc.  It is the mapping from a short alias name to the full
1204                    email address(es) of the recipient(s).
1205
1206              attach
1207                    The attachment menu is used to access the attachments on received
1208                    messages.
1209
1210        The Mutt Next Generation E-Mail Client                                       25
1211
1212              browser
1213                    The browser is used for both browsing the local directory struc-
1214                    ture, and for listing all of your incoming mailboxes.
1215
1216              editor
1217                    The editor is the line-based editor the user enters text data.
1218
1219              index
1220                    The index is the list of messages contained in a mailbox.
1221
1222              compose
1223                    The compose menu is the screen used when sending a new message.
1224
1225              pager
1226                    The pager is the mode used to display message/attachment data, and
1227                    help listings.
1228
1229              pgp
1230                    The pgp menu is used to select the OpenPGP keys used for encrypting
1231                    outgoing messages.
1232
1233              postpone
1234                    The postpone menu is similar to the index menu, except is used when
1235                    recalling a message the user was composing, but saved until later.
1236
1237        _\bk_\be_\by is the key (or key sequence) you wish to bind.  To specify a control char-
1238        acter, use the sequence _\b\_\bC_\bx, where _\bx is the letter of the control character
1239        (for example, to specify control-A use ``\Ca'').  Note that the case of _\bx as
1240        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
1241        alternative form is to specify the key as a three digit octal number prefixed
1242        with a ``\'' (for example _\b\_\b1_\b7_\b7 is equivalent to _\b\_\bc_\b?).
1243
1244        In addition, _\bk_\be_\by may consist of:
1245
1246        The Mutt Next Generation E-Mail Client                                       26
1247
1248             \t              tab
1249             <tab>           tab
1250             <backtab>       backtab / shift-tab
1251             \r              carriage return
1252             \n              newline
1253             \e              escape
1254             <esc>           escape
1255             <up>            up arrow
1256             <down>          down arrow
1257             <left>          left arrow
1258             <right>         right arrow
1259             <pageup>        Page Up
1260             <pagedown>      Page Down
1261             <backspace>     Backspace
1262             <delete>        Delete
1263             <insert>        Insert
1264             <enter>         Enter
1265             <return>        Return
1266             <home>          Home
1267             <end>           End
1268             <space>         Space bar
1269             <f1>            function key 1
1270             <f10>           function key 10
1271
1272        _\bk_\be_\by does not need to be enclosed in quotes unless it contains a space (`` '').
1273
1274        _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn specifies which action to take when _\bk_\be_\by is pressed.  For a complete
1275        list of functions, see the _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be (section 7.5  , page 171).  The special
1276        function noop unbinds the specified key sequence.
1277
1278        _\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
1279
1280        Usage: charset-hook _\ba_\bl_\bi_\ba_\bs _\bc_\bh_\ba_\br_\bs_\be_\bt
1281
1282        Usage: iconv-hook _\bc_\bh_\ba_\br_\bs_\be_\bt _\bl_\bo_\bc_\ba_\bl_\b-_\bc_\bh_\ba_\br_\bs_\be_\bt
1283
1284        The charset-hook command defines an alias for a character set.  This is useful
1285        to properly display messages which are tagged with a character set name not
1286        known to mutt.
1287
1288        The iconv-hook command defines a system-specific name for a character set.
1289        This is helpful when your systems character conversion library insists on using
1290        strange, system-specific names for character sets.
1291
1292        _\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
1293
1294        Usage: folder-hook [!]_\br_\be_\bg_\be_\bx_\bp _\bc_\bo_\bm_\bm_\ba_\bn_\bd
1295
1296        It is often desirable to change settings based on which mailbox you are
1297
1298        The Mutt Next Generation E-Mail Client                                       27
1299
1300        reading.  The folder-hook command provides a method by which you can execute
1301        any configuration command.  _\br_\be_\bg_\be_\bx_\bp is a regular expression specifying in which
1302        mailboxes to execute _\bc_\bo_\bm_\bm_\ba_\bn_\bd before loading.  If a mailbox matches multiple
1303        folder-hook's, they are executed in the order given in the muttrc.
1304
1305        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
1306        159) at the beginning of the pattern, you must place it inside of double or
1307        single quotes in order to distinguish it from the logical _\bn_\bo_\bt operator for the
1308        expression.
1309
1310        Note that the settings are _\bn_\bo_\bt restored when you leave the mailbox.  For exam-
1311        ple, a command action to perform is to change the sorting method based upon the
1312        mailbox being read:
1313
1314             folder-hook mutt set sort=threads
1315
1316        However, the sorting method is not restored to its previous value when reading
1317        a different mailbox.  To specify a _\bd_\be_\bf_\ba_\bu_\bl_\bt command, use the pattern ``.'':
1318
1319             folder-hook . set sort=date-sent
1320
1321        _\b3_\b._\b7  _\bK_\be_\by_\bb_\bo_\ba_\br_\bd _\bm_\ba_\bc_\br_\bo_\bs
1322
1323        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 ]
1324
1325        Macros are useful when you would like a single key to perform a series of
1326        actions.  When you press _\bk_\be_\by in menu _\bm_\be_\bn_\bu, Mutt-ng will behave as if you had
1327        typed _\bs_\be_\bq_\bu_\be_\bn_\bc_\be.  So if you have a common sequence of commands you type, you can
1328        create a macro to execute those commands with a single key.
1329
1330        _\bm_\be_\bn_\bu is the _\bm_\ba_\bp (section 3.4  , page 24) which the macro will be bound.  Multi-
1331        ple maps may be specified by separating multiple menu arguments by commas.
1332        Whitespace may not be used in between the menu arguments and the commas sepa-
1333        rating them.
1334
1335        _\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
1336        3.4  , page 24).  There are some additions however.  The first is that control
1337        characters in _\bs_\be_\bq_\bu_\be_\bn_\bc_\be can also be specified as _\b^_\bx.  In order to get a caret
1338        (`^'') you need to use _\b^_\b^.  Secondly, to specify a certain key such as _\bu_\bp or to
1339        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
1340        _\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
1341        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
1342        7.5  , page 171).
1343
1344        The advantage with using function names directly is that the macros will work
1345        regardless of the current key bindings, so they are not dependent on the user
1346        having particular key definitions.  This makes them more robust and portable,
1347        and also facilitates defining of macros in files used by more than one user
1348
1349        The Mutt Next Generation E-Mail Client                                       28
1350
1351        (eg. the system Muttngrc).
1352
1353        Optionally you can specify a descriptive text after _\bs_\be_\bq_\bu_\be_\bn_\bc_\be, which is shown in
1354        the help screens.
1355
1356        N\bNo\bot\bte\be:\b: Macro definitions (if any) listed in the help screen(s), are silently
1357        truncated at the screen width, and are not wrapped.
1358
1359        _\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
1360
1361        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 ]
1362
1363        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
1364
1365        Usage: uncolor index _\bp_\ba_\bt_\bt_\be_\br_\bn [ _\bp_\ba_\bt_\bt_\be_\br_\bn ...  ]
1366
1367        If your terminal supports color, you can spice up Mutt-ng by creating your own
1368        color scheme.  To define the color of an object (type of information), you must
1369        specify both a foreground color a\ban\bnd\bd a background color (it is not possible to
1370        only specify one or the other).
1371
1372        _\bo_\bb_\bj_\be_\bc_\bt can be one of:
1373
1374           +\bo attachment
1375
1376           +\bo body (match _\br_\be_\bg_\be_\bx_\bp in the body of messages)
1377
1378           +\bo bold (highlighting bold patterns in the body of messages)
1379
1380           +\bo error (error messages printed by Mutt-ng)
1381
1382           +\bo header (match _\br_\be_\bg_\be_\bx_\bp in the message header)
1383
1384           +\bo hdrdefault (default color of the message header in the pager)
1385
1386           +\bo index (match _\bp_\ba_\bt_\bt_\be_\br_\bn in the message index)
1387
1388           +\bo indicator (arrow or bar used to indicate the current item in a menu)
1389
1390           +\bo markers (the ``+'' markers at the beginning of wrapped lines in the pager)
1391
1392           +\bo message (informational messages)
1393
1394           +\bo normal
1395
1396           +\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
1397             body of a message)
1398
1399           +\bo quoted1, quoted2, ..., quotedN\bN (higher levels of quoting)
1400
1401           +\bo search (highlighting of words in the pager)
1402
1403        The Mutt Next Generation E-Mail Client                                       29
1404
1405           +\bo signature
1406
1407           +\bo status (mode lines used to display info about the mailbox or message)
1408
1409           +\bo tilde (the ``~'' used to pad blank lines in the pager)
1410
1411           +\bo tree (thread tree drawn in the message index and attachment menu)
1412
1413           +\bo underline (highlighting underlined patterns in the body of messages)
1414
1415        _\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:
1416
1417           +\bo white
1418
1419           +\bo black
1420
1421           +\bo green
1422
1423           +\bo magenta
1424
1425           +\bo blue
1426
1427           +\bo cyan
1428
1429           +\bo yellow
1430
1431           +\bo red
1432
1433           +\bo default
1434
1435           +\bo color_\bx
1436
1437        _\bf_\bo_\br_\be_\bg_\br_\bo_\bu_\bn_\bd can optionally be prefixed with the keyword bright to make the fore-
1438        ground color boldfaced (e.g., brightred).
1439
1440        If your terminal supports it, the special keyword _\bd_\be_\bf_\ba_\bu_\bl_\bt can be used as a
1441        transparent color.  The value _\bb_\br_\bi_\bg_\bh_\bt_\bd_\be_\bf_\ba_\bu_\bl_\bt is also valid.  If Mutt-ng is
1442        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-
1443        ment variable to the default colors of your terminal for this to work; for
1444        example (for Bourne-like shells):
1445
1446             set COLORFGBG="green;black"
1447             export COLORFGBG
1448
1449        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
1450        instead of _\bw_\bh_\bi_\bt_\be and _\by_\be_\bl_\bl_\bo_\bw when setting this variable.
1451
1452        N\bNo\bot\bte\be:\b: The uncolor command can be applied to the index object only.  It removes
1453        entries from the list. You m\bmu\bus\bst\bt specify the same pattern specified in the color
1454        command for it to be removed.  The pattern ``*'' is a special token which means
1455        to clear the color index list of all entries.
1456
1457        The Mutt Next Generation E-Mail Client                                       30
1458
1459        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
1460        number of colors supported by your terminal).  This is useful when you remap
1461        the colors for your display (for example by changing the color associated with
1462        _\bc_\bo_\bl_\bo_\br_\b2 for your xterm), since color names may then lose their normal meaning.
1463
1464        If your terminal does not support color, it is still possible change the video
1465        attributes through the use of the ``mono'' command:
1466
1467        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 ]
1468
1469        Usage: mono index _\ba_\bt_\bt_\br_\bi_\bb_\bu_\bt_\be _\bp_\ba_\bt_\bt_\be_\br_\bn
1470
1471        Usage: unmono index _\bp_\ba_\bt_\bt_\be_\br_\bn [ _\bp_\ba_\bt_\bt_\be_\br_\bn ...  ]
1472
1473        where _\ba_\bt_\bt_\br_\bi_\bb_\bu_\bt_\be is one of the following:
1474
1475           +\bo none
1476
1477           +\bo bold
1478
1479           +\bo underline
1480
1481           +\bo reverse
1482
1483           +\bo standout
1484
1485        _\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
1486
1487        Usage: [un]ignore _\bp_\ba_\bt_\bt_\be_\br_\bn [ _\bp_\ba_\bt_\bt_\be_\br_\bn ... ]
1488
1489        Messages often have many header fields added by automatic processing systems,
1490        or which may not seem useful to display on the screen.  This command allows you
1491        to specify header fields which you don't normally want to see.
1492
1493        You do not need to specify the full header field name.  For example, ``ignore
1494        content-'' will ignore all header fields that begin with the pattern ``con-
1495        tent-''. ``ignore *'' will ignore all headers.
1496
1497        To remove a previously added token from the list, use the ``unignore'' command.
1498        The ``unignore'' command will make Mutt-ng display headers with the given pat-
1499        tern.  For example, if you do ``ignore x-'' it is possible to ``unignore x-
1500        mailer''.
1501
1502        ``unignore *'' will remove all tokens from the ignore list.
1503
1504        For example:
1505
1506             # Sven's draconian header weeding
1507             ignore *
1508             unignore from date subject to cc
1509             unignore organization organisation x-mailer: x-newsreader: x-mailing-list:
1510             unignore posted-to:
1511
1512        The Mutt Next Generation E-Mail Client                                       31
1513
1514        _\b3_\b._\b1_\b0  _\bA_\bl_\bt_\be_\br_\bn_\ba_\bt_\bi_\bv_\be _\ba_\bd_\bd_\br_\be_\bs_\bs_\be_\bs
1515
1516        Usage: [un]alternates _\br_\be_\bg_\be_\bx_\bp [ _\br_\be_\bg_\be_\bx_\bp ... ]
1517
1518        With various functions, mutt will treat messages differently, depending on
1519        whether you sent them or whether you received them from someone else.  For
1520        instance, when replying to a message that you sent to a different party, mutt
1521        will automatically suggest to send the response to the original message's
1522        recipients -- responding to yourself won't make much sense in many cases.  (See
1523        _\b$_\br_\be_\bp_\bl_\by_\b__\bt_\bo (section 7.4.237  , page 144).)
1524
1525        Many users receive e-mail under a number of different addresses. To fully use
1526        mutt's features here, the program must be able to recognize what e-mail
1527        addresses you receive mail under. That's the purpose of the alternates command:
1528        It takes a list of regular expressions, each of which can identify an address
1529        under which you receive e-mail.
1530
1531        The unalternates command can be used to write exceptions to alternates pat-
1532        terns. If an address matches something in an alternates command, but you none-
1533        theless do not think it is from you, you can list a more precise pattern under
1534        an unalternates command.
1535
1536        To remove a regular expression from the alternates list, use the unalternates
1537        command with exactly the same _\br_\be_\bg_\be_\bx_\bp.  Likewise, if the _\br_\be_\bg_\be_\bx_\bp for a alternates
1538        command matches an entry on the unalternates list, that unalternates entry will
1539        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
1540        will be removed.
1541
1542        _\b3_\b._\b1_\b1  _\bF_\bo_\br_\bm_\ba_\bt _\b= _\bF_\bl_\bo_\bw_\be_\bd
1543
1544        _\b3_\b._\b1_\b1_\b._\b1  _\bI_\bn_\bt_\br_\bo_\bd_\bu_\bc_\bt_\bi_\bo_\bn
1545
1546        Mutt-ng contains support for so-called format=flowed messages.  In the begin-
1547        ning of email, each message had a fixed line width, and it was enough for dis-
1548        playing them on fixed-size terminals. But times changed, and nowadays hardly
1549        anybody still uses fixed-size terminals: more people nowaydays use graphical
1550        user interfaces, with dynamically resizable windows. This led to the demand of
1551        a new email format that makes it possible for the email client to make the
1552        email look nice in a resizable window without breaking quoting levels and cre-
1553        ating an incompatible email format that can also be displayed nicely on old
1554        fixed-size terminals.
1555
1556        For introductory information on format=flowed messages, see
1557        <http://www.joeclark.org/ffaq.html>.
1558
1559        _\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
1560
1561        When you receive emails that are marked as format=flowed messages, and is for-
1562        matted correctly, mutt-ng will try to reformat the message to optimally fit on
1563        your terminal. If you want a fixed margin on the right side of your terminal,
1564        you can set the following:
1565
1566        The Mutt Next Generation E-Mail Client                                       32
1567
1568                 set wrapmargin = 10
1569
1570        The code above makes the line break 10 columns before the right side of the
1571        terminal.
1572
1573        If your terminal is so wide that the lines are embarrassingly long, you can
1574        also set a maximum line length:
1575
1576                 set max_line_length = 120
1577
1578        The example above will give you lines not longer than 120 characters.
1579
1580        When you view at format=flowed messages, you will often see the quoting hierar-
1581        chy like in the following example:
1582
1583                 >Bill, can you please send last month's progress report to Mr.
1584                 >Morgan? We also urgently need the cost estimation for the new
1585                 >production server that we want to set up before our customer's
1586                 >project will go live.
1587
1588        This obviously doesn't look very nice, and it makes it very hard to differenti-
1589        ate between text and quoting character. The solution is to configure mutt-ng to
1590        "stuff" the quoting:
1591
1592                 set stuff_quoted
1593
1594        This will lead to a nicer result that is easier to read:
1595
1596                 > Bill, can you please send last month's progress report to Mr.
1597                 > Morgan? We also urgently need the cost estimation for the new
1598                 > production server that we want to set up before our customer's
1599                 > project will go live.
1600
1601        _\b3_\b._\b1_\b1_\b._\b3  _\bS_\be_\bn_\bd_\bi_\bn_\bg
1602
1603        If you want mutt-ng to send emails with format=flowed set, you need to explic-
1604        itly set it:
1605
1606                 set text_flowed
1607
1608        The Mutt Next Generation E-Mail Client                                       33
1609
1610        Additionally, you have to use an editor which supports writing format=flowed-
1611        conforming emails. For vim, this is done by adding w to the formatoptions (see
1612        :h formatoptions and :h fo-table) when writing emails.
1613
1614        Also note that _\bf_\bo_\br_\bm_\ba_\bt_\b=_\bf_\bl_\bo_\bw_\be_\bd knows about ``space-stuffing'', that is, when
1615        sending messages, some kinds of lines have to be indented with a single space
1616        on the sending side. On the receiving side, the first space (if any) is
1617        removed. As a consequence and in addition to the above simple setting, please
1618        keep this in mind when making manual formattings within the editor. Also note
1619        that mutt-ng currently violates the standard (RfC 3676) as it does not space-
1620        stuff lines starting with:
1621
1622           +\bo > This is _\bn_\bo_\bt the quote character but a right angle used for other reasons
1623
1624           +\bo From with a trailing space.
1625
1626           +\bo just a space for formatting reasons
1627
1628        Please make sure that you manually prepend a space to each of them.
1629
1630        _\b3_\b._\b1_\b1_\b._\b4  _\bA_\bd_\bd_\bi_\bt_\bi_\bo_\bn_\ba_\bl _\bN_\bo_\bt_\be_\bs
1631
1632            "
1633
1634         For completeness, the _\b$_\bd_\be_\bl_\be_\bt_\be_\b__\bs_\bp_\ba_\bc_\be (section 7.4.49  , page 98) variable pro-
1635        vides the mechanism to generate a DelSp=yes parameter on _\bo_\bu_\bt_\bg_\bo_\bi_\bn_\bg messages.
1636        According to the standard, clients receiving a format=flowed messages should
1637        delete the last space of a flowed line but still interpret the line as flowed.
1638        Because flowed lines usually contain only one space at the end, this parameter
1639        would make the receiving client concatenate the last word of the previous with
1640        the first of the current line _\bw_\bi_\bt_\bh_\bo_\bu_\bt a space. This makes ordinary text unread-
1641        able and is intended for languages rarely using spaces. So please use this set-
1642        ting only if you're sure what you're doing.
1643
1644        _\b3_\b._\b1_\b2  _\bM_\ba_\bi_\bl_\bi_\bn_\bg _\bl_\bi_\bs_\bt_\bs
1645
1646        Usage: [un]lists _\br_\be_\bg_\be_\bx_\bp [ _\br_\be_\bg_\be_\bx_\bp ... ]
1647
1648        Usage: [un]subscribe _\br_\be_\bg_\be_\bx_\bp [ _\br_\be_\bg_\be_\bx_\bp ... ]
1649
1650        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  ,
1651        page 58).  In order to take advantage of them, you must specify which addresses
1652        belong to mailing lists, and which mailing lists you are subscribed to.  Once
1653        you have done this, the _\bl_\bi_\bs_\bt_\b-_\br_\be_\bp_\bl_\by (section 2.5.4  , page 12) function will
1654        work for all known lists.  Additionally, when you send a message to a sub-
1655        scribed list, mutt will add a Mail-Followup-To header to tell other users' mail
1656        user agents not to send copies of replies to your personal address.   Note that
1657        the Mail-Followup-To header is a non-standard extension which is not supported
1658        by all mail user agents.  Adding it is not bullet-proof against receiving per-
1659        sonal CCs of list messages.  Also note that the generation of the Mail-Fol-
1660        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)
1661        configuration variable.
1662
1663        The Mutt Next Generation E-Mail Client                                       34
1664
1665        More precisely, Mutt-ng maintains lists of patterns for the addresses of known
1666        and subscribed mailing lists.  Every subscribed mailing list is known. To mark
1667        a mailing list as known, use the ``lists'' command.  To mark it as subscribed,
1668        use ``subscribe''.
1669
1670        You can use regular expressions with both commands.  To mark all messages sent
1671        to a specific bug report's address on mutt's bug tracking system as list mail,
1672        for instance, you could say ``subscribe [0-9]*@bugs.guug.de''.  Often, it's
1673        sufficient to just give a portion of the list's e-mail address.
1674
1675        Specify as much of the address as you need to to remove ambiguity.  For exam-
1676        ple, if you've subscribed to the Mutt-ng mailing list, you will receive mail
1677        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
1678        list, you could add ``lists mutt-users'' to your initialization file.  To tell
1679        mutt that you are subscribed to it, add ``subscribe mutt-users'' to your ini-
1680        tialization file instead.  If you also happen to get mail from someone whose
1681        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-
1682        users@mutt\\.org'' or ``subscribe mutt-users@mutt\\.org'' to match only mail
1683        from the actual list.
1684
1685        The ``unlists'' command is used to remove a token from the list of known and
1686        subscribed mailing-lists. Use ``unlists *'' to remove all tokens.
1687
1688        To remove a mailing list from the list of subscribed mailing lists, but keep it
1689        on the list of known mailing lists, use ``unsubscribe''.
1690
1691        _\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
1692
1693        Usage: mbox-hook [!]_\bp_\ba_\bt_\bt_\be_\br_\bn _\bm_\ba_\bi_\bl_\bb_\bo_\bx
1694
1695        This command is used to move read messages from a specified mailbox to a dif-
1696        ferent mailbox automatically when you quit or change folders.  _\bp_\ba_\bt_\bt_\be_\br_\bn is a
1697        regular expression specifying the mailbox to treat as a ``spool'' mailbox and
1698        _\bm_\ba_\bi_\bl_\bb_\bo_\bx specifies where mail should be saved when read.
1699
1700        Unlike some of the other _\bh_\bo_\bo_\bk commands, only the _\bf_\bi_\br_\bs_\bt matching pattern is used
1701        (it is not possible to save read mail in more than a single mailbox).
1702
1703        _\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
1704
1705        Usage: [un]mailboxes [!]_\bf_\bi_\bl_\be_\bn_\ba_\bm_\be [ _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be ... ]
1706
1707        This command specifies folders which can receive mail and which will be checked
1708        for new messages.  By default, the main menu status bar displays how many of
1709        these folders have new messages.
1710
1711        When changing folders, pressing _\bs_\bp_\ba_\bc_\be will cycle through folders with new mail.
1712
1713        Pressing TAB in the directory browser will bring up a menu showing the files
1714        specified by the mailboxes command, and indicate which contain new messages.
1715
1716        The Mutt Next Generation E-Mail Client                                       35
1717
1718        Mutt-ng will automatically enter this mode when invoked from the command line
1719        with the -y option.
1720
1721        The ``unmailboxes'' command is used to remove a token from the list of folders
1722        which receive mail. Use ``unmailboxes *'' to remove all tokens.
1723
1724        N\bNo\bot\bte\be:\b: new mail is detected by comparing the last modification time to the last
1725        access time.  Utilities like biff or frm or any other program which accesses
1726        the mailbox might cause Mutt-ng to never detect new mail for that mailbox if
1727        they do not properly reset the access time.  Backup tools are another common
1728        reason for updated access times.
1729
1730        N\bNo\bot\bte\be:\b: the filenames in the mailboxes command are resolved when the command is
1731        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
1732        58) (such as ``='' and ``!''), any variable definition that affect these char-
1733        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
1734        7.4.301  , page 159)) should be executed before the mailboxes command.
1735
1736        _\b3_\b._\b1_\b5  _\bU_\bs_\be_\br _\bd_\be_\bf_\bi_\bn_\be_\bd _\bh_\be_\ba_\bd_\be_\br_\bs
1737
1738        Usage:
1739
1740        my_hdr _\bs_\bt_\br_\bi_\bn_\bg
1741
1742        unmy_hdr _\bf_\bi_\be_\bl_\bd [ _\bf_\bi_\be_\bl_\bd ... ]
1743
1744        The ``my_hdr'' command allows you to create your own header fields which will
1745        be added to every message you send.
1746
1747        For example, if you would like to add an ``Organization:'' header field to all
1748        of your outgoing messages, you can put the command
1749
1750             my_hdr Organization: A Really Big Company, Anytown, USA
1751
1752        in your .muttrc.
1753
1754        N\bNo\bot\bte\be:\b:  space characters are _\bn_\bo_\bt allowed between the keyword and the colon
1755        (``:'').  The standard for electronic mail (RFC822) says that space is illegal
1756        there, so Mutt-ng enforces the rule.
1757
1758        If you would like to add a header field to a single message, you should either
1759        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-
1760        _\bh_\be_\ba_\bd_\be_\br_\bs function (default: ``E'') in the send-menu so that you can edit the
1761        header of your message along with the body.
1762
1763        To remove user defined header fields, use the ``unmy_hdr'' command.  You may
1764        specify an asterisk (``*'') to remove all header fields, or the fields to
1765        remove.  For example, to remove all ``To'' and ``Cc'' header fields, you could
1766        use:
1767
1768        The Mutt Next Generation E-Mail Client                                       36
1769
1770             unmy_hdr to cc
1771
1772        _\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
1773
1774        Usage: hdr_order _\bh_\be_\ba_\bd_\be_\br_\b1 _\bh_\be_\ba_\bd_\be_\br_\b2 _\bh_\be_\ba_\bd_\be_\br_\b3
1775
1776        With this command, you can specify an order in which mutt will attempt to
1777        present headers to you when viewing messages.
1778
1779        ``unhdr_order *'' will clear all previous headers from the order list, thus
1780        removing the header order effects set by the system-wide startup file.
1781
1782             hdr_order From Date: From: To: Cc: Subject:
1783
1784        _\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
1785
1786        Usage: save-hook [!]_\bp_\ba_\bt_\bt_\be_\br_\bn _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be
1787
1788        This command is used to override the default filename used when saving mes-
1789        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:
1790        an address matching _\br_\be_\bg_\be_\bx_\bp or if you are the author and the message is
1791        addressed _\bt_\bo_\b: something matching _\br_\be_\bg_\be_\bx_\bp.
1792
1793        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
1794        exact format of _\bp_\ba_\bt_\bt_\be_\br_\bn.
1795
1796        Examples:
1797
1798             save-hook me@(turing\\.)?cs\\.hmc\\.edu$ +elkins
1799             save-hook aol\\.com$ +spam
1800
1801        Also see the _\bf_\bc_\bc_\b-_\bs_\ba_\bv_\be_\b-_\bh_\bo_\bo_\bk (section 3.19  , page 37) command.
1802
1803        _\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
1804
1805        Usage: fcc-hook [!]_\bp_\ba_\bt_\bt_\be_\br_\bn _\bm_\ba_\bi_\bl_\bb_\bo_\bx
1806
1807        This command is used to save outgoing mail in a mailbox other than _\b$_\br_\be_\bc_\bo_\br_\bd
1808        (section 7.4.234  , page 143).  Mutt-ng searches the initial list of message
1809        recipients for the first matching _\br_\be_\bg_\be_\bx_\bp and uses _\bm_\ba_\bi_\bl_\bb_\bo_\bx as the default Fcc:
1810        mailbox.  If no match is found the message will be saved to _\b$_\br_\be_\bc_\bo_\br_\bd (section
1811        7.4.234  , page 143) mailbox.
1812
1813        The Mutt Next Generation E-Mail Client                                       37
1814
1815        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
1816        exact format of _\bp_\ba_\bt_\bt_\be_\br_\bn.
1817
1818        Example: fcc-hook [@.]aol\\.com$ +spammers
1819
1820        The above will save a copy of all messages going to the aol.com domain to the
1821        `+spammers' mailbox by default.  Also see the _\bf_\bc_\bc_\b-_\bs_\ba_\bv_\be_\b-_\bh_\bo_\bo_\bk (section 3.19  ,
1822        page 37) command.
1823
1824        _\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
1825
1826        Usage: fcc-save-hook [!]_\bp_\ba_\bt_\bt_\be_\br_\bn _\bm_\ba_\bi_\bl_\bb_\bo_\bx
1827
1828        This command is a shortcut, equivalent to doing both a _\bf_\bc_\bc_\b-_\bh_\bo_\bo_\bk (section
1829        3.18  , page 36) and a _\bs_\ba_\bv_\be_\b-_\bh_\bo_\bo_\bk (section 3.17  , page 36) with its arguments.
1830
1831        _\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
1832
1833        Usage: reply-hook [!]_\bp_\ba_\bt_\bt_\be_\br_\bn _\bc_\bo_\bm_\bm_\ba_\bn_\bd
1834
1835        Usage: send-hook [!]_\bp_\ba_\bt_\bt_\be_\br_\bn _\bc_\bo_\bm_\bm_\ba_\bn_\bd
1836
1837        Usage: send2-hook [!]_\bp_\ba_\bt_\bt_\be_\br_\bn _\bc_\bo_\bm_\bm_\ba_\bn_\bd
1838
1839        These commands can be used to execute arbitrary configuration commands based
1840        upon recipients of the message.  _\bp_\ba_\bt_\bt_\be_\br_\bn is a regular expression matching the
1841        desired address.  _\bc_\bo_\bm_\bm_\ba_\bn_\bd is executed when _\br_\be_\bg_\be_\bx_\bp matches recipients of the
1842        message.
1843
1844        reply-hook is matched against the message you are _\br_\be_\bp_\bl_\by_\bi_\bn_\bg t\bto\bo, instead of the
1845        message you are _\bs_\be_\bn_\bd_\bi_\bn_\bg.  send-hook is matched against all messages, both _\bn_\be_\bw
1846        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
1847        the order specified in the users's configuration file.
1848
1849        send2-hook is matched every time a message is changed, either by editing it, or
1850        by using the compose menu to change its recipients or subject.  send2-hook is
1851        executed after send-hook, and can, e.g., be used to set parameters such as the
1852        _\b$_\bs_\be_\bn_\bd_\bm_\ba_\bi_\bl (section 7.4.251  , page 147) variable depending on the message's
1853        sender address.
1854
1855        For each type of send-hook or reply-hook, when multiple matches occur, commands
1856        are executed in the order they are specified in the muttrc (for that type of
1857        hook).
1858
1859        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
1860        exact format of _\bp_\ba_\bt_\bt_\be_\br_\bn.
1861
1862        Example: send-hook mutt 'set mime_forward signature='''
1863
1864        Another typical use for this command is to change the values of the
1865
1866        The Mutt Next Generation E-Mail Client                                       38
1867
1868        _\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
1869        150) and _\b$_\bl_\bo_\bc_\ba_\bl_\be (section 7.4.117  , page 116) variables in order to change the
1870        language of the attributions and signatures based upon the recipients.
1871
1872        N\bNo\bot\bte\be:\b: the send-hook's are only executed ONCE after getting the initial list of
1873        recipients.  Adding a recipient after replying or editing the message will NOT
1874        cause any send-hook to be executed.  Also note that my_hdr commands which mod-
1875        ify recipient headers, or the message's subject, don't have any effect on the
1876        current message when executed from a send-hook.
1877
1878        _\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
1879
1880        Usage: message-hook [!]_\bp_\ba_\bt_\bt_\be_\br_\bn _\bc_\bo_\bm_\bm_\ba_\bn_\bd
1881
1882        This command can be used to execute arbitrary configuration commands before
1883        viewing or formatting a message based upon information about the message.  _\bc_\bo_\bm_\b-
1884        _\bm_\ba_\bn_\bd is executed if the _\bp_\ba_\bt_\bt_\be_\br_\bn matches the message to be displayed. When mul-
1885        tiple matches occur, commands are executed in the order they are specified in
1886        the muttrc.
1887
1888        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
1889        exact format of _\bp_\ba_\bt_\bt_\be_\br_\bn.
1890
1891        Example:
1892
1893             message-hook ~A 'set pager=builtin'
1894             message-hook '~f freshmeat-news' 'set pager="less \"+/^  subject: .*\""'
1895
1896        _\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
1897
1898        Usage: crypt-hook _\bp_\ba_\bt_\bt_\be_\br_\bn _\bk_\be_\by_\bi_\bd
1899
1900        When encrypting messages with PGP or OpenSSL, you may want to associate a cer-
1901        tain key with a given e-mail address automatically, either because the recipi-
1902        ent's public key can't be deduced from the destination address, or because, for
1903        some reasons, you need to override the key Mutt-ng would normally use.  The
1904        crypt-hook command provides a method by which you can specify the ID of the
1905        public key to be used when encrypting messages to a certain recipient.
1906
1907        The meaning of "key id" is to be taken broadly in this context:  You can either
1908        put a numerical key ID here, an e-mail address, or even just a real name.
1909
1910        _\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
1911
1912        Usage: push _\bs_\bt_\br_\bi_\bn_\bg
1913
1914        This command adds the named string to the keyboard buffer. The string may
1915
1916        The Mutt Next Generation E-Mail Client                                       39
1917
1918        contain control characters, key names and function names like the sequence
1919        string in the _\bm_\ba_\bc_\br_\bo (section 3.7  , page 27) command. You may use it to auto-
1920        matically run a sequence of commands at startup, or when entering certain fold-
1921        ers.
1922
1923        _\b3_\b._\b2_\b4  _\bE_\bx_\be_\bc_\bu_\bt_\bi_\bn_\bg _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn_\bs
1924
1925        Usage: exec _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn [ _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn ... ]
1926
1927        This command can be used to execute any function. Functions are listed in the
1928        _\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
1929        to ``push <function>''.
1930
1931        _\b3_\b._\b2_\b5  _\bM_\be_\bs_\bs_\ba_\bg_\be _\bS_\bc_\bo_\br_\bi_\bn_\bg
1932
1933        Usage: score _\bp_\ba_\bt_\bt_\be_\br_\bn _\bv_\ba_\bl_\bu_\be
1934
1935        Usage: unscore _\bp_\ba_\bt_\bt_\be_\br_\bn [ _\bp_\ba_\bt_\bt_\be_\br_\bn ... ]
1936
1937        In situations where you have to cope with a lot of emails, e.g.  when you read
1938        many different mailing lists, and take part in discussions, it is always useful
1939        to have the important messages marked and the annoying messages or the ones
1940        that you aren't interested in deleted. For this purpose, mutt-ng features a
1941        mechanism called ``scoring''.
1942
1943        When you use scoring, every message has a base score of 0. You can then use the
1944        score command to define patterns and a positive or negative value associated
1945        with it. When a pattern matches a message, the message's score will be raised
1946        or lowered by the amount of the value associated with the pattern.
1947
1948             score "~f nion@muttng\.org" 50
1949             score "~f @sco\.com" -100
1950
1951        If the pattern matches, it is also possible to set the score value of the cur-
1952        rent message to a certain value and then stop evaluation:
1953
1954             score "~f santaclaus@northpole\.int" =666
1955
1956        What is important to note is that negative score values will be rounded up to
1957        0.
1958
1959        To make scoring actually useful, the score must be applied in some way.  That's
1960        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:
1961
1962           +\bo flag threshold: when a message has a score value equal or higher than the
1963             flag threshold, it will be flagged.
1964
1965        The Mutt Next Generation E-Mail Client                                       40
1966
1967           +\bo read threshold: when a message has a score value equal or lower than the
1968             read threshold, it will be marked as read.
1969
1970           +\bo delete threshold: when a message has a score value equal or lower than the
1971             delete threshold, it will be marked as deleted.
1972
1973        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-
1974        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),
1975        _\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,
1976        _\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
1977        (section 7.4.247  , page 146) are set to -1, which means that in the default
1978        threshold configuration no message will ever get marked as read or deleted.
1979
1980        Scoring gets especially interesting when combined with the color command and
1981        the ~n pattern:
1982
1983             color   black   yellow  "~n 10-"
1984             color   red     yellow  "~n 100-"
1985
1986        The rules above mark all messages with a score between 10 and 99 with black and
1987        yellow, and messages with a score greater or equal 100 with red and yellow.
1988        This might be unusual to you if you're used to e.g. slrn's scoring mechanism,
1989        but it is more flexible, as it visually marks different scores.
1990
1991        _\b3_\b._\b2_\b6  _\bS_\bp_\ba_\bm _\bd_\be_\bt_\be_\bc_\bt_\bi_\bo_\bn
1992
1993        Usage: spam _\bp_\ba_\bt_\bt_\be_\br_\bn _\bf_\bo_\br_\bm_\ba_\bt
1994
1995        Usage: nospam _\bp_\ba_\bt_\bt_\be_\br_\bn
1996
1997        Mutt-ng has generalized support for external spam-scoring filters.  By defining
1998        your spam patterns with the spam and nospam commands, you can _\bl_\bi_\bm_\bi_\bt, _\bs_\be_\ba_\br_\bc_\bh,
1999        and _\bs_\bo_\br_\bt your mail based on its spam attributes, as determined by the external
2000        filter. You also can display the spam attributes in your index display using
2001        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.
2002        (Tip: try %?H?[%H] ?  to display spam tags only when they are defined for a
2003        given message.)
2004
2005        Your first step is to define your external filter's spam patterns using the
2006        spam command. _\bp_\ba_\bt_\bt_\be_\br_\bn should be a regular expression that matches a header in a
2007        mail message. If any message in the mailbox matches this regular expression, it
2008        will receive a ``spam tag'' or ``spam attribute'' (unless it also matches a
2009        nospam pattern -- see below.) The appearance of this attribute is entirely up
2010        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,
2011        but it also can include back-references from the _\bp_\ba_\bt_\bt_\be_\br_\bn expression. (A regular
2012        expression ``back-reference'' refers to a sub-expression contained within
2013        parentheses.) %1 is replaced with the first back-reference in the regex, %2
2014        with the second, etc.
2015
2016        If you're using multiple spam filters, a message can have more than one spam-
2017
2018        The Mutt Next Generation E-Mail Client                                       41
2019
2020        related header. You can define spam patterns for each filter you use. If a mes-
2021        sage matches two or more of these patterns, and the $spam_separator variable is
2022        set to a string, then the message's spam tag will consist of all the _\bf_\bo_\br_\bm_\ba_\bt
2023        strings joined together, with the value of $spam_separator separating them.
2024
2025        For example, suppose I use DCC, SpamAssassin, and PureMessage. I might define
2026        these spam settings:
2027
2028             spam "X-DCC-.*-Metrics:.*(....)=many"         "90+/DCC-%1"
2029             spam "X-Spam-Status: Yes"                     "90+/SA"
2030             spam "X-PerlMX-Spam: .*Probability=([0-9]+)%" "%1/PM"
2031             set spam_separator=", "
2032
2033        If I then received a message that DCC registered with ``many'' hits under the
2034        ``Fuz2'' checksum, and that PureMessage registered with a 97% probability of
2035        being spam, that message's spam tag would read 90+/DCC-Fuz2, 97/PM. (The four
2036        characters before ``=many'' in a DCC report indicate the checksum used -- in
2037        this case, ``Fuz2''.)
2038
2039        If the $spam_separator variable is unset, then each spam pattern match super-
2040        sedes the previous one. Instead of getting joined _\bf_\bo_\br_\bm_\ba_\bt strings, you'll get
2041        only the last one to match.
2042
2043        The spam tag is what will be displayed in the index when you use %H in the
2044        $index_format variable. It's also the string that the ~H pattern-matching
2045        expression matches against for _\bs_\be_\ba_\br_\bc_\bh and _\bl_\bi_\bm_\bi_\bt functions. And it's what sort-
2046        ing by spam attribute will use as a sort key.
2047
2048        That's a pretty complicated example, and most people's actual environments will
2049        have only one spam filter. The simpler your configuration, the more effective
2050        mutt can be, especially when it comes to sorting.
2051
2052        Generally, when you sort by spam tag, mutt will sort _\bl_\be_\bx_\bi_\bc_\ba_\bl_\bl_\by -- that is, by
2053        ordering strings alphnumerically. However, if a spam tag begins with a number,
2054        mutt will sort numerically first, and lexically only when two numbers are equal
2055        in value. (This is like UNIX's sort -n.) A message with no spam attributes at
2056        all -- that is, one that didn't match _\ba_\bn_\by of your spam patterns -- is sorted at
2057        lowest priority. Numbers are sorted next, beginning with 0 and ranging upward.
2058        Finally, non-numeric strings are sorted, with ``a'' taking lower priority than
2059        ``z''. Clearly, in general, sorting by spam tags is most effective when you can
2060        coerce your filter to give you a raw number. But in case you can't, mutt can
2061        still do something useful.
2062
2063        The nospam command can be used to write exceptions to spam patterns. If a
2064        header pattern matches something in a spam command, but you nonetheless do not
2065        want it to receive a spam tag, you can list a more precise pattern under a
2066        nospam command.
2067
2068        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-
2069        ing spam list entry, the effect will be to remove the entry from the spam list,
2070        instead of adding an exception.  Likewise, if the _\bp_\ba_\bt_\bt_\be_\br_\bn for a spam command
2071        matches an entry on the nospam list, that nospam entry will be removed. If the
2072        _\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
2073
2074        The Mutt Next Generation E-Mail Client                                       42
2075
2076        might be the default action if you use spam and nospam in conjunction with a
2077        folder-hook.
2078
2079        You can have as many spam or nospam commands as you like.  You can even do your
2080        own primitive spam detection within mutt -- for example, if you consider all
2081        mail from MAILER-DAEMON to be spam, you can use a spam command like this:
2082
2083             spam "^From: .*MAILER-DAEMON"       "999"
2084
2085        _\b3_\b._\b2_\b7  _\bS_\be_\bt_\bt_\bi_\bn_\bg _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be_\bs
2086
2087        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 ... ]
2088
2089        Usage: toggle _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be [_\bv_\ba_\br_\bi_\ba_\bb_\bl_\be ... ]
2090
2091        Usage: unset _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be [_\bv_\ba_\br_\bi_\ba_\bb_\bl_\be ... ]
2092
2093        Usage: reset _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be [_\bv_\ba_\br_\bi_\ba_\bb_\bl_\be ... ]
2094
2095        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  ,
2096        page 85).  There are four basic types of variables: boolean, number, string and
2097        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
2098        variables can be assigned a positive integer value.
2099
2100        _\bs_\bt_\br_\bi_\bn_\bg variables consist of any number of printable characters.  _\bs_\bt_\br_\bi_\bn_\bg_\bs must
2101        be enclosed in quotes if they contain spaces or tabs.  You may also use the
2102        ``C'' escape sequences \\b\n\bn and \\b\t\bt for newline and tab, respectively.
2103
2104        _\bq_\bu_\ba_\bd_\bo_\bp_\bt_\bi_\bo_\bn variables are used to control whether or not to be prompted for cer-
2105        tain actions, or to specify a default action.  A value of _\by_\be_\bs will cause the
2106        action to be carried out automatically as if you had answered yes to the ques-
2107        tion.  Similarly, a value of _\bn_\bo will cause the the action to be carried out as
2108        if you had answered ``no.''  A value of _\ba_\bs_\bk_\b-_\by_\be_\bs will cause a prompt with a
2109        default answer of ``yes'' and _\ba_\bs_\bk_\b-_\bn_\bo will provide a default answer of ``no.''
2110
2111        Prefixing a variable with ``no'' will unset it.  Example: set noaskbcc.
2112
2113        For _\bb_\bo_\bo_\bl_\be_\ba_\bn variables, you may optionally prefix the variable name with inv to
2114        toggle the value (on or off).  This is useful when writing macros.  Example:
2115        set invsmart_wrap.
2116
2117        The toggle command automatically prepends the inv prefix to all specified vari-
2118        ables.
2119
2120        The unset command automatically prepends the no prefix to all specified vari-
2121        ables.
2122
2123        Using the enter-command function in the _\bi_\bn_\bd_\be_\bx menu, you can query the value of
2124        a variable by prefixing the name of the variable with a question mark:
2125
2126        The Mutt Next Generation E-Mail Client                                       43
2127
2128             set ?allow_8bit
2129
2130        The question mark is actually only required for boolean and quadoption vari-
2131        ables.
2132
2133        The reset command resets all given variables to the compile time defaults
2134        (hopefully mentioned in this manual). If you use the command set and prefix the
2135        variable with ``&'' this has the same behavior as the reset command.
2136
2137        With the reset command there exists the special variable ``all'', which allows
2138        you to reset all variables to their system defaults.
2139
2140        _\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
2141
2142        Usage: source _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be [ _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be ... ]
2143
2144        This command allows the inclusion of initialization commands from other files.
2145        For example, I place all of my aliases in ~/.mail_aliases so that I can make my
2146        ~/.muttrc readable and keep my aliases private.
2147
2148        If the filename begins with a tilde (``~''), it will be expanded to the path of
2149        your home directory.
2150
2151        If the filename ends with a vertical bar (|), then _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be is considered to be
2152        an executable program from which to read input (eg.  source ~/bin/myscript|).
2153
2154        _\b3_\b._\b2_\b9  _\bR_\be_\bm_\bo_\bv_\bi_\bn_\bg _\bh_\bo_\bo_\bk_\bs
2155
2156        Usage: unhook [ * | _\bh_\bo_\bo_\bk_\b-_\bt_\by_\bp_\be ]
2157
2158        This command permits you to flush hooks you have previously defined.  You can
2159        either remove all hooks by giving the ``*'' character as an argument, or you
2160        can remove all hooks of a specific type by saying something like unhook send-
2161        hook.
2162
2163        _\b3_\b._\b3_\b0  _\bS_\bh_\ba_\br_\bi_\bn_\bg _\bS_\be_\bt_\bu_\bp_\bs
2164
2165        _\b3_\b._\b3_\b0_\b._\b1  _\bC_\bh_\ba_\br_\ba_\bc_\bt_\be_\br _\bS_\be_\bt_\bs
2166
2167        As users may run mutt-ng on different systems, the configuration must be main-
2168        tained because it's likely that people want to use the setup everywhere they
2169        use mutt-ng. And mutt-ng tries to help where it can.
2170
2171        To not produce conflicts with different character sets, mutt-ng allows users to
2172        specify in which character set their configuration files are encoded. Please
2173        note that while reading the configuration files, this is only respected after
2174        the corresponding declaration appears. It's advised to put the following at the
2175
2176        The Mutt Next Generation E-Mail Client                                       44
2177
2178        very beginning of a users muttngrc:
2179
2180             set config_charset = "..."
2181
2182        and replacing the dots with the actual character set. To avoid problems while
2183        maintaining the setup, vim user's may want to use modelines as show in:
2184
2185             # vim:fileencoding=...:
2186
2187        while, again, replacing the dots with the appropriate name. This tells vim as
2188        which character set to read and save the file.
2189
2190        _\b3_\b._\b3_\b0_\b._\b2  _\bM_\bo_\bd_\bu_\bl_\ba_\br_\bi_\bz_\ba_\bt_\bi_\bo_\bn
2191
2192        ``Modularization'' means to divide the setup into several files while sorting
2193        the options or commands by topic. Especially for longer setups (e.g. with many
2194        hooks), this helps maintaining it and solving trouble.
2195
2196        When using separation, setups may be, as a whole or in fractions, shared over
2197        different systems.
2198
2199        _\b3_\b._\b3_\b0_\b._\b3  _\bC_\bo_\bn_\bd_\bi_\bt_\bi_\bo_\bn_\ba_\bl _\bp_\ba_\br_\bt_\bs
2200
2201        When using a configuration on different systems, the user may not always have
2202        influence on how mutt-ng is installed and which features it includes.
2203
2204        To solve this, mutt-ng contain a feature based on the ``ifdef'' patch written
2205        for mutt. Its basic syntax is:
2206
2207             ifdef <item> <command>
2208             ifndef <item> <command>
2209
2210        ...whereby <item> can be one of:
2211
2212           +\bo a function name
2213
2214           +\bo a variable name
2215
2216           +\bo a menu name
2217
2218           +\bo a feature name
2219
2220        All available functions, variables and menus are documented elsewhere in this
2221        manual but ``features'' is specific to these two commands. To test for one,
2222
2223        The Mutt Next Generation E-Mail Client                                       45
2224
2225        prefix one of the following keywords with feature_:
2226
2227             ncurses, slang, iconv, idn, dotlock, standalone, pop, nntp, imap, ssl,
2228             gnutls, sasl, sasl2, libesmtp, compressed, color, classic_pgp,
2229             classic_smime, gpgme, header_cache
2230
2231        As an example, one can use the following in ~/.muttngrc:
2232
2233             ifdef feature_imap 'source ~/.mutt-ng/setup-imap'
2234             ifdef feature_pop  'source ~/.mutt-ng/setup-pop'
2235             ifdef feature_nntp 'source ~/.mutt-ng/setup-nntp'
2236
2237        ...to only source ~/.mutt-ng/setup-imap if IMAP support is built in, only
2238        source ~/.mutt-ng/setup-pop if POP support is built in and only source ~/.mutt-
2239        ng/setup-nntp if NNTP support is built in.
2240
2241        An example for testing for variable names can be used if users use different
2242        revisions of mutt-ng whereby the older one may not have a certain variable. To
2243        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),
2244        use:
2245
2246             ifdef imap_mail_check 'set imap_mail_check = 300'
2247
2248        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
2249        (section 7.4.173  , page 129) only if the pager menu is available, use:
2250
2251             ifdef pager 'set pager_index_lines = 10'
2252
2253        For completeness, too, the opposite of ifdef is provided: ifndef which only
2254        executes the command if the test fails. For example, the following two examples
2255        are equivalent:
2256
2257             ifdef feature_ncurses 'source ~/.mutt-ng/setup-ncurses'
2258             ifndef feature_ncurses 'source ~/.mutt-ng/setup-slang'
2259
2260        ...and...
2261
2262             ifdef feature_slang 'source ~/.mutt-ng/setup-slang'
2263             ifndef feature_slang 'source ~/.mutt-ng/setup-ncurses'
2264
2265        The Mutt Next Generation E-Mail Client                                       46
2266
2267        _\b3_\b._\b3_\b1  _\bO_\bb_\bs_\bo_\bl_\be_\bt_\be _\bV_\ba_\br_\bi_\ba_\bb_\bl_\be_\bs
2268
2269        In the process of ensuring and creating more consistency, many variables have
2270        been renamed and some of the old names were already removed. Please see _\bO_\bb_\bs_\bo_\b-
2271        _\bl_\be_\bt_\be _\bV_\ba_\br_\bi_\ba_\bb_\bl_\be_\bs (section 7.4  , page 85) for a complete list.
2272
2273        _\b4_\b.  _\bA_\bd_\bv_\ba_\bn_\bc_\be_\bd _\bU_\bs_\ba_\bg_\be
2274
2275        _\b4_\b._\b1  _\bR_\be_\bg_\bu_\bl_\ba_\br _\bE_\bx_\bp_\br_\be_\bs_\bs_\bi_\bo_\bn_\bs
2276
2277        All string patterns in Mutt-ng including those in more complex _\bp_\ba_\bt_\bt_\be_\br_\bn_\bs (sec-
2278        tion 7.2  , page 81) must be specified using regular expressions (regexp) in
2279        the ``POSIX extended'' syntax (which is more or less the syntax used by egrep
2280        and GNU awk).  For your convenience, we have included below a brief description
2281        of this syntax.
2282
2283        The search is case sensitive if the pattern contains at least one upper case
2284        letter, and case insensitive otherwise. Note that ``\'' must be quoted if used
2285        for a regular expression in an initialization command: ``\\''.
2286
2287        A regular expression is a pattern that describes a set of strings.  Regular
2288        expressions are constructed analogously to arithmetic expressions, by using
2289        various operators to combine smaller expressions.
2290
2291        Note that the regular expression can be enclosed/delimited by either ' or '
2292        which is useful if the regular expression includes a white-space character.
2293        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-
2294        tion on ' and ' delimiter processing.  To match a literal ' or ' you must pref-
2295        ace it with \ (backslash).
2296
2297        The fundamental building blocks are the regular expressions that match a single
2298        character.  Most characters, including all letters and digits, are regular
2299        expressions that match themselves.  Any metacharacter with special meaning may
2300        be quoted by preceding it with a backslash.
2301
2302        The period ``.'' matches any single character.  The caret ``^'' and the dollar
2303        sign ``$'' are metacharacters that respectively match the empty string at the
2304        beginning and end of a line.
2305
2306        A list of characters enclosed by ``['' and ``]'' matches any single character
2307        in that list; if the first character of the list is a caret ``^'' then it
2308        matches any character n\bno\bot\bt in the list.  For example, the regular expression
2309        [\b[0\b01\b12\b23\b34\b45\b56\b67\b78\b89\b9]\b] matches any single digit.  A range of ASCII characters may be
2310        specified by giving the first and last characters, separated by a hyphen ``-''.
2311        Most metacharacters lose their special meaning inside lists.  To include a lit-
2312        eral ``]'' place it first in the list.  Similarly, to include a literal ``^''
2313        place it anywhere but first.  Finally, to include a literal hyphen ``-'' place
2314        it last.
2315
2316        The Mutt Next Generation E-Mail Client                                       47
2317
2318        Certain named classes of characters are predefined.  Character classes consist
2319        of ``[:'', a keyword denoting the class, and ``:]''.  The following classes are
2320        defined by the POSIX standard:
2321
2322              [:alnum:]
2323                    Alphanumeric characters.
2324
2325              [:alpha:]
2326                    Alphabetic characters.
2327
2328              [:blank:]
2329                    Space or tab characters.
2330
2331              [:cntrl:]
2332                    Control characters.
2333
2334              [:digit:]
2335                    Numeric characters.
2336
2337              [:graph:]
2338                    Characters that are both printable and visible.  (A space is print-
2339                    able, but not visible, while an ``a'' is both.)
2340
2341              [:lower:]
2342                    Lower-case alphabetic characters.
2343
2344              [:print:]
2345                    Printable characters (characters that are not control characters.)
2346
2347              [:punct:]
2348                    Punctuation characters (characters that are not letter, digits,
2349                    control characters, or space characters).
2350
2351              [:space:]
2352                    Space characters (such as space, tab and formfeed, to name a few).
2353
2354              [:upper:]
2355                    Upper-case alphabetic characters.
2356
2357              [:xdigit:]
2358                    Characters that are hexadecimal digits.
2359
2360        A character class is only valid in a regular expression inside the brackets of
2361        a character list.  Note that the brackets in these class names are part of the
2362        symbolic names, and must be included in addition to the brackets delimiting the
2363        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].
2364
2365        Two additional special sequences can appear in character lists.  These apply to
2366        non-ASCII character sets, which can have single symbols (called collating ele-
2367        ments) that are represented with more than one character, as well as several
2368        characters that are equivalent for collating or sorting purposes:
2369
2370              Collating Symbols
2371                    A collating symbol is a multi-character collating element enclosed
2372
2373        The Mutt Next Generation E-Mail Client                                       48
2374
2375                    in ``[.'' and ``.]''.  For example, if ``ch'' is a collating ele-
2376                    ment, then [\b[[\b[.\b.c\bch\bh.\b.]\b]]\b] is a regexp that matches this collating ele-
2377                    ment, while [\b[c\bch\bh]\b] is a regexp that matches either ``c'' or ``h''.
2378
2379              Equivalence Classes
2380                    An equivalence class is a locale-specific name for a list of char-
2381                    acters that are equivalent. The name is enclosed in ``[='' and
2382                    ``=]''.  For example, the name ``e'' might be used to represent all
2383                    of ``'' ``'' and ``e''.  In this case, [\b[[\b[=\b=e\be=\b=]\b]]\b] is a regexp that
2384                    matches any of ``'', ``'' and ``e''.
2385
2386        A regular expression matching a single character may be followed by one of sev-
2387        eral repetition operators:
2388
2389              ?
2390                    The preceding item is optional and matched at most once.
2391
2392              *
2393                    The preceding item will be matched zero or more times.
2394
2395              +
2396                    The preceding item will be matched one or more times.
2397
2398              {n}
2399                    The preceding item is matched exactly _\bn times.
2400
2401              {n,}
2402                    The preceding item is matched _\bn or more times.
2403
2404              {,m}
2405                    The preceding item is matched at most _\bm times.
2406
2407              {n,m}
2408                    The preceding item is matched at least _\bn times, but no more than _\bm
2409                    times.
2410
2411        Two regular expressions may be concatenated; the resulting regular expression
2412        matches any string formed by concatenating two substrings that respectively
2413        match the concatenated subexpressions.
2414
2415        Two regular expressions may be joined by the infix operator ``|''; the result-
2416        ing regular expression matches any string matching either subexpression.
2417
2418        Repetition takes precedence over concatenation, which in turn takes precedence
2419        over alternation.  A whole subexpression may be enclosed in parentheses to
2420        override these precedence rules.
2421
2422        N\bNo\bot\bte\be:\b: If you compile Mutt-ng with the GNU _\br_\bx package, the following operators
2423        may also be used in regular expressions:
2424
2425              \\y
2426                    Matches the empty string at either the beginning or the end of a
2427                    word.
2428
2429        The Mutt Next Generation E-Mail Client                                       49
2430
2431              \\B
2432                    Matches the empty string within a word.
2433
2434              \\<
2435                    Matches the empty string at the beginning of a word.
2436
2437              \\>
2438                    Matches the empty string at the end of a word.
2439
2440              \\w
2441                    Matches any word-constituent character (letter, digit, or under-
2442                    score).
2443
2444              \\W
2445                    Matches any character that is not word-constituent.
2446
2447              \\`
2448                    Matches the empty string at the beginning of a buffer (string).
2449
2450              \\'
2451                    Matches the empty string at the end of a buffer.
2452
2453        Please note however that these operators are not defined by POSIX, so they may
2454        or may not be available in stock libraries on various systems.
2455
2456        _\b4_\b._\b2  _\bP_\ba_\bt_\bt_\be_\br_\bn_\bs
2457
2458        Mutt-ng's pattern language provides a simple yet effective way to set up rules
2459        to match messages, e.g. for operations like tagging and scoring. A pattern con-
2460        sists of one or more sub-pattern, which can be logically grouped, ORed, and
2461        negated. For a complete listing of these patterns, please refer to table _\bP_\ba_\bt_\b-
2462        _\bt_\be_\br_\bn_\bs (section 7.2  , page 81) in the Reference chapter.
2463
2464        It must be noted that in this table, EXPR, USER, ID and SUBJECT are regular
2465        expressions. For ranges, the forms <[MAX], >>[MIN], [MIN]- and -[MAX] are also
2466        possible.
2467
2468        _\b4_\b._\b2_\b._\b1  _\bC_\bo_\bm_\bp_\bl_\be_\bx _\bP_\ba_\bt_\bt_\be_\br_\bn_\bs
2469
2470        It is possible to combine several sub-patterns to a more complex pattern. The
2471        most simple possibility is to logically AND several patterns by stringing them
2472        together:
2473
2474             ~s 'SPAM' ~U
2475
2476        The pattern above matches all messages that contain ``SPAM'' in the subject and
2477        are unread.
2478
2479        To logical OR patterns, simply use the | operator. This one especially useful
2480        when using local groups:
2481
2482        The Mutt Next Generation E-Mail Client                                       50
2483
2484             ~f ("nion@muttng\.org"|"ak@muttng\.org"|"pdmef@muttng\.org")
2485             (~b mutt-ng|~s Mutt-ng)
2486             !~x '@synflood\.at'
2487
2488        The first pattern matches all messages that were sent by one of the mutt-ng
2489        maintainers, while the seconds pattern matches all messages that contain
2490        ``mutt-ng'' in the message body or ``Mutt-ng'' in the subject. The third pat-
2491        tern matches all messages that do not contain ``@synflood\.at'' in the Refer-
2492        ences: header, i.e.  messages that are not an (indirect) reply to one of my
2493        messages. A pattern can be logicall negated using the ! operator.
2494
2495        _\b4_\b._\b2_\b._\b2  _\bP_\ba_\bt_\bt_\be_\br_\bn_\bs _\ba_\bn_\bd _\bD_\ba_\bt_\be_\bs
2496
2497        When using dates in patterns, the dates must be specified in a special format,
2498        i.e.  DD/MM/YYYY. If you don't specify month or year, they default to the cur-
2499        rent month or year. When using date ranges, and you specify only the minimum or
2500        the maximum, the specified date will be excluded, e.g. 01/06/2005- matches
2501        against all messages _\ba_\bf_\bt_\be_\br Juni 1st, 2005.
2502
2503        It is also possible to use so-called ``error margins'' when specifying date
2504        ranges.  You simply specify a date, and then the error margin. This margin
2505        needs to contain the information whether it goes ``forth'' or ``back'' in time,
2506        by using + and -.  Then follows a number and a unit, i.e. y for years, m for
2507        months, w for weeks and d for days. If you use the special * sign, it means
2508        that the error margin goes to both ``directions'' in time.
2509
2510             ~d 01/01/2005+1y
2511             ~d 18/10/2004-2w
2512             ~d 28/12/2004*1d
2513
2514        The first pattern matches all dates between January 1st, 2005 and January 1st
2515        2006.  The second pattern matches all dates between October 18th, 2004 and
2516        October 4th 2004 (2 weeks before 18/10/2004), while the third pattern matches
2517        all dates 1 day around December 28th, 2004 (i.e. Dec 27th, 28th and 29th).
2518
2519        Relative dates are also very important, as they make it possible to specify
2520        date ranges between a fixed number of units and the current date. How this
2521        works can be seen in the following example:
2522
2523             ~d >2w # messages older than two weeks
2524             ~d <3d # messages newer than 3 days
2525             ~d =1m # messages that are exactly one month old
2526
2527        _\b4_\b._\b3  _\bF_\bo_\br_\bm_\ba_\bt _\bS_\bt_\br_\bi_\bn_\bg_\bs
2528
2529        _\b4_\b._\b3_\b._\b1  _\bI_\bn_\bt_\br_\bo_\bd_\bu_\bc_\bt_\bi_\bo_\bn
2530
2531        The Mutt Next Generation E-Mail Client                                       51
2532
2533        The so called _\bF_\bo_\br_\bm_\ba_\bt _\bS_\bt_\br_\bi_\bn_\bg_\bs offer great flexibility when configuring mutt-ng.
2534        In short, they describe what items to print out how in menus and status mes-
2535        sages.
2536
2537        Basically, they work as this: for different menus and bars, there's a variable
2538        specifying the layout. For every item available, there is a so called _\be_\bx_\bp_\ba_\bn_\bd_\bo.
2539
2540        For example, when running mutt-ng on different machines or different versions
2541        for testing purposes, it may be interesting to have the following information
2542        always printed on screen when one is in the index:
2543
2544           +\bo the current hostname
2545
2546           +\bo the current mutt-ng version number
2547
2548        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-
2549        _\bm_\ba_\bt (section 7.4.312  , page 162) variable. For the hostname and version
2550        string, there's an expando for $status_format: %h expands to the hostname and
2551        %v to the version string. When just configuring:
2552
2553             set status_format = "%v on %h: ..."
2554
2555        mutt-ng will replace the sequence %v with the version string and %h with the
2556        host's name. When you are, for example, running mutt-ng version 1.5.9i on host
2557        mailhost, you'll see the following when you're in the index:
2558
2559             Mutt-ng 1.5.9i on mailhost: ...
2560
2561        In the index, there're more useful information one could want to see:
2562
2563           +\bo which mailbox is open
2564
2565           +\bo how man new, flagged or postponed messages
2566
2567           +\bo ...
2568
2569        To include the mailbox' name is as easy as:
2570
2571             set status_format = "%v on %h: %B: ...
2572
2573        When the currently opened mailbox is Inbox, this will be expanded to:
2574
2575             Mutt-ng 1.5.9i on mailhost: Inbox: ...
2576
2577        For the number of certain types of messages, one more feature of the format
2578        strings is extremely useful. If there aren't messages of a certain type, it may
2579
2580        The Mutt Next Generation E-Mail Client                                       52
2581
2582        not be desired to print just that there aren't any but instead only print some-
2583        thing if there are any.
2584
2585        _\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
2586
2587        To only print the number of messages if there are new messages in the current
2588        mailbox, further extend $status_format to:
2589
2590             set status_format = "%v on %h: %B %?n?%n new? ...
2591
2592        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
2593        optionally printed nonzero, i.e.  a portion of the format string is only evalu-
2594        ated if the value of the expando is different from zero. The basic syntax is:
2595
2596             %?<item>?<string if nonzero>?
2597
2598        which tells mutt-ng to only look at <string if nonzero> if the value of the
2599        %<item%gt; expando is different from zero. In our example, we used n as the
2600        expando to check for and %n new as the optional nonzero string.
2601
2602        But this is not all: this feature only offers one alternative: ``print some-
2603        thing if not zero.'' Mutt-ng does, as you might guess, also provide a logically
2604        complete version: ``if zero, print something and else print something else.''
2605        This is achieved by the following syntax for those expandos which may be
2606        printed nonzero:
2607
2608             %?<item>?<string if nonzero>&<string if zero>?
2609
2610        Using this we can make mutt-ng to do the following:
2611
2612           +\bo  make it print ``_\bn new messages'' whereby _\bn is the count but only if there
2613             new ones
2614
2615           +\bo  and make it print ``no new messages'' if there aren't any
2616
2617        The corresponding configuration is:
2618
2619             set status_format = "%v on %h: %B: %?n?%n new messages&no new messages? ...
2620
2621        This doubles the use of the ``new messages'' string because it'll get always
2622        printed. Thus, it can be shortened to:
2623
2624             set status_format = "%v on %h: %B: %?n?%n&no? new messages ...
2625
2626        The Mutt Next Generation E-Mail Client                                       53
2627
2628        As you might see from this rather simple example, one can create very complex
2629        but fancy status messages. Please see the reference chapter for expandos and
2630        those which may be printed nonzero.
2631
2632        _\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
2633
2634        Besides the information given so far, there're even more features of format
2635        strings:
2636
2637           +\bo When specifying %_<item> instead of just %<item>, mutt-ng will convert all
2638             characters in the expansion of <item> to lowercase.
2639
2640           +\bo When specifying %:<item> instead of just %<item>, mutt-ng will convert all
2641             dots in the expansion of <item> to underscores (_).
2642
2643        Also, there's a feature called _\bP_\ba_\bd_\bd_\bi_\bn_\bg supplied by the following two expandos:
2644        %|X and %>X.
2645
2646              %|X
2647                    When this occurs, mutt-ng will fill the rest of the line with the
2648                    character X. In our example, filling the rest of the line with
2649                    dashes is done by setting:
2650
2651                         set status_format = "%v on %h: %B: %?n?%n&no? new messages %|-"
2652
2653              %>X
2654                    Since the previous expando stops at the end of line, there must be
2655                    a way to fill the gap between two items via the %>X expando: it
2656                    puts as many characters X in between two items so that the rest of
2657                    the line will be right-justified. For example, to not put the ver-
2658                    sion string and hostname of our example on the left but on the
2659                    right and fill the gap with spaces, one might use (note the space
2660                    after %>):
2661
2662                         set status_format = "%B: %?n?%n&no? new messages %> (%v on %h)"
2663
2664        _\b4_\b._\b4  _\bU_\bs_\bi_\bn_\bg _\bT_\ba_\bg_\bs
2665
2666        Sometimes it is desirable to perform an operation on a group of messages all at
2667        once rather than one at a time.  An example might be to save messages to a
2668        mailing list to a separate folder, or to delete all messages with a given sub-
2669        ject.  To tag all messages matching a pattern, use the tag-pattern function,
2670        which is bound to ``shift-T'' by default.  Or you can select individual mes-
2671        sages by hand using the ``tag-message'' function, which is bound to ``t'' by
2672
2673        The Mutt Next Generation E-Mail Client                                       54
2674
2675        default.  See _\bp_\ba_\bt_\bt_\be_\br_\bn_\bs (section 7.2  , page 81) for Mutt-ng's pattern matching
2676        syntax.
2677
2678        Once you have tagged the desired messages, you can use the ``tag-prefix'' oper-
2679        ator, which is the ``;'' (semicolon) key by default.  When the ``tag-prefix''
2680        operator is used, the n\bne\bex\bxt\bt operation will be applied to all tagged messages if
2681        that operation can be used in that manner.  If the _\b$_\ba_\bu_\bt_\bo_\b__\bt_\ba_\bg (section 7.4.18  ,
2682        page 91) variable is set, the next operation applies to the tagged messages
2683        automatically, without requiring the ``tag-prefix''.
2684
2685        In _\bm_\ba_\bc_\br_\bo_\bs (section 3.7  , page 27) or _\bp_\bu_\bs_\bh (section 3.23  , page 38) commands,
2686        you can use the ``tag-prefix-cond'' operator.  If there are no tagged messages,
2687        mutt will "eat" the rest of the macro to abort it's execution.  Mutt-ng will
2688        stop "eating" the macro when it encounters the ``end-cond'' operator;  after
2689        this operator the rest of the macro will be executed as normal.
2690
2691        _\b4_\b._\b5  _\bU_\bs_\bi_\bn_\bg _\bH_\bo_\bo_\bk_\bs
2692
2693        A _\bh_\bo_\bo_\bk is a concept borrowed from the EMACS editor which allows you to execute
2694        arbitrary commands before performing some operation.  For example, you may wish
2695        to tailor your configuration based upon which mailbox you are reading, or to
2696        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
2697        _\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
2698        with a configuration option/command.  See
2699
2700           +\bo _\bf_\bo_\bl_\bd_\be_\br_\b-_\bh_\bo_\bo_\bk (section 3.6  , page 26)
2701
2702           +\bo _\bs_\be_\bn_\bd_\b-_\bh_\bo_\bo_\bk (section 3.20  , page 37)
2703
2704           +\bo _\bm_\be_\bs_\bs_\ba_\bg_\be_\b-_\bh_\bo_\bo_\bk (section 3.21  , page 38)
2705
2706           +\bo _\bs_\ba_\bv_\be_\b-_\bh_\bo_\bo_\bk (section 3.17  , page 36)
2707
2708           +\bo _\bm_\bb_\bo_\bx_\b-_\bh_\bo_\bo_\bk (section 3.13  , page 34)
2709
2710           +\bo _\bf_\bc_\bc_\b-_\bh_\bo_\bo_\bk (section 3.18  , page 36)
2711
2712           +\bo _\bf_\bc_\bc_\b-_\bs_\ba_\bv_\be_\b-_\bh_\bo_\bo_\bk (section 3.19  , page 37)
2713
2714        for specific details on each type of _\bh_\bo_\bo_\bk available.
2715
2716        N\bNo\bot\bte\be:\b: if a hook changes configuration settings, these changes remain effective
2717        until the end of the current mutt session. As this is generally not desired, a
2718        default hook needs to be added before all other hooks to restore configuration
2719        defaults. Here is an example with send-hook and the my_hdr directive:
2720
2721             send-hook . 'unmy_hdr From:'
2722             send-hook ~C'^b@b\.b$' my_hdr from: c@c.c
2723