X-Git-Url: https://git.llucax.com/software/mutt-debian.git/blobdiff_plain/19304f7c526fbe36ba0db2fb80bcaf3bd974d81d..6e837c0f6b60f139c038b25a5005cc923af8674e:/doc/gettingstarted.html diff --git a/doc/gettingstarted.html b/doc/gettingstarted.html index feb9db7..2d022ac 100644 --- a/doc/gettingstarted.html +++ b/doc/gettingstarted.html @@ -1,27 +1,31 @@ -Chapter 2. Getting Started

Chapter 2. Getting Started

Table of Contents

1. Core concepts
2. Moving Around in Menus
3. Editing Input Fields
3.1. Introduction
3.2. History
4. Reading Mail - The Index and Pager
4.1. The Message Index
4.2. The Pager
4.3. Threaded Mode
4.4. Miscellaneous Functions
5. Sending Mail
5.1. Introduction
5.2. Editing the message header
5.3. Sending cryptographically signed/encrypted messages
5.4. Sending anonymous messages via mixmaster
5.5. Sending format=flowed messages
6. Forwarding and Bouncing Mail
7. Postponing Mail

+

Chapter 2. Getting Started

This section is intended as a brief overview of how to use Mutt. There are many other features which are described elsewhere in the manual. There is even more information available in the Mutt FAQ and various web @@ -31,10 +35,10 @@ The keybindings described in this section are the defaults as distributed. Your local system administrator may have altered the defaults for your site. You can always type “?” in any menu to display the current bindings.

-The first thing you need to do is invoke mutt, simply by typing mutt +The first thing you need to do is invoke Mutt, simply by typing mutt at the command line. There are various command-line options, see -either the mutt man page or the reference. -

1. Core concepts

+either the Mutt man page or the reference. +

1. Core Concepts

Mutt is a text-based application which interacts with users through different menus which are mostly line-/entry-based or page-based. A line-based menu is the so-called “index” menu (listing all messages of @@ -49,6 +53,11 @@ finally the command line. The command line is used to display informational and error messages as well as for prompts and for entering interactive commands.

+Mutt is configured through variables which, if the user wants to +permanently use a non-default value, are written to configuration +files. Mutt supports a rich config file syntax to make even complex +configuration files readable and commentable. +

Because Mutt allows for customizing almost all key bindings, there are so-called “functions” which can be executed manually (using the command line) or in macros. Macros allow the user to bind a sequence of @@ -72,69 +81,143 @@ existing one. These hooks can be used to highly customize Mutt's behaviour including managing multiple identities, customizing the display for a folder or even implementing auto-archiving based on a per-folder basis and much more. -

2. Moving Around in Menus

-The most important navigation keys common to all menus are shown in -Table 2.1, “Most common navigation keys”. -

Table 2.1. Most common navigation keys

KeyFunctionDescription
j or <Down><next-entry>move to the next entry
k or <Up><previous-entry>move to the previous entry
z or <PageDn><page-down>go to the next page
Z or <PageUp><page-up>go to the previous page
= or <Home><first-entry>jump to the first entry
* or <End><last-entry>jump to the last entry
q<quit>exit the current menu
?<help>list all keybindings for the current menu

3. Editing Input Fields

3.1. Introduction

+

+Besides an interactive mode, Mutt can also be used as a command-line +tool only send messages. It also supports a +mailx(1)-compatible interface, see Table 9.1, “Command line options” for a complete list of command-line +options. +

2. Screens and Menus

2.1. Index

+The index is the screen that you usually see first when you start +Mutt. It gives an overview over your emails in the currently opened +mailbox. By default, this is your system mailbox. The information you +see in the index is a list of emails, each with its number on the left, +its flags (new email, important email, email that has been forwarded or +replied to, tagged email, ...), the date when email was sent, its +sender, the email size, and the subject. Additionally, the index also +shows thread hierarchies: when you reply to an email, and the other +person replies back, you can see the other's person email in a +"sub-tree" below. This is especially useful for personal email between +a group of people or when you've subscribed to mailing lists. +

2.2. Pager

+The pager is responsible for showing the email content. On the top of +the pager you have an overview over the most important email headers +like the sender, the recipient, the subject, and much more +information. How much information you actually see depends on your +configuration, which we'll describe below. +

+Below the headers, you see the email body which usually contains the +message. If the email contains any attachments, you will see more +information about them below the email body, or, if the attachments are +text files, you can view them directly in the pager. +

+To give the user a good overview, it is possible to configure Mutt to +show different things in the pager with different colors. Virtually +everything that can be described with a regular expression can be +colored, e.g. URLs, email addresses or smileys. +

2.3. File Browser

+The file browser is the interface to the local or remote file +system. When selecting a mailbox to open, the browser allows custom +sorting of items, limiting the items shown by a regular expression and a +freely adjustable format of what to display in which way. It also allows +for easy navigation through the file system when selecting file(s) to +attach to a message, select multiple files to attach and many more. +

2.4. Help

+The help screen is meant to offer a quick help to the user. It lists the +current configuration of key bindings and their associated commands +including a short description, and currently unbound functions that +still need to be associated with a key binding (or alternatively, they +can be called via the Mutt command prompt). +

2.5. Compose Menu

+The compose menu features a split screen containing the information +which really matter before actually sending a message by mail: who gets +the message as what (recipients and who gets what kind of +copy). Additionally, users may set security options like deciding +whether to sign, encrypt or sign and encrypt a message with/for what +keys. Also, it's used to attach messages, to re-edit any attachment +including the message itself. +

2.6. Alias Menu

+The alias menu is used to help users finding the recipients of +messages. For users who need to contact many people, there's no need to +remember addresses or names completely because it allows for searching, +too. The alias mechanism and thus the alias menu also features grouping +several addresses by a shorter nickname, the actual alias, so that users +don't have to select each single recipient manually. +

2.7. Attachment Menu

+As will be later discussed in detail, Mutt features a good and stable +MIME implementation, that is, it supports sending and receiving messages +of arbitrary MIME types. The attachment menu displays a message's +structure in detail: what content parts are attached to which parent +part (which gives a true tree structure), which type is of what type and +what size. Single parts may saved, deleted or modified to offer great +and easy access to message's internals. +

3. Moving Around in Menus

+The most important navigation keys common to line- or entry-based menus +are shown in Table 2.1, “Most common navigation keys in entry-based menus” and in +Table 2.2, “Most common navigation keys in page-based menus” for page-based menus. +

Table 2.1. Most common navigation keys in entry-based menus

KeyFunctionDescription
j or <Down><next-entry>move to the next entry
k or <Up><previous-entry>move to the previous entry
z or <PageDn><page-down>go to the next page
Z or <PageUp><page-up>go to the previous page
= or <Home><first-entry>jump to the first entry
* or <End><last-entry>jump to the last entry
q<quit>exit the current menu
?<help>list all keybindings for the current menu

Table 2.2. Most common navigation keys in page-based menus

KeyFunctionDescription
J or <Return><next-line>scroll down one line
<Backspace><previous-line>sroll up one line
K, <Space> or <PageDn><next-page>move to the next page
- or <PageUp><previous-page>move the previous page
<Home><top>move to the top
<End><bottom>move to the bottom

4. Editing Input Fields

4.1. Introduction

Mutt has a built-in line editor for inputting text, e.g. email addresses or filenames. The keys used to manipulate text input are -very similar to those of Emacs. See Table 2.2, “Most common line editor keys” for a full +very similar to those of Emacs. See Table 2.3, “Most common line editor keys” for a full reference of available functions, their default key bindings, and short descriptions. -

Table 2.2. Most common line editor keys

KeyFunctionDescription
^A or <Home><bol>move to the start of the line
^B or <Left><backward-char>move back one char
Esc B<backward-word>move back one word
^D or <Delete><delete-char>delete the char under the cursor
^E or <End><eol>move to the end of the line
^F or <Right><forward-char>move forward one char
Esc F<forward-word>move forward one word
<Tab><complete>complete filename or alias
^T<complete-query>complete address with query
^K<kill-eol>delete to the end of the line
Esc d<kill-eow>delete to the end of the word
^W<kill-word>kill the word in front of the cursor
^U<kill-line>delete entire line
^V<quote-char>quote the next typed key
<Up><history-up>recall previous string from history
<Down><history-down>recall next string from history
<BackSpace><backspace>kill the char in front of the cursor
Esc u<upcase-word>convert word to upper case
Esc l<downcase-word>convert word to lower case
Esc c<capitalize-word>capitalize the word
^Gn/aabort
<Return>n/afinish editing

+

Table 2.3. Most common line editor keys

KeyFunctionDescription
^A or <Home><bol>move to the start of the line
^B or <Left><backward-char>move back one char
Esc B<backward-word>move back one word
^D or <Delete><delete-char>delete the char under the cursor
^E or <End><eol>move to the end of the line
^F or <Right><forward-char>move forward one char
Esc F<forward-word>move forward one word
<Tab><complete>complete filename or alias
^T<complete-query>complete address with query
^K<kill-eol>delete to the end of the line
Esc d<kill-eow>delete to the end of the word
^W<kill-word>kill the word in front of the cursor
^U<kill-line>delete entire line
^V<quote-char>quote the next typed key
<Up><history-up>recall previous string from history
<Down><history-down>recall next string from history
<BackSpace><backspace>kill the char in front of the cursor
Esc u<upcase-word>convert word to upper case
Esc l<downcase-word>convert word to lower case
Esc c<capitalize-word>capitalize the word
^Gn/aabort
<Return>n/afinish editing

You can remap the editor functions using the -bind command. For example, to make +bind command. For example, to make the <Delete> key delete the character in front of the cursor rather than under, you could use:

 bind editor <delete> backspace
-

3.2. History

+

4.2. History

Mutt maintains a history for the built-in editor. The number of items -is controlled by the $history +is controlled by the $history variable and can be made persistent using an external file specified -using $history_file. +using $history_file. You may cycle through them at an editor prompt by using the <history-up> and/or -<history-down> commands. +<history-down> commands. But notice that Mutt +does not remember the currently entered text, it only cycles through +history and wraps around at the end or beginning.

Mutt maintains several distinct history lists, one for each of the following categories: -

  • muttrc commands

  • addresses and aliases

  • shell commands

  • filenames

  • patterns

  • everything else

-Mutt automatically filters out repeated items from the history. It +

  • .muttrc commands

  • addresses and aliases

  • shell commands

  • filenames

  • patterns

  • everything else

+Mutt automatically filters out consecutively repeated items from the history. It also mimics the behavior of some shells by ignoring items starting with a space. The latter feature can be useful in macros to not clobber the history's valuable entries with unwanted entries. -

4. Reading Mail - The Index and Pager

+

5. Reading Mail

Similar to many other mail clients, there are two modes in which mail is -read in Mutt. The first is the index of messages in the mailbox, which is -called the “index” in Mutt. The second mode is the display of the +read in Mutt. The first is a list of messages in the mailbox, which is +called the “index” menu in Mutt. The second mode is the display of the message contents. This is called the “pager.”

The next few sections describe the functions provided in each of these modes. -

4.1. The Message Index

+

5.1. The Message Index

Common keys used to navigate through and manage messages in the index -are shown in Table 2.3, “Most common message index keys”. How messages are presented +are shown in Table 2.4, “Most common message index keys”. How messages are presented in the index menu can be customized using the -$index_format variable. -

Table 2.3. Most common message index keys

KeyDescription
cchange to a different mailbox
Esc cchange to a folder in read-only mode
Ccopy the current message to another mailbox
Esc Cdecode a message and copy it to a folder
Esc sdecode a message and save it to a folder
Ddelete messages matching a pattern
ddelete the current message
Fmark as important
lshow messages matching a pattern
Nmark message as new
ochange the current sort method
Oreverse sort the mailbox
qsave changes and exit
ssave-message
Ttag messages matching a pattern
ttoggle the tag on a message
Esc ttoggle tag on entire message thread
Uundelete messages matching a pattern
uundelete-message
vview-attachments
xabort changes and exit
<Return>display-message
<Tab>jump to the next new or unread message
@show the author's full e-mail address
$save changes to mailbox
/search
Esc /search-reverse
^Lclear and redraw the screen
^Tuntag messages matching a pattern

+$index_format variable. +

Table 2.4. Most common message index keys

KeyDescription
cchange to a different mailbox
Esc cchange to a folder in read-only mode
Ccopy the current message to another mailbox
Esc Cdecode a message and copy it to a folder
Esc sdecode a message and save it to a folder
Ddelete messages matching a pattern
ddelete the current message
Fmark as important
lshow messages matching a pattern
Nmark message as new
ochange the current sort method
Oreverse sort the mailbox
qsave changes and exit
ssave-message
Ttag messages matching a pattern
ttoggle the tag on a message
Esc ttoggle tag on entire message thread
Uundelete messages matching a pattern
uundelete-message
vview-attachments
xabort changes and exit
<Return>display-message
<Tab>jump to the next new or unread message
@show the author's full e-mail address
$save changes to mailbox
/search
Esc /search-reverse
^Lclear and redraw the screen
^Tuntag messages matching a pattern

In addition to who sent the message and the subject, a short summary of the disposition of each message is printed beside the message number. -Zero or more of the “flags” in Table 2.4, “Message status flags” +Zero or more of the “flags” in Table 2.5, “Message status flags” may appear, some of which can be turned on or off using these functions: <set-flag> and <clear-flag> bound by default to “w” and “W” respectively.

-Furthermore, the flags in Table 2.5, “Message recipient flags” reflect +Furthermore, the flags in Table 2.6, “Message recipient flags” reflect who the message is addressed to. They can be customized with the -$to_chars variable. -

Table 2.4. Message status flags

FlagDescription
Dmessage is deleted (is marked for deletion)
dmessage has attachments marked for deletion
Kcontains a PGP public key
Nmessage is new
Omessage is old
Pmessage is PGP encrypted
rmessage has been replied to
Smessage is signed, and the signature is successfully verified
smessage is signed
!message is flagged
*message is tagged

Table 2.5. Message recipient flags

FlagDescription
+message is to you and you only
Tmessage is to you, but also to or cc'ed to others
Cmessage is cc'ed to you
Fmessage is from you
Lmessage is sent to a subscribed mailing list

4.2. The Pager

-By default, Mutt uses its builtin pager to display the contents of messages. -The pager is very similar to the Unix program less though not nearly as -featureful. -

Table 2.6. Most common pager keys

KeyDescription
<Return>go down one line
<Space>display the next page (or next message if at the end of a message)
-go back to the previous page
nsearch for next match
Sskip beyond quoted text
Ttoggle display of quoted text
?show keybindings
/regular expression search
Esc /backward regular expression search
\toggle highlighting of search matches
^jump to the top of the message

-In addition to key bindings in Table 2.6, “Most common pager keys”, +$to_chars variable. +

Table 2.5. Message status flags

FlagDescription
Dmessage is deleted (is marked for deletion)
dmessage has attachments marked for deletion
Kcontains a PGP public key
Nmessage is new
Omessage is old
Pmessage is PGP encrypted
rmessage has been replied to
Smessage is signed, and the signature is successfully verified
smessage is signed
!message is flagged
*message is tagged

Table 2.6. Message recipient flags

FlagDescription
+message is to you and you only
Tmessage is to you, but also to or cc'ed to others
Cmessage is cc'ed to you
Fmessage is from you
Lmessage is sent to a subscribed mailing list

5.2. The Pager

+By default, Mutt uses its builtin pager to display the contents of +messages (an external pager such as less(1) can be +configured, see $pager variable). +The pager is very similar to the Unix program less(1) +though not nearly as featureful. +

Table 2.7. Most common pager keys

KeyDescription
<Return>go down one line
<Space>display the next page (or next message if at the end of a message)
-go back to the previous page
nsearch for next match
Sskip beyond quoted text
Ttoggle display of quoted text
?show keybindings
/regular expression search
Esc /backward regular expression search
\toggle highlighting of search matches
^jump to the top of the message

+In addition to key bindings in Table 2.7, “Most common pager keys”, many of the functions from the index menu are also available in the pager, such as <delete-message> or <copy-message> (this is one advantage over using an external pager to view messages). @@ -142,11 +225,11 @@ the pager, such as <delete-message> or standard” nroff sequences for bold and underline. These sequences are a series of either the letter, -backspace (^H), the letter again for bold or the letter, backspace, +backspace (“^H”), the letter again for bold or the letter, backspace, “_” for denoting underline. Mutt will attempt to display these in bold and underline respectively if your terminal supports them. If -not, you can use the bold and underline color -objects to specify a color or mono attribute for them. +not, you can use the bold and underline color +objects to specify a color or mono attribute for them.

Additionally, the internal pager supports the ANSI escape sequences for character attributes. Mutt translates them into the correct color and @@ -155,8 +238,8 @@ character settings. The sequences Mutt supports are: \e[Ps;Ps;..Ps;m

where Ps can be one of the codes shown in -Table 2.7, “ANSI escape sequences”. -

Table 2.7. ANSI escape sequences

Escape codeDescription
0All attributes off
1Bold on
4Underline on
5Blink on
7Reverse video on
3<color>Foreground color is <color> (see Table 2.8, “Color sequences”)
4<color>Background color is <color> (see Table 2.8, “Color sequences”)

Table 2.8. Color sequences

Color codeColor
0Black
1Red
2Green
3Yellow
4Blue
5Magenta
6Cyan
7White

+Table 2.8, “ANSI escape sequences”. +

Table 2.8. ANSI escape sequences

Escape codeDescription
0All attributes off
1Bold on
4Underline on
5Blink on
7Reverse video on
3<color>Foreground color is <color> (see Table 2.9, “Color sequences”)
4<color>Background color is <color> (see Table 2.9, “Color sequences”)

Table 2.9. Color sequences

Color codeColor
0Black
1Red
2Green
3Yellow
4Blue
5Magenta
6Cyan
7White

Mutt uses these attributes for handling text/enriched messages, and they can also be used by an external autoview script for highlighting @@ -169,36 +252,48 @@ your xterm, then that color will be used instead of green. Note that the search commands in the pager take regular expressions, which are not quite the same as the more complex patterns used by the search -command in the index. This is because the pager only performs simple -text search, whereas the index provides boolean filtering on several -aspects of messages. -

4.3. Threaded Mode

-When the mailbox is sorted by threads, there are -a few additional functions available in the index and pager modes -as shown in Table 2.9, “Most common thread mode keys”. -

Table 2.9. Most common thread mode keys

KeyFunctionDescription
^D<delete-thread>delete all messages in the current thread
^U<undelete-thread>undelete all messages in the current thread
^N<next-thread>jump to the start of the next thread
^P<previous-thread>jump to the start of the previous thread
^R<read-thread>mark the current thread as read
Esc d<delete-subthread>delete all messages in the current subthread
Esc u<undelete-subthread>undelete all messages in the current subthread
Esc n<next-subthread>jump to the start of the next subthread
Esc p<previous-subthread>jump to the start of the previous subthread
Esc r<read-subthread>mark the current subthread as read
Esc t<tag-thread>toggle the tag on the current thread
Esc v<collapse-thread>toggle collapse for the current thread
Esc V<collapse-all>toggle collapse for all threads
P<parent-message>jump to parent message in thread

Note

+command in the index. This is because patterns are used to select messages by +criteria whereas the pager already displays a selected message. +

5.3. Threaded Mode

+So-called “threads” provide a hierarchy of messages where +replies are linked to their parent message(s). This organizational form +is extremely useful in mailing lists where different parts of the +discussion diverge. Mutt displays threads as a tree structure. +

+In Mutt, when a mailbox is sorted +by threads, there are a few additional functions +available in the index +and pager modes as shown in +Table 2.10, “Most common thread mode keys”. +

Table 2.10. Most common thread mode keys

KeyFunctionDescription
^D<delete-thread>delete all messages in the current thread
^U<undelete-thread>undelete all messages in the current thread
^N<next-thread>jump to the start of the next thread
^P<previous-thread>jump to the start of the previous thread
^R<read-thread>mark the current thread as read
Esc d<delete-subthread>delete all messages in the current subthread
Esc u<undelete-subthread>undelete all messages in the current subthread
Esc n<next-subthread>jump to the start of the next subthread
Esc p<previous-subthread>jump to the start of the previous subthread
Esc r<read-subthread>mark the current subthread as read
Esc t<tag-thread>toggle the tag on the current thread
Esc v<collapse-thread>toggle collapse for the current thread
Esc V<collapse-all>toggle collapse for all threads
P<parent-message>jump to parent message in thread

Collapsing a thread displays only the first message in the thread and hides the others. This is useful when threads contain so many messages that you can only see a handful of threads on -the screen. See %M in $index_format. -For example, you could use "%?M?(#%03M)&(%4l)?" in $index_format to optionally -display the number of hidden messages if the thread is collapsed. -

-See also: $strict_threads. -

4.4. Miscellaneous Functions

+the screen. See %M in $index_format. +For example, you could use “%?M?(#%03M)&(%4l)?” in $index_format to optionally +display the number of hidden messages if the thread is +collapsed. The %?<char>?<if-part>&<else-part>? +syntax is explained in detail in +format string conditionals. +

+Technically, every reply should contain a list of its parent messages in +the thread tree, but not all do. In these cases, Mutt groups them by +subject which can be controlled using the +$strict_threads variable. +

5.4. Miscellaneous Functions

In addition, the index and pager menus have these interesting functions:

<create-alias> (default: a)

Creates a new alias based upon the current message (or prompts for a -new one). Once editing is complete, an alias +new one). Once editing is complete, an alias command is added to the file specified by the $alias_file variable for future use

Note

Mutt does not read the $alias_file -upon startup so you must explicitly source the file. +upon startup so you must explicitly source the file.

<check-traditional-pgp> (default: Esc P)

@@ -237,7 +332,7 @@ to send.

This command is used to execute any command you would normally put in a configuration file. A common use is to check the settings of variables, or -in conjunction with macros to change settings on the +in conjunction with macros to change settings on the fly.

<extract-keys> (default: ^K) @@ -254,9 +349,9 @@ you misspelled the passphrase. <list-reply> (default: L)

Reply to the current or tagged message(s) by extracting any addresses which -match the regular expressions given by the lists or subscribe +match the regular expressions given by the lists or subscribe commands, but also honor any Mail-Followup-To header(s) if the -$honor_followup_to +$honor_followup_to configuration variable is set. Using this when replying to messages posted to mailing lists helps avoid duplicate copies being sent to the author of the message you are replying to. @@ -264,8 +359,8 @@ the message you are replying to. <pipe-message> (default: |)

Asks for an external Unix command and pipes the current or -tagged message(s) to it. The variables $pipe_decode, $pipe_split, -$pipe_sep and $wait_key control the exact behavior of this function. +tagged message(s) to it. The variables $pipe_decode, $pipe_split, +$pipe_sep and $wait_key control the exact behavior of this function.

<resend-message> (default: Esc e)

@@ -273,7 +368,7 @@ Mutt takes the current message as a template for a new message. This function is best described as "recall from arbitrary folders". It can conveniently be used to forward MIME messages while preserving the original mail structure. Note that the amount of headers -included here depends on the value of the $weed +included here depends on the value of the $weed variable.

This function is also available from the attachment menu. You can use this @@ -282,7 +377,7 @@ as a message/rfc822 body part.

<shell-escape> (default: !)

-Asks for an external Unix command and executes it. The $wait_key can be used to control +Asks for an external Unix command and executes it. The $wait_key can be used to control whether Mutt will wait for a key to be pressed when the command returns (presumably to let the user read the output of the command), based on the return status of the named command. If no command is given, an @@ -290,7 +385,7 @@ interactive shell is executed.

<toggle-quoted> (default: T)

-The pager uses the $quote_regexp variable to detect quoted text when +The pager uses the $quote_regexp variable to detect quoted text when displaying the body of the message. This function toggles the display of the quoted material in the message. It is particularly useful when being interested in just the response and there is a large amount of @@ -300,45 +395,59 @@ quoted text in the way.

This function will go to the next line of non-quoted text which comes after a line of quoted text in the internal pager. -

5. Sending Mail

5.1. Introduction

-The bindings shown in Table 2.10, “Most common mail sending keys” are available in the +

6. Sending Mail

6.1. Introduction

+The bindings shown in Table 2.11, “Most common mail sending keys” are available in the index and pager to start a new message. -

Table 2.10. Most common mail sending keys

KeyFunctionDescription
m<compose>compose a new message
r<reply>reply to sender
g<group-reply>reply to all recipients
L<list-reply>reply to mailing list address
f<forward>forward message
b<bounce>bounce (remail) message
Esc k<mail-key>mail a PGP public key to someone

+

Table 2.11. Most common mail sending keys

KeyFunctionDescription
m<compose>compose a new message
r<reply>reply to sender
g<group-reply>reply to all recipients
L<list-reply>reply to mailing list address
f<forward>forward message
b<bounce>bounce (remail) message
Esc k<mail-key>mail a PGP public key to someone

Bouncing a message sends the message as-is to the recipient you specify. Forwarding a message allows you to add comments or modify the message you are forwarding. These items are discussed -in greater detail in the next chapter “Forwarding +in greater detail in the next section “Forwarding and Bouncing Mail.”

Mutt will then enter the compose menu and prompt you for the -recipients to place on the “To:” header field. Next, it will ask +recipients to place on the “To:” header field when you hit m to start a new message. Next, it will ask you for the “Subject:” field for the message, providing a default if -you are replying to or forwarding a message. See also +you are replying to or forwarding a message. You again +have the chance to adjust recipients, subject, and security settings +right before actually sending the message. See also $askcc, $askbcc, -$autoedit, +$autoedit, $bounce, -$fast_reply, -and $include -for changing how Mutt asks these questions. -

-Mutt will then automatically start your $editor -on the message body. If the $edit_headers -variable is set, the headers will be at the top of the message in your editor. -Any messages you are replying to will be added in sort order to the message, +$fast_reply, +and $include +for changing how and if Mutt asks these questions. +

+When replying, Mutt fills these fields with proper values depending on +the reply type. The types of replying supported are: +

Simple reply

+Reply to the author directly. +

Group reply

+Reply to the author as well to all recipients except you; this consults +alternates. +

List reply

+Reply to all mailing list addresses found, either specified via +configuration or auto-detected. See Section 12, “Mailing Lists” for +details. +

+After getting recipients for new messages, forwards or replies, Mutt +will then automatically start your $editor on the message body. If the $edit_headers variable is +set, the headers will be at the top of the message in your editor. Any +messages you are replying to will be added in sort order to the message, with appropriate $attribution, -$indent_string and -$post_indent_string. -When forwarding a message, if the $mime_forward -variable is unset, a copy of the forwarded message will be included. If -you have specified a $signature, it -will be appended to the message. +$indent_string and +$post_indent_string. +When forwarding a message, if the $mime_forward variable is +unset, a copy of the forwarded message will be included. If you have +specified a $signature, it will +be appended to the message.

Once you have finished editing the body of your mail message, you are returned to the compose menu providing the functions -shown in Table 2.11, “Most common compose menu keys” to modify, send or postpone the +shown in Table 2.12, “Most common compose menu keys” to modify, send or postpone the message. -

Table 2.11. Most common compose menu keys

KeyFunctionDescription
a<attach-file>attach a file
A<attach-message>attach message(s) to the message
Esc k<attach-key>attach a PGP public key
d<edit-description>edit description on attachment
D<detach-file>detach a file
t<edit-to>edit the To field
Esc f<edit-from>edit the From field
r<edit-reply-to>edit the Reply-To field
c<edit-cc>edit the Cc field
b<edit-bcc>edit the Bcc field
y<send-message>send the message
s<edit-subject>edit the Subject
S<smime-menu>select S/MIME options
f<edit-fcc>specify an “Fcc” mailbox
p<pgp-menu>select PGP options
P<postpone-message>postpone this message until later
q<quit>quit (abort) sending the message
w<write-fcc>write the message to a folder
i<ispell>check spelling (if available on your system)
^F<forget-passphrase>wipe passphrase(s) from memory

+

Table 2.12. Most common compose menu keys

KeyFunctionDescription
a<attach-file>attach a file
A<attach-message>attach message(s) to the message
Esc k<attach-key>attach a PGP public key
d<edit-description>edit description on attachment
D<detach-file>detach a file
t<edit-to>edit the To field
Esc f<edit-from>edit the From field
r<edit-reply-to>edit the Reply-To field
c<edit-cc>edit the Cc field
b<edit-bcc>edit the Bcc field
y<send-message>send the message
s<edit-subject>edit the Subject
S<smime-menu>select S/MIME options
f<edit-fcc>specify an “Fcc” mailbox
p<pgp-menu>select PGP options
P<postpone-message>postpone this message until later
q<quit>quit (abort) sending the message
w<write-fcc>write the message to a folder
i<ispell>check spelling (if available on your system)
^F<forget-passphrase>wipe passphrase(s) from memory

The compose menu is also used to edit the attachments for a message which can be either files or other messages. The <attach-message> function to will prompt you for a folder to attach messages from. You can now tag messages in that folder and they @@ -347,27 +456,31 @@ will be attached to the message you are sending. Note that certain operations like composing a new mail, replying, forwarding, etc. are not permitted when you are in that folder. The %r in -$status_format will change to +$status_format will change to a “A” to indicate that you are in attach-message mode. -

5.2. Editing the message header

-When editing the header because of $edit_headers +

6.2. Editing the Message Header

+When editing the header because of $edit_headers being set, there are a several pseudo headers available which -will not be included in sent messages. -

5.2.1. Fcc: pseudo header

+will not be included in sent messages but trigger special Mutt behavior. +

6.2.1. Fcc: Pseudo Header

If you specify - +

Fcc: filename - +

as a header, Mutt will pick up filename just as if you had used the <edit-fcc> function in the compose menu. -

5.2.2. Attach: pseudo header

+It can later be changed from the compose menu. +

6.2.2. Attach: Pseudo Header

You can also attach files to your message by specifying - -Attach: filename [ description ] - +

+Attach: filename +[ description ] +

where filename is the file to attach and description is an -optional string to use as the description of the attached file. -

5.2.3. Pgp: pseudo header

+optional string to use as the description of the attached file. Spaces +in filenames have to be escaped using backslash (“\”). +The file can be removed as well as more added from the compose menu. +

6.2.3. Pgp: Pseudo Header

If you want to use PGP, you can specify

Pgp: [ E | S | S<id> ] @@ -375,15 +488,15 @@ If you want to use PGP, you can specify

“E” selects encryption, “S” selects signing and “S<id>” selects signing with the given key, setting -$pgp_sign_as -permanently. -

5.2.4. In-Reply-To: header

+$pgp_sign_as +permanently. The selection can later be changed in the compose menu. +

6.2.4. In-Reply-To: Header

When replying to messages, the In-Reply-To: header contains the -Message-Id of the message(s) you reply to. If you remove its value, Mutt will not generate a +Message-Id of the message(s) you reply to. If you remove or modify its value, Mutt will not generate a References: field, which allows you to create a new message thread, for example to create a new message to a mailing list without having to enter the mailing list's address. -

5.3. Sending cryptographically signed/encrypted messages

-If you have told mutt to PGP or S/MIME encrypt a message, it will guide you +

6.3. Sending Cryptographically Signed/Encrypted Messages

+If you have told Mutt to PGP or S/MIME encrypt a message, it will guide you through a key selection process when you try to send the message. Mutt will not ask you any questions about keys which have a certified user ID matching one of the message recipients' mail @@ -392,22 +505,22 @@ several keys, weakly certified user ID fields, or where no matching keys can be found.

In these cases, you are dropped into a menu with a list of keys from -which you can select one. When you quit this menu, or mutt can't +which you can select one. When you quit this menu, or Mutt can't find any matching keys, you are prompted for a user ID. You can, as -usually, abort this prompt using ^G. When you do so, mutt will +usually, abort this prompt using ^G. When you do so, Mutt will return to the compose screen.

Once you have successfully finished the key selection, the message will be encrypted using the selected public keys when sent out.

-Most fields of the entries in the key selection menu (see also $pgp_entry_format) +Most fields of the entries in the key selection menu (see also $pgp_entry_format) have obvious meanings. But some explanations on the capabilities, flags, and validity fields are in order.

-The flags sequence (%f) will expand to one of the flags in -Table 2.12, “PGP key menu flags”. -

Table 2.12. PGP key menu flags

FlagDescription
RThe key has been revoked and can't be used.
XThe key is expired and can't be used.
dYou have marked the key as disabled.
cThere are unknown critical self-signature packets.

-The capabilities field (%c) expands to a two-character sequence +The flags sequence (“%f”) will expand to one of the flags in +Table 2.13, “PGP key menu flags”. +

Table 2.13. PGP key menu flags

FlagDescription
RThe key has been revoked and can't be used.
XThe key is expired and can't be used.
dYou have marked the key as disabled.
cThere are unknown critical self-signature packets.

+The capabilities field (“%c”) expands to a two-character sequence representing a key's capabilities. The first character gives the key's encryption capabilities: A minus sign (“-”) means that the key cannot be used for encryption. A dot (“.”) means that @@ -420,47 +533,12 @@ again, a “-” implies “not f that the key is marked as an encryption key in one of the user-ids, and “s” denotes a key which can be used for signing.

-Finally, the validity field (%t) indicates how well-certified a user-id +Finally, the validity field (“%t”) indicates how well-certified a user-id is. A question mark (“?”) indicates undefined validity, a minus character (“-”) marks an untrusted association, a space character means a partially trusted association, and a plus character (“+”) indicates complete validity. -

5.4. Sending anonymous messages via mixmaster

-You may also have compiled mutt to co-operate with Mixmaster, an -anonymous remailer. Mixmaster permits you to send your messages -anonymously using a chain of remailers. Mixmaster support in mutt is for -mixmaster version 2.04 (beta 45 appears to be the latest) and 2.03. -It does not support earlier versions or the later so-called version 3 betas, -of which the latest appears to be called 2.9b23. -

-To use it, you'll have to obey certain restrictions. Most -important, you cannot use the Cc and Bcc headers. To tell -Mutt to use mixmaster, you have to select a remailer chain, using -the mix function on the compose menu. -

-The chain selection screen is divided into two parts. In the -(larger) upper part, you get a list of remailers you may use. In -the lower part, you see the currently selected chain of remailers. -

-You can navigate in the chain using the <chain-prev> and -<chain-next> functions, which are by default bound to the left -and right arrows and to the h and l keys (think vi -keyboard bindings). To insert a remailer at the current chain -position, use the <insert> function. To append a remailer behind -the current chain position, use <select-entry> or <append>. -You can also delete entries from the chain, using the corresponding -function. Finally, to abandon your changes, leave the menu, or -<accept> them pressing (by default) the Return key. -

-Note that different remailers do have different capabilities, -indicated in the %c entry of the remailer menu lines (see -$mix_entry_format). Most important is -the “middleman” capability, indicated by a capital “M”: This -means that the remailer in question cannot be used as the final -element of a chain, but will only forward messages to other -mixmaster remailers. For details on the other capabilities, please -have a look at the mixmaster documentation. -

5.5. Sending format=flowed messages

5.5.1. Concept

+

6.4. Sending Format=Flowed Messages

6.4.1. Concept

format=flowed-style messages (or f=f for short) are text/plain messages that consist of paragraphs which a receiver's mail client may reformat to its own needs which mostly means to @@ -468,17 +546,17 @@ customize line lengths regardless of what the sender sent. Technically this is achieved by letting lines of a “flowable” paragraph end in spaces except for the last line.

-While for text-mode clients like mutt it's the best way to assume only a +While for text-mode clients like Mutt it's the best way to assume only a standard 80x25 character cell terminal, it may be desired to let the receiver decide completely how to view a message. -

5.5.2. Mutt support

+

6.4.2. Mutt Support

Mutt only supports setting the required format=flowed -MIME parameter on outgoing messages if the $text_flowed +MIME parameter on outgoing messages if the $text_flowed variable is set, specifically it does not add the trailing spaces.

After editing the initial message text and before entering -the compose menu, mutt properly space-stuffes the message. +the compose menu, Mutt properly space-stuffes the message. Space-stuffing is required by RfC3676 defining format=flowed and means to prepend a space to:

  • all lines starting with a space

  • lines starting with the word “From” @@ -492,8 +570,8 @@ quote or not. Furthermore, Mutt only applies space-stuffing

All leading spaces are to be removed by receiving clients to restore the original message prior to further processing. -

5.5.3. Editor considerations

-As mutt provides no additional features to compose f=f +

6.4.3. Editor Considerations

+As Mutt provides no additional features to compose f=f messages, it's completely up to the user and his editor to produce proper messages. Please consider your editor's documentation if you intend to send f=f messages. @@ -506,7 +584,7 @@ For example, vim provides the formatoptions setting to assist in creating f=f messages, see :help fo-table for details. -

6. Forwarding and Bouncing Mail

+

7. Forwarding and Bouncing Mail

Bouncing and forwarding let you send an existing message to recipients that you specify. Bouncing a message sends a verbatim copy of a message to alternative addresses as if they were the message's original @@ -519,22 +597,22 @@ respectively.

Forwarding can be done by including the original message in the new message's body (surrounded by indicating lines) or including it as a MIME -attachment, depending on the value of the $mime_forward variable. Decoding of attachments, -like in the pager, can be controlled by the $forward_decode and $mime_forward_decode variables, +attachment, depending on the value of the $mime_forward variable. Decoding of attachments, +like in the pager, can be controlled by the $forward_decode and $mime_forward_decode variables, respectively. The desired forwarding format may depend on the content, -therefore $mime_forward is a quadoption which, for +therefore $mime_forward is a quadoption which, for example, can be set to “ask-no”.

The inclusion of headers is controlled by the current setting of the -$weed variable, unless $mime_forward is set. +$weed variable, unless $mime_forward is set.

Editing the message to forward follows the same procedure as sending or replying to a message does. -

7. Postponing Mail

+

8. Postponing Mail

At times it is desirable to delay sending a message that you have already begun to compose. When the <postpone-message> function is used in the compose menu, the body of your message and attachments -are stored in the mailbox specified by the $postponed variable. This means that you can recall the +are stored in the mailbox specified by the $postponed variable. This means that you can recall the message even if you exit Mutt and then restart it at a later time.

Once a message is postponed, there are several ways to resume it. From the @@ -549,5 +627,5 @@ the message is only updated when you actually finish the message and send it. Also, you must be in the same folder with the message you replied to for the status of the message to be updated.

-See also the $postpone quad-option. +See also the $postpone quad-option.