- The Mutt E-Mail Client
- by Michael Elkins <me@cs.hmc.edu>
- version 1.5.8
-
- ``All mail clients suck. This one just sucks less.'' -me, circa 1995
- ______________________________________________________________________
-
- Table of Contents
-
- 1. Introduction
- 1.1 Mutt Home Page
- 1.2 Mutt-ng Home Page
- 1.3 Mailing Lists
- 1.4 Software Distribution Sites
- 1.5 IRC
- 1.6 Weblog
- 1.7 Copyright
-
- 2. Getting Started
- 2.1 Moving Around in Menus
- 2.2 Editing Input Fields
- 2.3 Reading Mail - The Index and Pager
- 2.3.1 The Message Index
- 2.3.1.1 Status Flags
- 2.3.2 The Pager
- 2.3.3 Threaded Mode
- 2.3.4 Miscellaneous Functions
- 2.4 Sending Mail
- 2.4.1 Editing the message header
- 2.4.2 Using Mutt with PGP
- 2.4.3 Sending anonymous messages via mixmaster.
- 2.5 Forwarding and Bouncing Mail
- 2.6 Postponing Mail
- 2.7 Reading news via NNTP
-
- 3. Configuration
- 3.1 Syntax of Initialization Files
- 3.2 Defining/Using aliases
- 3.3 Changing the default key bindings
- 3.4 Defining aliases for character sets
- 3.5 Setting variables based upon mailbox
- 3.6 Keyboard macros
- 3.7 Using color and mono video attributes
- 3.8 Ignoring (weeding) unwanted message headers
- 3.9 Alternative addresses
- 3.10 Mailing lists
- 3.11 Using Multiple spool mailboxes
- 3.12 Defining mailboxes which receive mail
- 3.13 User defined headers
- 3.14 Defining the order of headers when viewing messages
- 3.15 Specify default save filename
- 3.16 Specify default Fcc: mailbox when composing
- 3.17 Specify default save filename and default Fcc: mailbox at once
- 3.18 Change settings based upon message recipients
- 3.19 Change settings before formatting a message
- 3.20 Choosing the cryptographic key of the recipient
- 3.21 Adding key sequences to the keyboard buffer
- 3.22 Executing functions
- 3.23 Message Scoring
- 3.24 Spam detection
- 3.25 Setting variables
- 3.26 Reading initialization commands from another file
- 3.27 Removing hooks
-
- 4. Advanced Usage
- 4.1 Regular Expressions
- 4.2 Patterns
- 4.2.1 Pattern Modifier
- 4.2.2 Complex Patterns
- 4.2.3 Searching by Date
- 4.3 Using Tags
- 4.4 Using Hooks
- 4.4.1 Message Matching in Hooks
- 4.5 Usingg the sidebar
- 4.6 External Address Queries
- 4.7 Mailbox Formats
- 4.8 Mailbox Shortcuts
- 4.9 Handling Mailing Lists
- 4.10 Editing threads
- 4.10.1 Linking threads
- 4.10.2 Breaking threads
- 4.11 Delivery Status Notification (DSN) Support
- 4.12 POP3 Support (OPTIONAL)
- 4.13 IMAP Support (OPTIONAL)
- 4.13.1 The Folder Browser
- 4.13.2 Authentication
- 4.14 Managing multiple IMAP/POP accounts (OPTIONAL)
- 4.15 Start a WWW Browser on URLs (EXTERNAL)
- 4.16 Compressed folders Support (OPTIONAL)
- 4.16.1 Open a compressed mailbox for reading
- 4.16.2 Write a compressed mailbox
- 4.16.3 Append a message to a compressed mailbox
- 4.16.4 Encrypted folders
-
- 5. Mutt's MIME Support
- 5.1 Using MIME in Mutt
- 5.1.1 Viewing MIME messages in the pager
- 5.1.2 The Attachment Menu
- 5.1.3 The Compose Menu
- 5.2 MIME Type configuration with mime.types
- 5.3 MIME Viewer configuration with mailcap
- 5.3.1 The Basics of the mailcap file
- 5.3.2 Secure use of mailcap
- 5.3.3 Advanced mailcap Usage
- 5.3.3.1 Optional Fields
- 5.3.3.2 Search Order
- 5.3.3.3 Command Expansion
- 5.3.4 Example mailcap files
- 5.4 MIME Autoview
- 5.5 MIME Multipart/Alternative
- 5.6 MIME Lookup
-
- 6. Reference
- 6.1 Command line options
- 6.2 Configuration Commands
- 6.3 Configuration variables
- 6.3.1 abort_nosubject
- 6.3.2 abort_unmodified
- 6.3.3 alias_file
- 6.3.4 alias_format
- 6.3.5 allow_8bit
- 6.3.6 allow_ansi
- 6.3.7 arrow_cursor
- 6.3.8 ascii_chars
- 6.3.9 ask_follow_up
- 6.3.10 ask_x_comment_to
- 6.3.11 askbcc
- 6.3.12 askcc
- 6.3.13 assumed_charset
- 6.3.14 attach_format
- 6.3.15 attach_sep
- 6.3.16 attach_split
- 6.3.17 attribution
- 6.3.18 auto_tag
- 6.3.19 autoedit
- 6.3.20 beep
- 6.3.21 beep_new
- 6.3.22 bounce
- 6.3.23 bounce_delivered
- 6.3.24 catchup_newsgroup
- 6.3.25 certificate_file
- 6.3.26 charset
- 6.3.27 check_new
- 6.3.28 collapse_unread
- 6.3.29 compose_format
- 6.3.30 config_charset
- 6.3.31 confirmappend
- 6.3.32 confirmcreate
- 6.3.33 connect_timeout
- 6.3.34 content_type
- 6.3.35 copy
- 6.3.36 crypt_autoencrypt
- 6.3.37 crypt_autopgp
- 6.3.38 crypt_autosign
- 6.3.39 crypt_autosmime
- 6.3.40 crypt_replyencrypt
- 6.3.41 crypt_replysign
- 6.3.42 crypt_replysignencrypted
- 6.3.43 crypt_timestamp
- 6.3.44 crypt_use_gpgme
- 6.3.45 crypt_verify_sig
- 6.3.46 date_format
- 6.3.47 default_hook
- 6.3.48 delete
- 6.3.49 delete_untag
- 6.3.50 digest_collapse
- 6.3.51 display_filter
- 6.3.52 dotlock_program
- 6.3.53 dsn_notify
- 6.3.54 dsn_return
- 6.3.55 duplicate_threads
- 6.3.56 edit_headers
- 6.3.57 editor
- 6.3.58 encode_from
- 6.3.59 envelope_from
- 6.3.60 escape
- 6.3.61 fast_reply
- 6.3.62 fcc_attach
- 6.3.63 fcc_clear
- 6.3.64 file_charset
- 6.3.65 folder
- 6.3.66 folder_format
- 6.3.67 followup_to
- 6.3.68 followup_to_poster
- 6.3.69 force_name
- 6.3.70 forward_decode
- 6.3.71 forward_decrypt
- 6.3.72 forward_edit
- 6.3.73 forward_format
- 6.3.74 forward_quote
- 6.3.75 from
- 6.3.76 gecos_mask
- 6.3.77 group_index_format
- 6.3.78 hdrs
- 6.3.79 header
- 6.3.80 help
- 6.3.81 hidden_host
- 6.3.82 hide_limited
- 6.3.83 hide_missing
- 6.3.84 hide_thread_subject
- 6.3.85 hide_top_limited
- 6.3.86 hide_top_missing
- 6.3.87 history
- 6.3.88 honor_followup_to
- 6.3.89 hostname
- 6.3.90 ignore_list_reply_to
- 6.3.91 imap_authenticators
- 6.3.92 imap_delim_chars
- 6.3.93 imap_force_ssl
- 6.3.94 imap_headers
- 6.3.95 imap_home_namespace
- 6.3.96 imap_keepalive
- 6.3.97 imap_list_subscribed
- 6.3.98 imap_pass
- 6.3.99 imap_passive
- 6.3.100 imap_peek
- 6.3.101 imap_reconnect
- 6.3.102 imap_servernoise
- 6.3.103 imap_user
- 6.3.104 implicit_autoview
- 6.3.105 include
- 6.3.106 include_onlyfirst
- 6.3.107 indent_string
- 6.3.108 index_format
- 6.3.109 inews
- 6.3.110 ispell
- 6.3.111 keep_flagged
- 6.3.112 list_reply
- 6.3.113 locale
- 6.3.114 mail_check
- 6.3.115 mailcap_path
- 6.3.116 mailcap_sanitize
- 6.3.117 maildir_trash
- 6.3.118 mark_old
- 6.3.119 markers
- 6.3.120 mask
- 6.3.121 max_line_length
- 6.3.122 mbox
- 6.3.123 mbox_type
- 6.3.124 menu_context
- 6.3.125 menu_scroll
- 6.3.126 message_format
- 6.3.127 meta_key
- 6.3.128 metoo
- 6.3.129 mh_purge
- 6.3.130 mh_seq_flagged
- 6.3.131 mh_seq_replied
- 6.3.132 mh_seq_unseen
- 6.3.133 mime_forward
- 6.3.134 mime_forward_decode
- 6.3.135 mime_forward_rest
- 6.3.136 mime_subject
- 6.3.137 mix_entry_format
- 6.3.138 mixmaster
- 6.3.139 move
- 6.3.140 msgid_format
- 6.3.141 narrow_tree
- 6.3.142 news_cache_dir
- 6.3.143 news_server
- 6.3.144 newsrc
- 6.3.145 nntp_context
- 6.3.146 nntp_load_description
- 6.3.147 nntp_pass
- 6.3.148 nntp_poll
- 6.3.149 nntp_reconnect
- 6.3.150 nntp_user
- 6.3.151 operating_system
- 6.3.152 pager
- 6.3.153 pager_context
- 6.3.154 pager_format
- 6.3.155 pager_index_lines
- 6.3.156 pager_stop
- 6.3.157 pgp_auto_decode
- 6.3.158 pgp_autoinline
- 6.3.159 pgp_check_exit
- 6.3.160 pgp_clearsign_command
- 6.3.161 pgp_decode_command
- 6.3.162 pgp_decrypt_command
- 6.3.163 pgp_encrypt_only_command
- 6.3.164 pgp_encrypt_sign_command
- 6.3.165 pgp_entry_format
- 6.3.166 pgp_export_command
- 6.3.167 pgp_getkeys_command
- 6.3.168 pgp_good_sign
- 6.3.169 pgp_ignore_subkeys
- 6.3.170 pgp_import_command
- 6.3.171 pgp_list_pubring_command
- 6.3.172 pgp_list_secring_command
- 6.3.173 pgp_long_ids
- 6.3.174 pgp_mime_auto
- 6.3.175 pgp_replyinline
- 6.3.176 pgp_retainable_sigs
- 6.3.177 pgp_show_unusable
- 6.3.178 pgp_sign_as
- 6.3.179 pgp_sign_command
- 6.3.180 pgp_sort_keys
- 6.3.181 pgp_strict_enc
- 6.3.182 pgp_timeout
- 6.3.183 pgp_use_gpg_agent
- 6.3.184 pgp_verify_command
- 6.3.185 pgp_verify_key_command
- 6.3.186 pipe_decode
- 6.3.187 pipe_sep
- 6.3.188 pipe_split
- 6.3.189 pop_auth_try_all
- 6.3.190 pop_authenticators
- 6.3.191 pop_checkinterval
- 6.3.192 pop_delete
- 6.3.193 pop_host
- 6.3.194 pop_last
- 6.3.195 pop_pass
- 6.3.196 pop_reconnect
- 6.3.197 pop_user
- 6.3.198 post_indent_string
- 6.3.199 post_moderated
- 6.3.200 postpone
- 6.3.201 postponed
- 6.3.202 preconnect
- 6.3.203 print
- 6.3.204 print_command
- 6.3.205 print_decode
- 6.3.206 print_split
- 6.3.207 prompt_after
- 6.3.208 query_command
- 6.3.209 quit
- 6.3.210 quote_empty
- 6.3.211 quote_quoted
- 6.3.212 quote_regexp
- 6.3.213 read_inc
- 6.3.214 read_only
- 6.3.215 realname
- 6.3.216 recall
- 6.3.217 record
- 6.3.218 reply_regexp
- 6.3.219 reply_self
- 6.3.220 reply_to
- 6.3.221 resolve
- 6.3.222 reverse_alias
- 6.3.223 reverse_name
- 6.3.224 reverse_realname
- 6.3.225 rfc2047_parameters
- 6.3.226 save_address
- 6.3.227 save_empty
- 6.3.228 save_name
- 6.3.229 save_unsubscribed
- 6.3.230 score
- 6.3.231 score_threshold_delete
- 6.3.232 score_threshold_flag
- 6.3.233 score_threshold_read
- 6.3.234 send_charset
- 6.3.235 sendmail
- 6.3.236 sendmail_wait
- 6.3.237 shell
- 6.3.238 shorten_hierarchy
- 6.3.239 show_new_news
- 6.3.240 show_only_unread
- 6.3.241 sidebar_delim
- 6.3.242 sidebar_visible
- 6.3.243 sidebar_width
- 6.3.244 sig_dashes
- 6.3.245 sig_on_top
- 6.3.246 signature
- 6.3.247 signoff_string
- 6.3.248 simple_search
- 6.3.249 sleep_time
- 6.3.250 smart_wrap
- 6.3.251 smileys
- 6.3.252 smime_ask_cert_label
- 6.3.253 smime_ca_location
- 6.3.254 smime_certificates
- 6.3.255 smime_decrypt_command
- 6.3.256 smime_decrypt_use_default_key
- 6.3.257 smime_default_key
- 6.3.258 smime_encrypt_command
- 6.3.259 smime_encrypt_with
- 6.3.260 smime_get_cert_command
- 6.3.261 smime_get_cert_email_command
- 6.3.262 smime_get_signer_cert_command
- 6.3.263 smime_import_cert_command
- 6.3.264 smime_is_default
- 6.3.265 smime_keys
- 6.3.266 smime_pk7out_command
- 6.3.267 smime_sign_command
- 6.3.268 smime_sign_opaque_command
- 6.3.269 smime_timeout
- 6.3.270 smime_verify_command
- 6.3.271 smime_verify_opaque_command
- 6.3.272 smtp_auth_password
- 6.3.273 smtp_auth_username
- 6.3.274 smtp_host
- 6.3.275 smtp_port
- 6.3.276 sort
- 6.3.277 sort_alias
- 6.3.278 sort_aux
- 6.3.279 sort_browser
- 6.3.280 sort_re
- 6.3.281 spam_separator
- 6.3.282 spoolfile
- 6.3.283 ssl_ca_certificates_file
- 6.3.284 ssl_client_cert
- 6.3.285 ssl_min_dh_prime_bits
- 6.3.286 ssl_starttls
- 6.3.287 ssl_use_sslv3
- 6.3.288 ssl_use_tlsv1
- 6.3.289 status_chars
- 6.3.290 status_format
- 6.3.291 status_on_top
- 6.3.292 strict_mime
- 6.3.293 strict_threads
- 6.3.294 stuff_quoted
- 6.3.295 suspend
- 6.3.296 text_flowed
- 6.3.297 thorough_search
- 6.3.298 thread_received
- 6.3.299 tilde
- 6.3.300 timeout
- 6.3.301 tmpdir
- 6.3.302 to_chars
- 6.3.303 trash
- 6.3.304 tunnel
- 6.3.305 umask
- 6.3.306 uncollapse_jump
- 6.3.307 use_8bitmime
- 6.3.308 use_domain
- 6.3.309 use_from
- 6.3.310 user_agent
- 6.3.311 visual
- 6.3.312 wait_key
- 6.3.313 weed
- 6.3.314 wrap_search
- 6.3.315 wrapmargin
- 6.3.316 write_bcc
- 6.3.317 write_inc
- 6.3.318 x_comment_to
- 6.3.319 xterm_icon
- 6.3.320 xterm_set_titles
- 6.3.321 xterm_title
- 6.4 Functions
- 6.4.1 generic
- 6.4.2 index
- 6.4.3 pager
- 6.4.4 alias
- 6.4.5 query
- 6.4.6 attach
- 6.4.7 compose
- 6.4.8 postpone
- 6.4.9 browser
- 6.4.10 pgp
- 6.4.11 editor
-
- 7. Miscellany
- 7.1 Acknowledgements
- 7.2 About this document
-
- ______________________________________________________________________
-
- 1\b1.\b. I\bIn\bnt\btr\bro\bod\bdu\buc\bct\bti\bio\bon\bn
-
- M\bMu\but\btt\bt is a small but very powerful text-based MIME mail client. Mutt
- is highly configurable, and is well suited to the mail power user with
- advanced features like key bindings, keyboard macros, mail threading,
- regular expression searches and a powerful pattern matching language
- for selecting groups of messages.
-
- This documentation additionaly contains documentation to M\bMu\but\btt\bt-\b-N\bNG\bG, a
- fork from Mutt with the goal to fix all the little annoyances of Mutt,
- to integrate all the Mutt patches that are floating around in the web,
- and to add other new features. Features specific to Mutt-ng will be
- discussed in an extra section. Don't be confused when most of the
- documentation talk about Mutt and not Mutt-ng, Mutt-ng contains all
- Mutt-ng features, plus many more.
-
- 1\b1.\b.1\b1.\b. M\bMu\but\btt\bt H\bHo\bom\bme\be P\bPa\bag\bge\be
-
- http://www.mutt.org/
-
- 1\b1.\b.2\b2.\b. M\bMu\but\btt\bt-\b-n\bng\bg H\bHo\bom\bme\be P\bPa\bag\bge\be
-
- http://mutt-ng.berlios.de/
-
- 1\b1.\b.3\b3.\b. M\bMa\bai\bil\bli\bin\bng\bg L\bLi\bis\bst\bts\bs
-
- +\bo mutt-ng-users@lists.berlios.de -- This is where the mutt-ng user
- support happens.
-
- +\bo mutt-ng-devel@lists.berlios.de -- The development mailing list for
- mutt-ng
-
- 1\b1.\b.4\b4.\b. S\bSo\bof\bft\btw\bwa\bar\bre\be D\bDi\bis\bst\btr\bri\bib\bbu\but\bti\bio\bon\bn S\bSi\bit\bte\bes\bs
-
- So far, there are no official releases of Mutt-ng, but you can
- download daily snapshots from http://mutt-ng.berlios.de/snapshots/
-
- 1\b1.\b.5\b5.\b. I\bIR\bRC\bC
-
- Visit channel _\b#_\bm_\bu_\bt_\bt_\bn_\bg on irc.freenode.net (www.freenode.net) to chat
- with other people interested in Mutt-ng.
-
- 1\b1.\b.6\b6.\b. W\bWe\beb\bbl\blo\bog\bg
-
- If you want to read fresh news about the latest development in Mutt-
- ng, and get informed about stuff like interesting, Mutt-ng-related
- articles and packages for your favorite distribution, you can read
- and/or subscribe to our Mutt-ng development weblog.
-
- 1\b1.\b.7\b7.\b. C\bCo\bop\bpy\byr\bri\big\bgh\bht\bt
-
- Mutt is Copyright (C) 1996-2000 Michael R. Elkins <me@cs.hmc.edu> and
- others
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or (at
- your option) any later version.
-
- This program is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.
-
- 2\b2.\b. G\bGe\bet\btt\bti\bin\bng\bg S\bSt\bta\bar\brt\bte\bed\bd
-
- 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 pages. See the Mutt Page for more details.
-
- 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
- at the command line. There are various command-line options, see
- either the mutt man page or the ``reference''.
-
- 2\b2.\b.1\b1.\b. M\bMo\bov\bvi\bin\bng\bg A\bAr\bro\bou\bun\bnd\bd i\bin\bn M\bMe\ben\bnu\bus\bs
-
- Information is presented in menus, very similar to ELM. Here is a
- table showing the common keys used to navigate menus in Mutt.
-
- j or Down 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
+ The Mutt Next Generation E-Mail Client
- 2\b2.\b.2\b2.\b. E\bEd\bdi\bit\bti\bin\bng\bg I\bIn\bnp\bpu\but\bt F\bFi\bie\bel\bld\bds\bs
+ Andreas Krennmair
- Mutt has a builtin line editor which is used as the primary way to
- input textual data such as email addresses or filenames. The keys
- used to move around while editing are very similar to those of Emacs.
+ <ak@synflood.at>
- ^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 ot the word
- ^W kill-word kill the word in front of the cursor
- ^U kill-line delete entire line
- ^V quote-char quote the next typed key
- <Up> history-up recall previous string from history
- <Down> history-down recall next string from history
- <BackSpace> backspace kill the char in front of the cursor
- Esc u upcase-word convert word to upper case
- Esc l downcase-word convert word to lower case
- Esc c capitalize-word capitalize the word
- ^G n/a abort
- <Return> n/a finish editing
+ Michael Elkins
- You can remap the _\be_\bd_\bi_\bt_\bo_\br functions using the ``bind'' command. For
- example, to make the _\bD_\be_\bl_\be_\bt_\be key delete the character in front of the
- cursor rather than under, you could use
+ <me@cs.hmc.edu>
- bind editor <delete> backspace
+ version devel-r522
- 2\b2.\b.3\b3.\b. R\bRe\bea\bad\bdi\bin\bng\bg M\bMa\bai\bil\bl -\b- T\bTh\bhe\be I\bIn\bnd\bde\bex\bx a\ban\bnd\bd P\bPa\bag\bge\ber\br
+ Abstract
- Similar to many other mail clients, there are two modes in which mail
- is read in Mutt. The first is the index of messages in the mailbox,
- which is called the ``index'' in Mutt. The second mode is the display
- of the message contents. This is called the ``pager.''
-
- The next few sections describe the functions provided in each of these
- modes.
-
- 2\b2.\b.3\b3.\b.1\b1.\b. T\bTh\bhe\be M\bMe\bes\bss\bsa\bag\bge\be I\bIn\bnd\bde\bex\bx
-
- c change to a different mailbox
- ESC c change to a folder in read-only mode
- C copy the current message to another mailbox
- ESC C decode a message and copy it to a folder
- ESC s decode a message and save it to a folder
- D delete messages matching a pattern
- d delete the current message
- F mark as important
- l show messages matching a pattern
- N mark message as new
- o change the current sort method
- O reverse sort the mailbox
- q save changes and exit
- s save-message
- T tag messages matching a pattern
- t toggle the tag on a message
- ESC t toggle tag on entire message thread
- U undelete messages matching a pattern
- u undelete-message
- v view-attachments
- x abort changes and exit
- <Return> display-message
- <Tab> jump to the next new message
- @ show the author's full e-mail address
- $ save changes to mailbox
- / search
- ESC / search-reverse
- ^L clear and redraw the screen
- ^T untag messages matching a pattern
-
- 2\b2.\b.3\b3.\b.1\b1.\b.1\b1.\b. S\bSt\bta\bat\btu\bus\bs F\bFl\bla\bag\bgs\bs
-
- In addition to who sent the message and the subject, a short summary
- of the disposition of each message is printed beside the message
- number. Zero or more of the following ``flags'' may appear, which
- mean:
-
- D\bD message is deleted (is marked for deletion)
-
- d\bd message have attachments marked for deletion
-
- K\bK contains a PGP public key
-
- N\bN message is new
-
- O\bO message is old
-
- P\bP message is PGP encrypted
-
- r\br message has been replied to
-
- S\bS message is signed, and the signature is succesfully verified
-
- s\bs message is signed
-
- !\b! message is flagged
-
- *\b* message is tagged
-
- Some of the status flags can be turned on or off using
-
- +\bo s\bse\bet\bt-\b-f\bfl\bla\bag\bg (default: w)
-
- +\bo c\bcl\ble\bea\bar\br-\b-f\bfl\bla\bag\bg (default: W)
-
- Furthermore, the following flags reflect who the message is addressed
- to. They can be customized with the ``$to_chars'' variable.
-
- +\b+ message is to you and you only
-
- T\bT message is to you, but also to or cc'ed to others
-
- C\bC message is cc'ed to you
-
- F\bF message is from you
-
- L\bL message is sent to a subscribed mailing list
-
- 2\b2.\b.3\b3.\b.2\b2.\b. T\bTh\bhe\be P\bPa\bag\bge\ber\br
-
- By default, Mutt uses its builtin pager to display the body of
- messages. The pager is very similar to the Unix program _\bl_\be_\bs_\bs though
- not nearly as featureful.
-
- <Return> go down one line
- <Space> display the next page (or next message if at the end of a message)
- - go back to the previous page
- n search for next match
- S skip beyond quoted text
- T toggle display of quoted text
- ? show keybindings
- / search for a regular expression (pattern)
- ESC / search backwards for a regular expression
- \ toggle search pattern coloring
- ^ jump to the top of the message
-
- In addition, many of the functions from the _\bi_\bn_\bd_\be_\bx are available in the
- pager, such as _\bd_\be_\bl_\be_\bt_\be_\b-_\bm_\be_\bs_\bs_\ba_\bg_\be or _\bc_\bo_\bp_\by_\b-_\bm_\be_\bs_\bs_\ba_\bg_\be (this is one advantage
- over using an external pager to view messages).
-
- Also, the internal pager supports a couple other advanced features.
- For one, it will accept and translate the ``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, ``_'' 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.
-
- Additionally, the internal pager supports the ANSI escape sequences
- for character attributes. Mutt translates them into the correct color
- and character settings. The sequences Mutt supports are:
-
- ESC [ Ps;Ps;Ps;...;Ps m
- where Ps =
- 0 All Attributes Off
- 1 Bold on
- 4 Underline on
- 5 Blink on
- 7 Reverse video on
- 3x Foreground color is x
- 4x Background color is x
+ Michael Elinks on mutt, circa 1995: ``All mail clients suck. This one just
+ sucks less.''
- Colors are
- 0 black
- 1 red
- 2 green
- 3 yellow
- 4 blue
- 5 magenta
- 6 cyan
- 7 white
+ Sven Guckes on mutt, ca. 2003: ``But it still sucks!''
- Mutt uses these attributes for handling text/enriched messages, and
- they can also be used by an external ``autoview'' script for
- highlighting purposes. N\bNo\bot\bte\be:\b: If you change the colors for your
- display, for example by changing the color associated with color2 for
- your xterm, then that color will be used instead of green.
+ --------------------------------------------------------------------------
- 2\b2.\b.3\b3.\b.3\b3.\b. T\bTh\bhr\bre\bea\bad\bde\bed\bd M\bMo\bod\bde\be
+ Table of Contents
- When the mailbox is ``sorted'' by _\bt_\bh_\br_\be_\ba_\bd_\bs, there are a few additional
- functions available in the _\bi_\bn_\bd_\be_\bx and _\bp_\ba_\bg_\be_\br modes.
+ 1. Introduction
- ^D delete-thread delete all messages in the current thread
- ^U undelete-thread undelete all messages in the current thread
- ^N next-thread jump to the start of the next thread
- ^P previous-thread jump to the start of the previous thread
- ^R read-thread mark the current thread as read
- ESC d delete-subthread delete all messages in the current subthread
- ESC u undelete-subthread undelete all messages in the current subthread
- ESC n next-subthread jump to the start of the next subthread
- ESC p previous-subthread jump to the start of the previous subthread
- ESC r read-subthread mark the current subthread as read
- ESC t tag-thread toggle the tag on the current thread
- ESC v collapse-thread toggle collapse for the current thread
- ESC V collapse-all toggle collapse for all threads
- P parent-message jump to parent message in thread
-
- N\bNo\bot\bte\be:\b: Collapsing a thread displays only the first message in the
- thread and hides the others. This is useful when threads contain so
- many messages that you can only see a handful of threads on the
- screen. See %M in ``$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''.
-
- 2\b2.\b.3\b3.\b.4\b4.\b. M\bMi\bis\bsc\bce\bel\bll\bla\ban\bne\beo\bou\bus\bs F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs
-
- c\bcr\bre\bea\bat\bte\be-\b-a\bal\bli\bia\bas\bs (default: a)
-
- Creates a new alias based upon the current message (or prompts for a
- new one). Once editing is complete, an ``alias'' command is added to
- the file specified by the ``$alias_file'' variable for future use.
- N\bNo\bot\bte\be:\b: Specifying an ``$alias_file'' does not add the aliases specified
- there-in, you must also ``source'' the file.
-
- c\bch\bhe\bec\bck\bk-\b-t\btr\bra\bad\bdi\bit\bti\bio\bon\bna\bal\bl-\b-p\bpg\bgp\bp (default: ESC P)
-
- This function will search the current message for content signed or
- encrypted with PGP the "traditional" way, that is, without proper MIME
- tagging. Technically, this function will temporarily change the MIME
- content types of the body parts containing PGP data; this is similar
- to the ``edit-type'' function's effect.
-
- d\bdi\bis\bsp\bpl\bla\bay\by-\b-t\bto\bog\bgg\bgl\ble\be-\b-w\bwe\bee\bed\bd (default: h)
-
- Toggles the weeding of message header fields specified by ``ignore''
- commands.
-
- e\bed\bdi\bit\bt (default: e)
-
- This command (available in the ``index'' and ``pager'') allows you to
- edit the raw current message as it's present in the mail folder.
- After you have finished editing, the changed message will be appended
- to the current folder, and the original message will be marked for
- deletion.
-
- e\bed\bdi\bit\bt-\b-t\bty\byp\bpe\be
- (default: ^E on the attachment menu, and in the pager and index menus;
- ^T on the compose menu)
-
- This command is used to temporarily edit an attachment's content type
- to fix, for instance, bogus character set parameters. When invoked
- from the index or from the pager, you'll have the opportunity to edit
- the top-level attachment's content type. On the ``attachment menu'',
- you can change any attachment's content type. These changes are not
- persistent, and get lost upon changing folders.
-
- Note that this command is also available on the ``compose menu''.
- There, it's used to fine-tune the properties of attachments you are
- going to send.
-
- e\ben\bnt\bte\ber\br-\b-c\bco\bom\bmm\bma\ban\bnd\bd (default: ``:'')
-
- This command is used to execute any command you would normally put in
- a configuration file. A common use is to check the settings of
- variables, or in conjunction with ``macros'' to change settings on the
- fly.
-
- e\bex\bxt\btr\bra\bac\bct\bt-\b-k\bke\bey\bys\bs (default: ^K)
-
- This command extracts PGP public keys from the current or tagged
- message(s) and adds them to your PGP public key ring.
-
- f\bfo\bor\brg\bge\bet\bt-\b-p\bpa\bas\bss\bsp\bph\bhr\bra\bas\bse\be (default: ^F)
-
- This command wipes the passphrase(s) from memory. It is useful, if you
- misspelled the passphrase.
-
- l\bli\bis\bst\bt-\b-r\bre\bep\bpl\bly\by (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'' commands, but also honor any Mail-Followup-To header(s) if
- the ``$honor_followup_to'' configuration variable is set. Using this
- when replying to messages posted to mailing lists helps avoid
- duplicate copies being sent to the author of the message you are
- replying to.
-
- p\bpi\bip\bpe\be-\b-m\bme\bes\bss\bsa\bag\bge\be (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 behaviour of this
- function.
-
- r\bre\bes\bse\ben\bnd\bd-\b-m\bme\bes\bss\bsa\bag\bge\be (default: ESC e)
-
- With resend-message, mutt takes the current message as a template for
- a new message. This function is best described as "recall from
- arbitrary folders". It can conveniently be used to forward MIME
- messages while preserving the original mail structure. Note that the
- amount of headers included here depends on the value of the ``$weed''
- variable.
-
- This function is also available from the attachment menu. You can use
- this to easily resend a message which was included with a bounce
- message as a message/rfc822 body part.
-
- s\bsh\bhe\bel\bll\bl-\b-e\bes\bsc\bca\bap\bpe\be (default: !)
-
- 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.
-
- t\bto\bog\bgg\bgl\ble\be-\b-q\bqu\buo\bot\bte\bed\bd (default: T)
-
- The _\bp_\ba_\bg_\be_\br uses the ``$quote_regexp'' variable to detect quoted text
- when displaying the body of the message. This function toggles the
- display of the quoted material in the message. It is particularly
- useful when are interested in just the response and there is a large
- amount of quoted text in the way.
-
- s\bsk\bki\bip\bp-\b-q\bqu\buo\bot\bte\bed\bd (default: S)
-
- This function will go to the next line of non-quoted text which come
- after a line of quoted text in the internal pager.
-
- 2\b2.\b.4\b4.\b. S\bSe\ben\bnd\bdi\bin\bng\bg M\bMa\bai\bil\bl
-
- The following bindings are available in the _\bi_\bn_\bd_\be_\bx for sending
- messages.
-
- m compose compose a new message
- r reply reply to sender
- g group-reply reply to all recipients
- L list-reply reply to mailing list address
- f forward forward message
- b bounce bounce (remail) message
- ESC k mail-key mail a PGP public key to someone
-
- Bouncing a message sends the message as is to the recipient you
- specify. 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 and Bouncing Mail''''.
-
- Mutt will then enter the _\bc_\bo_\bm_\bp_\bo_\bs_\be menu and prompt you for the
- recipients to place on the ``To:'' header field. Next, it will ask
- you for the ``Subject:'' field for the message, providing a default if
- you are replying to or forwarding a message. See also ``$askcc'',
- ``$askbcc'', ``$autoedit'', ``$bounce'', and ``$fast_reply'' 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, 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.
-
- Once you have finished editing the body of your mail message, you are
- returned to the _\bc_\bo_\bm_\bp_\bo_\bs_\be menu. The following options are available:
-
- a attach-file attach a file
- A attach-message attach message(s) to the message
- ESC k attach-key attach a PGP public key
- d edit-description edit description on attachment
- D detach-file detach a file
- t edit-to edit the To field
- ESC f edit-from edit the From field
- r edit-reply-to edit the Reply-To field
- c edit-cc edit the Cc field
- b edit-bcc edit the Bcc field
- y send-message send the message
- s edit-subject edit the Subject
- S smime-menu select S/MIME options
- f edit-fcc specify an ``Fcc'' mailbox
- p pgp-menu select PGP options
- P postpone-message postpone this message until later
- q quit quit (abort) sending the message
- w write-fcc write the message to a folder
- i ispell check spelling (if available on your system)
- ^F forget-passphrase wipe passphrase(s) from memory
-
- N\bNo\bot\bte\be:\b: The attach-message function will prompt you for a folder to
- attach messages from. You can now tag messages in that folder and they
- will be attached to the message you are sending. Note that certain
- operations like composing a new mail, replying, forwarding, etc. are
- not permitted when you are in that folder. The %r in
- ``$status_format'' will change to a 'A' to indicate that you are in
- attach-message mode.
-
- 2\b2.\b.4\b4.\b.1\b1.\b. E\bEd\bdi\bit\bti\bin\bng\bg t\bth\bhe\be m\bme\bes\bss\bsa\bag\bge\be h\bhe\bea\bad\bde\ber\br
-
- When editing the header of your outgoing message, there are a couple
- of special features available.
-
- If you specify
- Fcc: _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be
- Mutt will pick up _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be just as if you had used the _\be_\bd_\bi_\bt_\b-_\bf_\bc_\bc
- function in the _\bc_\bo_\bm_\bp_\bo_\bs_\be menu.
-
- You can also attach files to your message by specifying
- Attach: _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be [ _\bd_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn ]
- where _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be is the file to attach and _\bd_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn is an optional
- string to use as the description of the attached file.
-
- When replying to messages, if you remove the _\bI_\bn_\b-_\bR_\be_\bp_\bl_\by_\b-_\bT_\bo_\b: field from
- the header field, Mutt will not generate a _\bR_\be_\bf_\be_\br_\be_\bn_\bc_\be_\bs_\b: field, which
- allows you to create a new message thread.
-
- Also see ``edit_headers''.
-
- 2\b2.\b.4\b4.\b.2\b2.\b. U\bUs\bsi\bin\bng\bg M\bMu\but\btt\bt w\bwi\bit\bth\bh P\bPG\bGP\bP
-
- If you want to use PGP, you can specify
-
- Pgp: [ E | S | S_\b<_\bi_\bd_\b> ]
-
- ``E'' encrypts, ``S'' signs and ``S<id>'' signs with the given key,
- setting ``$pgp_sign_as'' permanently.
-
- If you have told mutt to PGP encrypt a message, it will guide you
- through a key selection process when you try to send the message.
- Mutt will not ask you any questions about keys which have a certified
- user ID matching one of the message recipients' mail addresses.
- However, there may be situations in which there are several keys,
- weakly certified user ID fields, or where no matching keys can be
- found.
-
- In these cases, you are dropped into a menu with a list of keys from
- which you can select one. When you quit this menu, or mutt can't find
- any matching keys, you are prompted for a user ID. You can, as
- usually, abort this prompt using ^G. When you do so, mutt will return
- to the compose screen.
-
- Once you have successfully finished the key selection, the message
- will be encrypted using the selected public keys, and sent out.
-
- 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 following flags:
-
- R The key has been revoked and can't be used.
- X The key is expired and can't be used.
- d You have marked the key as disabled.
- c There are unknown critical self-signature
- packets.
-
- The capabilities field (%c) expands to a two-character sequence
- representing a key's capabilities. The first character gives the
- key's encryption capabilities: A minus sign (-\b-) means that the key
- cannot be used for encryption. A dot (.\b.) means that it's marked as a
- signature key in one of the user IDs, but may also be used for
- encryption. The letter e\be indicates that this key can be used for
- encryption.
-
- The second character indicates the key's signing capabilities. Once
- again, a ``-\b-'' implies ``not for signing'', ``.\b.'' implies that the key
- is marked as an encryption key in one of the user-ids, and ``s\bs''
- denotes a key which can be used for signing.
-
- Finally, the validity field (%t) indicates how well-certified a user-
- id is. A question mark (?\b?) indicates undefined validity, a minus
- character (-\b-) marks an untrusted association, a space character means
- a partially trusted association, and a plus character (+\b+) indicates
- complete validity.
-
- 2\b2.\b.4\b4.\b.3\b3.\b. S\bSe\ben\bnd\bdi\bin\bng\bg a\ban\bno\bon\bny\bym\bmo\bou\bus\bs m\bme\bes\bss\bsa\bag\bge\bes\bs v\bvi\bia\ba m\bmi\bix\bxm\bma\bas\bst\bte\ber\br.\b.
-
- You may also have configured mutt to co-operate with Mixmaster, an
- anonymous remailer. Mixmaster permits you to send your messages
- anonymously using a chain of remailers. Mixmaster support in mutt is
- for mixmaster version 2.04 (beta 45 appears to be the latest) and
- 2.03. It does not support earlier versions or the later so-called
- version 3 betas, of which the latest appears to be called 2.9b23.
-
- 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.
-
- 2\b2.\b.5\b5.\b. F\bFo\bor\brw\bwa\bar\brd\bdi\bin\bng\bg a\ban\bnd\bd B\bBo\bou\bun\bnc\bci\bin\bng\bg M\bMa\bai\bil\bl
-
- Bouncing and forwarding let you send an existing message to recipients
- that you specify. Bouncing a message uses the ``sendmail'' command to
- send a copy to alternative addresses as if they were the message's
- original recipients. Forwarding a message, on the other hand, allows
- you to modify the message before it is resent (for example, by adding
- your own comments).
- The following keys are bound by default:
-
- f forward forward message
- b bounce bounce (remail) message
-
- 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, respectively. The desired forwarding format may depend on
- the content, therefore _\b$_\bm_\bi_\bm_\be_\b__\bf_\bo_\br_\bw_\ba_\br_\bd 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.
-
- Editing the message to forward follows the same procedure as sending
- or replying to a message does.
-
- 2\b2.\b.6\b6.\b. P\bPo\bos\bst\btp\bpo\bon\bni\bin\bng\bg M\bMa\bai\bil\bl
-
- At times it is desirable to delay sending a message that you have
- already begun to compose. When the _\bp_\bo_\bs_\bt_\bp_\bo_\bn_\be_\b-_\bm_\be_\bs_\bs_\ba_\bg_\be function is used
- in the _\bc_\bo_\bm_\bp_\bo_\bs_\be menu, the body of your message and attachments are
- stored in the mailbox specified by the ``$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 command line you can use the ``-p'' option, or if you _\bc_\bo_\bm_\bp_\bo_\bs_\be
- a new message from the _\bi_\bn_\bd_\be_\bx or _\bp_\ba_\bg_\be_\br you will be prompted if
- postponed messages exist. If multiple messages are currently
- postponed, the _\bp_\bo_\bs_\bt_\bp_\bo_\bn_\be_\bd menu will pop up and you can select which
- message you would like to resume.
-
- N\bNo\bot\bte\be:\b: If you postpone a reply to a message, the reply setting of the
- message is only updated when you actually finish the message and send
- it. Also, you must be in the same folder with the message you replied
- to for the status of the message to be updated.
-
- See also the ``$postpone'' quad-option.
-
- 2\b2.\b.7\b7.\b. R\bRe\bea\bad\bdi\bin\bng\bg n\bne\bew\bws\bs v\bvi\bia\ba N\bNN\bNT\bTP\bP
-
- If compiled with ``--enable-nntp'' option, Mutt can read news from
- newsserver via NNTP. You can open a newsgroup with function ``change-
- newsgroup'' (default: i). Default newsserver can be obtained from
- _\bN_\bN_\bT_\bP_\bS_\bE_\bR_\bV_\bE_\bR environment variable. Like other news readers, info about
- subscribed newsgroups is saved in file by ``$newsrc'' variable.
- Article headers are cached and can be loaded from file when newsgroup
- entered instead loading from newsserver.
-
- 3\b3.\b. C\bCo\bon\bnf\bfi\big\bgu\bur\bra\bat\bti\bio\bon\bn
-
- While the default configuration (or ``preferences'') make Mutt-ng
- usable right out of the box, it is often desirable to tailor Mutt to
- suit your own tastes. When Mutt-ng is first invoked, it will attempt
- to read the ``system'' configuration file (defaults set by your local
- system administrator), unless the ``-n'' ``command line'' option is
- specified. This file is typically /usr/local/share/muttng/Muttngrc or
- /etc/Muttngrc, Mutt-ng users will find this file in
- /usr/local/share/muttng/Muttrc or /etc/Muttngrc. Mutt will next look
- for a file named .muttrc in your home directory, Mutt-ng will look for
- .muttngrc. If this file does not exist and your home directory has a
- subdirectory named .mutt, mutt try to load a file named
- .muttng/muttngrc.
-
- .muttrc (or .muttngrc for Mutt-ng) is the file where you will usually
- place your ``commands'' to configure Mutt.
-
- In addition, mutt supports version specific configuration files that
- are parsed instead of the default files as explained above. For
- instance, if your system has a Muttrc-0.88 file in the system
- configuration directory, and you are running version 0.88 of mutt,
- this file will be sourced instead of the Muttrc file. The same is
- true of the user configuration file, if you have a file .muttrc-0.88.6
- in your home directory, when you run mutt version 0.88.6, it will
- source this file instead of the default .muttrc file. The version
- number is the same which is visible using the ``-v'' ``command line''
- switch or using the show-version key (default: V) from the index menu.
-
- 3\b3.\b.1\b1.\b. S\bSy\byn\bnt\bta\bax\bx o\bof\bf I\bIn\bni\bit\bti\bia\bal\bli\biz\bza\bat\bti\bio\bon\bn F\bFi\bil\ble\bes\bs
-
- An initialization file consists of a series of ``commands''. Each
- line of the file may contain one or more commands. When multiple
- commands are used, they must be separated by a semicolon (;).
-
- set realname='Mutt user' ; ignore x-
-
- The hash mark, or pound sign (``#''), is used as a ``comment'' charac-
- ter. You can use it to annotate your initialization file. All text
- after the comment character to the end of the line is ignored. For
- example,
-
- my_hdr X-Disclaimer: Why are you listening to me? # This is a comment
-
- Single quotes (') and double quotes (") can be used to quote strings
- which contain spaces or other special characters. The difference
- between the two types of quotes is similar to that of many popular
- shell programs, namely that a single quote is used to specify a
- literal string (one that is not interpreted for shell variables or
- quoting with a backslash [see next paragraph]), while double quotes
- indicate a string for which should be evaluated. For example,
- backtics are evaluated inside of double quotes, but n\bno\bot\bt for single
- quotes.
-
- \ quotes the next character, just as in shells such as bash and zsh.
- For example, if want to put quotes ``"'' inside of a string, you can
- use ``\'' to force the next character to be a literal instead of
- interpreted character.
-
- set realname="Michael \"MuttDude\" Elkins"
-
- ``\\'' means to insert a literal ``\'' into the line. ``\n'' and
- ``\r'' have their usual C meanings of linefeed and carriage-return,
- respectively.
-
- A \ at the end of a line can be used to split commands over multiple
- lines, provided that the split points don't appear in the middle of
- command names.
-
- It is also possible to substitute the output of a Unix command in an
- initialization file. This is accomplished by enclosing the command in
- backquotes (``). For example,
-
- my_hdr X-Operating-System: `uname -a`
-
- The output of the Unix command ``uname -a'' will be substituted before
- the line is parsed. Note that since initialization files are line
- oriented, only the first line of output from the Unix command will be
- substituted.
-
- UNIX environments can be accessed like the way it is done in shells
- like sh and bash: Prepend the name of the environment by a ``$''. For
- example,
-
- set record=+sent_on_$HOSTNAME
-
- The commands understood by mutt are explained in the next paragraphs.
- For a complete list, see the ``command reference''.
-
- 3\b3.\b.2\b2.\b. D\bDe\bef\bfi\bin\bni\bin\bng\bg/\b/U\bUs\bsi\bin\bng\bg a\bal\bli\bia\bas\bse\bes\bs
-
- Usage: alias _\bk_\be_\by _\ba_\bd_\bd_\br_\be_\bs_\bs [ , _\ba_\bd_\bd_\br_\be_\bs_\bs, ... ]
-
- It's usually very cumbersome to remember or type out the address of
- someone you are communicating with. Mutt allows you to create
- ``aliases'' which map a short string to a full address.
-
- N\bNo\bot\bte\be:\b: if you want to create an alias for a group (by specifying more
- than one address), you m\bmu\bus\bst\bt separate the addresses with a comma
- (``,'').
-
- To remove an alias or aliases (``*'' means all aliases):
-
- unalias [ * | _\bk_\be_\by _\b._\b._\b. ]
-
- alias muttdude me@cs.hmc.edu (Michael Elkins)
- alias theguys manny, moe, jack
-
- Unlike other mailers, Mutt doesn't require aliases to be defined in a
- special file. The alias command can appear anywhere in a
- configuration file, as long as this file is ``sourced''.
- Consequently, you can have multiple alias files, or you can have all
- aliases defined in your muttrc.
-
- On the other hand, the ``create-alias'' function can use only one
- file, the one pointed to by the ``$alias_file'' variable (which is
- ~/.muttrc by default). This file is not special either, in the sense
- that Mutt will happily append aliases to any file, but in order for
- the new aliases to take effect you need to explicitly ``source'' this
- file too.
-
- For example:
-
- source /usr/local/share/Mutt.aliases
- source ~/.mail_aliases
- set alias_file=~/.mail_aliases
-
- To use aliases, you merely use the alias at any place in mutt where
- mutt prompts for addresses, such as the _\bT_\bo_\b: or _\bC_\bc_\b: prompt. You can
- also enter aliases in your editor at the appropriate headers if you
- have the ``$edit_headers'' variable set.
-
- In addition, at the various address prompts, you can use the tab
- character to expand a partial alias to the full alias. If there are
- multiple matches, mutt will bring up a menu with the matching aliases.
- In order to be presented with the full list of aliases, you must hit
- tab with out a partial alias, such as at the beginning of the prompt
- or after a comma denoting multiple addresses.
-
- In the alias menu, you can select as many aliases as you want with the
- _\bs_\be_\bl_\be_\bc_\bt_\b-_\be_\bn_\bt_\br_\by key (default: RET), and use the _\be_\bx_\bi_\bt key (default: q) to
- return to the address prompt.
-
- 3\b3.\b.3\b3.\b. C\bCh\bha\ban\bng\bgi\bin\bng\bg t\bth\bhe\be d\bde\bef\bfa\bau\bul\blt\bt k\bke\bey\by b\bbi\bin\bnd\bdi\bin\bng\bgs\bs
-
- Usage: bind _\bm_\ba_\bp _\bk_\be_\by _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn
-
- This command allows you to change the default key bindings (operation
- invoked when pressing a key).
-
- _\bm_\ba_\bp specifies in which menu the binding belongs. Multiple maps may be
- specified by separating them with commas (no additional whitespace is
- allowed). The currently defined maps are:
+ 1. Overview
- g\bge\ben\bne\ber\bri\bic\bc
- This is not a real menu, but is used as a fallback for all of
- the other menus except for the pager and editor modes. If a key
- is not defined in another menu, Mutt will look for a binding to
- use in this menu. This allows you to bind a key to a certain
- function in multiple menus instead of having multiple bind
- statements to accomplish the same task.
-
- a\bal\bli\bia\bas\bs
- The alias menu is the list of your personal aliases as defined
- in your muttrc. It is the mapping from a short alias name to
- the full email address(es) of the recipient(s).
-
- a\bat\btt\bta\bac\bch\bh
- The attachment menu is used to access the attachments on
- received messages.
-
- b\bbr\bro\bow\bws\bse\ber\br
- The browser is used for both browsing the local directory
- structure, and for listing all of your incoming mailboxes.
-
- e\bed\bdi\bit\bto\bor\br
- The editor is the line-based editor the user enters text data.
-
- i\bin\bnd\bde\bex\bx
- The index is the list of messages contained in a mailbox.
-
- c\bco\bom\bmp\bpo\bos\bse\be
- The compose menu is the screen used when sending a new message.
+ 2. Mutt-ng Home Page
- p\bpa\bag\bge\ber\br
- The pager is the mode used to display message/attachment data,
- and help listings.
-
- p\bpg\bgp\bp
- The pgp menu is used to select the OpenPGP keys used for
- encrypting outgoing messages.
-
- p\bpo\bos\bst\btp\bpo\bon\bne\be
- The postpone menu is similar to the index menu, except is used
- when recalling a message the user was composing, but saved until
- later.
-
- _\bk_\be_\by is the key (or key sequence) you wish to bind. To specify a
- control character, use the sequence _\b\_\bC_\bx, where _\bx is the letter of the
- control character (for example, to specify control-A use ``\Ca'').
- Note that the case of _\bx as well as _\b\_\bC is ignored, so that _\b\_\bC_\bA, _\b\_\bC_\ba,
- _\b\_\bc_\bA and _\b\_\bc_\ba are all equivalent. An alternative form is to specify the
- key as a three digit octal number prefixed with a ``\'' (for example
- _\b\_\b1_\b7_\b7 is equivalent to _\b\_\bc_\b?).
-
- In addition, _\bk_\be_\by may consist of:
-
- \t tab
- <tab> tab
- \r carriage return
- \n newline
- \e escape
- <esc> escape
- <up> up arrow
- <down> down arrow
- <left> left arrow
- <right> right arrow
- <pageup> Page Up
- <pagedown> Page Down
- <backspace> Backspace
- <delete> Delete
- <insert> Insert
- <enter> Enter
- <return> Return
- <home> Home
- <end> End
- <space> Space bar
- <f1> function key 1
- <f10> function key 10
-
- _\bk_\be_\by does not need to be enclosed in quotes unless it contains a space
- (`` '').
-
- _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn specifies which action to take when _\bk_\be_\by is pressed. For a
- complete list of functions, see the ``reference''. The special
- function noop unbinds the specified key sequence.
-
- 3\b3.\b.4\b4.\b. D\bDe\bef\bfi\bin\bni\bin\bng\bg a\bal\bli\bia\bas\bse\bes\bs f\bfo\bor\br c\bch\bha\bar\bra\bac\bct\bte\ber\br s\bse\bet\bts\bs
+ 3. Mailing Lists
- Usage: charset-hook _\ba_\bl_\bi_\ba_\bs _\bc_\bh_\ba_\br_\bs_\be_\bt
- Usage: iconv-hook _\bc_\bh_\ba_\br_\bs_\be_\bt _\bl_\bo_\bc_\ba_\bl_\b-_\bc_\bh_\ba_\br_\bs_\be_\bt
+ 4. Software Distribution Sites
- The charset-hook command defines an alias for a character set. This
- is useful to properly display messages which are tagged with a
- character set name not known to mutt.
-
- The iconv-hook command defines a system-specific name for a character
- set. This is helpful when your systems character conversion library
- insists on using strange, system-specific names for character sets.
+ 5. IRC
- 3\b3.\b.5\b5.\b. S\bSe\bet\btt\bti\bin\bng\bg v\bva\bar\bri\bia\bab\bbl\ble\bes\bs b\bba\bas\bse\bed\bd u\bup\bpo\bon\bn m\bma\bai\bil\blb\bbo\box\bx
+ 6. Weblog
- Usage: folder-hook [!]_\br_\be_\bg_\be_\bx_\bp _\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ 7. Copyright
- It is often desirable to change settings based on which mailbox you
- are reading. The folder-hook command provides a method by which you
- can execute any configuration command. _\br_\be_\bg_\be_\bx_\bp is a regular expression
- specifying in which mailboxes to execute _\bc_\bo_\bm_\bm_\ba_\bn_\bd before loading. If a
- mailbox matches multiple folder-hook's, they are executed in the order
- given in the muttrc.
+ 8. Manual Conventions
- N\bNo\bot\bte\be:\b: if you use the ``!'' shortcut for ``$spoolfile'' at the
- beginning of the pattern, you must place it inside of double or single
- quotes in order to distinguish it from the logical _\bn_\bo_\bt operator for
- the expression.
+ 2. Getting Started
- Note that the settings are _\bn_\bo_\bt restored when you leave the mailbox.
- For example, a command action to perform is to change the sorting
- method based upon the mailbox being read:
+ 1. Basic Concepts
- folder-hook mutt set sort=threads
+ 1.1. Screens and Menus
- However, the sorting method is not restored to its previous value when
- reading a different mailbox. To specify a _\bd_\be_\bf_\ba_\bu_\bl_\bt command, use the
- pattern ``.'':
+ 1.2. Configuration
- folder-hook . set sort=date-sent
+ 1.3. Functions
- 3\b3.\b.6\b6.\b. K\bKe\bey\byb\bbo\boa\bar\brd\bd m\bma\bac\bcr\bro\bos\bs
+ 1.4. Interaction
- 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 ]
+ 1.5. Modularization
- Macros are useful when you would like a single key to perform a series
- of actions. When you press _\bk_\be_\by in menu _\bm_\be_\bn_\bu, Mutt will behave as if
- you had typed _\bs_\be_\bq_\bu_\be_\bn_\bc_\be. So if you have a common sequence of commands
- you type, you can create a macro to execute those commands with a
- single key.
+ 1.6. Patterns
- _\bm_\be_\bn_\bu is the ``map'' which the macro will be bound. Multiple maps may
- be specified by separating multiple menu arguments by commas.
- Whitespace may not be used in between the menu arguments and the
- commas separating them.
+ 2. Screens and Menus
- _\bk_\be_\by and _\bs_\be_\bq_\bu_\be_\bn_\bc_\be are expanded by the same rules as the ``key
- bindings''. There are some additions however. The first is that
- control characters in _\bs_\be_\bq_\bu_\be_\bn_\bc_\be can also be specified as _\b^_\bx. In order
- to get a caret (`^'') you need to use _\b^_\b^. Secondly, to specify a
- certain key such as _\bu_\bp or to invoke a function directly, you can use
- the format _\b<_\bk_\be_\by _\bn_\ba_\bm_\be_\b> and _\b<_\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn _\bn_\ba_\bm_\be_\b>. For a listing of key names
- see the section on ``key bindings''. Functions are listed in the
- ``function reference''.
+ 2.1. Index
- The advantage with using function names directly is that the macros
- will work regardless of the current key bindings, so they are not
- dependent on the user having particular key definitions. This makes
- them more robust and portable, and also facilitates defining of macros
- in files used by more than one user (eg. the system Muttrc).
+ 2.2. Pager
- Optionally you can specify a descriptive text after _\bs_\be_\bq_\bu_\be_\bn_\bc_\be, which is
- shown in the help screens.
+ 2.3. File Browser
- N\bNo\bot\bte\be:\b: Macro definitions (if any) listed in the help screen(s), are
- silently truncated at the screen width, and are not wrapped.
+ 2.4. Sidebar
- 3\b3.\b.7\b7.\b. U\bUs\bsi\bin\bng\bg c\bco\bol\blo\bor\br a\ban\bnd\bd m\bmo\bon\bno\bo v\bvi\bid\bde\beo\bo a\bat\btt\btr\bri\bib\bbu\but\bte\bes\bs
+ 2.5. Help
- 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 ]
- 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
- Usage: uncolor index _\bp_\ba_\bt_\bt_\be_\br_\bn [ _\bp_\ba_\bt_\bt_\be_\br_\bn ... ]
- If your terminal supports color, you can spice up Mutt by creating
- your own color scheme. To define the color of an object (type of
- information), you must specify both a foreground color a\ban\bnd\bd a
- background color (it is not possible to only specify one or the
- other).
+ 2.6. Compose Menu
- _\bo_\bb_\bj_\be_\bc_\bt can be one of:
+ 2.7. Alias Menu
- +\bo attachment
+ 2.8. Attachment Menu
- +\bo body (match _\br_\be_\bg_\be_\bx_\bp in the body of messages)
+ 2.9. Key Menu
- +\bo bold (hiliting bold patterns in the body of messages)
+ 3. Moving Around in Menus
- +\bo error (error messages printed by Mutt)
+ 4. Editing Input Fields
- +\bo header (match _\br_\be_\bg_\be_\bx_\bp in the message header)
+ 5. Reading Mail - The Index and Pager
- +\bo hdrdefault (default color of the message header in the pager)
+ 5.1. The Message Index
- +\bo index (match _\bp_\ba_\bt_\bt_\be_\br_\bn in the message index)
+ 5.2. The Pager
- +\bo indicator (arrow or bar used to indicate the current item in a
- menu)
+ 5.3. Threaded Mode
- +\bo markers (the ``+'' markers at the beginning of wrapped lines in the
- pager)
+ 5.4. Miscellaneous Functions
- +\bo message (informational messages)
+ 6. Sending Mail
- +\bo normal
+ 6.1. Composing new messages
- +\bo quoted (text matching ``$quote_regexp'' in the body of a message)
+ 6.2. Replying
- +\bo quoted1, quoted2, ..., quotedN\bN (higher levels of quoting)
+ 6.3. Editing the message header
- +\bo search (hiliting of words in the pager)
+ 6.4. Using Mutt-ng with PGP
- +\bo signature
+ 6.5. Sending anonymous messages via mixmaster
- +\bo status (mode lines used to display info about the mailbox or
- message)
+ 7. Forwarding and Bouncing Mail
- +\bo tilde (the ``~'' used to pad blank lines in the pager)
+ 8. Postponing Mail
- +\bo tree (thread tree drawn in the message index and attachment menu)
+ 3. Configuration
- +\bo underline (hiliting underlined patterns in the body of messages)
+ 1. Locations of Configuration Files
- _\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:
+ 2. Basic Syntax of Initialization Files
- +\bo white
+ 3. Expansion within variables
- +\bo black
+ 3.1. Commands' Output
- +\bo green
+ 3.2. Environment Variables
- +\bo magenta
+ 3.3. Configuration Variables
- +\bo blue
+ 3.4. Self-Defined Variables
- +\bo cyan
+ 3.5. Pre-Defined Variables
- +\bo yellow
+ 3.6. Type Conversions
- +\bo red
+ 4. Defining/Using aliases
- +\bo default
+ 5. Changing the default key bindings
- +\bo color_\bx
+ 6. Defining aliases for character sets
- _\bf_\bo_\br_\be_\bg_\br_\bo_\bu_\bn_\bd can optionally be prefixed with the keyword bright to make
- the foreground color boldfaced (e.g., brightred).
+ 7. Setting variables based upon mailbox
- If your terminal supports it, the special keyword _\bd_\be_\bf_\ba_\bu_\bl_\bt can be used
- as a transparent color. The value _\bb_\br_\bi_\bg_\bh_\bt_\bd_\be_\bf_\ba_\bu_\bl_\bt is also valid. If
- Mutt is linked against the _\bS_\b-_\bL_\ba_\bn_\bg library, you also need to set the
- _\bC_\bO_\bL_\bO_\bR_\bF_\bG_\bB_\bG environment variable to the default colors of your terminal
- for this to work; for example (for Bourne-like shells):
+ 8. Keyboard macros
- set COLORFGBG="green;black"
- export COLORFGBG
+ 9. Using color and mono video attributes
- N\bNo\bot\bte\be:\b: The _\bS_\b-_\bL_\ba_\bn_\bg library requires you to use the _\bl_\bi_\bg_\bh_\bt_\bg_\br_\ba_\by and _\bb_\br_\bo_\bw_\bn
- keywords instead of _\bw_\bh_\bi_\bt_\be and _\by_\be_\bl_\bl_\bo_\bw when setting this variable.
+ 10. Ignoring (weeding) unwanted message headers
- N\bNo\bot\bte\be:\b: The uncolor command can be applied to the index object only. It
- removes entries from the list. You m\bmu\bus\bst\bt specify the same pattern
- specified in the color command for it to be removed. The pattern
- ``*'' is a special token which means to clear the color index list of
- all entries.
+ 11. Alternative addresses
- Mutt also recognizes the keywords _\bc_\bo_\bl_\bo_\br_\b0, _\bc_\bo_\bl_\bo_\br_\b1, ..., _\bc_\bo_\bl_\bo_\brN\bN-\b-1\b1 (N\bN
- being the number of colors supported by your terminal). This is
- useful when you remap the colors for your display (for example by
- changing the color associated with _\bc_\bo_\bl_\bo_\br_\b2 for your xterm), since color
- names may then lose their normal meaning.
+ 12. Format = Flowed
- If your terminal does not support color, it is still possible change
- the video attributes through the use of the ``mono'' command:
+ 12.1. Introduction
- 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 ]
- Usage: mono index _\ba_\bt_\bt_\br_\bi_\bb_\bu_\bt_\be _\bp_\ba_\bt_\bt_\be_\br_\bn
- Usage: unmono index _\bp_\ba_\bt_\bt_\be_\br_\bn [ _\bp_\ba_\bt_\bt_\be_\br_\bn ... ]
+ 12.2. Receiving: Display Setup
- where _\ba_\bt_\bt_\br_\bi_\bb_\bu_\bt_\be is one of the following:
+ 12.3. Sending
- +\bo none
+ 12.4. Additional Notes
- +\bo bold
+ 13. Mailing lists
- +\bo underline
+ 14. Using Multiple spool mailboxes
- +\bo reverse
+ 15. Defining mailboxes which receive mail
- +\bo standout
+ 16. User defined headers
- 3\b3.\b.8\b8.\b. I\bIg\bgn\bno\bor\bri\bin\bng\bg (\b(w\bwe\bee\bed\bdi\bin\bng\bg)\b) u\bun\bnw\bwa\ban\bnt\bte\bed\bd m\bme\bes\bss\bsa\bag\bge\be h\bhe\bea\bad\bde\ber\brs\bs
+ 17. Defining the order of headers when viewing messages
- Usage: [un]ignore _\bp_\ba_\bt_\bt_\be_\br_\bn [ _\bp_\ba_\bt_\bt_\be_\br_\bn ... ]
+ 18. Specify default save filename
- Messages often have many header fields added by automatic processing
- systems, or which may not seem useful to display on the screen. This
- command allows you to specify header fields which you don't normally
- want to see.
+ 19. Specify default Fcc: mailbox when composing
- You do not need to specify the full header field name. For example,
- ``ignore content-'' will ignore all header fields that begin with the
- pattern ``content-''. ``ignore *'' will ignore all headers.
+ 20. Specify default save filename and default Fcc: mailbox at
+ once
- To remove a previously added token from the list, use the ``unignore''
- command. The ``unignore'' command will make Mutt display headers with
- the given pattern. For example, if you do ``ignore x-'' it is
- possible to ``unignore x-mailer''.
+ 21. Change settings based upon message recipients
- ``unignore *'' will remove all tokens from the ignore list.
+ 22. Change settings before formatting a message
- For example:
+ 23. Choosing the cryptographic key of the recipient
- # Sven's draconian header weeding
- ignore *
- unignore from date subject to cc
- unignore organization organisation x-mailer: x-newsreader: x-mailing-list:
- unignore posted-to:
+ 24. Adding key sequences to the keyboard buffer
- 3\b3.\b.9\b9.\b. A\bAl\blt\bte\ber\brn\bna\bat\bti\biv\bve\be a\bad\bdd\bdr\bre\bes\bss\bse\bes\bs
+ 25. Executing functions
- Usage: [un]alternates _\br_\be_\bg_\be_\bx_\bp [ _\br_\be_\bg_\be_\bx_\bp ... ]
+ 26. Message Scoring
- With various functions, mutt will treat messages differently,
- depending on whether you sent them or whether you received them from
- someone else. For instance, when replying to a message that you sent
- to a different party, mutt will automatically suggest to send the
- response to the original message's recipients -- responding to
- yourself won't make much sense in many cases. (See ``$reply_to''.)
+ 27. Spam detection
- Many users receive e-mail under a number of different addresses. To
- fully use mutt's features here, the program must be able to recognize
- what e-mail addresses you receive mail under. That's the purpose of
- the alternates command: It takes a list of regular expressions, each
- of which can identify an address under which you receive e-mail.
+ 28. Setting variables
- The unalternates command can be used to write exceptions to alternates
- patterns. If an address matches something in an alternates command,
- but you nonetheless do not think it is from you, you can list a more
- precise pattern under an unalternates command.
+ 29. Reading initialization commands from another file
- To remove a regular expression from the alternates list, use the
- unalternates command with exactly the same _\br_\be_\bg_\be_\bx_\bp. Likewise, if the
- _\br_\be_\bg_\be_\bx_\bp for a alternates command matches an entry on the unalternates
- list, that unalternates entry will be removed. If the _\br_\be_\bg_\be_\bx_\bp for
- unalternates is ``*'', _\ba_\bl_\bl _\be_\bn_\bt_\br_\bi_\be_\bs on alternates will be removed.
+ 30. Removing hooks
- 3\b3.\b.1\b10\b0.\b. M\bMa\bai\bil\bli\bin\bng\bg l\bli\bis\bst\bts\bs
+ 31. Sharing Setups
- Usage: [un]lists _\br_\be_\bg_\be_\bx_\bp [ _\br_\be_\bg_\be_\bx_\bp ... ]
- Usage: [un]subscribe _\br_\be_\bg_\be_\bx_\bp [ _\br_\be_\bg_\be_\bx_\bp ... ]
+ 31.1. Character Sets
- Mutt has a few nice features for ``handling mailing lists''. In order
- to take advantage of them, you must specify which addresses belong to
- mailing lists, and which mailing lists you are subscribed to. Once
- you have done this, the ``list-reply'' function will work for all
- known lists. Additionally, when you send a message to a subscribed
- list, mutt will add a Mail-Followup-To header to tell other users'
- mail user agents not to send copies of replies to your personal
- address. Note that the Mail-Followup-To header is a non-standard
- extension which is not supported by all mail user agents. Adding it
- is not bullet-proof against receiving personal CCs of list messages.
- Also note that the generation of the Mail-Followup-To header is
- controlled by the ``$followup_to'' configuration variable.
+ 31.2. Modularization
- More precisely, Mutt maintains lists of patterns for the addresses of
- known and subscribed mailing lists. Every subscribed mailing list is
- known. To mark a mailing list as known, use the ``lists'' command. To
- mark it as subscribed, use ``subscribe''.
+ 31.3. Conditional parts
- You can use regular expressions with both commands. To mark all
- messages sent to a specific bug report's address on mutt's bug
- tracking system as list mail, for instance, you could say ``subscribe
- [0-9]*@bugs.guug.de''. Often, it's sufficient to just give a portion
- of the list's e-mail address.
+ 32. Obsolete Variables
- Specify as much of the address as you need to to remove ambiguity.
- For example, if you've subscribed to the Mutt mailing list, you will
- receive mail addresssed to _\bm_\bu_\bt_\bt_\b-_\bu_\bs_\be_\br_\bs_\b@_\bm_\bu_\bt_\bt_\b._\bo_\br_\bg. So, to tell Mutt that
- this is a mailing list, you could add ``lists mutt-users'' to your
- initialization file. To tell mutt that you are subscribed to it, add
- ``subscribe mutt-users'' to your initialization file instead. If you
- also happen to get mail from someone whose address is _\bm_\bu_\bt_\bt_\b-
- _\bu_\bs_\be_\br_\bs_\b@_\be_\bx_\ba_\bm_\bp_\bl_\be_\b._\bc_\bo_\bm, you could use ``lists mutt-users@mutt\\.org'' or
- ``subscribe mutt-users@mutt\\.org'' to match only mail from the actual
- list.
+ 4. Advanced Usage
- The ``unlists'' command is used to remove a token from the list of
- known and subscribed mailing-lists. Use ``unlists *'' to remove all
- tokens.
+ 1. Regular Expressions
- To remove a mailing list from the list of subscribed mailing lists,
- but keep it on the list of known mailing lists, use ``unsubscribe''.
+ 2. Patterns
- 3\b3.\b.1\b11\b1.\b. U\bUs\bsi\bin\bng\bg M\bMu\bul\blt\bti\bip\bpl\ble\be s\bsp\bpo\boo\bol\bl m\bma\bai\bil\blb\bbo\box\bxe\bes\bs
+ 2.1. Complex Patterns
- Usage: mbox-hook [!]_\bp_\ba_\bt_\bt_\be_\br_\bn _\bm_\ba_\bi_\bl_\bb_\bo_\bx
+ 2.2. Patterns and Dates
- This command is used to move read messages from a specified mailbox to
- a different mailbox automatically when you quit or change folders.
- _\bp_\ba_\bt_\bt_\be_\br_\bn is a regular expression specifying the mailbox to treat as a
- ``spool'' mailbox and _\bm_\ba_\bi_\bl_\bb_\bo_\bx specifies where mail should be saved
- when read.
+ 3. Format Strings
- Unlike some of the other _\bh_\bo_\bo_\bk commands, only the _\bf_\bi_\br_\bs_\bt matching
- pattern is used (it is not possible to save read mail in more than a
- single mailbox).
+ 3.1. Introduction
- 3\b3.\b.1\b12\b2.\b. D\bDe\bef\bfi\bin\bni\bin\bng\bg m\bma\bai\bil\blb\bbo\box\bxe\bes\bs w\bwh\bhi\bic\bch\bh r\bre\bec\bce\bei\biv\bve\be m\bma\bai\bil\bl
+ 3.2. Conditional Expansion
- Usage: [un]mailboxes [!]_\bf_\bi_\bl_\be_\bn_\ba_\bm_\be [ _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be ... ]
+ 3.3. Modifications and Padding
- This command specifies folders which can receive mail and which will
- be checked for new messages. By default, the main menu status bar
- displays how many of these folders have new messages.
+ 4. Using Tags
- When changing folders, pressing _\bs_\bp_\ba_\bc_\be will cycle through folders with
- new mail.
+ 5. Using Hooks
- Pressing TAB in the directory browser will bring up a menu showing the
- files specified by the mailboxes command, and indicate which contain
- new messages. Mutt will automatically enter this mode when invoked
- from the command line with the -y option.
+ 5.1. Message Matching in Hooks
- The ``unmailboxes'' command is used to remove a token from the list of
- folders which receive mail. Use ``unmailboxes *'' to remove all
- tokens.
+ 6. Using the sidebar
- N\bNo\bot\bte\be:\b: new mail is detected by comparing the last modification time to
- the last access time. Utilities like biff or frm or any other program
- which accesses the mailbox might cause Mutt to never detect new mail
- for that mailbox if they do not properly reset the access time.
- Backup tools are another common reason for updated access times.
+ 7. External Address Queries
- N\bNo\bot\bte\be:\b: the filenames in the mailboxes command are resolved when the
- command is executed, so if these names contain ``shortcut characters''
- (such as ``='' and ``!''), any variable definition that affect these
- characters (like ``$folder'' and ``$spoolfile'') should be executed
- before the mailboxes command.
+ 8. Mailbox Formats
- 3\b3.\b.1\b13\b3.\b. U\bUs\bse\ber\br d\bde\bef\bfi\bin\bne\bed\bd h\bhe\bea\bad\bde\ber\brs\bs
+ 9. Mailbox Shortcuts
- Usage:
- my_hdr _\bs_\bt_\br_\bi_\bn_\bg
- unmy_hdr _\bf_\bi_\be_\bl_\bd [ _\bf_\bi_\be_\bl_\bd ... ]
+ 10. Handling Mailing Lists
- The ``my_hdr'' command allows you to create your own header fields
- which will be added to every message you send.
+ 11. Editing threads
- For example, if you would like to add an ``Organization:'' header
- field to all of your outgoing messages, you can put the command
+ 11.1. Linking threads
- my_hdr Organization: A Really Big Company, Anytown, USA
+ 11.2. Breaking threads
- in your .muttrc.
+ 12. Delivery Status Notification (DSN) Support
- N\bNo\bot\bte\be:\b: space characters are _\bn_\bo_\bt allowed between the keyword and the
- colon (``:''). The standard for electronic mail (RFC822) says that
- space is illegal there, so Mutt enforces the rule.
+ 13. POP3 Support (OPTIONAL)
- If you would like to add a header field to a single message, you
- should either set the ``edit_headers'' variable, or use the _\be_\bd_\bi_\bt_\b-
- _\bh_\be_\ba_\bd_\be_\br_\bs function (default: ``E'') in the send-menu so that you can
- edit the header of your message along with the body.
+ 14. IMAP Support (OPTIONAL)
- To remove user defined header fields, use the ``unmy_hdr'' command.
- You may specify an asterisk (``*'') to remove all header fields, or
- the fields to remove. For example, to remove all ``To'' and ``Cc''
- header fields, you could use:
+ 14.1. The Folder Browser
- unmy_hdr to cc
+ 14.2. Authentication
- 3\b3.\b.1\b14\b4.\b. D\bDe\bef\bfi\bin\bni\bin\bng\bg t\bth\bhe\be o\bor\brd\bde\ber\br o\bof\bf h\bhe\bea\bad\bde\ber\brs\bs w\bwh\bhe\ben\bn v\bvi\bie\bew\bwi\bin\bng\bg m\bme\bes\bss\bsa\bag\bge\bes\bs
+ 15. NNTP Support (OPTIONAL)
- Usage: hdr_order _\bh_\be_\ba_\bd_\be_\br_\b1 _\bh_\be_\ba_\bd_\be_\br_\b2 _\bh_\be_\ba_\bd_\be_\br_\b3
+ 15.1. Again: Scoring
- With this command, you can specify an order in which mutt will attempt
- to present headers to you when viewing messages.
+ 16. SMTP Support (OPTIONAL)
- ``unhdr_order *'' will clear all previous headers from the order list,
- thus removing the header order effects set by the system-wide startup
- file.
+ 17. Managing multiple IMAP/POP/NNTP accounts (OPTIONAL)
- hdr_order From Date: From: To: Cc: Subject:
+ 18. Start a WWW Browser on URLs (EXTERNAL)
- 3\b3.\b.1\b15\b5.\b. S\bSp\bpe\bec\bci\bif\bfy\by d\bde\bef\bfa\bau\bul\blt\bt s\bsa\bav\bve\be f\bfi\bil\ble\ben\bna\bam\bme\be
+ 19. Compressed folders Support (OPTIONAL)
- Usage: save-hook [!]_\bp_\ba_\bt_\bt_\be_\br_\bn _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be
+ 19.1. Open a compressed mailbox for reading
- This command is used to override the default filename used when saving
- messages. _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be will be used as the default filename if the
- message is _\bF_\br_\bo_\bm_\b: an address matching _\br_\be_\bg_\be_\bx_\bp or if you are the author
- and the message is addressed _\bt_\bo_\b: something matching _\br_\be_\bg_\be_\bx_\bp.
+ 19.2. Write a compressed mailbox
- See ``Message Matching in Hooks'' for information on the exact format
- of _\bp_\ba_\bt_\bt_\be_\br_\bn.
+ 19.3. Append a message to a compressed mailbox
- Examples:
+ 19.4. Encrypted folders
- save-hook me@(turing\\.)?cs\\.hmc\\.edu$ +elkins
- save-hook aol\\.com$ +spam
+ 5. Mutt-ng's MIME Support
- Also see the ``fcc-save-hook'' command.
+ 1. Using MIME in Mutt
- 3\b3.\b.1\b16\b6.\b. S\bSp\bpe\bec\bci\bif\bfy\by d\bde\bef\bfa\bau\bul\blt\bt F\bFc\bcc\bc:\b: m\bma\bai\bil\blb\bbo\box\bx w\bwh\bhe\ben\bn c\bco\bom\bmp\bpo\bos\bsi\bin\bng\bg
+ 1.1. Viewing MIME messages in the pager
- Usage: fcc-hook [!]_\bp_\ba_\bt_\bt_\be_\br_\bn _\bm_\ba_\bi_\bl_\bb_\bo_\bx
+ 1.2. The Attachment Menu
- This command is used to save outgoing mail in a mailbox other than
- ``$record''. Mutt searches the initial list of message recipients for
- the first matching _\br_\be_\bg_\be_\bx_\bp and uses _\bm_\ba_\bi_\bl_\bb_\bo_\bx as the default Fcc:
- mailbox. If no match is found the message will be saved to
- ``$record'' mailbox.
+ 1.3. The Compose Menu
- See ``Message Matching in Hooks'' for information on the exact format
- of _\bp_\ba_\bt_\bt_\be_\br_\bn.
+ 2. MIME Type configuration with mime.types
- Example: fcc-hook [@.]aol\\.com$ +spammers
+ 3. MIME Viewer configuration with mailcap
- The above will save a copy of all messages going to the aol.com domain
- to the `+spammers' mailbox by default. Also see the ``fcc-save-hook''
- command.
+ 3.1. The Basics of the mailcap file
- 3\b3.\b.1\b17\b7.\b. S\bSp\bpe\bec\bci\bif\bfy\by d\bde\bef\bfa\bau\bul\blt\bt s\bsa\bav\bve\be f\bfi\bil\ble\ben\bna\bam\bme\be a\ban\bnd\bd d\bde\bef\bfa\bau\bul\blt\bt F\bFc\bcc\bc:\b: m\bma\bai\bil\blb\bbo\box\bx a\bat\bt o\bon\bnc\bce\be
+ 3.2. Secure use of mailcap
- Usage: fcc-save-hook [!]_\bp_\ba_\bt_\bt_\be_\br_\bn _\bm_\ba_\bi_\bl_\bb_\bo_\bx
+ 3.3. Advanced mailcap Usage
- This command is a shortcut, equivalent to doing both a ``fcc-hook''
- and a ``save-hook'' with its arguments.
- 3\b3.\b.1\b18\b8.\b. C\bCh\bha\ban\bng\bge\be s\bse\bet\btt\bti\bin\bng\bgs\bs b\bba\bas\bse\bed\bd u\bup\bpo\bon\bn m\bme\bes\bss\bsa\bag\bge\be r\bre\bec\bci\bip\bpi\bie\ben\bnt\bts\bs
+ 3.4. Example mailcap files
- Usage: reply-hook [!]_\bp_\ba_\bt_\bt_\be_\br_\bn _\bc_\bo_\bm_\bm_\ba_\bn_\bd
- Usage: send-hook [!]_\bp_\ba_\bt_\bt_\be_\br_\bn _\bc_\bo_\bm_\bm_\ba_\bn_\bd
- Usage: send2-hook [!]_\bp_\ba_\bt_\bt_\be_\br_\bn _\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ 4. MIME Autoview
- These commands can be used to execute arbitrary configuration commands
- based upon recipients of the message. _\bp_\ba_\bt_\bt_\be_\br_\bn is a regular expression
- matching the desired address. _\bc_\bo_\bm_\bm_\ba_\bn_\bd is executed when _\br_\be_\bg_\be_\bx_\bp matches
- recipients of the message.
+ 5. MIME Multipart/Alternative
- reply-hook is matched against the message you are _\br_\be_\bp_\bl_\by_\bi_\bn_\bg t\bto\bo, instead
- of the message you are _\bs_\be_\bn_\bd_\bi_\bn_\bg. send-hook is matched against all
- messages, both _\bn_\be_\bw and _\br_\be_\bp_\bl_\bi_\be_\bs. N\bNo\bot\bte\be:\b: reply-hooks are matched b\bbe\bef\bfo\bor\bre\be
- the send-hook, r\bre\beg\bga\bar\brd\bdl\ble\bes\bss\bs of the order specified in the users's
- configuration file.
+ 6. MIME Lookup
- send2-hook is matched every time a message is changed, either by
- editing it, or by using the compose menu to change its recipients or
- subject. send2-hook is executed after send-hook, and can, e.g., be
- used to set parameters such as the ``$sendmail'' variable depending on
- the message's sender address.
+ 6. Security Considerations
- For each type of send-hook or reply-hook, when multiple matches occur,
- commands are executed in the order they are specified in the muttrc
- (for that type of hook).
+ 1. Passwords
- See ``Message Matching in Hooks'' for information on the exact format
- of _\bp_\ba_\bt_\bt_\be_\br_\bn.
+ 2. Temporary Files
- Example: send-hook mutt "set mime_forward signature=''"
+ 3. Information Leaks
- Another typical use for this command is to change the values of the
- ``$attribution'', ``$signature'' and ``$locale'' variables in order to
- change the language of the attributions and signatures based upon the
- recipients.
+ 3.1. Message-ID: headers
- N\bNo\bot\bte\be:\b: the send-hook's are only executed ONCE after getting the initial
- list of recipients. Adding a recipient after replying or editing the
- message will NOT cause any send-hook to be executed. Also note that
- my_hdr commands which modify recipient headers, or the message's
- subject, don't have any effect on the current message when executed
- from a send-hook.
+ 3.2. mailto:-style links
- 3\b3.\b.1\b19\b9.\b. C\bCh\bha\ban\bng\bge\be s\bse\bet\btt\bti\bin\bng\bgs\bs b\bbe\bef\bfo\bor\bre\be f\bfo\bor\brm\bma\bat\btt\bti\bin\bng\bg a\ba m\bme\bes\bss\bsa\bag\bge\be
+ 4. External applications
- Usage: message-hook [!]_\bp_\ba_\bt_\bt_\be_\br_\bn _\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ 4.1. mailcap
- This command can be used to execute arbitrary configuration commands
- before viewing or formatting a message based upon information about
- the message. _\bc_\bo_\bm_\bm_\ba_\bn_\bd is executed if the _\bp_\ba_\bt_\bt_\be_\br_\bn matches the message
- to be displayed. When multiple matches occur, commands are executed in
- the order they are specified in the muttrc.
+ 4.2. Other
- See ``Message Matching in Hooks'' for information on the exact format
- of _\bp_\ba_\bt_\bt_\be_\br_\bn.
+ 7. Reference
- Example:
+ 1. Command line options
- message-hook ~A 'set pager=builtin'
- message-hook '~f freshmeat-news' 'set pager="less \"+/^ subject: .*\""'
+ 2. Patterns
- 3\b3.\b.2\b20\b0.\b. C\bCh\bho\boo\bos\bsi\bin\bng\bg t\bth\bhe\be c\bcr\bry\byp\bpt\bto\bog\bgr\bra\bap\bph\bhi\bic\bc k\bke\bey\by o\bof\bf t\bth\bhe\be r\bre\bec\bci\bip\bpi\bie\ben\bnt\bt
+ 3. Configuration Commands
- Usage: crypt-hook _\bp_\ba_\bt_\bt_\be_\br_\bn _\bk_\be_\by_\bi_\bd
+ 4. Configuration variables
- When encrypting messages with PGP or OpenSSL, you may want to
- associate a certain key with a given e-mail address automatically,
- either because the recipient's public key can't be deduced from the
- destination address, or because, for some reasons, you need to
- override the key Mutt would normally use. The crypt-hook command
- provides a method by which you can specify the ID of the public key to
- be used when encrypting messages to a certain recipient.
-
- The meaning of "key id" is to be taken broadly in this context: You
- can either put a numerical key ID here, an e-mail address, or even
- just a real name.
-
- 3\b3.\b.2\b21\b1.\b. A\bAd\bdd\bdi\bin\bng\bg k\bke\bey\by s\bse\beq\bqu\bue\ben\bnc\bce\bes\bs t\bto\bo t\bth\bhe\be k\bke\bey\byb\bbo\boa\bar\brd\bd b\bbu\buf\bff\bfe\ber\br
-
- Usage: push _\bs_\bt_\br_\bi_\bn_\bg
-
- This command adds the named string to the keyboard buffer. The string
- may contain control characters, key names and function names like the
- sequence string in the ``macro'' command. You may use it to
- automatically run a sequence of commands at startup, or when entering
- certain folders.
-
- 3\b3.\b.2\b22\b2.\b. E\bEx\bxe\bec\bcu\but\bti\bin\bng\bg f\bfu\bun\bnc\bct\bti\bio\bon\bns\bs
-
- Usage: exec _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn [ _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn ... ]
-
- This command can be used to execute any function. Functions are listed
- in the ``function reference''. ``exec function'' is equivalent to
- ``push <function>''.
-
- 3\b3.\b.2\b23\b3.\b. M\bMe\bes\bss\bsa\bag\bge\be S\bSc\bco\bor\bri\bin\bng\bg
-
- Usage: score _\bp_\ba_\bt_\bt_\be_\br_\bn _\bv_\ba_\bl_\bu_\be
- Usage: unscore _\bp_\ba_\bt_\bt_\be_\br_\bn [ _\bp_\ba_\bt_\bt_\be_\br_\bn ... ]
-
- The score commands adds _\bv_\ba_\bl_\bu_\be to a message's score if _\bp_\ba_\bt_\bt_\be_\br_\bn matches
- it. _\bp_\ba_\bt_\bt_\be_\br_\bn is a string in the format described in the ``patterns''
- section (note: For efficiency reasons, patterns which scan information
- not available in the index, such as ~b, ~B or ~h, may not be used).
- _\bv_\ba_\bl_\bu_\be is a positive or negative integer. A message's final score is
- the sum total of all matching score entries. However, you may
- optionally prefix _\bv_\ba_\bl_\bu_\be with an equal sign (=) to cause evaluation to
- stop at a particular entry if there is a match. Negative final scores
- are rounded up to 0.
-
- The unscore command removes score entries from the list. You m\bmu\bus\bst\bt
- specify the same pattern specified in the score command for it to be
- removed. The pattern ``*'' is a special token which means to clear
- the list of all score entries.
-
- 3\b3.\b.2\b24\b4.\b. S\bSp\bpa\bam\bm d\bde\bet\bte\bec\bct\bti\bio\bon\bn
-
- Usage: spam _\bp_\ba_\bt_\bt_\be_\br_\bn _\bf_\bo_\br_\bm_\ba_\bt
- Usage: nospam _\bp_\ba_\bt_\bt_\be_\br_\bn
-
- Mutt has generalized support for external spam-scoring filters. By
- defining your spam patterns with the spam and nospam commands, you can
- _\bl_\bi_\bm_\bi_\bt, _\bs_\be_\ba_\br_\bc_\bh, and _\bs_\bo_\br_\bt your mail based on its spam attributes, as
- determined by the external filter. You also can display the spam
- attributes in your index display using the %H selector in the
- ``$index_format'' variable. (Tip: try %?H?[%H] ? to display spam tags
- only when they are defined for a given message.)
-
- Your first step is to define your external filter's spam patterns
- using the spam command. _\bp_\ba_\bt_\bt_\be_\br_\bn should be a regular expression that
- matches a header in a mail message. If any message in the mailbox
- matches this regular expression, it will receive a ``spam tag'' or
- ``spam attribute'' (unless it also matches a nospam pattern -- see
- below.) The appearance of this attribute is entirely up to you, and is
- governed by the _\bf_\bo_\br_\bm_\ba_\bt parameter. _\bf_\bo_\br_\bm_\ba_\bt can be any static text, but
- it also can include back-references from the _\bp_\ba_\bt_\bt_\be_\br_\bn expression. (A
- regular expression ``back-reference'' refers to a sub-expression
- contained within parentheses.) %1 is replaced with the first back-
- reference in the regex, %2 with the second, etc.
-
- If you're using multiple spam filters, a message can have more than
- one spam-related header. You can define spam patterns for each filter
- you use. If a message matches two or more of these patterns, and the
- $spam_separator variable is set to a string, then the message's spam
- tag will consist of all the _\bf_\bo_\br_\bm_\ba_\bt strings joined together, with the
- value of $spam_separator separating them.
-
- For example, suppose I use DCC, SpamAssassin, and PureMessage. I might
- define these spam settings:
-
- spam "X-DCC-.*-Metrics:.*(....)=many" "90+/DCC-%1"
- spam "X-Spam-Status: Yes" "90+/SA"
- spam "X-PerlMX-Spam: .*Probability=([0-9]+)%" "%1/PM"
- set spam_separator=", "
-
- If I then received a message that DCC registered with ``many'' hits
- under the ``Fuz2'' checksum, and that PureMessage registered with a
- 97% probability of being spam, that message's spam tag would read
- 90+/DCC-Fuz2, 97/PM. (The four characters before ``=many'' in a DCC
- report indicate the checksum used -- in this case, ``Fuz2''.)
-
- If the $spam_separator variable is unset, then each spam pattern match
- supercedes the previous one. Instead of getting joined _\bf_\bo_\br_\bm_\ba_\bt strings,
- you'll get only the last one to match.
-
- The spam tag is what will be displayed in the index when you use %H in
- the $index_format variable. It's also the string that the ~H pattern-
- matching expression matches against for _\bs_\be_\ba_\br_\bc_\bh and _\bl_\bi_\bm_\bi_\bt functions.
- And it's what sorting by spam attribute will use as a sort key.
-
- That's a pretty complicated example, and most people's actual
- environments will have only one spam filter. The simpler your
- configuration, the more effective mutt can be, especially when it
- comes to sorting.
-
- Generally, when you sort by spam tag, mutt will sort _\bl_\be_\bx_\bi_\bc_\ba_\bl_\bl_\by -- that
- is, by ordering strings alphnumerically. However, if a spam tag begins
- with a number, mutt will sort numerically first, and lexically only
- when two numbers are equal in value. (This is like UNIX's sort -n.) A
- message with no spam attributes at all -- that is, one that didn't
- match _\ba_\bn_\by of your spam patterns -- is sorted at lowest priority.
- Numbers are sorted next, beginning with 0 and ranging upward. Finally,
- non-numeric strings are sorted, with ``a'' taking lower priority than
- ``z''. Clearly, in general, sorting by spam tags is most effective
- when you can coerce your filter to give you a raw number. But in case
- you can't, mutt can still do something useful.
-
- The nospam command can be used to write exceptions to spam patterns.
- If a header pattern matches something in a spam command, but you
- nonetheless do not want it to receive a spam tag, you can list a more
- precise pattern under a nospam command.
-
- 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 existing spam list entry, the effect will be to remove the entry
- from the spam list, instead of adding an exception. Likewise, if the
- _\bp_\ba_\bt_\bt_\be_\br_\bn for a spam command matches an entry on the nospam list, that
- nospam entry will be removed. If the _\bp_\ba_\bt_\bt_\be_\br_\bn for nospam is ``*'', _\ba_\bl_\bl
- _\be_\bn_\bt_\br_\bi_\be_\bs _\bo_\bn _\bb_\bo_\bt_\bh _\bl_\bi_\bs_\bt_\bs will be removed. This might be the default
- action if you use spam and nospam in conjunction with a folder-hook.
-
- You can have as many spam or nospam commands as you like. You can
- even do your own primitive spam detection within mutt -- for example,
- if you consider all mail from MAILER-DAEMON to be spam, you can use a
- spam command like this:
-
- spam "^From: .*MAILER-DAEMON" "999"
-
- 3\b3.\b.2\b25\b5.\b. S\bSe\bet\btt\bti\bin\bng\bg v\bva\bar\bri\bia\bab\bbl\ble\bes\bs
-
- 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 ... ]
- Usage: toggle _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be [_\bv_\ba_\br_\bi_\ba_\bb_\bl_\be ... ]
- Usage: unset _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be [_\bv_\ba_\br_\bi_\ba_\bb_\bl_\be ... ]
- Usage: reset _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be [_\bv_\ba_\br_\bi_\ba_\bb_\bl_\be ... ]
-
- This command is used to set (and unset) ``configuration variables''.
- There are four basic types of variables: boolean, number, string and
- quadoption. _\bb_\bo_\bo_\bl_\be_\ba_\bn variables can be _\bs_\be_\bt (true) or _\bu_\bn_\bs_\be_\bt (false).
- _\bn_\bu_\bm_\bb_\be_\br variables can be assigned a positive integer value.
-
- _\bs_\bt_\br_\bi_\bn_\bg variables consist of any number of printable characters.
- _\bs_\bt_\br_\bi_\bn_\bg_\bs must be enclosed in quotes if they contain spaces or tabs.
- You may also use the ``C'' escape sequences \\b\n\bn and \\b\t\bt for newline and
- tab, respectively.
-
- _\bq_\bu_\ba_\bd_\bo_\bp_\bt_\bi_\bo_\bn variables are used to control whether or not to be prompted
- for certain actions, or to specify a default action. A value of _\by_\be_\bs
- will cause the action to be carried out automatically as if you had
- answered yes to the question. Similarly, a value of _\bn_\bo will cause the
- the action to be carried out as if you had answered ``no.'' A value
- of _\ba_\bs_\bk_\b-_\by_\be_\bs will cause a prompt with a default answer of ``yes'' and
- _\ba_\bs_\bk_\b-_\bn_\bo will provide a default answer of ``no.''
-
- Prefixing a variable with ``no'' will unset it. Example: set
- noaskbcc.
-
- For _\bb_\bo_\bo_\bl_\be_\ba_\bn variables, you may optionally prefix the variable name
- with inv to toggle the value (on or off). This is useful when writing
- macros. Example: set invsmart_wrap.
-
- The toggle command automatically prepends the inv prefix to all
- specified variables.
-
- The unset command automatically prepends the no prefix to all
- specified variables.
- Using the enter-command function in the _\bi_\bn_\bd_\be_\bx menu, you can query the
- value of a variable by prefixing the name of the variable with a
- question mark:
-
- set ?allow_8bit
-
- The question mark is actually only required for boolean and quadoption
- variables.
-
- The reset command resets all given variables to the compile time
- defaults (hopefully mentioned in this manual). If you use the command
- set and prefix the variable with ``&'' this has the same behavior as
- the reset command.
-
- With the reset command there exists the special variable ``all'',
- which allows you to reset all variables to their system defaults.
-
- 3\b3.\b.2\b26\b6.\b. R\bRe\bea\bad\bdi\bin\bng\bg i\bin\bni\bit\bti\bia\bal\bli\biz\bza\bat\bti\bio\bon\bn c\bco\bom\bmm\bma\ban\bnd\bds\bs f\bfr\bro\bom\bm a\ban\bno\bot\bth\bhe\ber\br f\bfi\bil\ble\be
-
- Usage: source _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be [ _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be ... ]
-
- This command allows the inclusion of initialization commands from
- other files. For example, I place all of my aliases in
- ~/.mail_aliases so that I can make my ~/.muttrc readable and keep my
- aliases private.
-
- If the filename begins with a tilde (``~''), it will be expanded to
- the path of your home directory.
-
- If the filename ends with a vertical bar (|), then _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be is
- considered to be an executable program from which to read input (eg.
- source ~/bin/myscript|).
-
- 3\b3.\b.2\b27\b7.\b. R\bRe\bem\bmo\bov\bvi\bin\bng\bg h\bho\boo\bok\bks\bs
-
- Usage: unhook [ * | _\bh_\bo_\bo_\bk_\b-_\bt_\by_\bp_\be ]
-
- This command permits you to flush hooks you have previously defined.
- You can either remove all hooks by giving the ``*'' character as an
- argument, or you can remove all hooks of a specific type by saying
- something like unhook send-hook.
-
- 4\b4.\b. A\bAd\bdv\bva\ban\bnc\bce\bed\bd U\bUs\bsa\bag\bge\be
-
- 4\b4.\b.1\b1.\b. R\bRe\beg\bgu\bul\bla\bar\br E\bEx\bxp\bpr\bre\bes\bss\bsi\bio\bon\bns\bs
-
- All string patterns in Mutt including those in more complex
- ``patterns'' must be specified using regular expressions (regexp) in
- the ``POSIX extended'' syntax (which is more or less the syntax used
- by egrep and GNU awk). For your convenience, we have included below a
- brief description of this syntax.
-
- The search is case sensitive if the pattern contains at least one
- upper case letter, and case insensitive otherwise. Note that ``\''
- must be quoted if used for a regular expression in an initialization
- command: ``\\''.
-
- A regular expression is a pattern that describes a set of strings.
- Regular expressions are constructed analogously to arithmetic
- expressions, by using various operators to combine smaller
- expressions.
-
- Note that the regular expression can be enclosed/delimited by either "
- or ' which is useful if the regular expression includes a white-space
- character. See ``Syntax of Initialization Files'' for more
- information on " and ' delimiter processing. To match a literal " or
- ' you must preface it with \ (backslash).
-
- The fundamental building blocks are the regular expressions that match
- a single character. Most characters, including all letters and
- digits, are regular expressions that match themselves. Any
- metacharacter with special meaning may be quoted by preceding it with
- a backslash.
+ 5. Functions
- The period ``.'' matches any single character. The caret ``^'' and
- the dollar sign ``$'' are metacharacters that respectively match the
- empty string at the beginning and end of a line.
+ 5.1. generic
- A list of characters enclosed by ``['' and ``]'' matches any single
- character in that list; if the first character of the list is a caret
- ``^'' then it matches any character n\bno\bot\bt in the list. For example, the
- regular expression [\b[0\b01\b12\b23\b34\b45\b56\b67\b78\b89\b9]\b] matches any single digit. A range of
- ASCII characters may be specified by giving the first and last
- characters, separated by a hyphen ``-''. Most metacharacters lose
- their special meaning inside lists. To include a literal ``]'' place
- it first in the list. Similarly, to include a literal ``^'' place it
- anywhere but first. Finally, to include a literal hyphen ``-'' place
- it last.
+ 5.2. index
- Certain named classes of characters are predefined. Character classes
- consist of ``[:'', a keyword denoting the class, and ``:]''. The
- following classes are defined by the POSIX standard:
+ 5.3. pager
- [\b[:\b:a\bal\bln\bnu\bum\bm:\b:]\b]
- Alphanumeric characters.
+ 5.4. alias
- [\b[:\b:a\bal\blp\bph\bha\ba:\b:]\b]
- Alphabetic characters.
+ 5.5. query
- [\b[:\b:b\bbl\bla\ban\bnk\bk:\b:]\b]
- Space or tab characters.
+ 5.6. attach
- [\b[:\b:c\bcn\bnt\btr\brl\bl:\b:]\b]
- Control characters.
+ 5.7. compose
- [\b[:\b:d\bdi\big\bgi\bit\bt:\b:]\b]
- Numeric characters.
+ 5.8. postpone
- [\b[:\b:g\bgr\bra\bap\bph\bh:\b:]\b]
- Characters that are both printable and visible. (A space is
- printable, but not visible, while an ``a'' is both.)
+ 5.9. browser
- [\b[:\b:l\blo\bow\bwe\ber\br:\b:]\b]
- Lower-case alphabetic characters.
+ 5.10. pgp
- [\b[:\b:p\bpr\bri\bin\bnt\bt:\b:]\b]
- Printable characters (characters that are not control
- characters.)
+ 5.11. editor
- [\b[:\b:p\bpu\bun\bnc\bct\bt:\b:]\b]
- Punctuation characters (characters that are not letter, digits,
- control characters, or space characters).
- [\b[:\b:s\bsp\bpa\bac\bce\be:\b:]\b]
- Space characters (such as space, tab and formfeed, to name a
- few).
+ 5.12. sidebar
- [\b[:\b:u\bup\bpp\bpe\ber\br:\b:]\b]
- Upper-case alphabetic characters.
+ A. Acknowledgments
- [\b[:\b:x\bxd\bdi\big\bgi\bit\bt:\b:]\b]
- Characters that are hexadecimal digits.
+ B. Hacking Documentation
- A character class is only valid in a regular expression inside the
- brackets of a character list. Note that the brackets in these class
- names are part of the symbolic names, and must be included in addition
- to the brackets delimiting the bracket list. For example, [\b[[\b[:\b:d\bdi\big\bgi\bit\bt:\b:]\b]]\b]
- is equivalent to [\b[0\b0-\b-9\b9]\b].
-
- Two additional special sequences can appear in character lists. These
- apply to non-ASCII character sets, which can have single symbols
- (called collating elements) that are represented with more than one
- character, as well as several characters that are equivalent for
- collating or sorting purposes:
-
- C\bCo\bol\bll\bla\bat\bti\bin\bng\bg S\bSy\bym\bmb\bbo\bol\bls\bs
- A collating symbol is a multi-character collating element
- enclosed in ``[.'' and ``.]''. For example, if ``ch'' is a
- collating element, then [\b[[\b[.\b.c\bch\bh.\b.]\b]]\b] is a regexp that matches this
- collating element, while [\b[c\bch\bh]\b] is a regexp that matches either
- ``c'' or ``h''.
-
- E\bEq\bqu\bui\biv\bva\bal\ble\ben\bnc\bce\be C\bCl\bla\bas\bss\bse\bes\bs
- An equivalence class is a locale-specific name for a list of
- characters that are equivalent. The name is enclosed in ``[=''
- and ``=]''. For example, the name ``e'' might be used to
- represent all of ``e'' ``e'' and ``e''. In this case, [\b[[\b[=\b=e\be=\b=]\b]]\b]
- is a regexp that matches any of ``e'', ``e'' and ``e''.
-
- A regular expression matching a single character may be followed by
- one of several repetition operators:
-
- ?\b? The preceding item is optional and matched at most once.
-
- *\b* The preceding item will be matched zero or more times.
-
- +\b+ The preceding item will be matched one or more times.
-
- {\b{n\bn}\b}
- The preceding item is matched exactly _\bn times.
-
- {\b{n\bn,\b,}\b}
- The preceding item is matched _\bn or more times.
-
- {\b{,\b,m\bm}\b}
- The preceding item is matched at most _\bm times.
-
- {\b{n\bn,\b,m\bm}\b}
- The preceding item is matched at least _\bn times, but no more than
- _\bm times.
-
- Two regular expressions may be concatenated; the resulting regular
- expression matches any string formed by concatenating two substrings
- that respectively match the concatenated subexpressions.
-
- Two regular expressions may be joined by the infix operator ``|''; the
- resulting regular expression matches any string matching either
- subexpression.
-
- Repetition takes precedence over concatenation, which in turn takes
- precedence over alternation. A whole subexpression may be enclosed in
- parentheses to override these precedence rules.
-
- N\bNo\bot\bte\be:\b: If you compile Mutt with the GNU _\br_\bx package, the following
- operators may also be used in regular expressions:
-
- \\b\\\b\y\by
- Matches the empty string at either the beginning or the end of a
- word.
-
- \\b\\\b\B\bB
- Matches the empty string within a word.
-
- \\b\\\b\<\b<
- Matches the empty string at the beginning of a word.
-
- \\b\\\b\>\b>
- Matches the empty string at the end of a word.
-
- \\b\\\b\w\bw
- Matches any word-constituent character (letter, digit, or
- underscore).
-
- \\b\\\b\W\bW
- Matches any character that is not word-constituent.
-
- \\b\\\b\`\b`
- Matches the empty string at the beginning of a buffer (string).
-
- \\b\\\b\'\b'
- Matches the empty string at the end of a buffer.
-
- Please note however that these operators are not defined by POSIX, so
- they may or may not be available in stock libraries on various
- systems.
-
- 4\b4.\b.2\b2.\b. P\bPa\bat\btt\bte\ber\brn\bns\bs
-
- Many of Mutt's commands allow you to specify a pattern to match
- (limit, tag-pattern, delete-pattern, etc.). There are several ways to
- select messages:
-
- ~A all messages
- ~b EXPR messages which contain EXPR in the message body
- ~B EXPR messages which contain EXPR in the whole message
- ~c USER messages carbon-copied to USER
- ~C EXPR message is either to: or cc: EXPR
- ~D deleted messages
- ~d [MIN]-[MAX] messages with ``date-sent'' in a Date range
- ~E expired messages
- ~e EXPR message which contains EXPR in the ``Sender'' field
- ~F flagged messages
- ~f USER messages originating from USER
- ~g cryptographically signed messages
- ~G cryptographically encrypted messages
- ~H EXPR messages with a spam attribute matching EXPR
- ~h EXPR messages which contain EXPR in the message header
- ~k message contains PGP key material
- ~i ID message which match ID in the ``Message-ID'' field
- ~L EXPR message is either originated or received by EXPR
- ~l message is addressed to a known mailing list
- ~m [MIN]-[MAX] message in the range MIN to MAX *)
- ~n [MIN]-[MAX] messages with a score in the range MIN to MAX *)
- ~N new messages
- ~O old messages
- ~p message is addressed to you (consults alternates)
- ~P message is from you (consults alternates)
- ~Q messages which have been replied to
- ~R read messages
- ~r [MIN]-[MAX] messages with ``date-received'' in a Date range
- ~S superseded messages
- ~s SUBJECT messages having SUBJECT in the ``Subject'' field.
- ~T tagged messages
- ~t USER messages addressed to USER
- ~U unread messages
- ~v message is part of a collapsed thread.
- ~V cryptographically verified messages
- ~x EXPR messages which contain EXPR in the `References' field
- ~y EXPR messages which contain EXPR in the `X-Label' field
- ~z [MIN]-[MAX] messages with a size in the range MIN to MAX *)
- ~= duplicated messages (see $duplicate_threads)
- ~$ unreferenced messages (requires threaded view)
- ~* ``From'' contains realname and (syntactically) valid
- address (excluded are addresses matching against
- alternates or any alias)
-
- Where EXPR, USER, ID, and SUBJECT are ``regular expressions''.
- Special attention has to be made when using regular expressions inside
- of patterns. Specifically, Mutt's parser for these patterns will
- strip one level of backslash (\), which is normally used for quoting.
- If it is your intention to use a backslash in the regular expression,
- you will need to use two backslashes instead (\\).
+ Index
- *) The forms <[MAX], >[MIN], [MIN]- and -[MAX] are allowed, too.
+ List of Tables
- 4\b4.\b.2\b2.\b.1\b1.\b. P\bPa\bat\btt\bte\ber\brn\bn M\bMo\bod\bdi\bif\bfi\bie\ber\br
+ 2.1. Most commonly used movement bindings
- Note that patterns matching 'lists' of addresses (notably c,C,p,P and
- t) match if there is at least one match in the whole list. If you want
- to make sure that all elements of that list match, you need to prefix
- your pattern with ^. This example matches all mails which only has
- recipients from Germany.
+ 2.2. Line Editor Functions
- ^~C \.de$
+ 2.3. Most commonly used Index Bindings
- 4\b4.\b.2\b2.\b.2\b2.\b. C\bCo\bom\bmp\bpl\ble\bex\bx P\bPa\bat\btt\bte\ber\brn\bns\bs
+ 2.4. Most commonly used Pager Bindings
- Logical AND is performed by specifying more than one criterion. For
- example:
+ 2.5. ANSI Escape Sequences
- ~t mutt ~f elkins
+ 2.6. ANSI Colors
- would select messages which contain the word ``mutt'' in the list of
- recipients a\ban\bnd\bd that have the word ``elkins'' in the ``From'' header
- field.
+ 2.7. Most commonly used thread-related bindings
- Mutt also recognizes the following operators to create more complex
- search patterns:
+ 2.8. Most commonly used Mail Composition Bindings
- +\bo ! -- logical NOT operator
-
- +\bo | -- logical OR operator
-
- +\bo () -- logical grouping operator
-
- Here is an example illustrating a complex search pattern. This
- pattern will select all messages which do not contain ``mutt'' in the
- ``To'' or ``Cc'' field and which are from ``elkins''.
-
- !(~t mutt|~c mutt) ~f elkins
-
- Here is an example using white space in the regular expression (note
- the ' and " delimiters). For this to match, the mail's subject must
- match the ``^Junk +From +Me$'' and it must be from either ``Jim
- +Somebody'' or ``Ed +SomeoneElse'':
-
- '~s "^Junk +From +Me$" ~f ("Jim +Somebody"|"Ed +SomeoneElse")'
-
- Note that if a regular expression contains parenthesis, or a veritical
- bar ("|"), you m\bmu\bus\bst\bt enclose the expression in double or single quotes
- since those characters are also used to separate different parts of
- Mutt's pattern language. For example,
-
- ~f "me@(mutt\.org|cs\.hmc\.edu)"
-
- Without the quotes, the parenthesis wouldn't end. This would be
- seperated to two OR'd patterns: _\b~_\bf _\bm_\be_\b@_\b(_\bm_\bu_\bt_\bt_\b\_\b._\bo_\br_\bg and _\bc_\bs_\b\_\b._\bh_\bm_\bc_\b\_\b._\be_\bd_\bu_\b).
- They are never what you want.
-
- 4\b4.\b.2\b2.\b.3\b3.\b. S\bSe\bea\bar\brc\bch\bhi\bin\bng\bg b\bby\by D\bDa\bat\bte\be
+ 2.9. Most commonly used Compose Menu Bindings
- Mutt supports two types of dates, _\ba_\bb_\bs_\bo_\bl_\bu_\bt_\be and _\br_\be_\bl_\ba_\bt_\bi_\bv_\be.
+ 2.10. PGP Key Menu Flags
- A\bAb\bbs\bso\bol\blu\but\bte\be. Dates m\bmu\bus\bst\bt be in DD/MM/YY format (month and year are
- optional, defaulting to the current month and year). An example of a
- valid range of dates is:
+ 3.1. Alternative Key Names
- Limit to messages matching: ~d 20/1/95-31/10
+ 7.1. Reference: Command Line Options
- If you omit the minimum (first) date, and just specify ``-DD/MM/YY'',
- all messages _\bb_\be_\bf_\bo_\br_\be the given date will be selected. If you omit the
- maximum (second) date, and specify ``DD/MM/YY-'', all messages _\ba_\bf_\bt_\be_\br
- the given date will be selected. If you specify a single date with no
- dash (``-''), only messages sent on the given date will be selected.
+ 7.2. Reference: Patterns
- E\bEr\brr\bro\bor\br M\bMa\bar\brg\bgi\bin\bns\bs. You can add error margins to absolute dates. An error
- margin is a sign (+ or -), followed by a digit, followed by one of the
- following units:
+ 7.3. Reference: Obsolete Variables
- y years
- m months
- w weeks
- d days
+ 7.4. Reference: Default Generic Function Bindings
- As a special case, you can replace the sign by a ``*'' character,
- which is equivalent to giving identical plus and minus error margins.
+ 7.5. Reference: Default Index Function Bindings
- Example: To select any messages two weeks around January 15, 2001,
- you'd use the following pattern:
+ 7.6. Reference: Default Pager Function Bindings
- Limit to messages matching: ~d 15/1/2001*2w
+ 7.7. Reference: Default Alias Menu Function Bindings
- R\bRe\bel\bla\bat\bti\biv\bve\be. This type of date is relative to the current date, and may
- be specified as:
+ 7.8. Reference: Default Query Menu Function Bindings
- +\bo >_\bo_\bf_\bf_\bs_\be_\bt (messages older than _\bo_\bf_\bf_\bs_\be_\bt units)
+ 7.9. Reference: Default Attachment Menu Function Bindings
- +\bo <_\bo_\bf_\bf_\bs_\be_\bt (messages newer than _\bo_\bf_\bf_\bs_\be_\bt units)
+ 7.10. Reference: Default Compose Menu Function Bindings
- +\bo =_\bo_\bf_\bf_\bs_\be_\bt (messages exactly _\bo_\bf_\bf_\bs_\be_\bt units old)
+ 7.11. Reference: Default Postpone Menu Function Bindings
- _\bo_\bf_\bf_\bs_\be_\bt is specified as a positive number with one of the following
- units:
+ 7.12. Reference: Default Browser Menu Function Bindings
- y years
- m months
- w weeks
- d days
+ 7.13. Reference: Default PGP Menu Function Bindings
- Example: to select messages less than 1 month old, you would use
+ 7.14. Reference: Default Editor Function Bindings
- Limit to messages matching: ~d <1m
+ 7.15. Referene: Default Sidebar Function Bindings
- N\bNo\bot\bte\be:\b: all dates used when searching are relative to the l\blo\boc\bca\bal\bl time
- zone, so unless you change the setting of your ``$index_format'' to
- include a %[...] format, these are n\bno\bot\bt the dates shown in the main
- index.
+Chapter 1. Introduction
- 4\b4.\b.3\b3.\b. U\bUs\bsi\bin\bng\bg T\bTa\bag\bgs\bs
+ Table of Contents
- Sometimes it is desirable to perform an operation on a group of
- messages all at once rather than one at a time. An example might be
- to save messages to a mailing list to a separate folder, or to delete
- all messages with a given subject. To tag all messages matching a
- pattern, use the tag-pattern function, which is bound to ``shift-T''
- by default. Or you can select individual messages by hand using the
- ``tag-message'' function, which is bound to ``t'' by default. See
- ``patterns'' for Mutt's pattern matching syntax.
+ 1. Overview
- Once you have tagged the desired messages, you can use the ``tag-
- prefix'' operator, which is the ``;'' (semicolon) key by default.
- When the ``tag-prefix'' operator is used, the n\bne\bex\bxt\bt operation will be
- applied to all tagged messages if that operation can be used in that
- manner. If the ``$auto_tag'' variable is set, the next operation
- applies to the tagged messages automatically, without requiring the
- ``tag-prefix''.
+ 2. Mutt-ng Home Page
- In ``macros'' or ``push'' commands, you can use the ``tag-prefix-
- cond'' operator. If there are no tagged messages, mutt will "eat" the
- rest of the macro to abort it's execution. Mutt will stop "eating"
- the macro when it encounters the ``end-cond'' operator; after this
- operator the rest of the macro will be executed as normal.
+ 3. Mailing Lists
- 4\b4.\b.4\b4.\b. U\bUs\bsi\bin\bng\bg H\bHo\boo\bok\bks\bs
+ 4. Software Distribution Sites
- A _\bh_\bo_\bo_\bk is a concept borrowed from the EMACS editor which allows you to
- execute arbitrary commands before performing some operation. For
- example, you may wish to tailor your configuration based upon which
- mailbox you are reading, or to whom you are sending mail. In the Mutt
- world, a _\bh_\bo_\bo_\bk consists of a ``regular expression'' or ``pattern''
- along with a configuration option/command. See
+ 5. IRC
- +\bo ``folder-hook''
+ 6. Weblog
- +\bo ``send-hook''
+ 7. Copyright
- +\bo ``message-hook''
+ 8. Manual Conventions
- +\bo ``save-hook''
+1. Overview
- +\bo ``mbox-hook''
+ Mutt-ng is a small but very powerful text-based MIME mail client. Mutt-ng
+ is highly configurable, and is well suited to the mail power user with
+ advanced features like key bindings, keyboard macros, mail threading,
+ regular expression searches and a powerful pattern matching language for
+ selecting groups of messages.
- +\bo ``fcc-hook''
+ This documentation additionally contains documentation to Mutt-NG ,a fork
+ from Mutt with the goal to fix all the little annoyances of Mutt, to
+ integrate all the Mutt patches that are floating around in the web, and to
+ add other new features. Features specific to Mutt-ng will be discussed in
+ an extra section. Don't be confused when most of the documentation talk
+ about Mutt and not Mutt-ng, Mutt-ng contains all Mutt features, plus many
+ more.
- +\bo ``fcc-save-hook''
+2. Mutt-ng Home Page
- for specific details on each type of _\bh_\bo_\bo_\bk available.
+ <http://www.muttng.org/>
- N\bNo\bot\bte\be:\b: if a hook changes configuration settings, these changes remain
- effective until the end of the current mutt session. As this is
- generally not desired, a default hook needs to be added before all
- other hooks to restore configuration defaults. Here is an example with
- send-hook and the my_hdr directive:
+3. Mailing Lists
- send-hook . 'unmy_hdr From:'
- send-hook ~C'^b@b\.b$' my_hdr from: c@c.c
+ o <mutt-ng-users@lists.berlios.de>: This is where the mutt-ng user
+ support happens.
- 4\b4.\b.4\b4.\b.1\b1.\b. M\bMe\bes\bss\bsa\bag\bge\be M\bMa\bat\btc\bch\bhi\bin\bng\bg i\bin\bn H\bHo\boo\bok\bks\bs
+ o <mutt-ng-devel@lists.berlios.de>: The development mailing list for
+ mutt-ng
- Hooks that act upon messages (send-hook, save-hook, fcc-hook, message-
- hook) are evaluated in a slightly different manner. For the other
- types of hooks, a ``regular expression'' is sufficient. But in
- dealing with messages a finer grain of control is needed for matching
- since for different purposes you want to match different criteria.
+4. Software Distribution Sites
- Mutt allows the use of the ``search pattern'' language for matching
- messages in hook commands. This works in exactly the same way as it
- would when _\bl_\bi_\bm_\bi_\bt_\bi_\bn_\bg or _\bs_\be_\ba_\br_\bc_\bh_\bi_\bn_\bg the mailbox, except that you are
- restricted to those operators which match information mutt extracts
- from the header of the message (i.e. from, to, cc, date, subject,
- etc.).
+ So far, there are no official releases of Mutt-ng, but you can download
+ daily snapshots from <http://mutt-ng.berlios.de/snapshots/>
- For example, if you wanted to set your return address based upon
- sending mail to a specific address, you could do something like:
+5. IRC
- send-hook '~t ^me@cs\.hmc\.edu$' 'my_hdr From: Mutt User <user@host>'
+ Visit channel #muttng on irc.freenode.net (www.freenode.net) to chat with
+ other people interested in Mutt-ng.
- which would execute the given command when sending mail to
- _\bm_\be_\b@_\bc_\bs_\b._\bh_\bm_\bc_\b._\be_\bd_\bu.
+6. Weblog
- However, it is not required that you write the pattern to match using
- the full searching language. You can still specify a simple _\br_\be_\bg_\bu_\bl_\ba_\br
- _\be_\bx_\bp_\br_\be_\bs_\bs_\bi_\bo_\bn like the other hooks, in which case Mutt will translate
- your pattern into the full language, using the translation specified
- by the ``$default_hook'' variable. The pattern is translated at the
- time the hook is declared, so the value of ``$default_hook'' that is
- in effect at that time will be used.
+ If you want to read fresh news about the latest development in Mutt-ng,
+ and get informed about stuff like interesting, Mutt-ng-related articles
+ and packages for your favorite distribution, you can read and/or subscribe
+ to our Mutt-ng development weblog.
- 4\b4.\b.5\b5.\b. U\bUs\bsi\bin\bng\bgg\bg t\bth\bhe\be s\bsi\bid\bde\beb\bba\bar\br
+7. Copyright
- The sidebar, a feature specific to Mutt-ng, allows you to use a
- mailbox listing which looks very similar to the ones you probably know
- from GUI mail clients. The sidebar lists all specified mailboxes,
- shows the number in each and highlights the ones with new email Use
- the following configuration commands:
+ Mutt is Copyright (C) 1996-2000 Michael R. Elkins <me@cs.hmc.edu> and
+ others
- set sidebar_visible="yes"
- set sidebar_width=25
+ This program is free software; you can redistribute it and/or modify it
+ under the terms of the GNU General Public License as published by the Free
+ Software Foundation; either version 2 of the License, or (at your option)
+ any later version.
- If you want to specify the mailboxes you can do so with:
-
- set mbox='=INBOX'
- mailboxes INBOX \
- MBOX1 \
- MBOX2 \
- ...
+ This program is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ for more details.
- You can also specify the colors for mailboxes with new mails by using:
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc., 59
+ Temple Place - Suite 330, Boston, MA 02111, USA.
- color sidebar_new red black
+8. Manual Conventions
- The available functions are:
+ This manual contains several (hopefully consistent) conventions to
+ specially layout different items in different fashions.
- sidebar-scroll-up Scrolls the mailbox list up 1 page
- sidebar-scroll-down Scrolls the mailbox list down 1 page
- sidebar-next Hilights the next mailbox
- sidebar-next-new Hilights the next mailbox with new mail
- sidebar-previous Hilights the previous mailbox
- sidebar-open Opens the currently hilighted mailbox
+ o Configuration and environment variables will be printed in a
+ typewriter font and both prefixed with a dollar sign as it's common
+ for UNIX-like environments. Configuration variables are lower-case
+ only while environment variables are upper-case only. $imap_mail_check
+ is a configuration variable while $EDITOR is an environment variable.
- Reasonable key bindings look e.g. like this:
+ o Muttng-specific functions are enclosed in <> and printed in a
+ typewriter font, too, as in <sync-mailbox>.
- bind index \Cp sidebar-prev
- bind index \Cn sidebar-next
- bind index \Cb sidebar-open
- bind pager \Cp sidebar-prev
- bind pager \Cn sidebar-next
- bind pager \Cb sidebar-open
+ o As common for UNIX-like environments, references to manual pages are
+ printed with the section enclosed in braces, as in vi(1) or
+ muttngrc(5). Execute man [section] [name] to view the manual page.
- macro index B ':toggle sidebar_visible^M'
- macro pager B ':toggle sidebar_visible^M'
+ o Keys are presented in the following way: ordinary keys are just given
+ as-is, e.g. q. Control characters are prefixed with C- (e.g. the
+ screen can be redraw by pressing C-L) and E- for Escape, e.g. a folder
+ can be opened read-only with E-c.
- You can then go up and down by pressing Ctrl-P and Ctrl-N, and switch
- on and off the sidebar simply by pressing 'B'.
+ If, while reading this fine manual, you find any inconsistencies of
+ whatever kind, please contact the developers via
+ <mutt-ng-devel@lists.berlios.de> to report it.
- 4\b4.\b.6\b6.\b. E\bEx\bxt\bte\ber\brn\bna\bal\bl A\bAd\bdd\bdr\bre\bes\bss\bs Q\bQu\bue\ber\bri\bie\bes\bs
+Chapter 2. Getting Started
- Mutt supports connecting to external directory databases such as LDAP,
- ph/qi, bbdb, or NIS through a wrapper script which connects to mutt
- using a simple interface. Using the ``$query_command'' variable, you
- specify the wrapper command to use. For example:
+ Table of Contents
- set query_command = "mutt_ldap_query.pl '%s'"
+ 1. Basic Concepts
- The wrapper script should accept the query on the command-line. It
- should return a one line message, then each matching response on a
- single line, each line containing a tab separated address then name
- then some other optional information. On error, or if there are no
- matching addresses, return a non-zero exit code and a one line error
- message.
-
- An example multiple response output:
+ 1.1. Screens and Menus
- Searching database ... 20 entries ... 3 matching:
- me@cs.hmc.edu Michael Elkins mutt dude
- blong@fiction.net Brandon Long mutt and more
- roessler@guug.de Thomas Roessler mutt pgp
-
- There are two mechanisms for accessing the query function of mutt.
- One is to do a query from the index menu using the query function
- (default: Q). This will prompt for a query, then bring up the query
- menu which will list the matching responses. From the query menu, you
- can select addresses to create aliases, or to mail. You can tag
- multiple addresses to mail, start a new query, or have a new query
- appended to the current responses.
-
- The other mechanism for accessing the query function is for address
- completion, similar to the alias completion. In any prompt for
- address entry, you can use the complete-query function (default: ^T)
- to run a query based on the current address you have typed. Like
- aliases, mutt will look for what you have typed back to the last space
- or comma. If there is a single response for that query, mutt will
- expand the address in place. If there are multiple responses, mutt
- will activate the query menu. At the query menu, you can select one
- or more addresses to be added to the prompt.
-
- 4\b4.\b.7\b7.\b. M\bMa\bai\bil\blb\bbo\box\bx F\bFo\bor\brm\bma\bat\bts\bs
-
- Mutt supports reading and writing of four different mailbox formats:
- mbox, MMDF, MH and Maildir. The mailbox type is autodetected, so
- there is no need to use a flag for different mailbox types. When
- creating new mailboxes, Mutt uses the default specified with the
- ``$mbox_type'' variable.
-
- m\bmb\bbo\box\bx. This is the most widely used mailbox format for UNIX. All
- messages are stored in a single file. Each message has a line of the
- form:
-
- From me@cs.hmc.edu Fri, 11 Apr 1997 11:44:56 PST
-
- to denote the start of a new message (this is often referred to as the
- ``From_'' line).
-
- M\bMM\bMD\bDF\bF. This is a variant of the _\bm_\bb_\bo_\bx format. Each message is
- surrounded by lines containing ``^A^A^A^A'' (four control-A's).
-
- M\bMH\bH. A radical departure from _\bm_\bb_\bo_\bx and _\bM_\bM_\bD_\bF, a mailbox consists of a
- directory and each message is stored in a separate file. The filename
- indicates the message number (however, this is may not correspond to
- the message number Mutt displays). Deleted messages are renamed with a
- comma (,) prepended to the filename. N\bNo\bot\bte\be:\b: Mutt detects this type of
- mailbox by looking for either .mh_sequences or .xmhcache (needed to
- distinguish normal directories from MH mailboxes).
-
- M\bMa\bai\bil\bld\bdi\bir\br. The newest of the mailbox formats, used by the Qmail MTA (a
- replacement for sendmail). Similar to _\bM_\bH, except that it adds three
- subdirectories of the mailbox: _\bt_\bm_\bp, _\bn_\be_\bw and _\bc_\bu_\br. Filenames for the
- messages are chosen in such a way they are unique, even when two
- programs are writing the mailbox over NFS, which means that no file
- locking is needed.
-
- 4\b4.\b.8\b8.\b. M\bMa\bai\bil\blb\bbo\box\bx S\bSh\bho\bor\brt\btc\bcu\but\bts\bs
-
- There are a number of built in shortcuts which refer to specific
- mailboxes. These shortcuts can be used anywhere you are prompted for
- a file or mailbox path.
-
- +\bo ! -- refers to your ``$spoolfile'' (incoming) mailbox
-
- +\bo > -- refers to your ``$mbox'' file
-
- +\bo < -- refers to your ``$record'' file
-
- +\bo - or !! -- refers to the file you've last visited
-
- +\bo ~ -- refers to your home directory
-
- +\bo = or + -- refers to your ``$folder'' directory
-
- +\bo @_\ba_\bl_\bi_\ba_\bs -- refers to the ``default save folder'' as determined by
- the address of the alias
-
- 4\b4.\b.9\b9.\b. H\bHa\ban\bnd\bdl\bli\bin\bng\bg M\bMa\bai\bil\bli\bin\bng\bg L\bLi\bis\bst\bts\bs
-
- Mutt has a few configuration options that make dealing with large
- amounts of mail easier. The first thing you must do is to let Mutt
- know what addresses you consider to be mailing lists (technically this
- does not have to be a mailing list, but that is what it is most often
- used for), and what lists you are subscribed to. This is accomplished
- through the use of the ``lists and subscribe'' commands in your
- muttrc.
-
- Now that Mutt knows what your mailing lists are, it can do several
- things, the first of which is the ability to show the name of a list
- through which you received a message (i.e., of a subscribed list) in
- the _\bi_\bn_\bd_\be_\bx menu display. This is useful to distinguish between
- personal and list mail in the same mailbox. In the ``$index_format''
- variable, the escape ``%L'' will return the string ``To <list>'' when
- ``list'' appears in the ``To'' field, and ``Cc <list>'' when it
- appears in the ``Cc'' field (otherwise it returns the name of the
- author).
-
- Often times the ``To'' and ``Cc'' fields in mailing list messages tend
- to get quite large. Most people do not bother to remove the author of
- the message they are reply to from the list, resulting in two or more
- copies being sent to that person. The ``list-reply'' function, which
- by default is bound to ``L'' in the _\bi_\bn_\bd_\be_\bx menu and _\bp_\ba_\bg_\be_\br, helps reduce
- the clutter by only replying to the known mailing list addresses
- instead of all recipients (except as specified by Mail-Followup-To,
- see below).
-
- Mutt also supports the Mail-Followup-To header. When you send a
- message to a list of recipients which includes one or several
- subscribed mailing lists, and if the ``$followup_to'' option is set,
- mutt will generate a Mail-Followup-To header which contains all the
- recipients to whom you send this message, but not your address. This
- indicates that group-replies or list-replies (also known as
- ``followups'') to this message should only be sent to the original
- recipients of the message, and not separately to you - you'll receive
- your copy through one of the mailing lists you are subscribed to.
-
- Conversely, when group-replying or list-replying to a message which
- has a Mail-Followup-To header, mutt will respect this header if the
- ``$honor_followup_to'' configuration variable is set. Using list-
- reply will in this case also make sure that the reply goes to the
- mailing list, even if it's not specified in the list of recipients in
- the Mail-Followup-To.
-
- Note that, when header editing is enabled, you can create a Mail-
- Followup-To header manually. Mutt will only auto-generate this header
- if it doesn't exist when you send the message.
-
- The other method some mailing list admins use is to generate a
- ``Reply-To'' field which points back to the mailing list address
- rather than the author of the message. This can create problems when
- trying to reply directly to the author in private, since most mail
- clients will automatically reply to the address given in the ``Reply-
- To'' field. Mutt uses the ``$reply_to'' variable to help decide which
- address to use. If set to _\ba_\bs_\bk_\b-_\by_\be_\bs or _\ba_\bs_\bk_\b-_\bn_\bo, you will be prompted as
- to whether or not you would like to use the address given in the
- ``Reply-To'' field, or reply directly to the address given in the
- ``From'' field. When set to _\by_\be_\bs, the ``Reply-To'' field will be used
- when present.
-
- The ``X-Label:'' header field can be used to further identify mailing
- lists or list subject matter (or just to annotate messages
- individually). The ``$index_format'' variable's ``%y'' and ``%Y''
- escapes can be used to expand ``X-Label:'' fields in the index, and
- Mutt's pattern-matcher can match regular expressions to ``X-Label:''
- fields with the `` y'' selector. ``X-Label:'' is not a standard
- message header field, but it can easily be inserted by procmail and
- other mail filtering agents.
-
- Lastly, Mutt has the ability to ``sort'' the mailbox into ``threads''.
- A thread is a group of messages which all relate to the same subject.
- This is usually organized into a tree-like structure where a message
- and all of its replies are represented graphically. If you've ever
- used a threaded news client, this is the same concept. It makes
- dealing with large volume mailing lists easier because you can easily
- delete uninteresting threads and quickly find topics of value.
-
- 4\b4.\b.1\b10\b0.\b. E\bEd\bdi\bit\bti\bin\bng\bg t\bth\bhr\bre\bea\bad\bds\bs
-
- Mutt has the ability to dynamically restructure threads that are
- broken either by misconfigured software or bad behaviour from some
- correspondents. This allows to clean your mailboxes formats) from
- these annoyances which make it hard to follow a discussion.
-
- If you want to use these functions with IMAP, you need to compile Mutt
- with the _\b-_\b-_\be_\bn_\ba_\bb_\bl_\be_\b-_\bi_\bm_\ba_\bp_\b-_\be_\bd_\bi_\bt_\b-_\bt_\bh_\br_\be_\ba_\bd_\bs configure flag.
-
- 4\b4.\b.1\b10\b0.\b.1\b1.\b. L\bLi\bin\bnk\bki\bin\bng\bg t\bth\bhr\bre\bea\bad\bds\bs
-
- Some mailers tend to "forget" to correctly set the "In-Reply-To:" and
- "References:" headers when replying to a message. This results in
- broken discussions because Mutt has not enough information to guess
- the correct threading. You can fix this by tagging the reply, then
- moving to the parent message and using the ``link-threads'' function
- (bound to & by default). The reply will then be connected to this
- "parent" message.
-
- You can also connect multiple childs at once, tagging them and using
- the tag-prefix command (';') or the auto_tag option.
-
- 4\b4.\b.1\b10\b0.\b.2\b2.\b. B\bBr\bre\bea\bak\bki\bin\bng\bg t\bth\bhr\bre\bea\bad\bds\bs
-
- On mailing lists, some people are in the bad habit of starting a new
- discussion by hitting "reply" to any message from the list and
- changing the subject to a totally unrelated one. You can fix such
- threads by using the ``break-thread'' function (bound by default to
- #), which will turn the subthread starting from the current message
- into a whole different thread.
-
- 4\b4.\b.1\b11\b1.\b. D\bDe\bel\bli\biv\bve\ber\bry\by S\bSt\bta\bat\btu\bus\bs N\bNo\bot\bti\bif\bfi\bic\bca\bat\bti\bio\bon\bn (\b(D\bDS\bSN\bN)\b) S\bSu\bup\bpp\bpo\bor\brt\bt
-
- RFC1894 defines a set of MIME content types for relaying information
- about the status of electronic mail messages. These can be thought of
- as ``return receipts.'' Berkeley sendmail 8.8.x currently has some
- command line options in which the mail client can make requests as to
- what type of status messages should be returned.
-
- To support this, there are two variables. ``$dsn_notify'' is used to
- request receipts for different results (such as failed message,
- message delivered, etc.). ``$dsn_return'' requests how much of your
- message should be returned with the receipt (headers or full message).
- Refer to the man page on sendmail for more details on DSN.
-
- 4\b4.\b.1\b12\b2.\b. P\bPO\bOP\bP3\b3 S\bSu\bup\bpp\bpo\bor\brt\bt (\b(O\bOP\bPT\bTI\bIO\bON\bNA\bAL\bL)\b)
-
- If Mutt was compiled with POP3 support (by running the _\bc_\bo_\bn_\bf_\bi_\bg_\bu_\br_\be
- script with the _\b-_\b-_\be_\bn_\ba_\bb_\bl_\be_\b-_\bp_\bo_\bp flag), it has the ability to work with
- mailboxes located on a remote POP3 server and fetch mail for local
- browsing.
-
- You can access the remote POP3 mailbox by selecting the folder
- pop://popserver/.
-
- You can select an alternative port by specifying it with the server,
- ie: pop://popserver:port/.
- You can also specify different username for each folder, ie:
- pop://username@popserver[:port]/.
-
- Polling for new mail is more expensive over POP3 than locally. For
- this reason the frequency at which Mutt will check for mail remotely
- can be controlled by the ``$pop_checkinterval'' variable, which
- defaults to every 60 seconds.
-
- If Mutt was compiled with SSL support (by running the _\bc_\bo_\bn_\bf_\bi_\bg_\bu_\br_\be script
- with the _\b-_\b-_\bw_\bi_\bt_\bh_\b-_\bs_\bs_\bl flag), connections to POP3 servers can be
- encrypted. This naturally requires that the server supports SSL
- encrypted connections. To access a folder with POP3/SSL, you should
- use pops: prefix, ie: pops://[username@]popserver[:port]/.
-
- Another way to access your POP3 mail is the _\bf_\be_\bt_\bc_\bh_\b-_\bm_\ba_\bi_\bl function
- (default: G). It allows to connect to ``pop_host'', fetch all your
- new mail and place it in the local ``spoolfile''. After this point,
- Mutt runs exactly as if the mail had always been local.
-
- N\bNo\bot\bte\be:\b: If you only need to fetch all messages to local mailbox you
- should consider using a specialized program, such as fetchmail
-
- 4\b4.\b.1\b13\b3.\b. I\bIM\bMA\bAP\bP S\bSu\bup\bpp\bpo\bor\brt\bt (\b(O\bOP\bPT\bTI\bIO\bON\bNA\bAL\bL)\b)
-
- If Mutt was compiled with IMAP support (by running the _\bc_\bo_\bn_\bf_\bi_\bg_\bu_\br_\be
- script with the _\b-_\b-_\be_\bn_\ba_\bb_\bl_\be_\b-_\bi_\bm_\ba_\bp flag), it has the ability to work with
- folders located on a remote IMAP server.
-
- You can access the remote inbox by selecting the folder
- imap://imapserver/INBOX, where imapserver is the name of the IMAP
- server and INBOX is the special name for your spool mailbox on the
- IMAP server. If you want to access another mail folder at the IMAP
- server, you should use imap://imapserver/path/to/folder where
- path/to/folder is the path of the folder you want to access.
-
- You can select an alternative port by specifying it with the server,
- ie: imap://imapserver:port/INBOX.
-
- You can also specify different username for each folder, ie:
- imap://username@imapserver[:port]/INBOX.
-
- If Mutt was compiled with SSL support (by running the _\bc_\bo_\bn_\bf_\bi_\bg_\bu_\br_\be script
- with the _\b-_\b-_\bw_\bi_\bt_\bh_\b-_\bs_\bs_\bl flag), connections to IMAP servers can be
- encrypted. This naturally requires that the server supports SSL
- encrypted connections. To access a folder with IMAP/SSL, you should
- use imaps://[username@]imapserver[:port]/path/to/folder as your folder
- path.
-
- Pine-compatible notation is also supported, ie
- {[username@]imapserver[:port][/ssl]}path/to/folder
-
- Note that not all servers use / as the hierarchy separator. Mutt
- should correctly notice which separator is being used by the server
- and convert paths accordingly.
-
- When browsing folders on an IMAP server, you can toggle whether to
- look at only the folders you are subscribed to, or all folders with
- the _\bt_\bo_\bg_\bg_\bl_\be_\b-_\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\bd command. See also the ``$imap_list_subscribed''
- variable.
-
- Polling for new mail on an IMAP server can cause noticeable delays.
- So, you'll want to carefully tune the ``$mail_check'' and ``$timeout''
- variables. Personally I use
-
- set mail_check=90
- set timeout=15
-
- with relatively good results over my slow modem line.
-
- Note that if you are using mbox as the mail store on UW servers prior
- to v12.250, the server has been reported to disconnect a client if
- another client selects the same folder.
-
- 4\b4.\b.1\b13\b3.\b.1\b1.\b. T\bTh\bhe\be F\bFo\bol\bld\bde\ber\br B\bBr\bro\bow\bws\bse\ber\br
-
- As of version 1.2, mutt supports browsing mailboxes on an IMAP server.
- This is mostly the same as the local file browser, with the following
- differences:
-
- +\bo In lieu of file permissions, mutt displays the string "IMAP",
- possibly followed by the symbol "+", indicating that the entry
- contains both messages and subfolders. On Cyrus-like servers
- folders will often contain both messages and subfolders.
-
- +\bo For the case where an entry can contain both messages and
- subfolders, the selection key (bound to enter by default) will
- choose to descend into the subfolder view. If you wish to view the
- messages in that folder, you must use view-file instead (bound to
- space by default).
-
- +\bo You can create, delete and rename mailboxes with the create-
- mailbox, delete-mailbox, and rename-mailbox commands (default
- bindings: C, d and r, respectively). You may also subscribe and
- unsubscribe to mailboxes (normally these are bound to s and u,
- respectively).
-
- 4\b4.\b.1\b13\b3.\b.2\b2.\b. A\bAu\but\bth\bhe\ben\bnt\bti\bic\bca\bat\bti\bio\bon\bn
-
- Mutt supports four authentication methods with IMAP servers: SASL,
- GSSAPI, CRAM-MD5, and LOGIN (there is a patch by Grant Edwards to add
- NTLM authentication for you poor exchange users out there, but it has
- yet to be integrated into the main tree). There is also support for
- the pseudo-protocol ANONYMOUS, which allows you to log in to a public
- IMAP server without having an account. To use ANONYMOUS, simply make
- your username blank or "anonymous".
-
- SASL is a special super-authenticator, which selects among several
- protocols (including GSSAPI, CRAM-MD5, ANONYMOUS, and DIGEST-MD5) the
- most secure method available on your host and the server. Using some
- of these methods (including DIGEST-MD5 and possibly GSSAPI), your
- entire session will be encrypted and invisible to those teeming
- network snoops. It is the best option if you have it. To use it, you
- must have the Cyrus SASL library installed on your system and compile
- mutt with the _\b-_\b-_\bw_\bi_\bt_\bh_\b-_\bs_\ba_\bs_\bl flag.
-
- Mutt will try whichever methods are compiled in and available on the
- server, in the following order: SASL, ANONYMOUS, GSSAPI, CRAM-MD5,
- LOGIN.
-
- There are a few variables which control authentication:
-
- +\bo ``$imap_user'' - controls the username under which you request
- authentication on the IMAP server, for all authenticators. This is
- overridden by an explicit username in the mailbox path (ie by using
- a mailbox name of the form {user@host}).
-
- +\bo ``$imap_pass'' - a password which you may preset, used by all
- authentication methods where a password is needed.
-
- +\bo ``$imap_authenticators'' - a colon-delimited list of IMAP
- authentication methods to try, in the order you wish to try them.
- If specified, this overrides mutt's default (attempt everything, in
- the order listed above).
+ 1.2. Configuration
- 4\b4.\b.1\b14\b4.\b. M\bMa\ban\bna\bag\bgi\bin\bng\bg m\bmu\bul\blt\bti\bip\bpl\ble\be I\bIM\bMA\bAP\bP/\b/P\bPO\bOP\bP a\bac\bcc\bco\bou\bun\bnt\bts\bs (\b(O\bOP\bPT\bTI\bIO\bON\bNA\bAL\bL)\b)
-
- If you happen to have accounts on multiple IMAP and/or POP servers,
- you may find managing all the authentication settings inconvenient and
- error-prone. The account-hook command may help. This hook works like
- folder-hook but is invoked whenever you access a remote mailbox
- (including inside the folder browser), not just when you open the
- mailbox.
-
- Some examples:
-
- account-hook . 'unset imap_user; unset imap_pass; unset tunnel'
- account-hook imap://host1/ 'set imap_user=me1 imap_pass=foo'
- account-hook imap://host2/ 'set tunnel="ssh host2 /usr/libexec/imapd"'
+ 1.3. Functions
- 4\b4.\b.1\b15\b5.\b. S\bSt\bta\bar\brt\bt a\ba W\bWW\bWW\bW B\bBr\bro\bow\bws\bse\ber\br o\bon\bn U\bUR\bRL\bLs\bs (\b(E\bEX\bXT\bTE\bER\bRN\bNA\bAL\bL)\b)
+ 1.4. Interaction
- If a message contains URLs (_\bu_\bn_\bi_\bf_\bi_\be_\bd _\br_\be_\bs_\bo_\bu_\br_\bc_\be _\bl_\bo_\bc_\ba_\bt_\bo_\br = address in the
- WWW space like _\bh_\bt_\bt_\bp_\b:_\b/_\b/_\bw_\bw_\bw_\b._\bm_\bu_\bt_\bt_\b._\bo_\br_\bg_\b/), it is efficient to get a menu
- with all the URLs and start a WWW browser on one of them. This
- functionality is provided by the external urlview program which can be
- retrieved at ftp://ftp.mutt.org/mutt/contrib/ and the configuration
- commands:
+ 1.5. Modularization
- macro index \cb |urlview\n
- macro pager \cb |urlview\n
+ 1.6. Patterns
- 4\b4.\b.1\b16\b6.\b. C\bCo\bom\bmp\bpr\bre\bes\bss\bse\bed\bd f\bfo\bol\bld\bde\ber\brs\bs S\bSu\bup\bpp\bpo\bor\brt\bt (\b(O\bOP\bPT\bTI\bIO\bON\bNA\bAL\bL)\b)
+ 2. Screens and Menus
- If Mutt was compiled with compressed folders support (by running the
- _\bc_\bo_\bn_\bf_\bi_\bg_\bu_\br_\be script with the _\b-_\b-_\be_\bn_\ba_\bb_\bl_\be_\b-_\bc_\bo_\bm_\bp_\br_\be_\bs_\bs_\be_\bd flag), Mutt can open
- folders stored in an arbitrary format, provided that the user has a
- script to convert from/to this format to one of the accepted.
+ 2.1. Index
- The most common use is to open compressed archived folders e.g. with
- gzip.
+ 2.2. Pager
- In addition, the user can provide a script that gets a folder in an
- accepted format and appends its context to the folder in the user-
- defined format, which may be faster than converting the entire folder
- to the accepted format, appending to it and converting back to the
- user-defined format.
+ 2.3. File Browser
- There are three hooks defined (``open-hook'', ``close-hook'' and
- ``append-hook'') which define commands to uncompress and compress a
- folder and to append messages to an existing compressed folder
- respectively.
+ 2.4. Sidebar
- For example:
+ 2.5. Help
- open-hook \\.gz$ "gzip -cd %f > %t"
- close-hook \\.gz$ "gzip -c %t > %f"
- append-hook \\.gz$ "gzip -c %t >> %f"
+ 2.6. Compose Menu
- You do not have to specify all of the commands. If you omit ``append-
- hook'', the folder will be open and closed again each time you will
- add to it. If you omit ``close-hook'' (or give empty command) , the
- folder will be open in the mode. If you specify ``append-hook''
- though you'll be able to append to the folder.
+ 2.7. Alias Menu
- Note that Mutt will only try to use hooks if the file is not in one of
- the accepted formats. In particular, if the file is empty, mutt
- supposes it is not compressed. This is important because it allows the
- use of programs that do not have well defined extensions. Just use "."
- as a regexp. But this may be surprising if your compressing script
- produces empty files. In this situation, unset ``$save_empty'', so
- that the compressed file will be removed if you delete all of the
- messages.
+ 2.8. Attachment Menu
- 4\b4.\b.1\b16\b6.\b.1\b1.\b. O\bOp\bpe\ben\bn a\ba c\bco\bom\bmp\bpr\bre\bes\bss\bse\bed\bd m\bma\bai\bil\blb\bbo\box\bx f\bfo\bor\br r\bre\bea\bad\bdi\bin\bng\bg
+ 2.9. Key Menu
- Usage: open-hook _\br_\be_\bg_\be_\bx_\bp "_\bc_\bo_\bm_\bm_\ba_\bn_\bd"
+ 3. Moving Around in Menus
- The _\bc_\bo_\bm_\bm_\ba_\bn_\bd is the command that can be used for opening the folders
- whose names match _\br_\be_\bg_\be_\bx_\bp.
+ 4. Editing Input Fields
- The _\bc_\bo_\bm_\bm_\ba_\bn_\bd string is the printf-like format string, and it should
- accept two parameters: %f, which is replaced with the (compressed)
- folder name, and %t which is replaced with the name of the temporary
- folder to which to write.
+ 5. Reading Mail - The Index and Pager
- %f and %t can be repeated any number of times in the command string,
- and all of the entries are replaced with the appropriate folder name.
- In addition, %% is replaced by %, as in printf, and any other
- %anything is left as is.
+ 5.1. The Message Index
- The _\bc_\bo_\bm_\bm_\ba_\bn_\bd should n\bno\bot\bt remove the original compressed file. The
- _\bc_\bo_\bm_\bm_\ba_\bn_\bd should return non-zero exit status if it fails, so mutt knows
- something's wrong.
+ 5.2. The Pager
- Example:
+ 5.3. Threaded Mode
- open-hook \\.gz$ "gzip -cd %f > %t"
+ 5.4. Miscellaneous Functions
- If the _\bc_\bo_\bm_\bm_\ba_\bn_\bd is empty, this operation is disabled for this file
- type.
- 4\b4.\b.1\b16\b6.\b.2\b2.\b. W\bWr\bri\bit\bte\be a\ba c\bco\bom\bmp\bpr\bre\bes\bss\bse\bed\bd m\bma\bai\bil\blb\bbo\box\bx
+ 6. Sending Mail
- Usage: close-hook _\br_\be_\bg_\be_\bx_\bp "_\bc_\bo_\bm_\bm_\ba_\bn_\bd"
+ 6.1. Composing new messages
- This is used to close the folder that was open with the ``open-hook''
- command after some changes were made to it.
+ 6.2. Replying
- The _\bc_\bo_\bm_\bm_\ba_\bn_\bd string is the command that can be used for closing the
- folders whose names match _\br_\be_\bg_\be_\bx_\bp. It has the same format as in the
- ``open-hook'' command. Temporary folder in this case is the folder
- previously produced by the <``open-hook'' command.
+ 6.3. Editing the message header
- The _\bc_\bo_\bm_\bm_\ba_\bn_\bd should n\bno\bot\bt remove the decompressed file. The _\bc_\bo_\bm_\bm_\ba_\bn_\bd
- should return non-zero exit status if it fails, so mutt knows
- something's wrong.
+ 6.4. Using Mutt-ng with PGP
- Example:
+ 6.5. Sending anonymous messages via mixmaster
- close-hook \\.gz$ "gzip -c %t > %f"
+ 7. Forwarding and Bouncing Mail
- If the _\bc_\bo_\bm_\bm_\ba_\bn_\bd is empty, this operation is disabled for this file
- type, and the file can only be open in the readonly mode.
+ 8. Postponing Mail
- ``close-hook'' is not called when you exit from the folder if the
- folder was not changed.
+1. Basic Concepts
- 4\b4.\b.1\b16\b6.\b.3\b3.\b. A\bAp\bpp\bpe\ben\bnd\bd a\ba m\bme\bes\bss\bsa\bag\bge\be t\bto\bo a\ba c\bco\bom\bmp\bpr\bre\bes\bss\bse\bed\bd m\bma\bai\bil\blb\bbo\box\bx
+ 1.1. Screens and Menus
- Usage: append-hook _\br_\be_\bg_\be_\bx_\bp "_\bc_\bo_\bm_\bm_\ba_\bn_\bd"
+ mutt-ng offers different screens of which every has its special purpose:
- This command is used for saving to an existing compressed folder. The
- _\bc_\bo_\bm_\bm_\ba_\bn_\bd is the command that can be used for appending to the folders
- whose names match _\br_\be_\bg_\be_\bx_\bp. It has the same format as in the ``open-
- hook'' command. The temporary folder in this case contains the
- messages that are being appended.
+ o The index displays the contents of the currently opened mailbox.
- The _\bc_\bo_\bm_\bm_\ba_\bn_\bd should n\bno\bot\bt remove the decompressed file. The _\bc_\bo_\bm_\bm_\ba_\bn_\bd
- should return non-zero exit status if it fails, so mutt knows
- something's wrong.
+ o The pager is responsible for displaying messages, that is, the header,
+ the body and all attached parts.
- Example:
+ o The file browser offers operations on and displays information of all
+ folders mutt-ng should watch for mail.
- append-hook \\.gz$ "gzip -c %t >> %f"
+ o The sidebar offers a permanent view of which mailboxes contain how
+ many total, new and/or flagged mails.
- When ``append-hook'' is used, the folder is not opened, which saves
- time, but this means that we can not find out what the folder type is.
- Thus the default (``$mbox_type'') type is always supposed (i.e. this
- is the format used for the temporary folder).
+ o The help screen lists for all currently available commands how to
+ invoke them as well as a short description.
- If the file does not exist when you save to it, ``close-hook'' is
- called, and not ``append-hook''. ``append-hook'' is only for appending
- to existing folders.
+ o The compose menu is a comfortable interface take last actions before
+ sending mail: change subjects, attach files, remove attachements, etc.
- If the _\bc_\bo_\bm_\bm_\ba_\bn_\bd is empty, this operation is disabled for this file
- type. In this case, the folder will be open and closed again (using
- ``open-hook'' and ``close-hook''respectively) each time you will add
- to it.
+ o The attachement menu gives a summary and the tree structure of the
+ attachements of the current message.
- 4\b4.\b.1\b16\b6.\b.4\b4.\b. E\bEn\bnc\bcr\bry\byp\bpt\bte\bed\bd f\bfo\bol\bld\bde\ber\brs\bs
+ o The alias menu lists all or a fraction of the aliases a user has
+ defined.
- The compressed folders support can also be used to handle encrypted
- folders. If you want to encrypt a folder with PGP, you may want to use
- the following hooks:
+ o The key menu used in connection with encryption lets users choose the
+ right key to encrypt with.
- open-hook \\.pgp$ "pgp -f < %f > %t"
- close-hook \\.pgp$ "pgp -fe YourPgpUserIdOrKeyId < %t > %f"
+ When mutt-ng is started without any further options, it'll open the users
+ default mailbox and display the index.
- Please note, that PGP does not support appending to an encrypted
- folder, so there is no append-hook defined.
+ 1.2. Configuration
- N\bNo\bot\bte\be:\b: the folder is temporary stored decrypted in the /tmp directory,
- where it can be read by your system administrator. So think about the
- security aspects of this.
+ Mutt-ng does not feature an internal configuration interface or menu due
+ to the simple fact that this would be too complex to handle (currently
+ there are several hundred variables which fine-tune the behaviour.)
- 5\b5.\b. M\bMu\but\btt\bt'\b's\bs M\bMI\bIM\bME\bE S\bSu\bup\bpp\bpo\bor\brt\bt
+ Mutt-ng is configured using configuration files which allow users to add
+ comments or manage them via version control systems to ease maintenance.
- Quite a bit of effort has been made to make Mutt the premier text-mode
- MIME MUA. Every effort has been made to provide the functionality
- that the discerning MIME user requires, and the conformance to the
- standards wherever possible. When configuring Mutt for MIME, there
- are two extra types of configuration files which Mutt uses. One is
- the mime.types file, which contains the mapping of file extensions to
- IANA MIME types. The other is the mailcap file, which specifies the
- external commands to use for handling specific MIME types.
+ Also, mutt-ng comes with a shell script named grml-muttng kindly
+ contributed by users which really helps and eases the creation of a user's
+ configuration file. When downloading the source code via a snapshot or via
+ subversion, it can be found in the contrib directory.
- 5\b5.\b.1\b1.\b. U\bUs\bsi\bin\bng\bg M\bMI\bIM\bME\bE i\bin\bn M\bMu\but\btt\bt
+ 1.3. Functions
- There are three areas/menus in Mutt which deal with MIME, they are the
- pager (while viewing a message), the attachment menu and the compose
- menu.
+ Mutt-ng offers great flexibility due to the use of functions: internally,
+ every action a user can make mutt-ng perform is named ``function.'' Those
+ functions are assigned to keys (or even key sequences) and may be
+ completely adjusted to user's needs. The basic idea is that the impatient
+ users get a very intuitive interface to start off with and advanced users
+ virtually get no limits to adjustments.
- 5\b5.\b.1\b1.\b.1\b1.\b. V\bVi\bie\bew\bwi\bin\bng\bg M\bMI\bIM\bME\bE m\bme\bes\bss\bsa\bag\bge\bes\bs i\bin\bn t\bth\bhe\be p\bpa\bag\bge\ber\br
+ 1.4. Interaction
- When you select a message from the index and view it in the pager,
- Mutt decodes the message to a text representation. Mutt internally
- supports a number of MIME types, including text/plain, text/enriched,
- message/rfc822, and message/news. In addition, the export controlled
- version of Mutt recognizes a variety of PGP MIME types, including
- PGP/MIME and application/pgp.
+ Mutt-ng has two basic concepts of user interaction:
- Mutt will denote attachments with a couple lines describing them.
- These lines are of the form:
+ 1. There is one dedicated line on the screen used to query the user for
+ input, issue any command, query variables and display error and
+ informational messages. As for every type of user input, this requires
+ manual action leading to the need of input.
- [-- Attachment #1: Description --]
- [-- Type: text/plain, Encoding: 7bit, Size: 10000 --]
-
- Where the Description is the description or filename given for the
- attachment, and the Encoding is one of 7bit/8bit/quoted-
- printable/base64/binary.
+ 2. The automatized interface for interaction are the so called hooks.
+ Hooks specify actions the user wants to be performed at well-defined
+ situations: what to do when entering which folder, what to do when
+ displaying or replying to what kind of message, etc. These are
+ optional, i.e. a user doesn't need to specify them but can do so.
- If Mutt cannot deal with a MIME type, it will display a message like:
+ 1.5. Modularization
- [-- image/gif is unsupported (use 'v' to view this part) --]
+ Although mutt-ng has many functionality built-in, many features can be
+ delegated to external tools to increase flexibility: users can define
+ programs to filter a message through before displaying, users can use any
+ program they want for displaying a message, message types (such as PDF or
+ PostScript) for which mutt-ng doesn't have a built-in filter can be
+ rendered by arbitrary tools and so forth. Although mutt-ng has an alias
+ mechanism built-in, it features using external tools to query for nearly
+ every type of addresses from sources like LDAP, databases or just the list
+ of locally known users.
- 5\b5.\b.1\b1.\b.2\b2.\b. T\bTh\bhe\be A\bAt\btt\bta\bac\bch\bhm\bme\ben\bnt\bt M\bMe\ben\bnu\bu
+ 1.6. Patterns
- The default binding for view-attachments is `v', which displays the
- attachment menu for a message. The attachment menu displays a list of
- the attachments in a message. From the attachment menu, you can save,
- print, pipe, delete, and view attachments. You can apply these
- operations to a group of attachments at once, by tagging the
- attachments and by using the ``tag-prefix'' operator. You can also
- reply to the current message from this menu, and only the current
- attachment (or the attachments tagged) will be quoted in your reply.
- You can view attachments as text, or view them using the mailcap
- viewer definition.
+ Mutt-ng has a built-in pattern matching ``language'' which is as widely
+ used as possible to present a consistent interface to users. The same
+ ``pattern terms'' can be used for searching, scoring, message selection
+ and much more.
- Finally, you can apply the usual message-related functions (like
- ``resend-message'', and the reply and forward functions) to
- attachments of type message/rfc822.
-
- See the help on the attachment menu for more information.
-
- 5\b5.\b.1\b1.\b.3\b3.\b. T\bTh\bhe\be C\bCo\bom\bmp\bpo\bos\bse\be M\bMe\ben\bnu\bu
-
- The compose menu is the menu you see before you send a message. It
- allows you to edit the recipient list, the subject, and other aspects
- of your message. It also contains a list of the attachments of your
- message, including the main body. From this menu, you can print,
- copy, filter, pipe, edit, compose, review, and rename an attachment or
- a list of tagged attachments. You can also modifying the attachment
- information, notably the type, encoding and description.
-
- Attachments appear as follows:
-
- - 1 [text/plain, 7bit, 1K] /tmp/mutt-euler-8082-0 <no description>
- 2 [applica/x-gunzip, base64, 422K] ~/src/mutt-0.85.tar.gz <no description>
-
- The '-' denotes that Mutt will delete the file after sending (or
- postponing, or cancelling) the message. It can be toggled with the
- toggle-unlink command (default: u). The next field is the MIME
- content-type, and can be changed with the edit-type command (default:
- ^T). The next field is the encoding for the attachment, which allows
- a binary message to be encoded for transmission on 7bit links. It can
- be changed with the edit-encoding command (default: ^E). The next
- field is the size of the attachment, rounded to kilobytes or
- megabytes. The next field is the filename, which can be changed with
- the rename-file command (default: R). The final field is the
- description of the attachment, and can be changed with the edit-
- description command (default: d).
-
- 5\b5.\b.2\b2.\b. M\bMI\bIM\bME\bE T\bTy\byp\bpe\be c\bco\bon\bnf\bfi\big\bgu\bur\bra\bat\bti\bio\bon\bn w\bwi\bit\bth\bh m\bmi\bim\bme\be.\b.t\bty\byp\bpe\bes\bs
-
- When you add an attachment to your mail message, Mutt searches your
- personal mime.types file at ${HOME}/.mime.types, and then the system
- mime.types file at /usr/local/share/mutt/mime.types or /etc/mime.types
-
- The mime.types file consist of lines containing a MIME type and a
- space separated list of extensions. For example:
-
- application/postscript ps eps
- application/pgp pgp
- audio/x-aiff aif aifc aiff
-
- A sample mime.types file comes with the Mutt distribution, and should
- contain most of the MIME types you are likely to use.
-
- If Mutt can not determine the mime type by the extension of the file
- you attach, it will look at the file. If the file is free of binary
- information, Mutt will assume that the file is plain text, and mark it
- as text/plain. If the file contains binary information, then Mutt
- will mark it as application/octet-stream. You can change the MIME
- type that Mutt assigns to an attachment by using the edit-type command
- from the compose menu (default: ^T). The MIME type is actually a major
- mime type followed by the sub-type, separated by a '/'. 6 major types:
- application, text, image, video, audio, and model have been approved
- after various internet discussions. Mutt recognises all of these if
- the appropriate entry is found in the mime.types file. It also
- recognises other major mime types, such as the chemical type that is
- widely used in the molecular modelling community to pass molecular
- data in various forms to various molecular viewers. Non-recognised
- mime types should only be used if the recipient of the message is
- likely to be expecting such attachments.
-
- 5\b5.\b.3\b3.\b. M\bMI\bIM\bME\bE V\bVi\bie\bew\bwe\ber\br c\bco\bon\bnf\bfi\big\bgu\bur\bra\bat\bti\bio\bon\bn w\bwi\bit\bth\bh m\bma\bai\bil\blc\bca\bap\bp
-
- Mutt supports RFC 1524 MIME Configuration, in particular the Unix
- specific format specified in Appendix A of RFC 1524. This file format
- is commonly referred to as the mailcap format. Many MIME compliant
- programs utilize the mailcap format, allowing you to specify handling
- for all MIME types in one place for all programs. Programs known to
- use this format include Netscape, XMosaic, lynx and metamail.
-
- In order to handle various MIME types that Mutt can not handle
- internally, Mutt parses a series of external configuration files to
- find an external handler. The default search string for these files
- is a colon delimited list set to
-
- ${HOME}/.mailcap:/usr/local/share/mutt/mailcap:/etc/mailcap:/etc/mailcap:/usr/etc/mailcap:/usr/local/etc/mailcap
-
- where $HOME is your home directory.
-
- In particular, the metamail distribution will install a mailcap file,
- usually as /usr/local/etc/mailcap, which contains some baseline
- entries.
-
- 5\b5.\b.3\b3.\b.1\b1.\b. T\bTh\bhe\be B\bBa\bas\bsi\bic\bcs\bs o\bof\bf t\bth\bhe\be m\bma\bai\bil\blc\bca\bap\bp f\bfi\bil\ble\be
-
- A mailcap file consists of a series of lines which are comments,
- blank, or definitions.
-
- A comment line consists of a # character followed by anything you
- want.
-
- A blank line is blank.
-
- A definition line consists of a content type, a view command, and any
- number of optional fields. Each field of a definition line is divided
- by a semicolon ';' character.
-
- The content type is specified in the MIME standard type/subtype
- method. For example, text/plain, text/html, image/gif, etc. In
- addition, the mailcap format includes two formats for wildcards, one
- using the special '*' subtype, the other is the implicit wild, where
- you only include the major type. For example, image/*, or video, will
- match all image types and video types, respectively.
-
- The view command is a Unix command for viewing the type specified.
- There are two different types of commands supported. The default is to
- send the body of the MIME message to the command on stdin. You can
- change this behaviour by using %s as a parameter to your view command.
- This will cause Mutt to save the body of the MIME message to a
- temporary file, and then call the view command with the %s replaced by
- the name of the temporary file. In both cases, Mutt will turn over the
- terminal to the view program until the program quits, at which time
- Mutt will remove the temporary file if it exists.
-
- So, in the simplest form, you can send a text/plain message to the
- external pager more on stdin:
-
- text/plain; more
-
- Or, you could send the message as a file:
-
- text/plain; more %s
-
- Perhaps you would like to use lynx to interactively view a text/html
- message:
-
- text/html; lynx %s
-
- In this case, lynx does not support viewing a file from stdin, so you
- must use the %s syntax. N\bNo\bot\bte\be:\b: _\bS_\bo_\bm_\be _\bo_\bl_\bd_\be_\br _\bv_\be_\br_\bs_\bi_\bo_\bn_\bs _\bo_\bf _\bl_\by_\bn_\bx _\bc_\bo_\bn_\bt_\ba_\bi_\bn _\ba
- _\bb_\bu_\bg _\bw_\bh_\be_\br_\be _\bt_\bh_\be_\by _\bw_\bi_\bl_\bl _\bc_\bh_\be_\bc_\bk _\bt_\bh_\be _\bm_\ba_\bi_\bl_\bc_\ba_\bp _\bf_\bi_\bl_\be _\bf_\bo_\br _\ba _\bv_\bi_\be_\bw_\be_\br _\bf_\bo_\br _\bt_\be_\bx_\bt_\b/_\bh_\bt_\bm_\bl_\b.
- _\bT_\bh_\be_\by _\bw_\bi_\bl_\bl _\bf_\bi_\bn_\bd _\bt_\bh_\be _\bl_\bi_\bn_\be _\bw_\bh_\bi_\bc_\bh _\bc_\ba_\bl_\bl_\bs _\bl_\by_\bn_\bx_\b, _\ba_\bn_\bd _\br_\bu_\bn _\bi_\bt_\b. _\bT_\bh_\bi_\bs _\bc_\ba_\bu_\bs_\be_\bs
- _\bl_\by_\bn_\bx _\bt_\bo _\bc_\bo_\bn_\bt_\bi_\bn_\bu_\bo_\bu_\bs_\bl_\by _\bs_\bp_\ba_\bw_\bn _\bi_\bt_\bs_\be_\bl_\bf _\bt_\bo _\bv_\bi_\be_\bw _\bt_\bh_\be _\bo_\bb_\bj_\be_\bc_\bt_\b.
-
- On the other hand, maybe you don't want to use lynx interactively, you
- just want to have it convert the text/html to text/plain, then you can
- use:
-
- text/html; lynx -dump %s | more
-
- Perhaps you wish to use lynx to view text/html files, and a pager on
- all other text formats, then you would use the following:
-
- text/html; lynx %s
- text/*; more
-
- This is the simplest form of a mailcap file.
-
- 5\b5.\b.3\b3.\b.2\b2.\b. S\bSe\bec\bcu\bur\bre\be u\bus\bse\be o\bof\bf m\bma\bai\bil\blc\bca\bap\bp
-
- The interpretion of shell meta-characters embedded in MIME parameters
- can lead to security problems in general. Mutt tries to quote
- parameters in expansion of %s syntaxes properly, and avoids risky
- characters by substituting them, see the ``mailcap_sanitize''
- variable.
-
- Although mutt's procedures to invoke programs with mailcap seem to be
- safe, there are other applications parsing mailcap, maybe taking less
- care of it. Therefore you should pay attention to the following
- rules:
-
- _\bK_\be_\be_\bp _\bt_\bh_\be _\b%_\b-_\be_\bx_\bp_\ba_\bn_\bd_\bo_\bs _\ba_\bw_\ba_\by _\bf_\br_\bo_\bm _\bs_\bh_\be_\bl_\bl _\bq_\bu_\bo_\bt_\bi_\bn_\bg_\b. Don't quote them with
- single or double quotes. Mutt does this for you, the right way, as
- should any other program which interprets mailcap. Don't put them
- into backtick expansions. Be highly careful with eval statements, and
- avoid them if possible at all. Trying to fix broken behaviour with
- quotes introduces new leaks - there is no alternative to correct
- quoting in the first place.
-
- If you have to use the %-expandos' values in context where you need
- quoting or backtick expansions, put that value into a shell variable
- and reference the shell variable where necessary, as in the following
- example (using $charset inside the backtick expansion is safe, since
- it is not itself subject to any further expansion):
-
- text/test-mailcap-bug; cat %s; copiousoutput; test=charset=%{charset} \
- && test "`echo $charset | tr '[A-Z]' '[a-z]'`" != iso-8859-1
-
- 5\b5.\b.3\b3.\b.3\b3.\b. A\bAd\bdv\bva\ban\bnc\bce\bed\bd m\bma\bai\bil\blc\bca\bap\bp U\bUs\bsa\bag\bge\be
-
- 5\b5.\b.3\b3.\b.3\b3.\b.1\b1.\b. O\bOp\bpt\bti\bio\bon\bna\bal\bl F\bFi\bie\bel\bld\bds\bs
-
- In addition to the required content-type and view command fields, you
- can add semi-colon ';' separated fields to set flags and other
- options. Mutt recognizes the following optional fields:
-
- c\bco\bop\bpi\bio\bou\bus\bso\bou\but\btp\bpu\but\bt
- This flag tells Mutt that the command passes possibly large
- amounts of text on stdout. This causes Mutt to invoke a pager
- (either the internal pager or the external pager defined by the
- pager variable) on the output of the view command. Without this
- flag, Mutt assumes that the command is interactive. One could
- use this to replace the pipe to more in the lynx -dump example
- in the Basic section:
-
- text/html; lynx -dump %s ; copiousoutput
-
- This will cause lynx to format the text/html output as text/plain
- and Mutt will use your standard pager to display the results.
-
- n\bne\bee\bed\bds\bst\bte\ber\brm\bmi\bin\bna\bal\bl
- Mutt uses this flag when viewing attachments with ``autoview'',
- in order to decide whether it should honor the setting of the
- ``$wait_key'' variable or not. When an attachment is viewed
- using an interactive program, and the corresponding mailcap
- entry has a _\bn_\be_\be_\bd_\bs_\bt_\be_\br_\bm_\bi_\bn_\ba_\bl flag, Mutt will use ``$wait_key'' and
- the exit status of the program to decide if it will ask you to
- press a key after the external program has exited. In all other
- situations it will not prompt you for a key.
-
- c\bco\bom\bmp\bpo\bos\bse\be=\b=<\b<c\bco\bom\bmm\bma\ban\bnd\bd>\b>
- This flag specifies the command to use to create a new
- attachment of a specific MIME type. Mutt supports this from the
- compose menu.
-
- c\bco\bom\bmp\bpo\bos\bse\bet\bty\byp\bpe\bed\bd=\b=<\b<c\bco\bom\bmm\bma\ban\bnd\bd>\b>
- This flag specifies the command to use to create a new
- attachment of a specific MIME type. This command differs from
- the compose command in that mutt will expect standard MIME
- headers on the data. This can be used to specify parameters,
- filename, description, etc. for a new attachment. Mutt
- supports this from the compose menu.
-
- p\bpr\bri\bin\bnt\bt=\b=<\b<c\bco\bom\bmm\bma\ban\bnd\bd>\b>
- This flag specifies the command to use to print a specific MIME
- type. Mutt supports this from the attachment and compose menus.
-
- e\bed\bdi\bit\bt=\b=<\b<c\bco\bom\bmm\bma\ban\bnd\bd>\b>
- This flag specifies the command to use to edit a specific MIME
- type. Mutt supports this from the compose menu, and also uses
- it to compose new attachments. Mutt will default to the defined
- editor for text attachments.
-
- n\bna\bam\bme\bet\bte\bem\bmp\bpl\bla\bat\bte\be=\b=<\b<t\bte\bem\bmp\bpl\bla\bat\bte\be>\b>
- This field specifies the format for the file denoted by %s in
- the command fields. Certain programs will require a certain
- file extension, for instance, to correctly view a file. For
- instance, lynx will only interpret a file as text/html if the
- file ends in .html. So, you would specify lynx as a text/html
- viewer with a line in the mailcap file like:
-
- text/html; lynx %s; nametemplate=%s.html
-
- t\bte\bes\bst\bt=\b=<\b<c\bco\bom\bmm\bma\ban\bnd\bd>\b>
- This field specifies a command to run to test whether this
- mailcap entry should be used. The command is defined with the
- command expansion rules defined in the next section. If the
- command returns 0, then the test passed, and Mutt uses this
- entry. If the command returns non-zero, then the test failed,
- and Mutt continues searching for the right entry. N\bNo\bot\bte\be:\b: _\bt_\bh_\be
- _\bc_\bo_\bn_\bt_\be_\bn_\bt_\b-_\bt_\by_\bp_\be _\bm_\bu_\bs_\bt _\bm_\ba_\bt_\bc_\bh _\bb_\be_\bf_\bo_\br_\be _\bM_\bu_\bt_\bt _\bp_\be_\br_\bf_\bo_\br_\bm_\bs _\bt_\bh_\be _\bt_\be_\bs_\bt_\b. For
- example:
-
- text/html; netscape -remote 'openURL(%s)' ; test=RunningX
- text/html; lynx %s
-
- In this example, Mutt will run the program RunningX which will
- return 0 if the X Window manager is running, and non-zero if it
- isn't. If RunningX returns 0, then Mutt will call netscape to dis-
- play the text/html object. If RunningX doesn't return 0, then Mutt
- will go on to the next entry and use lynx to display the text/html
- object.
-
- 5\b5.\b.3\b3.\b.3\b3.\b.2\b2.\b. S\bSe\bea\bar\brc\bch\bh O\bOr\brd\bde\ber\br
-
- When searching for an entry in the mailcap file, Mutt will search for
- the most useful entry for its purpose. For instance, if you are
- attempting to print an image/gif, and you have the following entries
- in your mailcap file, Mutt will search for an entry with the print
- command:
-
- image/*; xv %s
- image/gif; ; print= anytopnm %s | pnmtops | lpr; \
- nametemplate=%s.gif
-
- Mutt will skip the image/* entry and use the image/gif entry with the
- print command.
-
- In addition, you can use this with ``Autoview'' to denote two commands
- for viewing an attachment, one to be viewed automatically, the other
- to be viewed interactively from the attachment menu. In addition, you
- can then use the test feature to determine which viewer to use
- interactively depending on your environment.
-
- text/html; netscape -remote 'openURL(%s)' ; test=RunningX
- text/html; lynx %s; nametemplate=%s.html
- text/html; lynx -dump %s; nametemplate=%s.html; copiousoutput
-
- For ``Autoview'', Mutt will choose the third entry because of the
- copiousoutput tag. For interactive viewing, Mutt will run the program
- RunningX to determine if it should use the first entry. If the pro-
- gram returns non-zero, Mutt will use the second entry for interactive
- viewing.
-
- 5\b5.\b.3\b3.\b.3\b3.\b.3\b3.\b. C\bCo\bom\bmm\bma\ban\bnd\bd E\bEx\bxp\bpa\ban\bns\bsi\bio\bon\bn
-
- The various commands defined in the mailcap files are passed to the
- /bin/sh shell using the system() function. Before the command is
- passed to /bin/sh -c, it is parsed to expand various special
- parameters with information from Mutt. The keywords Mutt expands are:
-
- %\b%s\bs As seen in the basic mailcap section, this variable is expanded
- to a filename specified by the calling program. This file
- contains the body of the message to view/print/edit or where the
- composing program should place the results of composition. In
- addition, the use of this keyword causes Mutt to not pass the
- body of the message to the view/print/edit program on stdin.
-
- %\b%t\bt Mutt will expand %t to the text representation of the content
- type of the message in the same form as the first parameter of
- the mailcap definition line, ie text/html or image/gif.
-
- %\b%{\b{<\b<p\bpa\bar\bra\bam\bme\bet\bte\ber\br>\b>}\b}
- Mutt will expand this to the value of the specified parameter
- from the Content-Type: line of the mail message. For instance,
- if Your mail message contains:
-
- Content-Type: text/plain; charset=iso-8859-1
-
- then Mutt will expand %{charset} to iso-8859-1. The default meta-
- mail mailcap file uses this feature to test the charset to spawn an
- xterm using the right charset to view the message.
+2. Screens and Menus
- \\b\%\b% This will be replaced by a %
+ 2.1. Index
- Mutt does not currently support the %F and %n keywords specified in
- RFC 1524. The main purpose of these parameters is for multipart mes-
- sages, which is handled internally by Mutt.
-
- 5\b5.\b.3\b3.\b.4\b4.\b. E\bEx\bxa\bam\bmp\bpl\ble\be m\bma\bai\bil\blc\bca\bap\bp f\bfi\bil\ble\bes\bs
+ The index is the screen that you usually see first when you start mutt-ng.
+ It gives an overview over your emails in the currently opened mailbox. By
+ default, this is your system mailbox. The information you see in the index
+ is a list of emails, each with its number on the left, its flags (new
+ email, important email, email that has been forwarded or replied to,
+ tagged email, ...), the date when email was sent, its sender, the email
+ size, and the subject. Additionally, the index also shows thread
+ hierarchies: when you reply to an email, and the other person replies
+ back, you can see the other's person email in a "sub-tree" below. This is
+ especially useful for personal email between a group of people or when
+ you've subscribed to mailing lists.
- This mailcap file is fairly simple and standard:
+ 2.2. Pager
- ______________________________________________________________________
- # I'm always running X :)
- video/*; xanim %s > /dev/null
- image/*; xv %s > /dev/null
+ 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.
- # I'm always running netscape (if my computer had more memory, maybe)
- text/html; netscape -remote 'openURL(%s)'
- ______________________________________________________________________
+ Below the headers, you see the email body which usually contains the
+ message. If the email contains any attachments, you will see more
+ information about them below the email body, or, if the attachments are
+ text files, you can view them directly in the pager.
+
+ To give the user a good overview, it is possible to configure mutt-ng to
+ show different things in the pager with different colors. Virtually
+ everything that can be described with a regular expression can be colored,
+ e.g. URLs, email addresses or smileys.
+
+ 2.3. File Browser
+
+ The file browser is the interface to the local or remote file system. When
+ selecting a mailbox to open, the browser allows custom sorting of items,
+ limiting the items shown by a regular expression and a freely adjustable
+ format of what to display in which way. It also allows for easy navigation
+ through the file system when selecting file(s) to attach to a message,
+ select multiple files to attach and many more.
+
+ 2.4. Sidebar
+
+ The sidebar comes in handy to manage mails which are spread over different
+ folders. All folders users setup mutt-ng to watch for new mail will be
+ listed. The listing includes not only the name but also the number of
+ total messages, the number of new and flagged messages. Items with new
+ mail may be colored different from those with flagged mail, items may be
+ shortened or compress if they're they to long to be printed in full form
+ so that by abbreviated names, user still now what the name stands for.
+
+ 2.5. Help
+
+ The help screen is meant to offer a quick help to the user. It lists the
+ current configuration of key bindings and their associated commands
+ including a short description, and currently unbound functions that still
+ need to be associated with a key binding (or alternatively, they can be
+ called via the mutt-ng command prompt).
+
+ 2.6. Compose Menu
+
+ The compose menu features a split screen containing the information which
+ really matter before actually sending a message by mail or posting an
+ article to a newsgroup: who gets the message as what (recipient,
+ newsgroup, who gets what kind of copy). Additionally, users may set
+ security options like deciding whether to sign, encrypt or sign and
+ encrypt a message with/for what keys.
+
+ Also, it's used to attach messages, news articles or files to a message,
+ to re-edit any attachment including the message itself.
+
+ 2.7. Alias Menu
+
+ The alias menu is used to help users finding the recipients of messages.
+ For users who need to contact many people, there's no need to remember
+ addresses or names completely because it allows for searching, too. The
+ alias mechanism and thus the alias menu also features grouping several
+ addresses by a shorter nickname, the actual alias, so that users don't
+ have to select each single recipient manually.
+
+ 2.8. Attachment Menu
+
+ As will be later discussed in detail, mutt-ng features a good and stable
+ MIME implementation, that is, is greatly supports sending and receiving
+ messages of arbitrary type. The attachment menu displays a message's
+ structure in detail: what content parts are attached to which parent part
+ (which gives a true tree structure), which type is of what type and what
+ size. Single parts may saved, deleted or modified to offer great and easy
+ access to message's internals.
+
+ 2.9. Key Menu
+
+ FIXME
+
+3. Moving Around in Menus
+
+ Information is presented in menus, very similar to ELM. Here is a
+ tableshowing the common keys used to navigate menus in Mutt-ng.
+
+ Table 2.1. Most commonly used movement bindings
+
+ Key Function Description
+ j or Down <next-entry> move to the next entry
+ k or Up <previous-entry> move to the previous entry
+ z or PageDn <page-down> go to the next page
+ Z or PageUp <page-up> go to the previous page
+ = or Home <first-entry> jump to the first entry
+ * or End <last-entry> jump to the last entry
+ q <quit> exit the current menu
+ ? <help> list all key bindings for the current menu
+
+4. Editing Input Fields
+
+ Mutt-ng has a builtin line editor which is used as the primary way to
+ input textual data such as email addresses or filenames. The keys used to
+ move around while editing are very similar to those of Emacs.
+
+ Table 2.2. Line Editor Functions
+
+ Key Function Description
+ C-A or Home <bol> move to the start of the line
+ C-B or Left <backward-char> move back one char
+ E-B <backward-word> move back one word
+ C-D or Delete <delete-char> delete the char under the cursor
+ C-E or End <eol> move to the end of the line
+ C-F or Right <forward-char> move forward one char
+ E-F <forward-word> move forward one word
+ Tab <complete> complete filename or alias
+ C-T <complete-query> complete address with query
+ C-K <kill-eol> delete to the end of the line
+ E-d <kill-eow> delete to the end of the word
+ C-W <kill-word> kill the word in front of the cursor
+ C-U <kill-line> delete entire line
+ C-V <quote-char> quote the next typed key
+ Up <history-up> recall previous string from history
+ Down <history-down> recall next string from history
+ BackSpace <backspace> kill the char in front of the cursor
+ E-u <upcase-word> convert word to upper case
+ E-l <downcase-word> convert word to lower case
+ E-c <capitalize-word> capitalize the word
+ C-G abort
+ Return finish editing
- This mailcap file shows quite a number of examples:
-
- ______________________________________________________________________
- # Use xanim to view all videos Xanim produces a header on startup,
- # send that to /dev/null so I don't see it
- video/*; xanim %s > /dev/null
+ You can remap the editor functions using the bind command. For example, to
+ make the Delete key delete the character in front of the cursor rather
+ than under, you could use
- # Send html to a running netscape by remote
- text/html; netscape -remote 'openURL(%s)'; test=RunningNetscape
+ bind editor <delete> backspace
- # If I'm not running netscape but I am running X, start netscape on the
- # object
- text/html; netscape %s; test=RunningX
+5. Reading Mail - The Index and Pager
- # Else use lynx to view it as text
- text/html; lynx %s
+ Similar to many other mail clients, there are two modes in which mail
+ isread in Mutt-ng. The first is the index of messages in the mailbox,
+ which is called the ``index'' in Mutt-ng. The second mode is the display
+ of the message contents. This is called the ``pager.''
- # This version would convert the text/html to text/plain
- text/html; lynx -dump %s; copiousoutput
+ The next few sections describe the functions provided in each of these
+ modes.
- # I use enscript to print text in two columns to a page
- text/*; more %s; print=enscript -2Gr %s
+ 5.1. The Message Index
- # Netscape adds a flag to tell itself to view jpegs internally
- image/jpeg;xv %s; x-mozilla-flags=internal
+ Table 2.3. Most commonly used Index Bindings
- # Use xv to view images if I'm running X
- # In addition, this uses the \ to extend the line and set my editor
- # for images
- image/*;xv %s; test=RunningX; \
- edit=xpaint %s
+ Key Function Description
+ c change to a different mailbox
+ E-c change to a folder in read-only mode
+ C copy the current message to another mailbox
+ E-C decode a message and copy it to a folder
+ E-s decode a message and save it to a folder
+ D delete messages matching a pattern
+ d delete the current message
+ F mark as important
+ l show messages matching a pattern
+ N mark message as new
+ o change the current sort method
+ O reverse sort the mailbox
+ q save changes and exit
+ s save-message
+ T tag messages matching a pattern
+ t toggle the tag on a message
+ E-t toggle tag on entire message thread
+ U undelete messages matching a pattern
+ u undelete-message
+ v view-attachments
+ x abort changes and exit
+ Return display-message
+ Tab jump to the next new or unread message
+ @ show the author's full e-mail address
+ $ save changes to mailbox
+ / search
+ E-/ search-reverse
+ C-L clear and redraw the screen
+ C-T untag messages matching a pattern
- # Convert images to text using the netpbm tools
- image/*; (anytopnm %s | pnmscale -xysize 80 46 | ppmtopgm | pgmtopbm |
- pbmtoascii -1x2 ) 2>&1 ; copiousoutput
-
- # Send excel spreadsheets to my NT box
- application/ms-excel; open.pl %s
- ______________________________________________________________________
-
- 5\b5.\b.4\b4.\b. M\bMI\bIM\bME\bE A\bAu\but\bto\bov\bvi\bie\bew\bw
+ 5.1.1. Status Flags
- In addition to explicitly telling Mutt to view an attachment with the
- MIME viewer defined in the mailcap file, Mutt has support for
- automatically viewing MIME attachments while in the pager.
+ In addition to who sent the message and the subject, a short summary of
+ the disposition of each message is printed beside the message number. Zero
+ or more of the following ``flags'' may appear, which mean:
- To work, you must define a viewer in the mailcap file which uses the
- copiousoutput option to denote that it is non-interactive. Usually,
- you also use the entry to convert the attachment to a text
- representation which you can view in the pager.
+ D
- You then use the auto_view muttrc command to list the content-types
- that you wish to view automatically.
+ message is deleted (is marked for deletion)
- For instance, if you set auto_view to:
+ d
- auto_view text/html application/x-gunzip application/postscript image/gif application/x-tar-gz
+ message have attachments marked for deletion
- Mutt could use the following mailcap entries to automatically view
- attachments of these types.
+ K
- text/html; lynx -dump %s; copiousoutput; nametemplate=%s.html
- image/*; anytopnm %s | pnmscale -xsize 80 -ysize 50 | ppmtopgm | pgmtopbm | pbmtoascii ; copiousoutput
- application/x-gunzip; gzcat; copiousoutput
- application/x-tar-gz; gunzip -c %s | tar -tf - ; copiousoutput
- application/postscript; ps2ascii %s; copiousoutput
+ contains a PGP public key
- ``unauto_view'' can be used to remove previous entries from the
- autoview list. This can be used with message-hook to autoview
- messages based on size, etc. ``unauto_view *'' will remove all
- previous entries.
+ N
- 5\b5.\b.5\b5.\b. M\bMI\bIM\bME\bE M\bMu\bul\blt\bti\bip\bpa\bar\brt\bt/\b/A\bAl\blt\bte\ber\brn\bna\bat\bti\biv\bve\be
+ message is new
- Mutt has some heuristics for determining which attachment of a
- multipart/alternative type to display. First, mutt will check the
- alternative_order list to determine if one of the available types is
- preferred. The alternative_order list consists of a number of
- mimetypes in order, including support for implicit and explicit
- wildcards, for example:
+ O
- alternative_order text/enriched text/plain text application/postscript image/*
+ message is old
- Next, mutt will check if any of the types have a defined
- ``auto_view'', and use that. Failing that, Mutt will look for any
- text type. As a last attempt, mutt will look for any type it knows
- how to handle.
+ P
- To remove a MIME type from the alternative_order list, use the
- unalternative_order command.
+ message is PGP encrypted
- 5\b5.\b.6\b6.\b. M\bMI\bIM\bME\bE L\bLo\boo\bok\bku\bup\bp
+ r
- Mutt's mime_lookup list specifies a list of mime-types that should not
- be treated according to their mailcap entry. This option is designed
- to deal with binary types such as application/octet-stream. When an
- attachment's mime-type is listed in mime_lookup, then the extension of
- the filename will be compared to the list of extensions in the
- mime.types file. The mime-type associated with this extension will
- then be used to process the attachment according to the rules in the
- mailcap file and according to any other configuration options (such as
- auto_view) specified. Common usage would be:
+ message has been replied to
- mime_lookup application/octet-stream application/X-Lotus-Manuscript
+ S
- In addition, the unmime_lookup command may be used to disable this
- feature for any particular mime-type if it had been set, for example,
- in a global muttrc.
+ message is signed, and the signature is succesfully verified
- 6\b6.\b. R\bRe\bef\bfe\ber\bre\ben\bnc\bce\be
+ s
- 6\b6.\b.1\b1.\b. C\bCo\bom\bmm\bma\ban\bnd\bd l\bli\bin\bne\be o\bop\bpt\bti\bio\bon\bns\bs
+ message is signed
- Running mutt with no arguments will make Mutt attempt to read your
- spool mailbox. However, it is possible to read other mailboxes and to
- send messages from the command line as well.
+ !
- -A expand an alias
- -a attach a file to a message
- -b specify a blind carbon-copy (BCC) address
- -c specify a carbon-copy (Cc) address
- -e specify a config command to be run after initilization files are read
- -f specify a mailbox to load
- -F specify an alternate file to read initialization commands
- -h print help on command line options
- -H specify a draft file from which to read a header and body
- -i specify a file to include in a message composition
- -m specify a default mailbox type
- -n do not read the system Muttrc
- -p recall a postponed message
- -Q query a configuration variable
- -R open mailbox in read-only mode
- -s specify a subject (enclose in quotes if it contains spaces)
- -v show version number and compile-time definitions
- -x simulate the mailx(1) compose mode
- -y show a menu containing the files specified by the mailboxes command
- -z exit immediately if there are no messages in the mailbox
- -Z open the first folder with new message,exit immediately if none
+ message is flagged
- To read messages in a mailbox
+ *
- mutt [ -nz ] [ -F _\bm_\bu_\bt_\bt_\br_\bc ] [ -m _\bt_\by_\bp_\be ] [ -f _\bm_\ba_\bi_\bl_\bb_\bo_\bx ]
+ message is tagged
- To compose a new message
+ Some of the status flags can be turned on or off using
- mutt [ -n ] [ -F _\bm_\bu_\bt_\bt_\br_\bc ] [ -a _\bf_\bi_\bl_\be ] [ -c _\ba_\bd_\bd_\br_\be_\bs_\bs ] [ -i _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be ] [
- -s _\bs_\bu_\bb_\bj_\be_\bc_\bt ] _\ba_\bd_\bd_\br_\be_\bs_\bs [ _\ba_\bd_\bd_\br_\be_\bs_\bs ... ]
+ o set-flag (default: w)
- Mutt also supports a ``batch'' mode to send prepared messages. Simply
- redirect input from the file you wish to send. For example,
+ o clear-flag (default: W)
- mutt -s "data set for run #2" professor@bigschool.edu < ~/run2.dat
+ Furthermore, the following flags reflect who the message is addressed to.
+ They can be customized with the $to_chars variable.
- This command will send a message to ``professor@bigschool.edu'' with a
- subject of ``data set for run #2''. In the body of the message will
- be the contents of the file ``~/run2.dat''.
+ +
- 6\b6.\b.2\b2.\b. C\bCo\bon\bnf\bfi\big\bgu\bur\bra\bat\bti\bio\bon\bn C\bCo\bom\bmm\bma\ban\bnd\bds\bs
+ message is to you and you only
- The following are the commands understood by mutt.
+ T
- +\bo ``account-hook'' _\bp_\ba_\bt_\bt_\be_\br_\bn _\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ message is to you, but also to or cc'ed to others
- +\bo ``alias'' _\bk_\be_\by _\ba_\bd_\bd_\br_\be_\bs_\bs [ , _\ba_\bd_\bd_\br_\be_\bs_\bs, ... ]
+ C
- +\bo ``unalias'' [ * | _\bk_\be_\by ... ]
+ message is cc'ed to you
- +\bo ``alternates'' _\br_\be_\bg_\be_\bx_\bp [ _\br_\be_\bg_\be_\bx_\bp ... ]
+ F
- +\bo ``unalternates'' [ * | _\br_\be_\bg_\be_\bx_\bp ... ]
+ message is from you
- +\bo ``alternative_order'' _\bm_\bi_\bm_\be_\bt_\by_\bp_\be [ _\bm_\bi_\bm_\be_\bt_\by_\bp_\be ... ]
+ L
- +\bo ``unalternative_order'' _\bm_\bi_\bm_\be_\bt_\by_\bp_\be [ _\bm_\bi_\bm_\be_\bt_\by_\bp_\be ... ]
+ message is sent to a subscribed mailing list
- +\bo ``append-hook'' _\br_\be_\bg_\be_\bx_\bp _\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ 5.2. The Pager
- +\bo ``auto_view'' _\bm_\bi_\bm_\be_\bt_\by_\bp_\be [ _\bm_\bi_\bm_\be_\bt_\by_\bp_\be ... ]
+ By default, Mutt-ng uses its builtin pager to display the body of
+ messages. The pager is very similar to the Unix program less though not
+ nearly as featureful.
- +\bo ``unauto_view'' _\bm_\bi_\bm_\be_\bt_\by_\bp_\be [ _\bm_\bi_\bm_\be_\bt_\by_\bp_\be ... ]
+ Table 2.4. Most commonly used Pager Bindings
- +\bo ``bind'' _\bm_\ba_\bp _\bk_\be_\by _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn
+ Key Function Description
+ Return go down one line
+ Space display the next page (or next message if at the end of a
+ message)
+ - go back to the previous page
+ n search for next match
+ S skip beyond quoted text
+ T toggle display of quoted text
+ ? show key bindings
+ / search for a regular expression (pattern)
+ E-/ search backwards for a regular expression
+ \ toggle search pattern coloring
+ ^ jump to the top of the message
- +\bo ``charset-hook'' _\ba_\bl_\bi_\ba_\bs _\bc_\bh_\ba_\br_\bs_\be_\bt
+ In addition, many of the functions from the index are available in the
+ pager, such as delete-message or copy-message (this is one advantage over
+ using an external pager to view messages).
- +\bo ``close-hook'' _\br_\be_\bg_\be_\bx_\bp _\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ Also, the internal pager supports a couple other advanced features. For
+ one, it will accept and translate the ``standard'' nroff sequences forbold
+ and underline. These sequences are a series of either the letter,
+ backspace (C-H), the letter again for bold or the letter, backspace, _ for
+ denoting underline. Mutt-ng will attempt to display these in bold and
+ underline respectively if your terminal supports them. If not, you can use
+ the bold and underline color objects to specify a color or mono attribute
+ for them.
- +\bo ``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 ]
+ Additionally, the internal pager supports the ANSI escape sequences for
+ character attributes. Mutt-ng translates them into the correct color and
+ character settings. The sequences Mutt-ng supports are: ESC [
+ Ps;Ps;Ps;...;Ps m (see table below for possible values for Ps).
- +\bo ``uncolor'' _\bi_\bn_\bd_\be_\bx _\bp_\ba_\bt_\bt_\be_\br_\bn [ _\bp_\ba_\bt_\bt_\be_\br_\bn ... ]
+ Table 2.5. ANSI Escape Sequences
- +\bo ``exec'' _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn [ _\bf_\bu_\bn_\bc_\bt_\bi_\bo_\bn ... ]
+ Value Attribute
+ 0 All Attributes Off
+ 1 Bold on
+ 4 Underline on
+ 5 Blink on
+ 7 Reverse video on
+ 3x Foreground color is x (see table below)
+ 4x Background color is x (see table below)
- +\bo ``fcc-hook'' _\bp_\ba_\bt_\bt_\be_\br_\bn _\bm_\ba_\bi_\bl_\bb_\bo_\bx
+ Table 2.6. ANSI Colors
- +\bo ``fcc-save-hook'' _\bp_\ba_\bt_\bt_\be_\br_\bn _\bm_\ba_\bi_\bl_\bb_\bo_\bx
+ Number Color
+ 0 black
+ 1 red
+ 2 green
+ 3 yellow
+ 4 blue
+ 5 magenta
+ 6 cyan
+ 7 white
- +\bo ``folder-hook'' _\bp_\ba_\bt_\bt_\be_\br_\bn _\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ Mutt-ng uses these attributes for handling text/enriched messages, and
+ they can also be used by an external auto_view script for highlighting
+ purposes. Note: If you change the colors for your display, for example by
+ changing the color associated with color2 for your xterm, then that color
+ will be used instead of green.
- +\bo ``hdr_order'' _\bh_\be_\ba_\bd_\be_\br [ _\bh_\be_\ba_\bd_\be_\br ... ]
+ 5.3. Threaded Mode
- +\bo ``unhdr_order'' _\bh_\be_\ba_\bd_\be_\br [ _\bh_\be_\ba_\bd_\be_\br ... ]
+ When the mailbox is sorted by threads ,there are a few additional
+ functions available in the index and pager modes.
- +\bo ``iconv-hook'' _\bc_\bh_\ba_\br_\bs_\be_\bt _\bl_\bo_\bc_\ba_\bl_\b-_\bc_\bh_\ba_\br_\bs_\be_\bt
+ Table 2.7. Most commonly used thread-related bindings
- +\bo ``ignore'' _\bp_\ba_\bt_\bt_\be_\br_\bn [ _\bp_\ba_\bt_\bt_\be_\br_\bn ... ]
+ Key Function Description
+ C-D <delete-thread> delete all messages in the current thread
+ C-U <undelete-thread> undelete all messages in the current thread
+ C-N <next-thread> jump to the start of the next thread
+ C-P <previous-thread> jump to the start of the previous thread
+ C-R <read-thread> mark the current thread as read
+ E-d <delete-subthread> delete all messages in the current subthread
+ E-u <undelete-subthread> undelete all messages in the current subthread
+ E-n <next-subthread> jump to the start of the next subthread
+ E-p <previous-subthread> jump to the start of the previous subthread
+ E-r <read-subthread> mark the current subthread as read
+ E-t <tag-thread> toggle the tag on the current thread
+ E-v <collapse-thread> toggle collapse for the current thread
+ E-V <collapse-all> toggle collapse for all threads
+ P <parent-message> jump to parent message in thread
- +\bo ``unignore'' _\bp_\ba_\bt_\bt_\be_\br_\bn [ _\bp_\ba_\bt_\bt_\be_\br_\bn ... ]
+ Note: Collapsing a thread displays only the first message in the thread
+ and hides the others. This is useful when threads contain so many messages
+ that you can only see a handful of threads onthe screen. See %M in
+ $index_format.
+
+ For example, you could use %?M?(#%03M)&(%4l)? in $index_format to
+ optionally display the number of hidden messages if the thread is
+ collapsed.
+
+ See also the $strict_threads variable.
+
+ 5.4. Miscellaneous Functions
+
+ <create-alias> (default: a)
+
+ Creates a new alias based upon the current message (or prompts for a new
+ one). Once editing is complete, an alias command is added to the file
+ specified by the $alias_file variable for future use. Note: Specifying an
+ $alias_file does not add the aliases specified there-in, you must also
+ source the file.
+
+ <check-traditional-pgp> (default: E-P)
- +\bo ``lists'' _\br_\be_\bg_\be_\bx_\bp [ _\br_\be_\bg_\be_\bx_\bp ... ]
+ This function will search the current message for content signed or
+ encrypted with PGP the "traditional" way, that is, without proper MIME
+ tagging. Technically, this function will temporarily change the MIME
+ content types of the body parts containing PGP data; this is similar to
+ the <edit-type> function's effect.
- +\bo ``unlists'' _\br_\be_\bg_\be_\bx_\bp [ _\br_\be_\bg_\be_\bx_\bp ... ]
+ <display-toggle-weed> (default: h)
- +\bo ``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 ]
+ Toggles the weeding of message header fields specified by ignore commands.
- +\bo ``mailboxes'' _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be [ _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be ... ]
+ <edit> (default: e)
+
+ This command (available in the ``index'' and ``pager'') allows you to edit
+ the raw current message as it's present in the mail folder. After you have
+ finished editing, the changed message will be appended to the current
+ folder, and the original message will be marked for deletion.
- +\bo ``mbox-hook'' _\bp_\ba_\bt_\bt_\be_\br_\bn _\bm_\ba_\bi_\bl_\bb_\bo_\bx
+ <edit-type> (default: ) (default: C-E on the attachment menu, and in the
+ pager and index menus; C-T on the compose menu)
- +\bo ``message-hook'' _\bp_\ba_\bt_\bt_\be_\br_\bn _\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ This command is used to temporarily edit an attachment's content type to
+ fix, for instance, bogus character set parameters. When invoked from the
+ index or from the pager, you'll have the opportunity to edit the top-level
+ attachment's content type. On the attach-menu, you can change any
+ attachment's content type. These changes are not persistent, and get lost
+ upon changing folders.
- +\bo ``mime_lookup'' _\bm_\bi_\bm_\be_\bt_\by_\bp_\be [ _\bm_\bi_\bm_\be_\bt_\by_\bp_\be ... ]
+ Note that this command is also available on the compose-menu .There, it's
+ used to fine-tune the properties of attachments you are going to send.
- +\bo ``unmime_lookup'' _\bm_\bi_\bm_\be_\bt_\by_\bp_\be [ _\bm_\bi_\bm_\be_\bt_\by_\bp_\be ... ]
+ <enter-command> (default: :)
- +\bo ``mono'' _\bo_\bb_\bj_\be_\bc_\bt _\ba_\bt_\bt_\br_\bi_\bb_\bu_\bt_\be [ _\br_\be_\bg_\be_\bx_\bp ]
+ This command is used to execute any command you would normally put in a
+ configuration file. A common use is to check the settings of variables, or
+ in conjunction with macro to change settings on the fly.
- +\bo ``unmono'' _\bi_\bn_\bd_\be_\bx _\bp_\ba_\bt_\bt_\be_\br_\bn [ _\bp_\ba_\bt_\bt_\be_\br_\bn ... ]
+ <extract-keys> (default: C-K)
- +\bo ``my_hdr'' _\bs_\bt_\br_\bi_\bn_\bg
+ This command extracts PGP public keys from the current or tagged
+ message(s) and adds them to your PGP public key ring.
- +\bo ``unmy_hdr'' _\bf_\bi_\be_\bl_\bd [ _\bf_\bi_\be_\bl_\bd ... ]
+ <forget-passphrase> (default: C-F)
- +\bo ``open-hook'' _\br_\be_\bg_\be_\bx_\bp _\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ This command wipes the passphrase(s) from memory. It is useful, if you
+ misspelled the passphrase.
- +\bo ``crypt-hook'' _\bp_\ba_\bt_\bt_\be_\br_\bn _\bk_\be_\by_\b-_\bi_\bd
+ <list-reply> (default: L)
- +\bo ``push'' _\bs_\bt_\br_\bi_\bn_\bg
+ Reply to the current or tagged message(s) by extracting any addresses
+ which match the regular expressions given by the lists commands, but also
+ honor any Mail-Followup-To header(s) if the $honor_followup_to
+ configuration variable is set. Using this when replying to messages posted
+ to mailing lists helps avoid duplicate copies being sent to the author of
+ the message you are replying to.
- +\bo ``reset'' _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be [_\bv_\ba_\br_\bi_\ba_\bb_\bl_\be ... ]
+ <pipe-message> (default: )
- +\bo ``save-hook'' _\br_\be_\bg_\be_\bx_\bp _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be
+ Asks for an external Unix command and pipes the current or tagged
+ message(s) to it. The variables $pipe_decode, $pipe_split, $pipe_decode
+ and $wait_key control the exact behavior of this function.
- +\bo ``score'' _\bp_\ba_\bt_\bt_\be_\br_\bn _\bv_\ba_\bl_\bu_\be
+ <resend-message> (default: E-e)
- +\bo ``unscore'' _\bp_\ba_\bt_\bt_\be_\br_\bn [ _\bp_\ba_\bt_\bt_\be_\br_\bn ... ]
+ With resend-message, mutt takes the current message as a template for a
+ new message. This function is best described as "recall from arbitrary
+ folders". It can conveniently be used to forward MIME messages while
+ preserving the original mail structure. Note that the amount of headers
+ included here depends on the value of the $weed variable.
- +\bo ``send-hook'' _\br_\be_\bg_\be_\bx_\bp _\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ This function is also available from the attachment menu. You can use this
+ to easily resend a message which was included with a bounce message as a
+ message/rfc822 body part.
- +\bo ``reply-hook'' _\br_\be_\bg_\be_\bx_\bp _\bc_\bo_\bm_\bm_\ba_\bn_\bd
+ <shell-escape> (default: !)
- +\bo ``set'' [no|inv]_\bv_\ba_\br_\bi_\ba_\bb_\bl_\be[=_\bv_\ba_\bl_\bu_\be] [ _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be ... ]
+ Asks for an external Unix command and executes it. The $wait_key can be
+ used to control whether Mutt-ng will wait for a key to be pressed when the
+ command returns (presumably to let the user read the output of the
+ command), based on the return status of the named command.
- +\bo ``unset'' _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be [_\bv_\ba_\br_\bi_\ba_\bb_\bl_\be ... ]
+ <toggle-quoted> (default: T)
- +\bo ``source'' _\bf_\bi_\bl_\be_\bn_\ba_\bm_\be
+ The pager uses the $quote_regexp variable to detect quoted text when
+ displaying the body of the message. This function toggles the displayof
+ the quoted material in the message. It is particularly useful when are
+ interested in just the response and there is a large amount of quoted text
+ in the way.
- +\bo ``spam'' _\bp_\ba_\bt_\bt_\be_\br_\bn _\bf_\bo_\br_\bm_\ba_\bt
+ <skip-quoted> (default: S)
- +\bo ``nospam'' _\bp_\ba_\bt_\bt_\be_\br_\bn
+ This function will go to the next line of non-quoted text which come after
+ a line of quoted text in the internal pager.
+
+6. Sending Mail
+
+ The following bindings are available in the index for sending messages.
+
+ Table 2.8. Most commonly used Mail Composition Bindings
+
+ Key Function Description
+ m <compose> compose a new message
+ r <reply> reply to sender
+ g <group-reply> reply to all recipients
+ L <list-reply> reply to mailing list address
+ f <forward> forward message
+ b <bounce> bounce (remail) message
+ E-k <mail-key> mail a PGP public key to someone
+
+ Bouncing a message sends the message as is to the recipient you specify.
+ Forwarding a message allows you to add comments or modify the message you
+ are forwarding. These items are discussed in greater detail in the next
+ chapter forwarding-mail.
+
+ 6.1. Composing new messages
+
+ When you want to send an email using mutt-ng, simply press m on your
+ keyboard. Then, mutt-ng asks for the recipient via a prompt in the last
+ line:
+
+ To:
+
+ After you've finished entering the recipient(s), press return. If you want
+ to send an email to more than one recipient, separate the email addresses
+ using the comma ",". Mutt-ng then asks you for the email subject. Again,
+ press return after you've entered it. After that, mutt-ng got the most
+ important information from you, and starts up an editor where you can then
+ enter your email.
+
+ The editor that is called is selected in the following way: you can e.g.
+ set it in the mutt-ng configuration:
+
+ set editor = "vim +/^$/ -c ':set tw=72'"
+ set editor = "nano"
+ set editor = "emacs"
+
+ If you don't set your preferred editor in your configuration, mutt-ng
+ first looks whether the environment variable $VISUAL is set, and if so, it
+ takes its value as editor command. Otherwise, it has a look at $EDITOR and
+ takes its value if it is set. If no editor command can be found, mutt-ng
+ simply assumes vi(1) to be the default editor, since it's the most
+ widespread editor in the Unix world and it's pretty safe to assume that it
+ is installed and available.
+
+ When you've finished entering your message, save it and quit your editor.
+ Mutt-ng will then present you with a summary screen, the compose menu. On
+ the top, you see a summary of the most important available key commands.
+ Below that, you see the sender, the recipient(s), Cc and/or Bcc
+ recipient(s), the subject, the reply-to address, and optionally
+ information where the sent email will be stored and whether it should be
+ digitally signed and/or encrypted.
+
+ Below that, you see a list of "attachments". The mail you've just entered
+ before is also an attachment, but due to its special type (it's plain
+ text), it will be displayed as the normal message on the receiver's side.
+
+ At this point, you can add more attachments, pressing a, you can edit the
+ recipient addresses, pressing t for the "To:" field, c for the "Cc:"
+ field, and b for the "Bcc: field. You can also edit the subject the
+ subject by simply pressing s or the email message that you've entered
+ before by pressing e. You will then again return to the editor. You can
+ even edit the sender, by pressing <esc>f, but this shall only be used with
+ caution.
+
+ Alternatively, you can configure mutt-ng in a way that most of the above
+ settings can be edited using the editor. Therefore, you only need to add
+ the following to your configuration:
+
+ set edit_headers
+
+ Once you have finished editing the body of your mail message, you are
+ returned to the compose menu. The following options are available:
+
+ Table 2.9. Most commonly used Compose Menu Bindings
+
+ Key Function Description
+ a <attach-file> attach a file
+ A <attach-message> attach message(s) to the message
+ E-k <attach-key> attach a PGP public key
+ d <edit-description> edit description on attachment
+ D <detach-file> detach a file
+ t <edit-to> edit the To field
+ E-f <edit-from> edit the From field
+ r <edit-reply-to> edit the Reply-To field
+ c <edit-cc> edit the Cc field
+ b <edit-bcc> edit the Bcc field
+ y <send-message> send the message
+ s <edit-subject> edit the Subject
+ S <smime-menu> select S/MIME options
+ f <edit-fcc> specify an ``Fcc'' mailbox
+ p <pgp-menu> select PGP options
+ P <postpone-message> postpone this message until later
+ q <quit> quit (abort) sending the message
+ w <write-fcc> write the message to a folder
+ i <ispell> check spelling (if available on your system)
+ C-F <forget-passphrase> wipe passphrase(s) from memory
+
+ Note: The attach-message function will prompt you for a folder to attach
+ messages from. You can now tag messages in that folder and theywill be
+ attached to the message you are sending. Note that certainoperations like
+ composing a new mail, replying, forwarding, etc. are not permitted when
+ you are in that folder. The %r in $status_format will change to a 'A' to
+ indicate that you are in attach-message mode.
+
+ 6.2. Replying
+
+ 6.2.1. Simple Replies
+
+ When you want to reply to an email message, select it in the index menu
+ and then press r. Mutt-ng's behaviour is then similar to the behaviour
+ when you compose a message: first, you will be asked for the recipient,
+ then for the subject, and then, mutt-ng will start the editor with the
+ quote attribution and the quoted message. This can e.g. look like the
+ example below.
+
+ On Mon, Mar 07, 2005 at 05:02:12PM +0100, Michael Svensson wrote:
+ > Bill, can you please send last month's progress report to Mr.
+ > Morgan? We also urgently need the cost estimation for the new
+ > production server that we want to set up before our customer's
+ > project will go live.
+
+ You can start editing the email message. It is strongly recommended to put
+ your answer below the quoted text and to only quote what is really
+ necessary and that you refer to. Putting your answer on top of the quoted
+ message, is, although very widespread, very often not considered to be a
+ polite way to answer emails.
+
+ The quote attribution is configurable, by default it is set to
+
+ set attribution = "On %d, %n wrote:"
+
+ It can also be set to something more compact, e.g.
+
+ set attribution = "attribution="* %n <%a> [%(%y-%m-%d %H:%M)]:"
+
+ The example above results in the following attribution:
+
+ * Michael Svensson <svensson@foobar.com> [05-03-06 17:02]:
+ > Bill, can you please send last month's progress report to Mr.
+ > Morgan? We also urgently need the cost estimation for the new
+ > production server that we want to set up before our customer's
+ > project will go live.
+
+ Generally, try to keep your attribution short yet information-rich. It is
+ not the right place for witty quotes, long "attribution" novels or
+ anything like that: the right place for such things is - if at all - the
+ email signature at the very bottom of the message.
+
+ When you're done with writing your message, save and quit the editor. As
+ before, you will return to the compose menu, which is used in the same way
+ as before.
+
+ 6.2.2. Group Replies
+
+ In the situation where a group of people uses email as a discussion, most
+ of the emails will have one or more recipients, and probably several "Cc:"
+ recipients. The group reply functionalityensures that when you press g
+ instead of r to do a reply, each and every recipient that is contained in
+ the original message will receive a copy of the message, either as normal
+ recipient or as "Cc:" recipient.
- +\bo ``subscribe'' _\br_\be_\bg_\be_\bx_\bp [ _\br_\be_\bg_\be_\bx_\bp ... ]
+ 6.2.3. List Replies
- +\bo ``unsubscribe'' _\br_\be_\bg_\be_\bx_\bp [ _\br_\be_\bg_\be_\bx_\bp ... ]
+ When you use mailing lists, it's generally better to send your reply to a
+ message only to the list instead of the list and the original author. To
+ make this easy to use, mutt-ng features list replies.
+
+ To do a list reply, simply press L. If the email contains a
+ Mail-Followup-To: header, its value will be used as reply address.
+ Otherwise, mutt-ng searches through all mail addresses in the original
+ message and tries to match them a list of regular expressions which can be
+ specified using the lists command. If any of the regular expression
+ matches, a mailing list address has been found, and it will be used as
+ reply address.
+
+ lists linuxevent@luga\.at vuln-dev@ mutt-ng-users@
+
+ Nowadays, most mailing list software like GNU Mailman adds a
+ Mail-Followup-To: header to their emails anyway, so setting lists is
+ hardly ever necessary in practice.
+
+ 6.3. Editing the message header
+
+ When editing the header of your outgoing message, there are a couple of
+ special features available.
+
+ If you specify Fcc:filename Mutt-ng will pick up filename just as if you
+ had used the edit-fcc function in the compose menu.
+
+ You can also attach files to your message by specifying
+
+ Attach: filename [description]
+
+ where filename is the file to attach and description is an optional string
+ to use as the description of the attached file.
- +\bo ``toggle'' _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be [_\bv_\ba_\br_\bi_\ba_\bb_\bl_\be ... ]
+ When replying to messages, if you remove the In-Reply-To: field from the
+ header field, Mutt-ng will not generate a References: field, which allows
+ you to create a new message thread.
- +\bo ``unhook'' _\bh_\bo_\bo_\bk_\b-_\bt_\by_\bp_\be
+ Also see the $edit_headers and $editor_headers variables
- 6\b6.\b.3\b3.\b. C\bCo\bon\bnf\bfi\big\bgu\bur\bra\bat\bti\bio\bon\bn v\bva\bar\bri\bia\bab\bbl\ble\bes\bs
+ 6.4. Using Mutt-ng with PGP
- 6\b6.\b.3\b3.\b.1\b1.\b. a\bab\bbo\bor\brt\bt_\b_n\bno\bos\bsu\bub\bbj\bje\bec\bct\bt
+ If you want to use PGP, you can specify
- Type: quadoption
- Default: ask-yes
+ Pgp: [E | S | S id]
- If set to _\by_\be_\bs, when composing messages and no subject is given at the
- subject prompt, composition will be aborted. If set to _\bn_\bo, composing
- messages with no subject given at the subject prompt will never be
- aborted.
+ ``E'' encrypts, ``S'' signs and ``S<id>'' signs with the given key,
+ setting $pgp_sign_as permanently.
- 6\b6.\b.3\b3.\b.2\b2.\b. a\bab\bbo\bor\brt\bt_\b_u\bun\bnm\bmo\bod\bdi\bif\bfi\bie\bed\bd
+ If you have told mutt to PGP encrypt a message, it will guide you through
+ a key selection process when you try to send the message. Mutt-ng will not
+ ask you any questions about keys which have a certified user ID matching
+ one of the message recipients' mail addresses. However, there may be
+ situations in which there are several keys, weakly certified user ID
+ fields, or where no matching keys can be found.
- Type: quadoption
- Default: yes
+ In these cases, you are dropped into a menu with a list of keys from which
+ you can select one. When you quit this menu, or mutt can't find any
+ matching keys, you are prompted for a user ID. You can, as usually, abort
+ this prompt using C-G. When you do so, mutt will return to the compose
+ screen.
- If set to _\by_\be_\bs, composition will automatically abort after editing the
- message body if no changes are made to the file (this check only
- happens after the _\bf_\bi_\br_\bs_\bt edit of the file). When set to _\bn_\bo,
- composition will never be aborted.
+ Once you have successfully finished the key selection, the message will be
+ encrypted using the selected public keys, and sent out.
- 6\b6.\b.3\b3.\b.3\b3.\b. a\bal\bli\bia\bas\bs_\b_f\bfi\bil\ble\be
+ 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.
- Type: path
- Default: "~/.muttngrc"
+ The flags sequence (%f) will expand to one of the following flags:
- The default file in which to save aliases created by the ````create-
- alias'''' function.
+ Table 2.10. PGP Key Menu Flags
- N\bNo\bot\bte\be:\b: Mutt-ng will not automatically source this file; you must
- explicitly use the ````source'''' command for it to be executed.
+ Flag Description
+ R The key has been revoked and can't be used.
+ X The key is expired and can't be used.
+ d You have marked the key as disabled.
+ c There are unknown critical self-signature packets.
+
+ The capabilities field (%c) expands to a two-character
+ sequencerepresenting a key's capabilities. The first character gives the
+ key's encryption capabilities: A minus sign (- )means that the key cannot
+ be used for encryption. A dot (. )means that it's marked as a signature
+ key in one of the user IDs, but may also be used for encryption. The
+ letter e indicates that this key can be used for encryption.
+
+ The second character indicates the key's signing capabilities. Once again,
+ a ``-'' implies ``not for signing'', ``.'' implies that the key is marked
+ as an encryption key in one of the user-ids, and ``s'' denotes a key which
+ can be used for signing.
+
+ Finally, the validity field (%t) indicates how well-certified a user-id
+ is. A question mark (?) indicates undefined validity, a minus character
+ (-) marks an untrusted association, a space character means a partially
+ trusted association, and a plus character (+ ) indicates complete
+ validity.
- 6\b6.\b.3\b3.\b.4\b4.\b. a\bal\bli\bia\bas\bs_\b_f\bfo\bor\brm\bma\bat\bt
+ 6.5. Sending anonymous messages via mixmaster
- Type: string
- Default: "%4n %2f %t %-10a %r"
+ You may also have configured mutt to co-operate with Mixmaster, an
+ anonymous remailer. Mixmaster permits you to send your messages
+ anonymously using a chain of remailers. Mixmaster support in mutt is for
+ mixmaster version 2.04 (beta 45 appears to be the latest) and 2.03. It
+ does not support earlier versions or the later so-called version 3 betas,
+ of which the latest appears to be called 2.9b23.
- Specifies the format of the data displayed for the `alias' menu. The
- following printf(3)-style sequences are available:
+ To use it, you'll have to obey certain restrictions. Most important, you
+ cannot use the Cc and Bcc headers. To tell Mutt-ng to use mixmaster, you
+ have to select a remailer chain, using the mix function on the compose
+ menu.
- %\b%a\ba alias name
+ 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.
- %\b%f\bf flags - currently, a "d" for an alias marked for deletion
+ 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.
- %\b%n\bn index number
+ 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.
- %\b%r\br address which alias expands to
+7. Forwarding and Bouncing Mail
- %\b%t\bt character which indicates if the alias is tagged for inclusion
+ Often, it is necessary to forward mails to other people. Therefore,
+ mutt-ng supports forwarding messages in two different ways.
- 6\b6.\b.3\b3.\b.5\b5.\b. a\bal\bll\blo\bow\bw_\b_8\b8b\bbi\bit\bt
+ The first one is regular forwarding, as you probably know it from other
+ mail clients. You simply press f, enter the recipient email address, the
+ subject of the forwarded email, and then you can edit the message to be
+ forwarded in the editor. The forwarded message is separated from the rest
+ of the message via the two following markers:
- Type: boolean
- Default: yes
+ ----- Forwarded message from Lucas User <luser@example.com> -----
- Controls whether 8-bit data is converted to 7-bit using either Quoted-
- Printable or Base64 encoding when sending mail.
+ From: Lucas User <luser@example.com>
+ Date: Thu, 02 Dec 2004 03:08:34 +0100
+ To: Michael Random <mrandom@example.com>
+ Subject: Re: blackmail
- 6\b6.\b.3\b3.\b.6\b6.\b. a\bal\bll\blo\bow\bw_\b_a\ban\bns\bsi\bi
+ Pay me EUR 50,000.- cash or your favorite stuffed animal will die
+ a horrible death.
- Type: boolean
- Default: no
+ ----- End forwarded message -----
- Controls whether ANSI color codes in messages (and color tags in rich
- text messages) are to be interpreted. Messages containing these codes
- are rare, but if this option is set, their text will be colored
- accordingly. Note that this may override your color choices, and even
- present a security problem, since a message could include a line like
- "[-- PGP output follows ..." and give it the same color as your
- attachment color.
+ When you're done with editing the mail, save and quit the editor, and you
+ will return to the compose menu, the same menu you also encounter when
+ composing or replying to mails.
- 6\b6.\b.3\b3.\b.7\b7.\b. a\bar\brr\bro\bow\bw_\b_c\bcu\bur\brs\bso\bor\br
+ The second mode of forwarding emails with mutt-ng is the so-called
+ bouncing: when you bounce an email to another address, it will be sent in
+ practically the same format you send it (except for headers that are
+ created during transporting the message). To bounce a message, press b and
+ enter the recipient email address. By default, you are then asked whether
+ you really want to bounce the message to the specified recipient. If you
+ answer with yes, the message will then be bounced.
- Type: boolean
- Default: no
+ To the recipient, the bounced email will look as if he got it like a
+ regular email where he was Bcc: recipient. The only possibility to find
+ out whether it was a bounced email is to carefully study the email headers
+ and to find out which host really sent the email.
- When set, an arrow (``->'') will be used to indicate the current entry
- in menus instead of highlighting the whole line. On slow network or
- modem links this will make response faster because there is less that
- has to be redrawn on the screen when moving to the next or previous
- entries in the menu.
+8. Postponing Mail
- 6\b6.\b.3\b3.\b.8\b8.\b. a\bas\bsc\bci\bii\bi_\b_c\bch\bha\bar\brs\bs
+ At times it is desirable to delay sending a message that you have already
+ begun to compose. When the postpone-message function is used in the
+ compose menu, the body of your message and attachments are stored in the
+ mailbox specified by the $postponed variable. This means that you can
+ recall the message even if you exit Mutt-ng and then restart it at a later
+ time.
- Type: boolean
- Default: no
+ Once a message is postponed, there are several ways to resume it. From the
+ command line you can use the ``-p'' option, or if you compose a new
+ message from the index or pager you will be prompted if postponed messages
+ exist. If multiple messages are currently postponed, the postponed menu
+ will pop up and you can select which message you would like to resume.
- If set, Mutt-ng will use plain ASCII characters when displaying thread
- and attachment trees, instead of the default _\bA_\bC_\bS characters.
+ Note: If you postpone a reply to a message, the reply setting of the
+ message is only updated when you actually finish the message and send it.
+ Also, you must be in the same folder with the message you replied to for
+ the status of the message to be updated.
- 6\b6.\b.3\b3.\b.9\b9.\b. a\bas\bsk\bk_\b_f\bfo\bol\bll\blo\bow\bw_\b_u\bup\bp
+ See also the $postpone quad-option.
- Type: boolean
- Default: no
+Chapter 3. Configuration
- If set, Mutt-ng will prompt you for follow-up groups before editing
- the body of an outgoing message.
+ Table of Contents
- 6\b6.\b.3\b3.\b.1\b10\b0.\b. a\bas\bsk\bk_\b_x\bx_\b_c\bco\bom\bmm\bme\ben\bnt\bt_\b_t\bto\bo
+ 1. Locations of Configuration Files
- Type: boolean
- Default: no
+ 2. Basic Syntax of Initialization Files
- If set, Mutt-ng will prompt you for x-comment-to field before editing
- the body of an outgoing message.
+ 3. Expansion within variables
- 6\b6.\b.3\b3.\b.1\b11\b1.\b. a\bas\bsk\bkb\bbc\bcc\bc
+ 3.1. Commands' Output
- Type: boolean
- Default: no
+ 3.2. Environment Variables
- If set, Mutt-ng will prompt you for blind-carbon-copy (Bcc) recipients
- before editing an outgoing message.
+ 3.3. Configuration Variables
- 6\b6.\b.3\b3.\b.1\b12\b2.\b. a\bas\bsk\bkc\bcc\bc
+ 3.4. Self-Defined Variables
- Type: boolean
- Default: no
+ 3.5. Pre-Defined Variables
- If set, Mutt-ng will prompt you for carbon-copy (Cc) recipients before
- editing the body of an outgoing message.
+ 3.6. Type Conversions
- 6\b6.\b.3\b3.\b.1\b13\b3.\b. a\bas\bss\bsu\bum\bme\bed\bd_\b_c\bch\bha\bar\brs\bse\bet\bt
+ 4. Defining/Using aliases
- Type: string
- Default: "us-ascii"
+ 5. Changing the default key bindings
- This variable is a colon-separated list of character encoding schemes
- for messages without character encoding indication. Header field
- values and message body content without character encoding indication
- would be assumed that they are written in one of this list. By
- default, all the header fields and message body without any charset
- indication are assumed to be in "us-ascii".
+ 6. Defining aliases for character sets
- For example, Japanese users might prefer this:
+ 7. Setting variables based upon mailbox
- set assumed_charset="iso-2022-jp:euc-jp:shift_jis:utf-8"
+ 8. Keyboard macros
- However, only the first content is valid for the message body. This
- variable is valid only if ``$strict_mime'' is unset.
+ 9. Using color and mono video attributes
- 6\b6.\b.3\b3.\b.1\b14\b4.\b. a\bat\btt\bta\bac\bch\bh_\b_f\bfo\bor\brm\bma\bat\bt
+ 10. Ignoring (weeding) unwanted message headers
- Type: string
- Default: "%u%D%I %t%4n %T%.40d%> [%.7m/%.10M, %.6e%?C?, %C?, %s] "
+ 11. Alternative addresses
- This variable describes the format of the `attachment' menu. The
- following printf-style sequences are understood:
+ 12. Format = Flowed
- %\b%C\bC charset
+ 12.1. Introduction
- %\b%c\bc requires charset conversion (n or c)
+ 12.2. Receiving: Display Setup
- %\b%D\bD deleted flag
+ 12.3. Sending
- %\b%d\bd description
+ 12.4. Additional Notes
- %\b%e\be MIME content-transfer-encoding
+ 13. Mailing lists
- %\b%f\bf filename
+ 14. Using Multiple spool mailboxes
- %\b%I\bI disposition (I=inline, A=attachment)
+ 15. Defining mailboxes which receive mail
- %\b%m\bm major MIME type
+ 16. User defined headers
- %\b%M\bM MIME subtype
+ 17. Defining the order of headers when viewing messages
- %\b%n\bn attachment number
+ 18. Specify default save filename
- %\b%s\bs size
+ 19. Specify default Fcc: mailbox when composing
- %\b%t\bt tagged flag
+ 20. Specify default save filename and default Fcc: mailbox at once
- %\b%T\bT graphic tree characters
+ 21. Change settings based upon message recipients
- %\b%u\bu unlink (=to delete) flag
+ 22. Change settings before formatting a message
- %\b%>\b>X\bX
- right justify the rest of the string and pad with character "X"
+ 23. Choosing the cryptographic key of the recipient
- %\b%|\b|X\bX
- pad to the end of the line with character "X"
+ 24. Adding key sequences to the keyboard buffer
- 6\b6.\b.3\b3.\b.1\b15\b5.\b. a\bat\btt\bta\bac\bch\bh_\b_s\bse\bep\bp
+ 25. Executing functions
- Type: string
- Default: "\n"
+ 26. Message Scoring
- The separator to add between attachments when operating (saving,
- printing, piping, etc) on a list of tagged attachments.
+ 27. Spam detection
- 6\b6.\b.3\b3.\b.1\b16\b6.\b. a\bat\btt\bta\bac\bch\bh_\b_s\bsp\bpl\bli\bit\bt
+ 28. Setting variables
- Type: boolean
- Default: yes
+ 29. Reading initialization commands from another file
- If this variable is unset, when operating (saving, printing, piping,
- etc) on a list of tagged attachments, Mutt-ng will concatenate the
- attachments and will operate on them as a single attachment. The
- ````$attach_sep'''' separator is added after each attachment. When
- set, Mutt-ng will operate on the attachments one by one.
+ 30. Removing hooks
- 6\b6.\b.3\b3.\b.1\b17\b7.\b. a\bat\btt\btr\bri\bib\bbu\but\bti\bio\bon\bn
+ 31. Sharing Setups
- Type: string
- Default: "On %d, %n wrote:"
+ 31.1. Character Sets
- This is the string that will precede a message which has been included
- in a reply. For a full listing of defined printf()-like sequences see
- the section on ````$index_format''''.
+ 31.2. Modularization
- 6\b6.\b.3\b3.\b.1\b18\b8.\b. a\bau\but\bto\bo_\b_t\bta\bag\bg
+ 31.3. Conditional parts
- Type: boolean
- Default: no
+ 32. Obsolete Variables
- When set, functions in the _\bi_\bn_\bd_\be_\bx menu which affect a message will be
- applied to all tagged messages (if there are any). When unset, you
- must first use the tag-prefix function (default: ";") to make the next
- function apply to all tagged messages.
+1. Locations of Configuration Files
- 6\b6.\b.3\b3.\b.1\b19\b9.\b. a\bau\but\bto\boe\bed\bdi\bit\bt
+ While the default configuration (or ``preferences'') make Mutt-ng usable
+ right out of the box, it is often desirable to tailor Mutt-ng to suit your
+ own tastes. When Mutt-ng is first invoked, it will attempt to read the
+ ``system'' configuration file (defaults set by your local system
+ administrator), unless the ``-n'' commandline option is specified. This
+ file is typically /usr/local/share/muttng/Muttngrc or /etc/Muttngrc ,
+ Mutt-ng users will find this file in /usr/local/share/muttng/Muttrc or
+ /etc/Muttngrc. Mutt will next look for a file named .muttrc in your home
+ directory, Mutt-ng will look for .muttngrc. If this file does not exist
+ and your home directory has a subdirectory named .mutt , mutt try to load
+ a file named .muttng/muttngrc.
- Type: boolean
- Default: no
+ .muttrc (or .muttngrc for Mutt-ng) is the file where you will usually
+ place your commands to configure Mutt-ng.
- When set along with ````$edit_headers'''', Mutt-ng will skip the
- initial send-menu and allow you to immediately begin editing the body
- of your message. The send-menu may still be accessed once you have
- finished editing the body of your message.
+2. Basic Syntax of Initialization Files
- Also see ````$fast_reply''''.
+ An initialization file consists of a series of commands. Each line of the
+ file may contain one or more commands. When multiple commands are used,
+ they must be separated by a semicolon (;).
- 6\b6.\b.3\b3.\b.2\b20\b0.\b. b\bbe\bee\bep\bp
+ set realname='Mutt-ng user' ; ignore x-
- Type: boolean
- Default: yes
+ The hash mark, or pound sign (``#''), is used as a ``comment'' character.
+ You can use it to annotate your initialization file. All text after the
+ comment character to the end of the line is ignored. For example,
- When this variable is set, mutt-ng will beep when an error occurs.
+ my_hdr X-Disclaimer: Why are you listening to me? # This is a comment
- 6\b6.\b.3\b3.\b.2\b21\b1.\b. b\bbe\bee\bep\bp_\b_n\bne\bew\bw
+ Single quotes (') and double quotes (") can be used to quote strings which
+ contain spaces or other special characters. The difference between the two
+ types of quotes is similar to that of many popular shell programs, namely
+ that a single quote is used to specify a literal string (one that is not
+ interpreted for shell variables or quoting with a backslash (see next
+ paragraph), while double quotes indicate a string for which should be
+ evaluated. For example, backtics are evaluated inside of double quotes,
+ but not for single quotes.
- Type: boolean
- Default: no
+ \ quotes the next character, just as in shells such as bash and zsh. For
+ example, if want to put quotes ``"'' inside of a string, you can use ``\''
+ to force the next character to be a literal instead of interpreted
+ character.
- When this variable is set, mutt-ng will beep whenever it prints a
- message notifying you of new mail. This is independent of the setting
- of the ````$beep'''' variable.
+ set realname="Michael \"MuttDude\" Elkins"
- 6\b6.\b.3\b3.\b.2\b22\b2.\b. b\bbo\bou\bun\bnc\bce\be
+ ``\\'' means to insert a literal ``\'' into the line. ``\n'' and ``\r''
+ have their usual C meanings of linefeed and carriage-return, respectively.
- Type: quadoption
- Default: ask-yes
+ A \ at the end of a line can be used to split commands over multiple
+ lines, provided that the split points don't appear in the middle of
+ command names.
- Controls whether you will be asked to confirm bouncing messages. If
- set to _\by_\be_\bs you don't get asked if you want to bounce a message.
- Setting this variable to _\bn_\bo is not generally useful, and thus not
- recommended, because you are unable to bounce messages.
+ Please note that, unlike the various shells, mutt-ng interprets a ``\'' at
+ the end of a line also in comments. This allows you to disable a command
+ split over multiple lines with only one ``#''.
- 6\b6.\b.3\b3.\b.2\b23\b3.\b. b\bbo\bou\bun\bnc\bce\be_\b_d\bde\bel\bli\biv\bve\ber\bre\bed\bd
+ # folder-hook . \
+ set realname="Michael \"MuttDude\" Elkins"
- Type: boolean
- Default: yes
+ When testing your config files, beware the following caveat. The backslash
+ at the end of the commented line extends the current line with the next
+ line - then referred to as a ``continuation line''. As the first line is
+ commented with a hash (#) all following continuation lines are also part
+ of a comment and therefore are ignored, too. So take care of comments when
+ continuation lines are involved within your setup files!
- When this variable is set, mutt-ng will include Delivered-To headers
- when bouncing messages. Postfix users may wish to unset this
- variable.
+ Abstract example:
- 6\b6.\b.3\b3.\b.2\b24\b4.\b. c\bca\bat\btc\bch\bhu\bup\bp_\b_n\bne\bew\bws\bsg\bgr\bro\bou\bup\bp
+ line1\
+ line2a # line2b\
+ line3\
+ line4
+ line5
- Type: quadoption
- Default: ask-yes
+ line1 ``continues'' until line4. however, the part after the # is a
+ comment which includes line3 and line4. line5 is a new line of its own and
+ thus is interpreted again.
- If this variable is _\bs_\be_\bt, Mutt-ng will mark all articles in newsgroup
- as read when you quit the newsgroup (catchup newsgroup).
+ The commands understood by mutt are explained in the next paragraphs. For
+ a complete list, see the commands.
- 6\b6.\b.3\b3.\b.2\b25\b5.\b. c\bce\ber\brt\bti\bif\bfi\bic\bca\bat\bte\be_\b_f\bfi\bil\ble\be
+3. Expansion within variables
- Type: path
- Default: "~/.mutt_certificates"
+ Besides just assign static content to variables, there's plenty of ways of
+ adding external and more or less dynamic content.
- This variable specifies the file where the certificates you trust are
- saved. When an unknown certificate is encountered, you are asked if
- you accept it or not. If you accept it, the certificate can also be
- saved in this file and further connections are automatically accepted.
+ 3.1. Commands' Output
- You can also manually add CA certificates in this file. Any server
- certificate that is signed with one of these CA certificates are also
- automatically accepted.
+ It is possible to substitute the output of a Unix command in an
+ initialization file. This is accomplished by enclosing the command in
+ backquotes (``) as in, for example:
- Example: set certificate_file=~/.mutt/certificates
+ my_hdr X-Operating-System: `uname -a`
- 6\b6.\b.3\b3.\b.2\b26\b6.\b. c\bch\bha\bar\brs\bse\bet\bt
+ The output of the Unix command ``uname -a'' will be substituted before the
+ line is parsed. Note that since initialization files are line oriented,
+ only the first line of output from the Unix command will be substituted.
- Type: string
- Default: ""
+ 3.2. Environment Variables
- Character set your terminal uses to display and enter textual data.
+ UNIX environments can be accessed like the way it is done in shells like
+ sh and bash: Prepend the name of the environment by a ``$'' sign. For
+ example,
- 6\b6.\b.3\b3.\b.2\b27\b7.\b. c\bch\bhe\bec\bck\bk_\b_n\bne\bew\bw
+ set record=+sent_on_$HOSTNAME
- Type: boolean
- Default: yes
+ sets the $record variable to the string +sent_on_ and appends the value of
+ the evironment variable $HOSTNAME.
- N\bNo\bot\bte\be:\b: this option only affects _\bm_\ba_\bi_\bl_\bd_\bi_\br and _\bM_\bH style mailboxes.
+ Note: There will be no warning if an environment variable is not defined.
+ The result will of the expansion will then be empty.
- When _\bs_\be_\bt, Mutt-ng will check for new mail delivered while the mailbox
- is open. Especially with MH mailboxes, this operation can take quite
- some time since it involves scanning the directory and checking each
- file to see if it has already been looked at. If _\bc_\bh_\be_\bc_\bk_\b__\bn_\be_\bw is _\bu_\bn_\bs_\be_\bt,
- no check for new mail is performed while the mailbox is open.
+ 3.3. Configuration Variables
- 6\b6.\b.3\b3.\b.2\b28\b8.\b. c\bco\bol\bll\bla\bap\bps\bse\be_\b_u\bun\bnr\bre\bea\bad\bd
+ As for environment variables, the values of all configuration variables as
+ string can be used in the same way, too. For example,
- Type: boolean
- Default: yes
+ set imap_home_namespace = $folder
- When _\bu_\bn_\bs_\be_\bt, Mutt-ng will not collapse a thread if it contains any
- unread messages.
+ would set the value of $imap_home_namespace to the value to which $folder
+ is currently set to.
- 6\b6.\b.3\b3.\b.2\b29\b9.\b. c\bco\bom\bmp\bpo\bos\bse\be_\b_f\bfo\bor\brm\bma\bat\bt
+ Note: There're no logical links established in such cases so that the the
+ value for $imap_home_namespace won't change even if $folder gets changed.
- Type: string
- Default: "-- Mutt-ng: Compose [Approx. msg size: %l Atts: %a]%>-"
+ Note: There will be no warning if a configuration variable is not defined
+ or is empty. The result will of the expansion will then be empty.
- Controls the format of the status line displayed in the _\bC_\bo_\bm_\bp_\bo_\bs_\be menu.
- This string is similar to ````$status_format'''', but has its own set
- of printf()-like sequences:
+ 3.4. Self-Defined Variables
- %\b%a\ba total number of attachments
+ Mutt-ng flexibly allows users to define their own variables. To avoid
+ conflicts with the standard set and to prevent misleading error messages,
+ there's a reserved namespace for them: all user-defined variables must be
+ prefixed with user_ and can be used just like any ordinary configuration
+ or environment variable.
- %\b%h\bh local hostname
+ For example, to view the manual, users can either define two macros like
+ the following
- %\b%l\bl approximate size (in bytes) of the current message
+ macro generic <F1> "!less -r /path/to/manual" "Show manual"
+ macro pager <F1> "!less -r /path/to/manual" "Show manual"
- %\b%v\bv Mutt-ng version string
+ for generic, pager and index .The alternative is to define a custom
+ variable like so:
- See the text describing the ````$status_format'''' option for more
- information on how to set ````$compose_format''''.
+ set user_manualcmd = "!less -r /path/to_manual"
+ macro generic <F1> "$user_manualcmd<enter>" "Show manual"
+ macro pager <F1> "$user_manualcmd<enter>" "Show manual"
+ macro index <F1> "$user_manualcmd<enter>" "Show manual"
- 6\b6.\b.3\b3.\b.3\b30\b0.\b. c\bco\bon\bnf\bfi\big\bg_\b_c\bch\bha\bar\brs\bse\bet\bt
+ to re-use the command sequence as in:
- Type: string
- Default: ""
+ macro index <F2> "$user_manualcmd | grep '\^[ ]\\+~. '" "Show Patterns"
- When defined, Mutt-ng will recode commands in rc files from this
- encoding.
+ Using this feature, arbitrary sequences can be defined once and recalled
+ and reused where necessary. More advanced scenarios could include to save
+ a variable's value at the beginning of macro sequence and restore it at
+ end.
- 6\b6.\b.3\b3.\b.3\b31\b1.\b. c\bco\bon\bnf\bfi\bir\brm\bma\bap\bpp\bpe\ben\bnd\bd
+ When the variable is first defined, the first value it gets assigned is
+ also the initial value to which it can be reset using the reset command.
- Type: boolean
- Default: yes
+ The complete removal is done via the unset keyword.
- When set, Mutt-ng will prompt for confirmation when appending messages
- to an existing mailbox.
+ After the following sequence:
- 6\b6.\b.3\b3.\b.3\b32\b2.\b. c\bco\bon\bnf\bfi\bir\brm\bmc\bcr\bre\bea\bat\bte\be
+ set user_foo = 42
+ set user_foo = 666
- Type: boolean
- Default: yes
+ the variable $user_foo has a current value of 666 and an initial of 42.
+ The query
- When set, Mutt-ng will prompt for confirmation when saving messages to
- a mailbox which does not yet exist before creating it.
+ set ?user_foo
- 6\b6.\b.3\b3.\b.3\b33\b3.\b. c\bco\bon\bnn\bne\bec\bct\bt_\b_t\bti\bim\bme\beo\bou\but\bt
+ will show 666. After doing the reset via
- Type: number
- Default: 30
+ reset user_foo
- Causes Mutt-ng to timeout a network connection (for IMAP or POP) after
- this many seconds if the connection is not able to be established. A
- negative value causes Mutt-ng to wait indefinitely for the connection
- to succeed.
+ a following query will give 42 as the result. After unsetting it via
- 6\b6.\b.3\b3.\b.3\b34\b4.\b. c\bco\bon\bnt\bte\ben\bnt\bt_\b_t\bty\byp\bpe\be
+ unset user_foo
- Type: string
- Default: "text/plain"
+ any query or operation (except the noted expansion within other
+ statements) will lead to an error message.
- Sets the default Content-Type for the body of newly composed messages.
+ 3.5. Pre-Defined Variables
- 6\b6.\b.3\b3.\b.3\b35\b5.\b. c\bco\bop\bpy\by
+ In order to allow users to share one setup over a number of different
+ machines without having to change its contents, there's a number of
+ pre-defined variables. These are prefixed with muttng_ and are read-only,
+ i.e. they cannot be set, unset or reset. The reference chapter lists all
+ available variables.
- Type: quadoption
- Default: yes
+ Please consult the local copy of your manual for their values as they may
+ differ from different manual sources. Where the manual is installed in can
+ be queried (already using such a variable) by running:
- This variable controls whether or not copies of your outgoing messages
- will be saved for later references. Also see ````$record'''',
- ````$save_name'''', ````$force_name'''' and ````fcc-hook''''.
+ $ muttng -Q muttng_docdir
- 6\b6.\b.3\b3.\b.3\b36\b6.\b. c\bcr\bry\byp\bpt\bt_\b_a\bau\but\bto\boe\ben\bnc\bcr\bry\byp\bpt\bt
+ To extend the example for viewing the manual via self-defined variables,
+ it can be made more readable and more portable by changing the real path
+ in:
- Type: boolean
- Default: no
+ set user_manualcmd = '!less -r /path/to_manual'
- Setting this variable will cause Mutt-ng to always attempt to PGP
- encrypt outgoing messages. This is probably only useful in connection
- to the _\bs_\be_\bn_\bd_\b-_\bh_\bo_\bo_\bk command. It can be overridden by use of the _\bp_\bg_\bp_\b-
- _\bm_\be_\bn_\bu, when encryption is not required or signing is requested as well.
- IF ````$smime_is_default'''' is set, then OpenSSL is used instead to
- create S/MIME messages and settings can be overridden by use of the
- _\bs_\bm_\bi_\bm_\be_\b-_\bm_\be_\bn_\bu. (Crypto only)
+ to:
- 6\b6.\b.3\b3.\b.3\b37\b7.\b. c\bcr\bry\byp\bpt\bt_\b_a\bau\but\bto\bop\bpg\bgp\bp
+ set user_manualcmd = "!less -r $muttng_docdir/manual.txt"
- Type: boolean
- Default: yes
+ which works everywhere if a manual is installed.
- This variable controls whether or not mutt-ng may automatically enable
- PGP encryption/signing for messages. See also
- ````$crypt_autoencrypt'''', ````$crypt_replyencrypt'''',
- ````$crypt_autosign'''', ````$crypt_replysign'''' and
- ````$smime_is_default''''.
+ Please note that by the type of quoting, muttng determines when to expand
+ these values: when it finds double quotes, the value will be expanded
+ during reading the setup files but when it finds single quotes, it'll
+ expand it at runtime as needed.
- 6\b6.\b.3\b3.\b.3\b38\b8.\b. c\bcr\bry\byp\bpt\bt_\b_a\bau\but\bto\bos\bsi\big\bgn\bn
+ For example, the statement
- Type: boolean
- Default: no
+ folder-hook . "set user_current_folder = $muttng_folder_name"
- Setting this variable will cause Mutt-ng to always attempt to
- cryptographically sign outgoing messages. This can be overridden by
- use of the _\bp_\bg_\bp_\b-_\bm_\be_\bn_\bu, when signing is not required or encryption is
- requested as well. If ````$smime_is_default'''' is set, then OpenSSL
- is used instead to create S/MIME messages and settings can be
- overridden by use of the _\bs_\bm_\bi_\bm_\be_\b-_\bm_\be_\bn_\bu. (Crypto only)
+ will be already be translated to the following when reading the startup
+ files:
- 6\b6.\b.3\b3.\b.3\b39\b9.\b. c\bcr\bry\byp\bpt\bt_\b_a\bau\but\bto\bos\bsm\bmi\bim\bme\be
+ folder-hook . "set user_current_folder = some_folder"
- Type: boolean
- Default: yes
+ with some_folder being the name of the first folder muttng opens. On the
+ contrary,
- This variable controls whether or not mutt-ng may automatically enable
- S/MIME encryption/signing for messages. See also
- ````$crypt_autoencrypt'''', ````$crypt_replyencrypt'''',
- ````$crypt_autosign'''', ````$crypt_replysign'''' and
- ````$smime_is_default''''.
+ folder-hook . 'set user_current_folder = $muttng_folder_name'
- 6\b6.\b.3\b3.\b.4\b40\b0.\b. c\bcr\bry\byp\bpt\bt_\b_r\bre\bep\bpl\bly\bye\ben\bnc\bcr\bry\byp\bpt\bt
+ will be executed at runtime because of the single quotes so that
+ user_current_folder will always have the value of the currently opened
+ folder.
- Type: boolean
- Default: yes
+ A more practical example is:
- If set, automatically PGP or OpenSSL encrypt replies to messages which
- are encrypted. (Crypto only)
+ folder-hook . 'source ~/.mutt/score-$muttng_folder_name'
- 6\b6.\b.3\b3.\b.4\b41\b1.\b. c\bcr\bry\byp\bpt\bt_\b_r\bre\bep\bpl\bly\bys\bsi\big\bgn\bn
+ which can be used to source files containing score commands depending on
+ the folder the user enters.
- Type: boolean
- Default: no
+ 3.6. Type Conversions
- If set, automatically PGP or OpenSSL sign replies to messages which
- are signed.
- N\bNo\bot\bte\be:\b: this does not work on messages that are encrypted a\ban\bnd\bd signed!
- (Crypto only)
+ A note about variable's types during conversion: internally values are
+ stored in internal types but for any dump/query or set operation they're
+ converted to and from string. That means that there's no need to worry
+ about types when referencing any variable. As an example, the following
+ can be used without harm (besides makeing muttng very likely behave
+ strange):
- 6\b6.\b.3\b3.\b.4\b42\b2.\b. c\bcr\bry\byp\bpt\bt_\b_r\bre\bep\bpl\bly\bys\bsi\big\bgn\bne\ben\bnc\bcr\bry\byp\bpt\bte\bed\bd
+ set read_inc = 100
+ set folder = $read_inc
+ set read_inc = $folder
+ set user_magic_number = 42
+ set folder = $user_magic_number
- Type: boolean
- Default: no
+4. Defining/Using aliases
- If set, automatically PGP or OpenSSL sign replies to messages which
- are encrypted. This makes sense in combination with
- ````$crypt_replyencrypt'''', because it allows you to sign all
- messages which are automatically encrypted. This works around the
- problem noted in ````$crypt_replysign'''', that mutt-ng is not able to
- find out whether an encrypted message is also signed. (Crypto only)
+ Usage: aliaskey address [, address,...]
- 6\b6.\b.3\b3.\b.4\b43\b3.\b. c\bcr\bry\byp\bpt\bt_\b_t\bti\bim\bme\bes\bst\bta\bam\bmp\bp
+ It's usually very cumbersome to remember or type out the address of
+ someone you are communicating with. Mutt-ng allows you to create
+ ``aliases'' which map a short string to a full address.
- Type: boolean
- Default: yes
+ Note: if you want to create an alias for a group (by specifying more than
+ one address), you must separate the addresses with a comma (``,'').
- If set, mutt-ng will include a time stamp in the lines surrounding PGP
- or S/MIME output, so spoofing such lines is more difficult. If you
- are using colors to mark these lines, and rely on these, you may unset
- this setting. (Crypto only)
+ To remove an alias or aliases (``*'' means all aliases):
- 6\b6.\b.3\b3.\b.4\b44\b4.\b. c\bcr\bry\byp\bpt\bt_\b_u\bus\bse\be_\b_g\bgp\bpg\bgm\bme\be
+ Usage: unalias[* | key ... ]
- Type: boolean
- Default: no
+ alias muttdude me@cs.hmc.edu (Michael Elkins)
+ alias theguys manny, moe, jack
- This variable controls the use the GPGME enabled crypto backends. If
- it is set and Mutt-ng was build with gpgme support, the gpgme code for
- S/MIME and PGP will be used instead of the classic code. Note, that
- you need to use this option in .muttrc as it won't have any effect
- when used interactively.
+ Unlike other mailers, Mutt-ng doesn't require aliases to be defined in a
+ special file. The alias command can appear anywhere in a configuration
+ file, as long as this file is source. Consequently, you can have multiple
+ alias files, or you can have all aliases defined in your muttrc.
- 6\b6.\b.3\b3.\b.4\b45\b5.\b. c\bcr\bry\byp\bpt\bt_\b_v\bve\ber\bri\bif\bfy\by_\b_s\bsi\big\bg
+ On the other hand, the <create-alias> function can use only one file, the
+ one pointed to by the $alias_file variable (which is ~/.muttrc by
+ default). This file is not special either, in the sense that Mutt-ng will
+ happily append aliases to any file, but in order for the new aliases to
+ take effect you need to explicitly source this file too.
- Type: quadoption
- Default: yes
+ For example:
- If ``yes'', always attempt to verify PGP or S/MIME signatures. If
- ``ask'', ask whether or not to verify the signature. If ``no'', never
- attempt to verify cryptographic signatures. (Crypto only)
+ source /usr/local/share/Mutt-ng.aliases
+ source ~/.mail_aliases
+ set alias_file=~/.mail_aliases
- 6\b6.\b.3\b3.\b.4\b46\b6.\b. d\bda\bat\bte\be_\b_f\bfo\bor\brm\bma\bat\bt
+ To use aliases, you merely use the alias at any place in mutt where
+ muttprompts for addresses, such as the To: or Cc: prompt. You can also
+ enter aliases in your editor at the appropriate headers if you have the
+ $editor_headers variable set.
- Type: string
- Default: "!%a, %b %d, %Y at %I:%M:%S%p %Z"
+ In addition, at the various address prompts, you can use the tab character
+ to expand a partial alias to the full alias. If there are multiple
+ matches, mutt will bring up a menu with the matching aliases. In order to
+ be presented with the full list of aliases, you must hit tab with out a
+ partial alias, such as at the beginning of the prompt or after a comma
+ denoting multiple addresses.
- This variable controls the format of the date printed by the ``%d''
- sequence in ````$index_format''''. This is passed to the _\bs_\bt_\br_\bf_\bt_\bi_\bm_\be
- call to process the date. See the man page for _\bs_\bt_\br_\bf_\bt_\bi_\bm_\be_\b(_\b3_\b) for the
- proper syntax.
+ In the alias menu, you can select as many aliases as you want with the
+ select-entry key (default: RET), and use the exit key (default: q) to
+ return to the address prompt.
- Unless the first character in the string is a bang (``!''), the month
- and week day names are expanded according to the locale specified in
- the variable ````$locale''''. If the first character in the string is
- a bang, the bang is discarded, and the month and week day names in the
- rest of the string are expanded in the _\bC locale (that is in US
- English).
+5. Changing the default key bindings
- 6\b6.\b.3\b3.\b.4\b47\b7.\b. d\bde\bef\bfa\bau\bul\blt\bt_\b_h\bho\boo\bok\bk
+ Usage: bindmap key function
- Type: string
- Default: "~f %s !~P | (~P ~C %s)"
+ This command allows you to change the default key bindings (operation
+ invoked when pressing a key).
- This variable controls how send-hooks, message-hooks, save-hooks, and
- fcc-hooks will be interpreted if they are specified with only a simple
- regexp, instead of a matching pattern. The hooks are expanded when
- they are declared, so a hook will be interpreted according to the
- value of this variable at the time the hook is declared. The default
- value matches if the message is either from a user matching the
- regular expression given, or if it is from you (if the from address
- matches ``alternates'') and is to or cc'ed to a user matching the
- given regular expression.
+ map specifies in which menu the binding belongs. Multiple maps may be
+ specified by separating them with commas (no additional whitespace
+ isallowed). The currently defined maps are:
- 6\b6.\b.3\b3.\b.4\b48\b8.\b. d\bde\bel\ble\bet\bte\be
+ generic
- Type: quadoption
- Default: ask-yes
+ This is not a real menu, but is used as a fallback for all of the
+ other menus except for the pager and editor modes. If a key is not
+ defined in another menu, Mutt-ng will look for a binding to use in
+ this menu. This allows you to bind a key to a certain function in
+ multiple menus instead of having multiple bind statements to
+ accomplish the same task.
- Controls whether or not messages are really deleted when closing or
- synchronizing a mailbox. If set to _\by_\be_\bs, messages marked for deleting
- will automatically be purged without prompting. If set to _\bn_\bo,
- messages marked for deletion will be kept in the mailbox.
+ alias
- 6\b6.\b.3\b3.\b.4\b49\b9.\b. d\bde\bel\ble\bet\bte\be_\b_u\bun\bnt\bta\bag\bg
+ The alias menu is the list of your personal aliases as defined in
+ your muttrc. It is the mapping from a short alias name to the full
+ email address(es) of the recipient(s).
- Type: boolean
- Default: yes
+ attach
- If this option is _\bs_\be_\bt, mutt-ng will untag messages when marking them
- for deletion. This applies when you either explicitly delete a
- message, or when you save it to another folder.
+ The attachment menu is used to access the attachments on received
+ messages.
- 6\b6.\b.3\b3.\b.5\b50\b0.\b. d\bdi\big\bge\bes\bst\bt_\b_c\bco\bol\bll\bla\bap\bps\bse\be
+ browser
- Type: boolean
- Default: yes
+ The browser is used for both browsing the local directory
+ structure, and for listing all of your incoming mailboxes.
- If this option is _\bs_\be_\bt, mutt-ng's received-attachments menu will not
- show the subparts of individual messages in a multipart/digest. To
- see these subparts, press 'v' on that menu.
+ editor
- 6\b6.\b.3\b3.\b.5\b51\b1.\b. d\bdi\bis\bsp\bpl\bla\bay\by_\b_f\bfi\bil\blt\bte\ber\br
+ The editor is the line-based editor the user enters text data.
- Type: path
- Default: ""
+ index
- When set, specifies a command used to filter messages. When a message
- is viewed it is passed as standard input to ``$display_filter'', and
- the filtered message is read from the standard output.
+ The index is the list of messages contained in a mailbox.
- 6\b6.\b.3\b3.\b.5\b52\b2.\b. d\bdo\bot\btl\blo\boc\bck\bk_\b_p\bpr\bro\bog\bgr\bra\bam\bm
+ compose
- Type: path
- Default: "/usr/local/bin/muttng_dotlock"
+ The compose menu is the screen used when sending a new message.
- Contains the path of the muttng_dotlock (1) binary to be used by mutt-
- ng.
+ pager
- 6\b6.\b.3\b3.\b.5\b53\b3.\b. d\bds\bsn\bn_\b_n\bno\bot\bti\bif\bfy\by
+ The pager is the mode used to display message/attachment data, and
+ help listings.
- Type: string
- Default: ""
+ pgp
- N\bNo\bot\bte\be:\b: you should not enable this unless you are using Sendmail 8.8.x
- or greater.
+ The pgp menu is used to select the OpenPGP keys used for
+ encrypting outgoing messages.
- This variable sets the request for when notification is returned. The
- string consists of a comma separated list (no spaces!) of one or more
- of the following: _\bn_\be_\bv_\be_\br, to never request notification, _\bf_\ba_\bi_\bl_\bu_\br_\be, to
- request notification on transmission failure, _\bd_\be_\bl_\ba_\by, to be notified of
- message delays, _\bs_\bu_\bc_\bc_\be_\bs_\bs, to be notified of successful transmission.
+ postpone
- Example: set dsn_notify="failure,delay"
+ The postpone menu is similar to the index menu, except is used
+ when recalling a message the user was composing, but saved until
+ later.
- 6\b6.\b.3\b3.\b.5\b54\b4.\b. d\bds\bsn\bn_\b_r\bre\bet\btu\bur\brn\bn
+ key is the key (or key sequence) you wish to bind. To specify a control
+ character, use the sequence \Cx, where x is the letter of the control
+ character (for example, to specify control-A use ``\Ca''). Note that the
+ case of x as well as \C is ignored, so that \CA, \Ca, \cA and \ca are all
+ equivalent. An alternative form is to specify the key as a three digit
+ octal number prefixed with a ``\'' (for example \177 is equivalent to
+ \c?).
- Type: string
- Default: ""
+ In addition, key may consist of:
- N\bNo\bot\bte\be:\b: you should not enable this unless you are using Sendmail 8.8.x
- or greater.
- This variable controls how much of your message is returned in DSN
- messages. It may be set to either _\bh_\bd_\br_\bs to return just the message
- header, or _\bf_\bu_\bl_\bl to return the full message.
+ Table 3.1. Alternative Key Names
- Example: set dsn_return=hdrs
+ Sequence Description
+ \t tab
+ <tab> tab
+ <backtab> backtab / shift-tab
+ \r carriage return
+ \n newline
+ \e escape
+ <esc> escape
+ <up> up arrow
+ <down> down arrow
+ <left> left arrow
+ <right> right arrow
+ <pageup> Page Up
+ <pagedown> Page Down
+ <backspace> Backspace
+ <delete> Delete
+ <insert> Insert
+ <enter> Enter
+ <return> Return
+ <home> Home
+ <end> End
+ <space> Space bar
+ <f1> function key 1
+ <f10> function key 10
- 6\b6.\b.3\b3.\b.5\b55\b5.\b. d\bdu\bup\bpl\bli\bic\bca\bat\bte\be_\b_t\bth\bhr\bre\bea\bad\bds\bs
+ key does not need to be enclosed in quotes unless it contains a space (``
+ '').
- Type: boolean
- Default: yes
+ function specifies which action to take when key is pressed. For a
+ complete list of functions, see the functions. The special function noop
+ unbinds the specified key sequence.
- This variable controls whether mutt-ng, when sorting by threads,
- threads messages with the same message-id together. If it is set, it
- will indicate that it thinks they are duplicates of each other with an
- equals sign in the thread diagram.
+6. Defining aliases for character sets
- 6\b6.\b.3\b3.\b.5\b56\b6.\b. e\bed\bdi\bit\bt_\b_h\bhe\bea\bad\bde\ber\brs\bs
+ Usage: charset-hookaliascharset
- Type: boolean
- Default: no
+ Usage: iconv-hookcharsetlocal-charset
- This option allows you to edit the header of your outgoing messages
- along with the body of your message.
+ The charset-hook command defines an alias for a character set. This is
+ useful to properly display messages which are tagged with a character set
+ name not known to mutt.
- 6\b6.\b.3\b3.\b.5\b57\b7.\b. e\bed\bdi\bit\bto\bor\br
+ The iconv-hook command defines a system-specific name for a character set.
+ This is helpful when your systems character conversion library insists on
+ using strange, system-specific names for character sets.
- Type: path
- Default: ""
+7. Setting variables based upon mailbox
- This variable specifies which editor is used by mutt-ng. It defaults
- to the value of the VISUAL, or EDITOR, environment variable, or to the
- string "vi" if neither of those are set.
+ Usage: folder-hook [!]regexpcommand
- 6\b6.\b.3\b3.\b.5\b58\b8.\b. e\ben\bnc\bco\bod\bde\be_\b_f\bfr\bro\bom\bm
+ It is often desirable to change settings based on which mailbox you are
+ reading. The folder-hook command provides a method by which you can
+ execute any configuration command. regexp is a regular expression
+ specifying in which mailboxes to execute command before loading. If a
+ mailbox matches multiple folder-hook's, they are executed in the order
+ given in the muttrc.
- Type: boolean
- Default: no
+ Note: if you use the ``!'' shortcut for $spoolfile at the beginning of the
+ pattern, you must place it inside of double or single quotes in order to
+ distinguish it from the logical not operator for the expression.
- When _\bs_\be_\bt, mutt-ng will quoted-printable encode messages when they
- contain the string "From " in the beginning of a line. Useful to
- avoid the tampering certain mail delivery and transport agents tend to
- do with messages.
+ Note that the settings are not restored when you leave the mailbox. For
+ example, a command action to perform is to change the sorting methodbased
+ upon the mailbox being read:
- 6\b6.\b.3\b3.\b.5\b59\b9.\b. e\ben\bnv\bve\bel\blo\bop\bpe\be_\b_f\bfr\bro\bom\bm
+ folder-hook mutt set sort=threads
- Type: boolean
- Default: no
- When _\bs_\be_\bt, mutt-ng will try to derive the message's _\be_\bn_\bv_\be_\bl_\bo_\bp_\be sender
- from the "From:" header. Note that this information is passed to
- sendmail command using the "-f" command line switch, so don't set this
- option if you are using that switch in ``$sendmail'' yourself, or if
- the sendmail on your machine doesn't support that command line switch.
+ However, the sorting method is not restored to its previous value when
+ reading a different mailbox. To specify a default command, use the pattern
+ ``.'':
- 6\b6.\b.3\b3.\b.6\b60\b0.\b. e\bes\bsc\bca\bap\bpe\be
+ folder-hook . set sort=date-sent
- Type: string
- Default: "~"
+8. Keyboard macros
- Escape character to use for functions in the builtin editor.
+ Usage: macromenu key sequence [description]
- 6\b6.\b.3\b3.\b.6\b61\b1.\b. f\bfa\bas\bst\bt_\b_r\bre\bep\bpl\bly\by
+ Macros are useful when you would like a single key to perform a series of
+ actions. When you press key in menu menu ,Mutt-ng will behave as if you
+ had typed sequence. So if you have a common sequence of commands you type,
+ you can create a macro to execute those commands with a singlekey.
- Type: boolean
- Default: no
+ menu is the maps which the macro will be bound. Multiple maps may be
+ specified by separating multiple menu arguments by commas. Whitespace may
+ not be used in between the menu arguments and thecommas separating them.
- When set, the initial prompt for recipients and subject are skipped
- when replying to messages, and the initial prompt for subject is
- skipped when forwarding messages.
+ key and sequence are expanded by the same rules as the bind. There are
+ some additions however. The first is that control characters in sequence
+ can also be specified as ^x. In order to get a caret (`^'') you need to
+ specify it twice. Secondly, to specify a certain key such as up or to
+ invoke a function directly, you can use the format <key name> and
+ <function name> .For a listing of key names see the section on bind.
+ Functions are listed in the functions.
- N\bNo\bot\bte\be:\b: this variable has no effect when the ````$autoedit'''' variable
- is set.
+ The advantage with using function names directly is that the macros
+ willwork regardless of the current key bindings, so they are not dependent
+ on the user having particular key definitions. This makes them more
+ robustand portable, and also facilitates defining of macros in files used
+ by more than one user (eg. the system Muttngrc).
- 6\b6.\b.3\b3.\b.6\b62\b2.\b. f\bfc\bcc\bc_\b_a\bat\btt\bta\bac\bch\bh
+ Optionally you can specify a descriptive text after sequence, which is
+ shown in the help screens.
- Type: boolean
- Default: yes
+ Note: Macro definitions (if any) listed in the help screen(s), are
+ silently truncated at the screen width, and are not wrapped.
- This variable controls whether or not attachments on outgoing messages
- are saved along with the main body of your message.
+9. Using color and mono video attributes
- 6\b6.\b.3\b3.\b.6\b63\b3.\b. f\bfc\bcc\bc_\b_c\bcl\ble\bea\bar\br
+ Usage: colorobject foreground background [regexp]
- Type: boolean
- Default: no
+ Usage: colorindex foreground pattern
- When this variable is set, FCCs will be stored unencrypted and
- unsigned, even when the actual message is encrypted and/or signed.
- (PGP only)
+ Usage: uncolorindex pattern [pattern ...]
- 6\b6.\b.3\b3.\b.6\b64\b4.\b. f\bfi\bil\ble\be_\b_c\bch\bha\bar\brs\bse\bet\bt
+ If your terminal supports color, you can spice up Mutt-ng by creating your
+ own color scheme. To define the color of an object (type of information),
+ you must specify both a foreground color and a background color (it is not
+ possible to only specify one or the other).
- Type: string
- Default: ""
+ object can be one of:
- This variable is a colon-separated list of character encoding schemes
- for text file attatchments. If unset, ``$charset'' value will be used
- instead. For example, the following configuration would work for
- Japanese text handling:
+ o attachment
- set file_charset="iso-2022-jp:euc-jp:shift_jis:utf-8"
+ o body (match regexp in the body of messages)
- Note: "iso-2022-*" must be put at the head of the value as shown above
- if included.
+ o bold (highlighting bold patterns in the body of messages)
- 6\b6.\b.3\b3.\b.6\b65\b5.\b. f\bfo\bol\bld\bde\ber\br
+ o error (error messages printed by Mutt-ng)
- Type: path
- Default: "~/Mail"
+ o header (match regexp in the message header)
- Specifies the default location of your mailboxes. A `+' or `=' at the
- beginning of a pathname will be expanded to the value of this
- variable. Note that if you change this variable from the default
- value you need to make sure that the assignment occurs _\bb_\be_\bf_\bo_\br_\be you use
- `+' or `=' for any other variables since expansion takes place during
- the `set' command.
+ o hdrdefault (default color of the message header in the pager)
- 6\b6.\b.3\b3.\b.6\b66\b6.\b. f\bfo\bol\bld\bde\ber\br_\b_f\bfo\bor\brm\bma\bat\bt
+ o index (match pattern in the message index)
- Type: string
- Default: "%2C %t %N %F %2l %-8.8u %-8.8g %8s %d %f"
+ o indicator (arrow or bar used to indicate the current item in a menu)
- This variable allows you to customize the file browser display to your
- personal taste. This string is similar to ````$index_format'''', but
- has its own set of printf()-like sequences:
+ o markers (the ``+'' markers at the beginning of wrapped lines in the
+ pager)
- %\b%C\bC current file number
+ o message (informational messages)
- %\b%d\bd date/time folder was last modified
+ o normal
- %\b%f\bf filename
+ o quoted (text matching $quote_regexp in the body of a message)
- %\b%F\bF file permissions
+ o quoted1, quoted2, ..., quotedN (higher levels of quoting)
- %\b%g\bg group name (or numeric gid, if missing)
+ o search (highlighting of words in the pager)
- %\b%l\bl number of hard links
+ o signature
- %\b%N\bN N if folder has new mail, blank otherwise
+ o status (mode lines used to display info about the mailbox or message)
- %\b%s\bs size in bytes
+ o tilde (the ``~'' used to pad blank lines in the pager)
- %\b%t\bt * if the file is tagged, blank otherwise
+ o tree (thread tree drawn in the message index and attachment menu)
- %\b%u\bu owner name (or numeric uid, if missing)
+ o underline (highlighting underlined patterns in the body of messages)
- %\b%>\b>X\bX
- right justify the rest of the string and pad with character "X"
+ foreground and background can be one of the following:
- %\b%|\b|X\bX
- pad to the end of the line with character "X"
- 6\b6.\b.3\b3.\b.6\b67\b7.\b. f\bfo\bol\bll\blo\bow\bwu\bup\bp_\b_t\bto\bo
+ o white
- Type: boolean
- Default: yes
+ o black
- Controls whether or not the _\bM_\ba_\bi_\bl_\b-_\bF_\bo_\bl_\bl_\bo_\bw_\bu_\bp_\b-_\bT_\bo header field is generated
- when sending mail. When _\bs_\be_\bt, Mutt-ng will generate this field when
- you are replying to a known mailing list, specified with the
- ``subscribe'' or ````lists'''' commands.
+ o green
- This field has two purposes. First, preventing you from receiving
- duplicate copies of replies to messages which you send to mailing
- lists, and second, ensuring that you do get a reply separately for any
- messages sent to known lists to which you are not subscribed. The
- header will contain only the list's address for subscribed lists, and
- both the list address and your own email address for unsubscribed
- lists. Without this header, a group reply to your message sent to a
- subscribed list will be sent to both the list and your address,
- resulting in two copies of the same email for you.
+ o magenta
- 6\b6.\b.3\b3.\b.6\b68\b8.\b. f\bfo\bol\bll\blo\bow\bwu\bup\bp_\b_t\bto\bo_\b_p\bpo\bos\bst\bte\ber\br
+ o blue
- Type: quadoption
- Default: ask-yes
+ o cyan
- If this variable is _\bs_\be_\bt and the keyword "poster" is present in
- _\bF_\bo_\bl_\bl_\bo_\bw_\bu_\bp_\b-_\bT_\bo header, follow-up to newsgroup function is not permitted.
- The message will be mailed to the submitter of the message via mail.
+ o yellow
- 6\b6.\b.3\b3.\b.6\b69\b9.\b. f\bfo\bor\brc\bce\be_\b_n\bna\bam\bme\be
+ o red
- Type: boolean
- Default: no
+ o default
- This variable is similar to ````$save_name'''', except that Mutt-ng
- will store a copy of your outgoing message by the username of the
- address you are sending to even if that mailbox does not exist.
+ o colorx
- Also see the ````$record'''' variable.
+ foreground can optionally be prefixed with the keyword bright to make the
+ foreground color boldfaced (e.g., brightred).
- 6\b6.\b.3\b3.\b.7\b70\b0.\b. f\bfo\bor\brw\bwa\bar\brd\bd_\b_d\bde\bec\bco\bod\bde\be
+ If your terminal supports it, the special keyword default can be used as a
+ transparent color. The value brightdefault is also valid. If Mutt-ng is
+ linked against the S-Lang library, you also need to set the $COLORFGBG
+ environment variable to the default colors of your terminal for this to
+ work; for example (for Bourne-like shells):
- Type: boolean
- Default: yes
+ set COLORFGBG="green;black"
+ export COLORFGBG
- Controls the decoding of complex MIME messages into text/plain when
- forwarding a message. The message header is also RFC2047 decoded.
- This variable is only used, if ````$mime_forward'''' is _\bu_\bn_\bs_\be_\bt,
- otherwise ````$mime_forward_decode'''' is used instead.
+ Note: The S-Lang library requires you to use the lightgray and brown
+ keywords instead of white and yellow when setting this variable.
- 6\b6.\b.3\b3.\b.7\b71\b1.\b. f\bfo\bor\brw\bwa\bar\brd\bd_\b_d\bde\bec\bcr\bry\byp\bpt\bt
+ Note: The uncolor command can be applied to the index object only. It
+ removes entries from the list. You must specify the same pattern specified
+ in the color command for it to be removed. The pattern ``*'' is a special
+ token which means to clear the color index list of all entries.
- Type: boolean
- Default: yes
+ Mutt-ng also recognizes the keywords color0, color1 ,..., colorN-1 (N
+ being the number of colors supported by your terminal). This is useful
+ when you remap the colors for your display (for example by changing the
+ color associated with color2 for your xterm), since color names may then
+ lose their normal meaning.
- Controls the handling of encrypted messages when forwarding a message.
- When set, the outer layer of encryption is stripped off. This
- variable is only used if ````$mime_forward'''' is _\bs_\be_\bt and
- ````$mime_forward_decode'''' is _\bu_\bn_\bs_\be_\bt. (PGP only)
+ If your terminal does not support color, it is still possible change the
+ video attributes through the use of the ``mono'' command:
- 6\b6.\b.3\b3.\b.7\b72\b2.\b. f\bfo\bor\brw\bwa\bar\brd\bd_\b_e\bed\bdi\bit\bt
+ Usage: monoobject attribute [regexp]
- Type: quadoption
- Default: yes
+ Usage: monoindex attribute pattern
- This quadoption controls whether or not the user is automatically
- placed in the editor when forwarding messages. For those who always
- want to forward with no modification, use a setting of ``no''.
+ Usage: unmonoindex pattern [pattern ...]
- 6\b6.\b.3\b3.\b.7\b73\b3.\b. f\bfo\bor\brw\bwa\bar\brd\bd_\b_f\bfo\bor\brm\bma\bat\bt
+ where attribute is one of the following:
- Type: string
- Default: "[%a: %s]"
+ o none
- This variable controls the default subject when forwarding a message.
- It uses the same format sequences as the ````$index_format''''
- variable.
+ o bold
- 6\b6.\b.3\b3.\b.7\b74\b4.\b. f\bfo\bor\brw\bwa\bar\brd\bd_\b_q\bqu\buo\bot\bte\be
+ o underline
- Type: boolean
- Default: no
+ o reverse
- When _\bs_\be_\bt forwarded messages included in the main body of the message
- (when ````$mime_forward'''' is _\bu_\bn_\bs_\be_\bt) will be quoted using
- ````$indent_string''''.
+ o standout
- 6\b6.\b.3\b3.\b.7\b75\b5.\b. f\bfr\bro\bom\bm
+10. Ignoring (weeding) unwanted message headers
- Type: e-mail address
- Default: ""
+ Usage: ignorepattern [pattern ...]
- When set, this variable contains a default from address. It can be
- overridden using my_hdr (including from send-hooks) and
- ````$reverse_name''''. This variable is ignored if ````$use_from''''
- is unset.
+ Usage: unignorepattern [pattern ...]
- Defaults to the contents of the environment variable EMAIL.
+ Messages often have many header fields added by automatic processing
+ systems, or which may not seem useful to display on the screen. This
+ command allows you to specify header fields which you don't normally want
+ to see.
- 6\b6.\b.3\b3.\b.7\b76\b6.\b. g\bge\bec\bco\bos\bs_\b_m\bma\bas\bsk\bk
+ You do not need to specify the full header field name. For example,
+ ``ignore content-'' will ignore all header fields that begin with the
+ pattern ``content-''. ``ignore *'' will ignore all headers.
- Type: regular expression
- Default: "^[^,]*"
+ To remove a previously added token from the list, use the ``unignore''
+ command. The ``unignore'' command will make Mutt-ng display headers with
+ the given pattern. For example, if you do ``ignore x-'' it is possible to
+ ``unignore x-mailer''.
- A regular expression used by mutt-ng to parse the GECOS field of a
- password entry when expanding the alias. By default the regular
- expression is set to "^[^,]*" which will return the string up to the
- first "," encountered. If the GECOS field contains a string like
- "lastname, firstname" then you should set the gecos_mask=".*".
+ ``unignore *'' will remove all tokens from the ignore list.
- This can be useful if you see the following behavior: you address a e-
- mail to user ID stevef whose full name is Steve Franklin. If mutt-ng
- expands stevef to "Franklin" stevef@foo.bar then you should set the
- gecos_mask to a regular expression that will match the whole name so
- mutt-ng will expand "Franklin" to "Franklin, Steve".
+ For example:
- 6\b6.\b.3\b3.\b.7\b77\b7.\b. g\bgr\bro\bou\bup\bp_\b_i\bin\bnd\bde\bex\bx_\b_f\bfo\bor\brm\bma\bat\bt
+ # Sven's draconian header weeding
+ ignore *
+ unignore from date subject to cc
+ unignore organization organisation x-mailer: x-newsreader: x-mailing-list:
+ unignore posted-to:
- Type: string
- Default: "%4C %M%N %5s %-45.45f %d"
+11. Alternative addresses
- This variable allows you to customize the newsgroup browser display to
- your personal taste. This string is similar to ````index_format'''',
- but has its own set of printf()-like sequences:
+ Usage: alternatesregexp [regexp ...]
- %C current newsgroup number
- %d description of newsgroup (becomes from server)
- %f newsgroup name
- %M - if newsgroup not allowed for direct post (moderated for example)
- %N N if newsgroup is new, u if unsubscribed, blank otherwise
- %n number of new articles in newsgroup
- %s number of unread articles in newsgroup
- %>X right justify the rest of the string and pad with character "X"
- %|X pad to the end of the line with character "X"
+ Usage: unalternatesregexp [regexp ...]
- 6\b6.\b.3\b3.\b.7\b78\b8.\b. h\bhd\bdr\brs\bs
+ With various functions, mutt will treat messages differently, depending on
+ whether you sent them or whether you received them from someone else. For
+ instance, when replying to a message that you sent to a different party,
+ mutt will automatically suggest to send the response to the original
+ message's recipients--responding to yourself won't make much sense in many
+ cases. (See $reply_to.)
- Type: boolean
- Default: yes
+ Many users receive e-mail under a number of different addresses. To fully
+ use mutt's features here, the program must be able to recognize what
+ e-mail addresses you receive mail under. That's the purpose of the
+ alternates command: It takes a list of regular expressions, each of which
+ can identify an address under which you receive e-mail.
- When unset, the header fields normally added by the ````my_hdr''''
- command are not created. This variable _\bm_\bu_\bs_\bt be unset before composing
- a new message or replying in order to take effect. If set, the user
- defined header fields are added to every new message.
+ The unalternates command can be used to write exceptions to alternates
+ patterns. If an address matches something in an alternates command, but
+ you nonetheless do not think it is from you, you can list a more precise
+ pattern under an unalternates command.
- 6\b6.\b.3\b3.\b.7\b79\b9.\b. h\bhe\bea\bad\bde\ber\br
+ To remove a regular expression from the alternates list, use the
+ unalternates command with exactly the same regexp . Likewise, if the
+ regexp for a alternates command matches an entry on the unalternates list,
+ that unalternates entry will be removed. If the regexp for unalternates is
+ ``*'', all entries on alternates will be removed.
- Type: boolean
- Default: no
+12. Format = Flowed
- When set, this variable causes Mutt-ng to include the header of the
- message you are replying to into the edit buffer. The ````$weed''''
- setting applies.
+ 12.1. Introduction
- 6\b6.\b.3\b3.\b.8\b80\b0.\b. h\bhe\bel\blp\bp
+ Mutt-ng contains support for so-called format=flowed messages. In the
+ beginning of email, each message had a fixed line width, and it was enough
+ for displaying them on fixed-size terminals. But times changed, and
+ nowadays hardly anybody still uses fixed-size terminals: more people
+ nowaydays use graphical user interfaces, with dynamically resizable
+ windows. This led to the demand of a new email format that makes it
+ possible for the email client to make the email look nice in a resizable
+ window without breaking quoting levels and creating an incompatible email
+ format that can also be displayed nicely on old fixed-size terminals.
- Type: boolean
- Default: yes
+ For introductory information on format=flowed messages, see
+ <http://www.joeclark.org/ffaq.html>.
- When set, help lines describing the bindings for the major functions
- provided by each menu are displayed on the first line of the screen.
+ 12.2. Receiving: Display Setup
- N\bNo\bot\bte\be:\b: The binding will not be displayed correctly if the function is
- bound to a sequence rather than a single keystroke. Also, the help
- line may not be updated if a binding is changed while Mutt-ng is
- running. Since this variable is primarily aimed at new users, neither
- of these should present a major problem.
+ When you receive emails that are marked as format=flowed messages, and is
+ formatted correctly, mutt-ng will try to reformat the message to optimally
+ fit on your terminal. If you want a fixed margin on the right side of your
+ terminal, you can set the following:
- 6\b6.\b.3\b3.\b.8\b81\b1.\b. h\bhi\bid\bdd\bde\ben\bn_\b_h\bho\bos\bst\bt
+ set wrapmargin = 10
- Type: boolean
- Default: no
+ The code above makes the line break 10 columns before the right side of
+ the terminal.
- When set, mutt-ng will skip the host name part of ````$hostname''''
- variable when adding the domain part to addresses. This variable does
- not affect the generation of Message-IDs, and it will not lead to the
- cut-off of first-level domains.
+ If your terminal is so wide that the lines are embarrassingly long, you
+ can also set a maximum line length:
- 6\b6.\b.3\b3.\b.8\b82\b2.\b. h\bhi\bid\bde\be_\b_l\bli\bim\bmi\bit\bte\bed\bd
+ set max_line_length = 120
- Type: boolean
- Default: no
+ The example above will give you lines not longer than 120 characters.
- When set, mutt-ng will not show the presence of messages that are
- hidden by limiting, in the thread tree.
+ When you view at format=flowed messages, you will often see the quoting
+ hierarchy like in the following example:
- 6\b6.\b.3\b3.\b.8\b83\b3.\b. h\bhi\bid\bde\be_\b_m\bmi\bis\bss\bsi\bin\bng\bg
+ >Bill, can you please send last month's progress report to Mr.
+ >Morgan? We also urgently need the cost estimation for the new
+ >production server that we want to set up before our customer's
+ >project will go live.
- Type: boolean
- Default: yes
+ This obviously doesn't look very nice, and it makes it very hard to
+ differentiate between text and quoting character. The solution is to
+ configure mutt-ng to "stuff" the quoting:
- When set, mutt-ng will not show the presence of missing messages in
- the thread tree.
+ set stuff_quoted
- 6\b6.\b.3\b3.\b.8\b84\b4.\b. h\bhi\bid\bde\be_\b_t\bth\bhr\bre\bea\bad\bd_\b_s\bsu\bub\bbj\bje\bec\bct\bt
+ This will lead to a nicer result that is easier to read:
- Type: boolean
- Default: yes
+ > Bill, can you please send last month's progress report to Mr.
+ > Morgan? We also urgently need the cost estimation for the new
+ > production server that we want to set up before our customer's
+ > project will go live.
- When set, mutt-ng will not show the subject of messages in the thread
- tree that have the same subject as their parent or closest previously
- displayed sibling.
+ 12.3. Sending
- 6\b6.\b.3\b3.\b.8\b85\b5.\b. h\bhi\bid\bde\be_\b_t\bto\bop\bp_\b_l\bli\bim\bmi\bit\bte\bed\bd
+ If you want mutt-ng to send emails with format=flowed set, you need to
+ explicitly set it:
- Type: boolean
- Default: no
+ set text_flowed
- When set, mutt-ng will not show the presence of messages that are
- hidden by limiting, at the top of threads in the thread tree. Note
- that when ``$hide_missing'' is set, this option will have no effect.
+ Additionally, you have to use an editor which supports writing
+ format=flowed-conforming emails. For vim(1), this is done by adding w to
+ the formatoptions (see :h formatoptions and :h fo-table) when writing
+ emails.
- 6\b6.\b.3\b3.\b.8\b86\b6.\b. h\bhi\bid\bde\be_\b_t\bto\bop\bp_\b_m\bmi\bis\bss\bsi\bin\bng\bg
+ Also note that format=flowed knows about ``space-stuffing'', that is, when
+ sending messages, some kinds of lines have to be indented with a single
+ space on the sending side. On the receiving side, the first space (if any)
+ is removed. As a consequence and in addition to the above simple setting,
+ please keep this in mind when making manual formattings within the editor.
+ Also note that mutt-ng currently violates the standard (RfC 3676) as it
+ does not space-stuff lines starting with:
- Type: boolean
- Default: yes
+ o > This is not the quote character but a right angle used for other
+ reasons
- When set, mutt-ng will not show the presence of missing messages at
- the top of threads in the thread tree. Note that when
- ``$hide_limited'' is set, this option will have no effect.
+ Please make sure that you manually prepend a space to each of them.
- 6\b6.\b.3\b3.\b.8\b87\b7.\b. h\bhi\bis\bst\bto\bor\bry\by
+ 12.4. Additional Notes
- Type: number
- Default: 10
+ For completeness, the $delete_space variable provides the mechanism to
+ generate a DelSp=yes parameter on outgoing messages. According to the
+ standard, clients receiving a format=flowed messages should delete the
+ last space of a flowed line but still interpret the line as flowed.
+ Because flowed lines usually contain only one space at the end, this
+ parameter would make the receiving client concatenate the last word of the
+ previous with the first of the current line without a space. This makes
+ ordinary text unreadable and is intended for languages rarely using
+ spaces. So please use this setting only if you're sure what you're doing.
- This variable controls the size (in number of strings remembered) of
- the string history buffer. The buffer is cleared each time the
- variable is set.
+13. Mailing lists
- 6\b6.\b.3\b3.\b.8\b88\b8.\b. h\bho\bon\bno\bor\br_\b_f\bfo\bol\bll\blo\bow\bwu\bup\bp_\b_t\bto\bo
+ Usage: listsregexp [regexp ...]
- Type: quadoption
- Default: yes
+ Usage: unlistsregexp [regexp ...]
- This variable controls whether or not a Mail-Followup-To header is
- honored when group-replying to a message.
+ Usage: subscriberegexp [regexp ...]
- 6\b6.\b.3\b3.\b.8\b89\b9.\b. h\bho\bos\bst\btn\bna\bam\bme\be
+ Usage: unsubscriberegexp [regexp ...]
- Type: string
- Default: ""
+ Mutt-ng has a few nice features for using-lists. In order to take
+ advantage of them, you must specify which addresses belong to mailing
+ lists, and which mailing lists you are subscribed to. Once you have done
+ this, the list-reply function will work for all known lists. Additionally,
+ when you send a message to a subscribed list, mutt will add a
+ Mail-Followup-To header to tell other users' mail user agents not to send
+ copies of replies to your personal address. Note that the Mail-Followup-To
+ header is a non-standard extension which is not supported by all mail user
+ agents. Adding it is not bullet-proof against receiving personal CCs of
+ list messages. Also note that the generation of the Mail-Followup-To
+ header is controlled by the $followup_to configuration variable.
- Specifies the hostname to use after the ``@'' in local e-mail
- addresses. This overrides the compile time definition obtained from
- /etc/resolv.conf.
+ More precisely, Mutt-ng maintains lists of patterns for the addresses of
+ known and subscribed mailing lists. Every subscribed mailing list is
+ known. To mark a mailing list as known, use the ``lists'' command. To mark
+ it as subscribed, use ``subscribe''.
- 6\b6.\b.3\b3.\b.9\b90\b0.\b. i\big\bgn\bno\bor\bre\be_\b_l\bli\bis\bst\bt_\b_r\bre\bep\bpl\bly\by_\b_t\bto\bo
+ You can use regular expressions with both commands. To mark all messages
+ sent to a specific bug report's address on mutt's bug tracking system as
+ list mail, for instance, you could say ``subscribe [0-9]*@bugs.guug.de''.
+ Often, it's sufficient to just give a portion of the list's e-mail
+ address.
- Type: boolean
- Default: no
+ Specify as much of the address as you need to to remove ambiguity. For
+ example, if you've subscribed to the Mutt-ng mailing list, you will
+ receive mail addressed to mutt-users@mutt.org. So, to tell Mutt-ng that
+ this is a mailing list, you could add ``lists mutt-users'' to your
+ initialization file. To tell mutt that you are subscribed to it, add
+ ``subscribe mutt-users'' to your initialization file instead. If you also
+ happen to get mail from someone whose address is mutt-users@example.com,
+ you could use ``lists mutt-users@mutt\\.org'' or ``subscribe
+ mutt-users@mutt\\.org'' to match only mail from the actual list.
- Affects the behaviour of the _\br_\be_\bp_\bl_\by function when replying to messages
- from mailing lists. When set, if the ``Reply-To:'' field is set to
- the same value as the ``To:'' field, Mutt-ng assumes that the ``Reply-
- To:'' field was set by the mailing list to automate responses to the
- list, and will ignore this field. To direct a response to the mailing
- list when this option is set, use the _\bl_\bi_\bs_\bt_\b-_\br_\be_\bp_\bl_\by function; _\bg_\br_\bo_\bu_\bp_\b-_\br_\be_\bp_\bl_\by
- will reply to both the sender and the list.
+ The ``unlists'' command is used to remove a token from the list of known
+ and subscribed mailing-lists. Use ``unlists *'' to remove all tokens.
- 6\b6.\b.3\b3.\b.9\b91\b1.\b. i\bim\bma\bap\bp_\b_a\bau\but\bth\bhe\ben\bnt\bti\bic\bca\bat\bto\bor\brs\bs
+ To remove a mailing list from the list of subscribed mailing lists, but
+ keep it on the list of known mailing lists, use ``unsubscribe''.
- Type: string
- Default: ""
+14. Using Multiple spool mailboxes
- This is a colon-delimited list of authentication methods mutt-ng may
- attempt to use to log in to an IMAP server, in the order mutt-ng
- should try them. Authentication methods are either 'login' or the
- right side of an IMAP 'AUTH=xxx' capability string, eg 'digest-md5',
- 'gssapi' or 'cram-md5'. This parameter is case-insensitive. If this
- parameter is unset (the default) mutt-ng will try all available
- methods, in order from most-secure to least-secure.
+ Usage: mbox-hook [!]patternmailbox
- Example: set imap_authenticators="gssapi:cram-md5:login"
+ This command is used to move read messages from a specified mailbox to
+ adifferent mailbox automatically when you quit or change folders. pattern
+ is a regular expression specifying the mailbox to treat as a ``spool''
+ mailbox and mailbox specifies where mail should be saved when read.
- N\bNo\bot\bte\be:\b: Mutt-ng will only fall back to other authentication methods if
- the previous methods are unavailable. If a method is available but
- authentication fails, mutt-ng will not connect to the IMAP server.
+ Unlike some of the other hook commands, only the first matching pattern is
+ used (it is not possible to save read mail in more than a single mailbox).
- 6\b6.\b.3\b3.\b.9\b92\b2.\b. i\bim\bma\bap\bp_\b_d\bde\bel\bli\bim\bm_\b_c\bch\bha\bar\brs\bs
+15. Defining mailboxes which receive mail
- Type: string
- Default: "/."
+ Usage: mailboxes[!]filename [filename ... ]
- This contains the list of characters which you would like to treat as
- folder separators for displaying IMAP paths. In particular it helps in
- using the '=' shortcut for your _\bf_\bo_\bl_\bd_\be_\br variable.
+ Usage: unmailboxes[!]filename [filename ... ]
- 6\b6.\b.3\b3.\b.9\b93\b3.\b. i\bim\bma\bap\bp_\b_f\bfo\bor\brc\bce\be_\b_s\bss\bsl\bl
+ This command specifies folders which can receive mail and which will be
+ checked for new messages. By default, the main menu status bar displays
+ how many of these folders have new messages.
- Type: boolean
- Default: no
+ When changing folders, pressing space will cycle through folders with new
+ mail.
- If this variable is set, Mutt-ng will always use SSL when connecting
- to IMAP servers.
+ Pressing TAB in the directory browser will bring up a menu showing the
+ files specified by the mailboxes command, and indicate which contain new
+ messages. Mutt-ng will automatically enter this mode when invoked from the
+ command line with the -y option.
- 6\b6.\b.3\b3.\b.9\b94\b4.\b. i\bim\bma\bap\bp_\b_h\bhe\bea\bad\bde\ber\brs\bs
+ The ``unmailboxes'' command is used to remove a token from the list of
+ folders which receive mail. Use ``unmailboxes *'' to remove all tokens.
- Type: string
- Default: ""
+ Note: new mail is detected by comparing the last modification time to the
+ last access time. Utilities like biff or frm or any other program which
+ accesses the mailbox might cause Mutt-ng to never detect new mail for that
+ mailbox if they do not properly reset the access time. Backup tools are
+ another common reason for updated access times.
- Mutt-ng requests these header fields in addition to the default
- headers ("DATE FROM SUBJECT TO CC MESSAGE-ID REFERENCES CONTENT-TYPE
- CONTENT-DESCRIPTION IN-REPLY-TO REPLY-TO LINES X-LABEL") from IMAP
- servers before displaying the index menu. You may want to add more
- headers for spam detection. N\bNo\bot\bte\be:\b: This is a space separated list.
+ Note: the filenames in the mailboxes command are resolved when the command
+ is executed, so if these names contain shortcuts (such as ``='' and
+ ``!''), any variable definition that affect these characters (like $folder
+ and $spoolfile) should be executed before the mailboxes command.
- 6\b6.\b.3\b3.\b.9\b95\b5.\b. i\bim\bma\bap\bp_\b_h\bho\bom\bme\be_\b_n\bna\bam\bme\bes\bsp\bpa\bac\bce\be
+16. User defined headers
- Type: string
- Default: ""
+ Usage: my_hdrstring
- You normally want to see your personal folders alongside your INBOX in
- the IMAP browser. If you see something else, you may set this variable
- to the IMAP path to your folders.
+ Usage: unmy_hdrfield [field ...]
- 6\b6.\b.3\b3.\b.9\b96\b6.\b. i\bim\bma\bap\bp_\b_k\bke\bee\bep\bpa\bal\bli\biv\bve\be
+ The ``my_hdr'' command allows you to create your own header fields which
+ will be added to every message you send.
- Type: number
- Default: 900
+ For example, if you would like to add an ``Organization:'' header field to
+ all of your outgoing messages, you can put the command
- This variable specifies the maximum amount of time in seconds that
- mutt-ng will wait before polling open IMAP connections, to prevent the
- server from closing them before mutt-ng has finished with them. The
- default is well within the RFC-specified minimum amount of time (30
- minutes) before a server is allowed to do this, but in practice the
- RFC does get violated every now and then. Reduce this number if you
- find yourself getting disconnected from your IMAP server due to
- inactivity.
+ my_hdr Organization: A Really Big Company, Anytown, USA
- 6\b6.\b.3\b3.\b.9\b97\b7.\b. i\bim\bma\bap\bp_\b_l\bli\bis\bst\bt_\b_s\bsu\bub\bbs\bsc\bcr\bri\bib\bbe\bed\bd
+ in your .muttrc.
- Type: boolean
- Default: no
+ Note: space characters are not allowed between the keyword and the colon
+ (``:''). The standard for electronic mail (RfC 822) says that space is
+ illegal there, so Mutt-ng enforces the rule.
- This variable configures whether IMAP folder browsing will look for
- only subscribed folders or all folders. This can be toggled in the
- IMAP browser with the _\bt_\bo_\bg_\bg_\bl_\be_\b-_\bs_\bu_\bb_\bs_\bc_\br_\bi_\bb_\be_\bd function.
+ If you would like to add a header field to a single message, you should
+ either set the $edit_headers variable, or use the edit-headers function
+ (default: ``E'') in the send-menu so that you can edit the header of your
+ message along with the body.
- 6\b6.\b.3\b3.\b.9\b98\b8.\b. i\bim\bma\bap\bp_\b_p\bpa\bas\bss\bs
+ To remove user defined header fields, use the ``unmy_hdr'' command. You
+ may specify an asterisk (``*'') to remove all header fields, or the fields
+ to remove. For example, to remove all ``To'' and ``Cc'' header fields, you
+ could use:
- Type: string
- Default: ""
+ unmy_hdr to cc
- Specifies the password for your IMAP account. If unset, Mutt-ng will
- prompt you for your password when you invoke the fetch-mail function.
- W\bWa\bar\brn\bni\bin\bng\bg: you should only use this option when you are on a fairly
- secure machine, because the superuser can read your muttngrc even if
- you are the only one who can read the file.
+17. Defining the order of headers when viewing messages
- 6\b6.\b.3\b3.\b.9\b99\b9.\b. i\bim\bma\bap\bp_\b_p\bpa\bas\bss\bsi\biv\bve\be
+ Usage: hdr_orderheader header [header ...]
- Type: boolean
- Default: yes
+ Usage: unhdr_order[ * | header header ...]
- When set, mutt-ng will not open new IMAP connections to check for new
- mail. Mutt-ng will only check for new mail over existing IMAP
- connections. This is useful if you don't want to be prompted to
- user/password pairs on mutt-ng invocation, or if opening the
- connection is slow.
+ With this command, you can specify an order in which mutt will attempt to
+ present headers to you when viewing messages.
- 6\b6.\b.3\b3.\b.1\b10\b00\b0.\b. i\bim\bma\bap\bp_\b_p\bpe\bee\bek\bk
+ ``unhdr_order *'' will clear all previous headers from the order list,
+ thus removing the header order effects set by the system-wide startup
+ file.
- Type: boolean
- Default: yes
+ hdr_order From Date: From: To: Cc: Subject:
- If set, mutt-ng will avoid implicitly marking your mail as read
- whenever you fetch a message from the server. This is generally a good
- thing, but can make closing an IMAP folder somewhat slower. This
- option exists to appease speed freaks.
+18. Specify default save filename
- 6\b6.\b.3\b3.\b.1\b10\b01\b1.\b. i\bim\bma\bap\bp_\b_r\bre\bec\bco\bon\bnn\bne\bec\bct\bt
+ Usage: save-hook [!]patternfilename
- Type: quadoption
- Default: ask-yes
+ This command is used to override the default filename used when saving
+ messages. filename will be used as the default filename if the message is
+ From: an address matching regexp or if you are the author and the message
+ is addressed to: something matching regexp .
- Controls whether or not Mutt-ng will try to reconnect to IMAP server
- when the connection is lost.
+ See pattern-hook for information on the exact format of pattern.
- 6\b6.\b.3\b3.\b.1\b10\b02\b2.\b. i\bim\bma\bap\bp_\b_s\bse\ber\brv\bve\ber\brn\bno\boi\bis\bse\be
+ Examples:
- Type: boolean
- Default: yes
+ save-hook me@(turing\\.)?cs\\.hmc\\.edu$ +elkins
+ save-hook aol\\.com$ +spam
- When set, mutt-ng will display warning messages from the IMAP server
- as error messages. Since these messages are often harmless, or
- generated due to configuration problems on the server which are out of
- the users' hands, you may wish to suppress them at some point.
+ Also see the fcc-save-hook command.
- 6\b6.\b.3\b3.\b.1\b10\b03\b3.\b. i\bim\bma\bap\bp_\b_u\bus\bse\ber\br
+19. Specify default Fcc: mailbox when composing
- Type: string
- Default: ""
+ Usage: fcc-hook [!]patternmailbox
- Your login name on the IMAP server.
+ This command is used to save outgoing mail in a mailbox other than
+ $record. Mutt-ng searches the initial list of message recipients for the
+ first matching regexp and uses mailbox as the default Fcc: mailbox. If no
+ match is found the message will be saved to $record mailbox.
- This variable defaults to your user name on the local machine.
+ See pattern-hook for information on the exact format of pattern.
- 6\b6.\b.3\b3.\b.1\b10\b04\b4.\b. i\bim\bmp\bpl\bli\bic\bci\bit\bt_\b_a\bau\but\bto\bov\bvi\bie\bew\bw
+ Example:
- Type: boolean
- Default: no
+ fcc-hook [@.]aol\\.com$ +spammers
- If set to ``yes'', mutt-ng will look for a mailcap entry with the
- copiousoutput flag set for _\be_\bv_\be_\br_\by MIME attachment it doesn't have an
- internal viewer defined for. If such an entry is found, mutt-ng will
- use the viewer defined in that entry to convert the body part to text
- form.
+ The above will save a copy of all messages going to the aol.com domain to
+ the `+spammers' mailbox by default. Also see the fcc-save-hook command.
- 6\b6.\b.3\b3.\b.1\b10\b05\b5.\b. i\bin\bnc\bcl\blu\bud\bde\be
+20. Specify default save filename and default Fcc: mailbox at once
- Type: quadoption
- Default: ask-yes
+ Usage: fcc-save-hook [!]patternmailbox
- Controls whether or not a copy of the message(s) you are replying to
- is included in your reply.
+ This command is a shortcut, equivalent to doing both a fcc-hook and a
+ save-hook with its arguments.
- 6\b6.\b.3\b3.\b.1\b10\b06\b6.\b. i\bin\bnc\bcl\blu\bud\bde\be_\b_o\bon\bnl\bly\byf\bfi\bir\brs\bst\bt
+21. Change settings based upon message recipients
- Type: boolean
- Default: no
+ Usage: reply-hook [!]patterncommand
- Controls whether or not Mutt-ng includes only the first attachment of
- the message you are replying.
+ Usage: send-hook [!]patterncommand
- 6\b6.\b.3\b3.\b.1\b10\b07\b7.\b. i\bin\bnd\bde\ben\bnt\bt_\b_s\bst\btr\bri\bin\bng\bg
+ Usage: send2-hook [!]patterncommand
- Type: string
- Default: "> "
+ These commands can be used to execute arbitrary configuration commands
+ based upon recipients of the message. pattern is a regular expression
+ matching the desired address. command is executed when regexp matches
+ recipients of the message.
- Specifies the string to prepend to each line of text quoted in a
- message to which you are replying. You are strongly encouraged not to
- change this value, as it tends to agitate the more fanatical netizens.
+ reply-hook is matched against the message you are replying to, instead of
+ the message you are sending .send-hook is matched against all messages,
+ both new and replies .Note:reply-hooks are matched before the send-hook,
+ regardless of the order specified in the users's configuration file.
- 6\b6.\b.3\b3.\b.1\b10\b08\b8.\b. i\bin\bnd\bde\bex\bx_\b_f\bfo\bor\brm\bma\bat\bt
+ send2-hook is matched every time a message is changed, either by editing
+ it, or by using the compose menu to change its recipients or subject.
+ send2-hook is executed after send-hook ,and can, e.g., be used to set
+ parameters such as the $sendmail variable depending on the message's
+ sender address.
- Type: string
- Default: "%4C %Z %{%b %d} %-15.15L (%?l?%4l&%4c?) %s"
+ For each type of send-hook or reply-hook, when multiple matches occur,
+ commands are executed in the order they are specified in the muttrc (for
+ that type of hook).
- This variable allows you to customize the message index display to
- your personal taste.
+ See pattern-hook for information on the exact format of pattern.
- ``Format strings'' are similar to the strings used in the ``C''
- function printf to format output (see the man page for more detail).
- The following sequences are defined in Mutt-ng:
+ Example: send-hook mutt "set mime_forward signature=''"
- %\b%a\ba address of the author
+ Another typical use for this command is to change the values of the
+ $attribution, $signature and $locale variables in order to change the
+ language of the attributions and signatures based upon the recipients.
- %\b%A\bA reply-to address (if present; otherwise: address of author)
+ Note: the send-hook's are only executed ONCE after getting the initial
+ list of recipients. Adding a recipient after replying or editing the
+ message will NOT cause any send-hook to be executed. Also note that my_hdr
+ commands which modify recipient headers, or the message's subject, don't
+ have any effect on the current message when executed from a send-hook.
- %\b%b\bb filename of the original message folder (think mailBox)
+22. Change settings before formatting a message
- %\b%B\bB the list to which the letter was sent, or else the folder name
- (%b).
+ Usage: message-hook [!]patterncommand
- %\b%c\bc number of characters (bytes) in the message
+ This command can be used to execute arbitrary configuration commands
+ before viewing or formatting a message based upon information about the
+ message. command is executed if the pattern matches the message to be
+ displayed. When multiple matches occur, commands are executed in the order
+ they are specified in the muttrc.
- %\b%C\bC current message number
+ See pattern-hook for information on the exact format of pattern.
- %\b%d\bd date and time of the message in the format specified by
- ``date_format'' converted to sender's time zone
+ Example:
- %\b%D\bD date and time of the message in the format specified by
- ``date_format'' converted to the local time zone
+ message-hook ~A 'set pager=builtin'
+ message-hook '~f freshmeat-news' 'set pager="less \"+/^ subject:.*\""'
- %\b%e\be current message number in thread
+23. Choosing the cryptographic key of the recipient
- %\b%E\bE number of messages in current thread
+ Usage: crypt-hookpatternkeyid
- %\b%f\bf entire From: line (address + real name)
+ When encrypting messages with PGP or OpenSSL, you may want to associate a
+ certain key with a given e-mail address automatically, either because the
+ recipient's public key can't be deduced from the destination address, or
+ because, for some reasons, you need to override the key Mutt-ng
+ wouldnormally use. The crypt-hook command provides a method by which you
+ can specify the ID of the public key to be used when encrypting messages
+ to a certain recipient.
- %\b%F\bF author name, or recipient name if the message is from you
+ The meaning of "key id" is to be taken broadly in this context: You can
+ either put a numerical key ID here, an e-mail address, or even just a real
+ name.
- %\b%H\bH spam attribute(s) of this message
+24. Adding key sequences to the keyboard buffer
- %\b%g\bg newsgroup name (if compiled with nntp support)
+ Usage: pushstring
- %\b%i\bi message-id of the current message
+ This command adds the named string to the keyboard buffer. The string may
+ contain control characters, key names and function names like the sequence
+ string in the macro command. You may use it to automatically run a
+ sequence of commands at startup, or when entering certain folders. For
+ example, the following command will automatically collapse all threads
+ when entering a folder:
- %\b%l\bl number of lines in the message (does not work with maildir, mh,
- and possibly IMAP folders)
+ folder-hook . 'push <collapse-all>'
- %\b%L\bL If an address in the To or CC header field matches an address
- defined by the users ``subscribe'' command, this displays "To
- <list-name>", otherwise the same as %F.
+25. Executing functions
- %\b%m\bm total number of message in the mailbox
+ Usage: execfunction [function ... ]
- %\b%M\bM number of hidden messages if the thread is collapsed.
+ This command can be used to execute any function. Functions are listed in
+ the functions. ``exec function'' is equivalent to ``push <function>''.
- %\b%N\bN message score
+26. Message Scoring
- %\b%n\bn author's real name (or address if missing)
+ Usage: scorepattern value
- %\b%O\bO (_O_riginal save folder) Where mutt-ng would formerly have
- stashed the message: list name or recipient name if no list
+ Usage: unscorepattern [pattern ... ]
- %\b%s\bs subject of the message
+ In situations where you have to cope with a lot of emails, e.g. when you
+ read many different mailing lists, and take part in discussions, it is
+ always useful to have the important messages marked and the annoying
+ messages or the ones that you aren't interested in deleted. For this
+ purpose, mutt-ng features a mechanism called ``scoring''.
- %\b%S\bS status of the message (N/D/d/!/r/*)
+ When you use scoring, every message has a base score of 0. You can then
+ use the score command to define patterns and a positive or negative value
+ associated with it. When a pattern matches a message, the message's score
+ will be raised or lowered by the amount of the value associated with the
+ pattern.
- %\b%t\bt `to:' field (recipients)
+ score "~f nion@muttng\.org" 50
+ score "~f @sco\.com" -100
- %\b%T\bT the appropriate character from the ``$to_chars'' string
+ If the pattern matches, it is also possible to set the score value of the
+ current message to a certain value and then stop evaluation:
- %\b%u\bu user (login) name of the author
+ score "~f santaclaus@northpole\.int" =666
- %\b%v\bv first name of the author, or the recipient if the message is
- from you
+ What is important to note is that negative score values will be rounded up
+ to 0.
- %\b%W\bW name of organization of author (`organization:' field)
+ To make scoring actually useful, the score must be applied in some way.
+ That's what the score thresholds are for. Currently, there are three score
+ thresholds:
- %\b%y\by `x-label:' field, if present
+ o flag threshold: when a message has a score value equal or higher than
+ the flag threshold, it will be flagged.
- %\b%Y\bY `x-label' field, if present, and (1) not at part of a thread
- tree, (2) at the top of a thread, or (3) `x-label' is different
- from preceding message's `x-label'.
+ o read threshold: when a message has a score value equal or lower than
+ the read threshold, it will be marked as read.
- %\b%Z\bZ message status flags
+ o delete threshold: when a message has a score value equal or lower than
+ the delete threshold, it will be marked as deleted.
- %\b%{\b{f\bfm\bmt\bt}\b}
- the date and time of the message is converted to sender's time
- zone, and ``fmt'' is expanded by the library function
- ``strftime''; a leading bang disables locales
+ These three thresholds can be set via the variables $score_threshold_read,
+ $score_threshold_flag and $score_threshold_delete.
- %\b%[\b[f\bfm\bmt\bt]\b]
- the date and time of the message is converted to the local time
- zone, and ``fmt'' is expanded by the library function
- ``strftime''; a leading bang disables locales
+ By default, $score_threshold_read and $score_threshold_delete are set to
+ -1, which means that in the default threshold configuration no message
+ will ever get marked as read or deleted.
- %\b%(\b(f\bfm\bmt\bt)\b)
- the local date and time when the message was received. ``fmt''
- is expanded by the library function ``strftime''; a leading bang
- disables locales
+ Scoring gets especially interesting when combined with the color command
+ and the ~n pattern:
+
+ color index black yellow "~n 10-"
+ color index red yellow "~n 100-"
- %\b%<\b<f\bfm\bmt\bt>\b>
- the current local time. ``fmt'' is expanded by the library
- function ``strftime''; a leading bang disables locales.
+ The rules above mark all messages with a score between 10 and 99 with
+ black and yellow, and messages with a score greater or equal 100 with red
+ and yellow. This might be unusual to you if you're used to e.g. slrn's
+ scoring mechanism, but it is more flexible, as it visually marks different
+ scores.
- %\b%>\b>X\bX
- right justify the rest of the string and pad with character "X"
+27. Spam detection
- %\b%|\b|X\bX
- pad to the end of the line with character "X"
+ Usage: spampattern format
- See also: ````$to_chars''''.
+ Usage: nospampattern
- 6\b6.\b.3\b3.\b.1\b10\b09\b9.\b. i\bin\bne\bew\bws\bs
+ Mutt-ng has generalized support for external spam-scoring filters. By
+ defining your spam patterns with the spam and nospam commands, you can
+ limit, search, and sort your mail based on its spam attributes, as
+ determined by the external filter. You also can display the spam
+ attributes in your index display using the %H selector in the
+ $index_format variable. (Tip: try %?H?[%H] ? to display spam tags only
+ when they are defined for a given message.)
- Type: path
- Default: ""
+ Your first step is to define your external filter's spam patterns using
+ the spam command. pattern should be a regular expression that matches a
+ header in a mail message. If any message in the mailbox matches this
+ regular expression, it will receive a ``spam tag'' or ``spam attribute''
+ (unless it also matches a nospam pattern -- see below.) The appearance of
+ this attribute is entirely up to you, and is governed by the format
+ parameter. format can be any static text, but it also can include
+ back-references from the pattern expression. (A regular expression
+ ``back-reference'' refers to a sub-expression contained within
+ parentheses.) %1 is replaced with the first back-reference in the regex,
+ %2 with the second, etc.
- If set, specifies the program and arguments used to deliver news
- posted by Mutt-ng. Otherwise, mutt-ng posts article using current
- connection to news server. The following printf-style sequence is
- understood:
+ If you're using multiple spam filters, a message can have more than one
+ spam-related header. You can define spam patterns for each filter you use.
+ If a message matches two or more of these patterns, and the
+ $spam_separator variable is set to a string, then the message's spam tag
+ will consist of all the format strings joined together, with the value of
+ $spam_separator separating them.
- %s newsserver name
+ For example, suppose I use DCC, SpamAssassin, and PureMessage. I might
+ define these spam settings:
- Example: set inews="/usr/local/bin/inews -hS"
+ spam "X-DCC-.*-Metrics:.*(....)=many" "90+/DCC-%1"
+ spam "X-Spam-Status: Yes" "90+/SA"
+ spam "X-PerlMX-Spam: .*Probability=([0-9]+)%" "%1/PM"
+ set spam_separator=", "
- 6\b6.\b.3\b3.\b.1\b11\b10\b0.\b. i\bis\bsp\bpe\bel\bll\bl
+ If I then received a message that DCC registered with ``many'' hits under
+ the ``Fuz2'' checksum, and that PureMessage registered with a 97%
+ probability of being spam, that message's spam tag would read90+/DCC-Fuz2,
+ 97/PM. (The four characters before ``=many'' in a DCC report indicate the
+ checksum used -- in this case, ``Fuz2''.)
+
+ If the $spam_separator variable is unset, then each spam pattern match
+ supersedes the previous one. Instead of getting joined format strings,
+ you'll get only the last one to match.
- Type: path
- Default: "/usr/bin/ispell"
+ The spam tag is what will be displayed in the index when you use %H in the
+ $index_format variable. It's also the string that the ~H pattern-matching
+ expression matches against for search and limit functions. And it's what
+ sorting by spam attribute will use as a sort key.
- How to invoke ispell (GNU's spell-checking software).
+ That's a pretty complicated example, and most people's actual environments
+ will have only one spam filter. The simpler your configuration, the more
+ effective mutt can be, especially when it comes to sorting.
- 6\b6.\b.3\b3.\b.1\b11\b11\b1.\b. k\bke\bee\bep\bp_\b_f\bfl\bla\bag\bgg\bge\bed\bd
+ Generally, when you sort by spam tag, mutt will sort lexically -- that is,
+ by ordering strings alphnumerically. However, if a spam tag begins with a
+ number, mutt will sort numerically first, and lexically only when two
+ numbers are equal in value. (This is like UNIX's sort -n.) A message with
+ no spam attributes at all -- that is, one that didn't match any of your
+ spam patterns -- is sorted at lowest priority. Numbers are sorted next,
+ beginning with 0 and ranging upward. Finally, non-numeric strings are
+ sorted, with ``a'' taking lowerpriority than ``z''. Clearly, in general,
+ sorting by spam tags is most effective when you can coerce your filter to
+ give you a raw number. But in case you can't, mutt can still do something
+ useful.
- Type: boolean
- Default: no
+ The nospam command can be used to write exceptions to spam patterns. If a
+ header pattern matches something in a spam command, but you nonetheless do
+ not want it to receive a spam tag, you can list amore precise pattern
+ under a nospam command.
- If set, read messages marked as flagged will not be moved from your
- spool mailbox to your ````$mbox'''' mailbox, or as a result of a
- ````mbox-hook'''' command.
+ If the pattern given to nospam is exactly the same as the pattern on an
+ existing spam list entry, the effect will be to remove the entry from the
+ spam list, instead of adding an exception. Likewise, if the pattern for a
+ spam command matches an entry on the nospam list, that nospam entry will
+ be removed. If the pattern for nospam is ``*'', all entries on both lists
+ will be removed. This might be the default action if you use spam and
+ nospam in conjunction with a folder-hook.
+
+ You can have as many spam or nospam commands as you like. You can even do
+ your own primitive spam detection within mutt -- for example, if you
+ consider all mail from MAILER-DAEMON to be spam, you can use a spam
+ command like this:
- 6\b6.\b.3\b3.\b.1\b11\b12\b2.\b. l\bli\bis\bst\bt_\b_r\bre\bep\bpl\bly\by
+ spam "^From: .*MAILER-DAEMON" "999"
+
+28. Setting variables
- Type: quadoption
- Default: no
+ Usage: set[no|inv]variable [=value] [variable...]
- When set, address replies to the mailing list the original message
- came from (instead to the author only). Setting this option to ``ask-
- yes'' or ``ask-no'' will ask if you really intended to reply to the
- author only.
+ Usage: togglevariable [variable ...]
- 6\b6.\b.3\b3.\b.1\b11\b13\b3.\b. l\blo\boc\bca\bal\ble\be
+ Usage: unsetvariable [variable ...]
- Type: string
- Default: "C"
+ Usage: resetvariable [variable ...]
- The locale used by _\bs_\bt_\br_\bf_\bt_\bi_\bm_\be_\b(_\b3_\b) to format dates. Legal values are the
- strings your system accepts for the locale variable _\bL_\bC_\b__\bT_\bI_\bM_\bE.
+ This command is used to set (and unset) variables. There are four basic
+ types of variables: boolean, number, string and quadoption. boolean
+ variables can be set (true) or unset (false). number variables can be
+ assigned a positive integer value.
- 6\b6.\b.3\b3.\b.1\b11\b14\b4.\b. m\bma\bai\bil\bl_\b_c\bch\bhe\bec\bck\bk
+ string variables consist of any number of printable characters. strings
+ must be enclosed in quotes if they contain spaces or tabs. You may also
+ use the ``C'' escape sequences \n and \t for newline and tab,
+ respectively.
- Type: number
- Default: 5
+ quadoption variables are used to control whether or not to be prompted for
+ certain actions, or to specify a default action. A value of yes will cause
+ the action to be carried out automatically as if you had answered yes to
+ the question. Similarly, a value of no will cause the the action to be
+ carried out as if you had answered ``no.'' A value of ask-yes will cause a
+ prompt with a default answer of ``yes'' and ask-no will provide a default
+ answer of ``no.''
- This variable configures how often (in seconds) mutt-ng should look
- for new mail.
+ Prefixing a variable with ``no'' will unset it. Example: set noaskbcc .
- 6\b6.\b.3\b3.\b.1\b11\b15\b5.\b. m\bma\bai\bil\blc\bca\bap\bp_\b_p\bpa\bat\bth\bh
+ For boolean variables, you may optionally prefix the variable name with
+ inv to toggle the value (on or off). This is useful when writing macros.
+ Example: set invsmart_wrap.
- Type: string
- Default: ""
+ The toggle command automatically prepends the inv prefix to all specified
+ variables.
- This variable specifies which files to consult when attempting to
- display MIME bodies not directly supported by Mutt-ng.
+ The unset command automatically prepends the no prefix to all specified
+ variables.
- 6\b6.\b.3\b3.\b.1\b11\b16\b6.\b. m\bma\bai\bil\blc\bca\bap\bp_\b_s\bsa\ban\bni\bit\bti\biz\bze\be
+ Using the enter-command function in the index menu, you can query the
+ value of a variable by prefixing the name of the variable with a question
+ mark:
- Type: boolean
- Default: yes
+ set ?allow_8bit
- If set, mutt-ng will restrict possible characters in mailcap %
- expandos to a well-defined set of safe characters. This is the safe
- setting, but we are not sure it doesn't break some more advanced MIME
- stuff.
+ The question mark is actually only required for boolean and quadoption
+ variables.
- D\bDO\bON\bN'\b'T\bT C\bCH\bHA\bAN\bNG\bGE\bE T\bTH\bHI\bIS\bS S\bSE\bET\bTT\bTI\bIN\bNG\bG U\bUN\bNL\bLE\bES\bSS\bS Y\bYO\bOU\bU A\bAR\bRE\bE R\bRE\bEA\bAL\bLL\bLY\bY S\bSU\bUR\bRE\bE W\bWH\bHA\bAT\bT Y\bYO\bOU\bU A\bAR\bRE\bE
- D\bDO\bOI\bIN\bNG\bG!\b!
+ The reset command resets all given variables to the compile time defaults
+ (hopefully mentioned in this manual). If you use the command set and
+ prefix the variable with ``&'' this has the same behavior as the reset
+ command.
- 6\b6.\b.3\b3.\b.1\b11\b17\b7.\b. m\bma\bai\bil\bld\bdi\bir\br_\b_t\btr\bra\bas\bsh\bh
+ With the reset command there exists the special variable ``all'', which
+ allows you to reset all variables to their system defaults.
- Type: boolean
- Default: no
+29. Reading initialization commands from another file
- If set, messages marked as deleted will be saved with the maildir
- (T)rashed flag instead of unlinked. N\bNO\bOT\bTE\bE:\b: this only applies to
- maildir-style mailboxes. Setting it will have no effect on other
- mailbox types.
+ Usage: sourcefilename [filename ...]
- 6\b6.\b.3\b3.\b.1\b11\b18\b8.\b. m\bma\bar\brk\bk_\b_o\bol\bld\bd
+ This command allows the inclusion of initialization commands from other
+ files. For example, I place all of my aliases in ~/.mail_aliases so that I
+ can make my ~/.muttrc readable and keep my aliases private.
- Type: boolean
- Default: yes
+ If the filename begins with a tilde (``~''), it will be expanded to the
+ path of your home directory.
- Controls whether or not mutt-ng marks _\bn_\be_\bw u\bun\bnr\bre\bea\bad\bd messages as _\bo_\bl_\bd if
- you exit a mailbox without reading them. With this option set, the
- next time you start mutt-ng, the messages will show up with an "O"
- next to them in the index menu, indicating that they are old.
+ If the filename ends with a vertical bar (|), then filename is considered
+ to be an executable program from which to read input (eg. source
+ ~/bin/myscript|).
- 6\b6.\b.3\b3.\b.1\b11\b19\b9.\b. m\bma\bar\brk\bke\ber\brs\bs
+30. Removing hooks
- Type: boolean
- Default: yes
+ Usage: unhook[* | hook-type]
- Controls the display of wrapped lines in the internal pager. If set, a
- ``+'' marker is displayed at the beginning of wrapped lines. Also see
- the ````$smart_wrap'''' variable.
+ This command permits you to flush hooks you have previously defined. You
+ can either remove all hooks by giving the ``*'' character as an argument,
+ or you can remove all hooks of a specific type by saying something like
+ unhook send.
- 6\b6.\b.3\b3.\b.1\b12\b20\b0.\b. m\bma\bas\bsk\bk
+31. Sharing Setups
- Type: regular expression
- Default: "!^\.[^.]"
+ 31.1. Character Sets
- A regular expression used in the file browser, optionally preceded by
- the _\bn_\bo_\bt operator ``!''. Only files whose names match this mask will
- be shown. The match is always case-sensitive.
+ As users may run mutt-ng on different systems, the configuration must be
+ maintained because it's likely that people want to use the setup
+ everywhere they use mutt-ng. And mutt-ng tries to help where it can.
- 6\b6.\b.3\b3.\b.1\b12\b21\b1.\b. m\bma\bax\bx_\b_l\bli\bin\bne\be_\b_l\ble\ben\bng\bgt\bth\bh
+ To not produce conflicts with different character sets, mutt-ng allows
+ users to specify in which character set their configuration files are
+ encoded. Please note that while reading the configuration files, this is
+ only respected after the corresponding declaration appears. It's advised
+ to put the following at the very beginning of a users muttngrc:
- Type: number
- Default: 0
+ set config_charset = "..."
- When set, the maximum line length for displaying f=f messages is
- limited to this length. A value of 0 (which is also the default) means
- that the maximum line length is determined by the terminal width and
- ``$wrapmargin''.
+ and replacing the dots with the actual character set. To avoid problems
+ while maintaining the setup, vim(1) user's may want to use modelines as
+ show in:
- 6\b6.\b.3\b3.\b.1\b12\b22\b2.\b. m\bmb\bbo\box\bx
+ # vim:fileencoding=...:
- Type: path
- Default: "~/mbox"
+ while, again, replacing the dots with the appropriate name. This tells
+ vim(1) as which character set to read and save the file.
- This specifies the folder into which read mail in your
- ````$spoolfile'''' folder will be appended.
+ 31.2. Modularization
- 6\b6.\b.3\b3.\b.1\b12\b23\b3.\b. m\bmb\bbo\box\bx_\b_t\bty\byp\bpe\be
+ ``Modularization'' means to divide the setup into several files while
+ sorting the options or commands by topic. Especially for longer setups
+ (e.g. with many hooks), this helps maintaining it and solving trouble.
- Type: folder magic
- Default: mbox
+ When using separation, setups may be, as a whole or in fractions, shared
+ over different systems.
- The default mailbox type used when creating new folders. May be any of
- mbox, MMDF, MH and Maildir.
+ 31.3. Conditional parts
- 6\b6.\b.3\b3.\b.1\b12\b24\b4.\b. m\bme\ben\bnu\bu_\b_c\bco\bon\bnt\bte\bex\bxt\bt
+ When using a configuration on different systems, the user may not always
+ have influence on how mutt-ng is installed and which features it includes.
- Type: number
- Default: 0
+ To solve this, mutt-ng contain a feature based on the ``ifdef'' patch
+ written for mutt. Its basic syntax is:
- This variable controls the number of lines of context that are given
- when scrolling through menus. (Similar to ````$pager_context''''.)
+ ifdef <item> <command>
+ ifndef <item> <command>
- 6\b6.\b.3\b3.\b.1\b12\b25\b5.\b. m\bme\ben\bnu\bu_\b_s\bsc\bcr\bro\bol\bll\bl
+ ...whereby <item> can be one of:
- Type: boolean
- Default: no
+ o a function name
- When _\bs_\be_\bt, menus will be scrolled up or down one line when you attempt
- to move across a screen boundary. If _\bu_\bn_\bs_\be_\bt, the screen is cleared and
- the next or previous page of the menu is displayed (useful for slow
- links to avoid many redraws).
+ o a variable name
- 6\b6.\b.3\b3.\b.1\b12\b26\b6.\b. m\bme\bes\bss\bsa\bag\bge\be_\b_f\bfo\bor\brm\bma\bat\bt
+ o a menu name
- Type: string
- Default: "%s"
+ o a feature name
- This is the string displayed in the ``attachment'' menu for
- attachments of type message/rfc822. For a full listing of defined
- printf()-like sequences see the section on ````$index_format''''.
+ All available functions, variables and menus are documented elsewhere in
+ this manual but ``features'' is specific to these two commands. To test
+ for one, prefix one of the following keywords with feature_: ncurses,
+ slang, iconv, idn, dotlock, standalone, pop, nntp, imap, ssl, gnutls,
+ sasl, sasl2, libesmtp, compressed, color, classic_pgp, classic_smime,
+ gpgme, header_cache
- 6\b6.\b.3\b3.\b.1\b12\b27\b7.\b. m\bme\bet\bta\ba_\b_k\bke\bey\by
+ As an example, one can use the following in ~/.muttngrc:
- Type: boolean
- Default: no
+ ifdef feature_imap 'source ~/.mutt-ng/setup-imap'
+ ifdef feature_pop 'source ~/.mutt-ng/setup-pop'
+ ifdef feature_nntp 'source ~/.mutt-ng/setup-nntp'
- If set, forces Mutt-ng to interpret keystrokes with the high bit (bit
- 8) set as if the user had pressed the ESC key and whatever key remains
- after having the high bit removed. For example, if the key pressed
- has an ASCII value of 0xf4, then this is treated as if the user had
- pressed ESC then ``x''. This is because the result of removing the
- high bit from ``0xf4'' is ``0x74'', which is the ASCII character
- ``x''.
+ ...to only source ~/.mutt-ng/setup-imap if IMAP support is built in, only
+ source ~/.mutt-ng/setup-pop if POP support is built in and only source
+ ~/.mutt-ng/setup-nntp if NNTP support is built in.
- 6\b6.\b.3\b3.\b.1\b12\b28\b8.\b. m\bme\bet\bto\boo\bo
+ An example for testing for variable names can be used if users use
+ different revisions of mutt-ng whereby the older one may not have a
+ certain variable. To test for the availability of $imap_mail_check use:
- Type: boolean
- Default: no
+ ifdef imap_mail_check 'set imap_mail_check = 300'
- If unset, Mutt-ng will remove your address (see the ``alternates''
- command) from the list of recipients when replying to a message.
+ Provided for completeness is the test for menu names. To set
+ $pager_index_lines only if the pager menu is available, use:
- 6\b6.\b.3\b3.\b.1\b12\b29\b9.\b. m\bmh\bh_\b_p\bpu\bur\brg\bge\be
+ ifdef pager 'set pager_index_lines = 10'
- Type: boolean
- Default: no
+ For completeness, too, the opposite of ifdef is provided: ifndef which
+ only executes the command if the test fails. For example, the following
+ two examples are equivalent:
- When unset, mutt-ng will mimic mh's behaviour and rename deleted
- messages to _\b,_\b<_\bo_\bl_\bd _\bf_\bi_\bl_\be _\bn_\ba_\bm_\be_\b> in mh folders instead of really deleting
- them. If the variable is set, the message files will simply be
- deleted.
+ ifdef feature_ncurses 'source ~/.mutt-ng/setup-ncurses'
+ ifndef feature_ncurses 'source ~/.mutt-ng/setup-slang'
- 6\b6.\b.3\b3.\b.1\b13\b30\b0.\b. m\bmh\bh_\b_s\bse\beq\bq_\b_f\bfl\bla\bag\bgg\bge\bed\bd
+ ...and...
- Type: string
- Default: "flagged"
+ ifdef feature_slang 'source ~/.mutt-ng/setup-slang'
+ ifndef feature_slang 'source ~/.mutt-ng/setup-ncurses'
- The name of the MH sequence used for flagged messages.
+32. Obsolete Variables
- 6\b6.\b.3\b3.\b.1\b13\b31\b1.\b. m\bmh\bh_\b_s\bse\beq\bq_\b_r\bre\bep\bpl\bli\bie\bed\bd
+ In the process of ensuring and creating more consistency, many variables
+ have been renamed and some of the old names were already removed. Please
+ see sect-obsolete for a complete list.
- Type: string
- Default: "replied"
+Chapter 4. Advanced Usage
- The name of the MH sequence used to tag replied messages.
+ Table of Contents
- 6\b6.\b.3\b3.\b.1\b13\b32\b2.\b. m\bmh\bh_\b_s\bse\beq\bq_\b_u\bun\bns\bse\bee\ben\bn
+ 1. Regular Expressions
- Type: string
- Default: "unseen"
+ 2. Patterns
- The name of the MH sequence used for unseen messages.
+ 2.1. Complex Patterns
- 6\b6.\b.3\b3.\b.1\b13\b33\b3.\b. m\bmi\bim\bme\be_\b_f\bfo\bor\brw\bwa\bar\brd\bd
+ 2.2. Patterns and Dates
- Type: quadoption
- Default: no
+ 3. Format Strings
- When set, the message you are forwarding will be attached as a
- separate MIME part instead of included in the main body of the
- message. This is useful for forwarding MIME messages so the receiver
- can properly view the message as it was delivered to you. If you like
- to switch between MIME and not MIME from mail to mail, set this
- variable to ask-no or ask-yes.
+ 3.1. Introduction
- Also see ````$forward_decode'''' and ````$mime_forward_decode''''.
+ 3.2. Conditional Expansion
- 6\b6.\b.3\b3.\b.1\b13\b34\b4.\b. m\bmi\bim\bme\be_\b_f\bfo\bor\brw\bwa\bar\brd\bd_\b_d\bde\bec\bco\bod\bde\be
+ 3.3. Modifications and Padding
- Type: boolean
- Default: no
+ 4. Using Tags
- Controls the decoding of complex MIME messages into text/plain when
- forwarding a message while ````$mime_forward'''' is _\bs_\be_\bt. Otherwise
- ````$forward_decode'''' is used instead.
+ 5. Using Hooks
- 6\b6.\b.3\b3.\b.1\b13\b35\b5.\b. m\bmi\bim\bme\be_\b_f\bfo\bor\brw\bwa\bar\brd\bd_\b_r\bre\bes\bst\bt
+ 5.1. Message Matching in Hooks
- Type: quadoption
- Default: yes
+ 6. Using the sidebar
- When forwarding multiple attachments of a MIME message from the
- recvattach menu, attachments which cannot be decoded in a reasonable
- manner will be attached to the newly composed message if this option
- is set.
+ 7. External Address Queries
- 6\b6.\b.3\b3.\b.1\b13\b36\b6.\b. m\bmi\bim\bme\be_\b_s\bsu\bub\bbj\bje\bec\bct\bt
+ 8. Mailbox Formats
- Type: boolean
- Default: yes
+ 9. Mailbox Shortcuts
- If _\bu_\bn_\bs_\be_\bt, 8-bit ``subject:'' line in article header will not be
- encoded according to RFC2047 to base64. This is useful when message
- is Usenet article, because MIME for news is nonstandard feature.
+ 10. Handling Mailing Lists
- 6\b6.\b.3\b3.\b.1\b13\b37\b7.\b. m\bmi\bix\bx_\b_e\ben\bnt\btr\bry\by_\b_f\bfo\bor\brm\bma\bat\bt
+ 11. Editing threads
- Type: string
- Default: "%4n %c %-16s %a"
+ 11.1. Linking threads
- This variable describes the format of a remailer line on the mixmaster
- chain selection screen. The following printf-like sequences are
- supported:
+ 11.2. Breaking threads
- %\b%n\bn The running number on the menu.
+ 12. Delivery Status Notification (DSN) Support
- %\b%c\bc Remailer capabilities.
+ 13. POP3 Support (OPTIONAL)
- %\b%s\bs The remailer's short name.
+ 14. IMAP Support (OPTIONAL)
- %\b%a\ba The remailer's e-mail address.
+ 14.1. The Folder Browser
- 6\b6.\b.3\b3.\b.1\b13\b38\b8.\b. m\bmi\bix\bxm\bma\bas\bst\bte\ber\br
+ 14.2. Authentication
- Type: path
- Default: "mixmaster"
+ 15. NNTP Support (OPTIONAL)
- This variable contains the path to the Mixmaster binary on your
- system. It is used with various sets of parameters to gather the list
- of known remailers, and to finally send a message through the
- mixmaster chain.
+ 15.1. Again: Scoring
- 6\b6.\b.3\b3.\b.1\b13\b39\b9.\b. m\bmo\bov\bve\be
+ 16. SMTP Support (OPTIONAL)
- Type: quadoption
- Default: ask-no
+ 17. Managing multiple IMAP/POP/NNTP accounts (OPTIONAL)
- Controls whether or not Mutt-ng will move read messages from your
- spool mailbox to your ````$mbox'''' mailbox, or as a result of a
- ````mbox-hook'''' command.
+ 18. Start a WWW Browser on URLs (EXTERNAL)
- 6\b6.\b.3\b3.\b.1\b14\b40\b0.\b. m\bms\bsg\bgi\bid\bd_\b_f\bfo\bor\brm\bma\bat\bt
+ 19. Compressed folders Support (OPTIONAL)
- Type: string
- Default: "%Y%m%d%h%M%s.G%P%p"
+ 19.1. Open a compressed mailbox for reading
- This is the format for the ``local part'' of the message-IDs generated
- by Mutt-ng. The format string contains of one or more characters. The
- '%' character marks that certain data will be added to the string,
- similar to printf(). The following characters are allowed:
+ 19.2. Write a compressed mailbox
- %\b%d\bd the current day of month
+ 19.3. Append a message to a compressed mailbox
- %\b%h\bh the current hour
+ 19.4. Encrypted folders
- %\b%m\bm the current month
+1. Regular Expressions
- %\b%M\bM the current minute
+ All string patterns in Mutt-ng including those in more complex patterns
+ must be specified using regular expressions (regexp) in the ``POSIX
+ extended'' syntax (which is more or less the syntax used by egrep and GNU
+ awk). For your convenience, we have included below a brief description of
+ this syntax.
- %\b%O\bO the current UNIX timestamp (octal)
+ The search is case sensitive if the pattern contains at least one upper
+ case letter, and case insensitive otherwise. Note that ``\'' must be
+ quoted if used for a regular expression in an initialization command:
+ ``\\''.
- %\b%p\bp the process ID
+ A regular expression is a pattern that describes a set of strings. Regular
+ expressions are constructed analogously to arithmetic expressions, by
+ using various operators to combine smaller expressions.
- %\b%P\bP the current message-ID prefix (a character rotating with every
- message-ID being generated)
+ Note that the regular expression can be enclosed/delimited by either " or
+ ' which is useful if the regular expression includes a white-space
+ character. See muttrc-syntax for more information on " and ' delimiter
+ processing. To match a literal " or ' you must preface it with \
+ (backslash).
- %\b%r\br a random integer value (decimal)
+ The fundamental building blocks are the regular expressions that match a
+ single character. Most characters, including all letters and digits, are
+ regular expressions that match themselves. Any metacharacter with special
+ meaning may be quoted by preceding it with a backslash.
- %\b%R\bR a random integer value (hexadecimal)
+ The period ``.'' matches any single character. The caret ``^'' andthe
+ dollar sign ``$'' are metacharacters that respectively match the empty
+ string at the beginning and end of a line.
- %\b%s\bs the current second
+ A list of characters enclosed by ``]'' and ``]'' matches any single
+ character in that list; if the first character of the list is a caret
+ ``^'' then it matches any character not in the list. For example, the
+ regular expression ]0123456789] matches any single digit. A range of ASCII
+ characters may be specified by giving the first and last characters,
+ separated by a hyphen ``-''. Most metacharacters lose their special
+ meaning inside lists. To include a literal ``]'' place it first in the
+ list. Similarly, to include a literal ``^'' place it anywhere but first.
+ Finally, to include a literal hyphen ``-'' place it last.
- %\b%T\bT the current UNIX timestamp (decimal)
+ Certain named classes of characters are predefined. Character classes
+ consist of ``[:'', a keyword denoting the class, and ``:]''. The following
+ classes are defined by the POSIX standard:
- %\b%X\bX the current UNIX timestamp (hexadecimal)
+ [:alnum:]
- %\b%Y\bY the current year (Y2K compliant)
+ Alphanumeric characters.
- %\b%%\b% the '%' character
+ [:alpha:]
- 6\b6.\b.3\b3.\b.1\b14\b41\b1.\b. n\bna\bar\brr\bro\bow\bw_\b_t\btr\bre\bee\be
+ Alphabetic characters.
- Type: boolean
- Default: no
+ [:blank:]
- This variable, when set, makes the thread tree narrower, allowing
- deeper threads to fit on the screen.
+ Space or tab characters.
- 6\b6.\b.3\b3.\b.1\b14\b42\b2.\b. n\bne\bew\bws\bs_\b_c\bca\bac\bch\bhe\be_\b_d\bdi\bir\br
+ [:cntrl:]
- Type: path
- Default: "~/.mutt"
+ Control characters.
- This variable pointing to directory where Mutt-ng will save cached
- news articles headers in. If _\bu_\bn_\bs_\be_\bt, headers will not be saved at all
- and will be reloaded each time when you enter to newsgroup.
+ [:digit:]
- 6\b6.\b.3\b3.\b.1\b14\b43\b3.\b. n\bne\bew\bws\bs_\b_s\bse\ber\brv\bve\ber\br
+ Numeric characters.
- Type: string
- Default: ""
+ [:graph:]
- This variable specifies domain name or address of NNTP server. It
- defaults to the newsserver specified in the environment variable
- $NNTPSERVER or contained in the file /etc/nntpserver. You can also
- specify username and an alternative port for each newsserver, ie:
+ Characters that are both printable and visible. (A space is
+ printable, but not visible, while an ``a'' is both.)
- [nntp[s]://][username[:password]@]newsserver[:port]
+ [:lower:]
- 6\b6.\b.3\b3.\b.1\b14\b44\b4.\b. n\bne\bew\bws\bsr\brc\bc
+ Lower-case alphabetic characters.
- Type: path
- Default: "~/.newsrc"
+ [:print:]
- The file, containing info about subscribed newsgroups - names and
- indexes of read articles. The following printf-style sequence is
- understood:
+ Printable characters (characters that are not control characters.)
- %s newsserver name
+ [:punct:]
- 6\b6.\b.3\b3.\b.1\b14\b45\b5.\b. n\bnn\bnt\btp\bp_\b_c\bco\bon\bnt\bte\bex\bxt\bt
+ Punctuation characters (characters that are not letter, digits,
+ control characters, or space characters).
- Type: number
- Default: 1000
+ [:space:]
- This variable defines number of articles which will be in index when
- newsgroup entered. If active newsgroup have more articles than this
- number, oldest articles will be ignored. Also controls how many
- articles headers will be saved in cache when you quit newsgroup.
+ Space characters (such as space, tab and formfeed, to name a few).
- 6\b6.\b.3\b3.\b.1\b14\b46\b6.\b. n\bnn\bnt\btp\bp_\b_l\blo\boa\bad\bd_\b_d\bde\bes\bsc\bcr\bri\bip\bpt\bti\bio\bon\bn
+ [:upper:]
- Type: boolean
- Default: yes
+ Upper-case alphabetic characters.
- This variable controls whether or not descriptions for each newsgroup
- must be loaded when newsgroup is added to list (first time list
- loading or new newsgroup adding).
+ [:xdigit:]
- 6\b6.\b.3\b3.\b.1\b14\b47\b7.\b. n\bnn\bnt\btp\bp_\b_p\bpa\bas\bss\bs
+ Characters that are hexadecimal digits.
- Type: string
- Default: ""
+ A character class is only valid in a regular expression inside the
+ brackets of a character list. Note that the brackets in these class names
+ are part of the symbolic names, and must be included in addition to the
+ brackets delimiting the bracket list. For example, [[:digit:]] is
+ equivalent to [0-9].
- Your password for NNTP account.
+ Two additional special sequences can appear in character lists. These
+ apply to non-ASCII character sets, which can have single symbols
+ (calledcollating elements) that are represented with more than one
+ character, as well as several characters that are equivalent for collating
+ or sorting purposes:
- 6\b6.\b.3\b3.\b.1\b14\b48\b8.\b. n\bnn\bnt\btp\bp_\b_p\bpo\bol\bll\bl
+ Collating Symbols
- Type: number
- Default: 60
+ A collating symbol is a multi-character collating element enclosed
+ in ``[.'' and ``.]''. For example, if ``ch'' is a collating
+ element, then [[.ch.]] is a regexp that matches this collating
+ element, while [ch] is a regexp that matches either ``c'' or
+ ``h''.
- The time in seconds until any operations on newsgroup except post new
- article will cause recheck for new news. If set to 0, Mutt-ng will
- recheck newsgroup on each operation in index (stepping, read article,
- etc.).
+ Equivalence Classes
- 6\b6.\b.3\b3.\b.1\b14\b49\b9.\b. n\bnn\bnt\btp\bp_\b_r\bre\bec\bco\bon\bnn\bne\bec\bct\bt
+ An equivalence class is a locale-specific name for a list of
+ characters that are equivalent. The name is enclosed in ``[='' and
+ ``=]''. For example, the name ``e'' might be used to represent all
+ of ``è'' ``é'' and ``e''. In this case, [[=e=]] is a regexp that
+ matches any of ``è'', ``é'' and ``e''.
- Type: quadoption
- Default: ask-yes
+ A regular expression matching a single character may be followed by one of
+ several repetition operators:
- Controls whether or not Mutt-ng will try to reconnect to newsserver
- when connection lost.
+ ?
- 6\b6.\b.3\b3.\b.1\b15\b50\b0.\b. n\bnn\bnt\btp\bp_\b_u\bus\bse\ber\br
+ The preceding item is optional and matched at most once.
- Type: string
- Default: ""
+ *
- Your login name on the NNTP server. If _\bu_\bn_\bs_\be_\bt and NNTP server requires
- authentification, Mutt-ng will prompt you for your account name when
- you connect to newsserver.
+ The preceding item will be matched zero or more times.
- 6\b6.\b.3\b3.\b.1\b15\b51\b1.\b. o\bop\bpe\ber\bra\bat\bti\bin\bng\bg_\b_s\bsy\bys\bst\bte\bem\bm
+ +
- Type: string
- Default: ""
+ The preceding item will be matched one or more times.
- This specifies the operating system name for the User-Agent header. If
- this is unset, it will be set to the operating system name that
- uname(2) returns. If uname(2) fails, "UNIX" will be used.
+ {n}
- 6\b6.\b.3\b3.\b.1\b15\b52\b2.\b. p\bpa\bag\bge\ber\br
+ The preceding item is matched exactly n times.
- Type: path
- Default: "builtin"
+ {n,}
- This variable specifies which pager you would like to use to view
- messages. builtin means to use the builtin pager, otherwise this
- variable should specify the pathname of the external pager you would
- like to use.
+ The preceding item is matched n or more times.
- Using an external pager may have some disadvantages: Additional
- keystrokes are necessary because you can't call mutt-ng functions
- directly from the pager, and screen resizes cause lines longer than
- the screen width to be badly formatted in the help menu.
+ {,m}
- 6\b6.\b.3\b3.\b.1\b15\b53\b3.\b. p\bpa\bag\bge\ber\br_\b_c\bco\bon\bnt\bte\bex\bxt\bt
+ The preceding item is matched at most m times.
- Type: number
- Default: 0
+ {n,m}
- This variable controls the number of lines of context that are given
- when displaying the next or previous page in the internal pager. By
- default, Mutt-ng will display the line after the last one on the
- screen at the top of the next page (0 lines of context).
+ The preceding item is matched at least n times, but no more than m
+ times.
- 6\b6.\b.3\b3.\b.1\b15\b54\b4.\b. p\bpa\bag\bge\ber\br_\b_f\bfo\bor\brm\bma\bat\bt
+ Two regular expressions may be concatenated; the resulting regular
+ expression matches any string formed by concatenating two substrings that
+ respectively match the concatenated subexpressions.
- Type: string
- Default: "-%Z- %C/%m: %-20.20n %s"
+ Two regular expressions may be joined by the infix operator ``|''; the
+ resulting regular expression matches any string matching either
+ subexpression.
- This variable controls the format of the one-line message ``status''
- displayed before each message in either the internal or an external
- pager. The valid sequences are listed in the ````$index_format''''
- section.
+ Repetition takes precedence over concatenation, which in turn takes
+ precedence over alternation. A whole subexpression may be enclosed in
+ parentheses to override these precedence rules.
- 6\b6.\b.3\b3.\b.1\b15\b55\b5.\b. p\bpa\bag\bge\ber\br_\b_i\bin\bnd\bde\bex\bx_\b_l\bli\bin\bne\bes\bs
+ Note: If you compile Mutt-ng with the GNU rx package, the following
+ operators may also be used in regular expressions:
- Type: number
- Default: 0
+ \\y
- Determines the number of lines of a mini-index which is shown when in
- the pager. The current message, unless near the top or bottom of the
- folder, will be roughly one third of the way down this mini-index,
- giving the reader the context of a few messages before and after the
- message. This is useful, for example, to determine how many messages
- remain to be read in the current thread. One of the lines is reserved
- for the status bar from the index, so a _\bp_\ba_\bg_\be_\br_\b__\bi_\bn_\bd_\be_\bx_\b__\bl_\bi_\bn_\be_\bs of 6 will
- only show 5 lines of the actual index. A value of 0 results in no
- index being shown. If the number of messages in the current folder is
- less than _\bp_\ba_\bg_\be_\br_\b__\bi_\bn_\bd_\be_\bx_\b__\bl_\bi_\bn_\be_\bs, then the index will only use as many
- lines as it needs.
+ Matches the empty string at either the beginning or the end of a
+ word.
- 6\b6.\b.3\b3.\b.1\b15\b56\b6.\b. p\bpa\bag\bge\ber\br_\b_s\bst\bto\bop\bp
+ \\B
- Type: boolean
- Default: no
+ Matches the empty string within a word.
- When set, the internal-pager will n\bno\bot\bt move to the next message when
- you are at the end of a message and invoke the _\bn_\be_\bx_\bt_\b-_\bp_\ba_\bg_\be function.
+ \\<
- 6\b6.\b.3\b3.\b.1\b15\b57\b7.\b. p\bpg\bgp\bp_\b_a\bau\but\bto\bo_\b_d\bde\bec\bco\bod\bde\be
+ Matches the empty string at the beginning of a word.
- Type: boolean
- Default: no
+ \\>
- If set, mutt-ng will automatically attempt to decrypt traditional PGP
- messages whenever the user performs an operation which ordinarily
- would result in the contents of the message being operated on. For
- example, if the user displays a pgp-traditional message which has not
- been manually checked with the check-traditional-pgp function, mutt-ng
- will automatically check the message for traditional pgp.
+ Matches the empty string at the end of a word.
- 6\b6.\b.3\b3.\b.1\b15\b58\b8.\b. p\bpg\bgp\bp_\b_a\bau\but\bto\boi\bin\bnl\bli\bin\bne\be
+ \\w
- Type: boolean
- Default: no
+ Matches any word-constituent character (letter, digit, or
+ underscore).
- This option controls whether Mutt-ng generates old-style inline
- (traditional) PGP encrypted or signed messages under certain
- circumstances. This can be overridden by use of the _\bp_\bg_\bp_\b-_\bm_\be_\bn_\bu, when
- inline is not required.
+ \\W
- Note that Mutt-ng might automatically use PGP/MIME for messages which
- consist of more than a single MIME part. Mutt-ng can be configured to
- ask before sending PGP/MIME messages when inline (traditional) would
- not work. See also: ````$pgp_mime_auto''''.
+ Matches any character that is not word-constituent.
- Also note that using the old-style PGP message format is s\bst\btr\bro\bon\bng\bgl\bly\by
- d\bde\bep\bpr\bre\bec\bca\bat\bte\bed\bd. (PGP only)
+ \\`
- 6\b6.\b.3\b3.\b.1\b15\b59\b9.\b. p\bpg\bgp\bp_\b_c\bch\bhe\bec\bck\bk_\b_e\bex\bxi\bit\bt
+ Matches the empty string at the beginning of a buffer (string).
- Type: boolean
- Default: yes
+ \\'
- If set, mutt-ng will check the exit code of the PGP subprocess when
- signing or encrypting. A non-zero exit code means that the subprocess
- failed. (PGP only)
+ Matches the empty string at the end of a buffer.
- 6\b6.\b.3\b3.\b.1\b16\b60\b0.\b. p\bpg\bgp\bp_\b_c\bcl\ble\bea\bar\brs\bsi\big\bgn\bn_\b_c\bco\bom\bmm\bma\ban\bnd\bd
+ Please note however that these operators are not defined by POSIX, so they
+ may or may not be available in stock libraries on various systems.
- Type: string
- Default: ""
+2. Patterns
- This format is used to create a old-style "clearsigned" PGP message.
- Note that the use of this format is s\bst\btr\bro\bon\bng\bgl\bly\by d\bde\bep\bpr\bre\bec\bca\bat\bte\bed\bd. (PGP only)
+ Mutt-ng's pattern language provides a simple yet effective way to set up
+ rules to match messages, e.g. for operations like tagging and scoring. A
+ pattern consists of one or more sub-pattern, which can be logically
+ grouped, ORed, and negated. For a complete listing of these patterns,
+ please refer to table patterns in the Reference chapter.
- 6\b6.\b.3\b3.\b.1\b16\b61\b1.\b. p\bpg\bgp\bp_\b_d\bde\bec\bco\bod\bde\be_\b_c\bco\bom\bmm\bma\ban\bnd\bd
+ It must be noted that in this table, EXPR is a regular expression. For
+ ranges, the forms <[MAX], >>[MIN], [MIN]- and -[MAX] are also possible.
- Type: string
- Default: ""
+ 2.1. Complex Patterns
- This format strings specifies a command which is used to decode
- application/pgp attachments.
+ It is possible to combine several sub-patterns to a more complex pattern.
+ The most simple possibility is to logically AND several patterns by
+ stringing them together:
- The PGP command formats have their own set of printf-like sequences:
+ ~s 'SPAM' ~U
- %\b%p\bp Expands to PGPPASSFD=0 when a pass phrase is needed, to an empty
- string otherwise. Note: This may be used with a %? construct.
+ The pattern above matches all messages that contain ``SPAM'' in the
+ subject and are unread.
- %\b%f\bf Expands to the name of a file containing a message.
+ To logical OR patterns, simply use the | operator. This one especially
+ useful when using local groups:
- %\b%s\bs Expands to the name of a file containing the signature part of a
- multipart/signed attachment when verifying it.
+ ~f ("nion@muttng\.org"|"ak@muttng\.org"|"pdmef@muttng\.org")
+ (~b mutt-ng|~s Mutt-ng)
+ !~x '@synflood\.at'
- %\b%a\ba The value of ``$pgp_sign_as''.
+ The first pattern matches all messages that were sent by one of the
+ mutt-ng maintainers, while the seconds pattern matches all messages that
+ contain ``mutt-ng'' in the message body or ``Mutt-ng'' in the subject. The
+ third pattern matches all messages that do not contain ``@synflood\.at''
+ in the References: header, i.e. messages that are not an (indirect) reply
+ to one of my messages. A pattern can be logicall negated using the !
+ operator.
- %\b%r\br One or more key IDs.
+ 2.2. Patterns and Dates
- For examples on how to configure these formats for the various
- versions of PGP which are floating around, see the pgp*.rc and gpg.rc
- files in the samples/ subdirectory which has been installed on your
- system alongside the documentation. (PGP only)
+ When using dates in patterns, the dates must be specified in a special
+ format, i.e. DD/MM/YYYY. If you don't specify month or year, they default
+ to the current month or year. When using date ranges, and you specify only
+ the minimum or the maximum, the specified date will be excluded, e.g.
+ 01/06/2005- matches against all messages after Juni 1st, 2005.
- 6\b6.\b.3\b3.\b.1\b16\b62\b2.\b. p\bpg\bgp\bp_\b_d\bde\bec\bcr\bry\byp\bpt\bt_\b_c\bco\bom\bmm\bma\ban\bnd\bd
+ It is also possible to use so-called ``error margins'' when specifying
+ date ranges. You simply specify a date, and then the error margin. This
+ margin needs to contain the information whether it goes ``forth'' or
+ ``back'' in time, by using + and -. Then follows a number and a unit, i.e.
+ y for years, m for months, w for weeks and d for days. If you use the
+ special * sign, it means that the error margin goes to both``directions''
+ in time.
- Type: string
- Default: ""
+ ~d 01/01/2005+1y
+ ~d 18/10/2004-2w
+ ~d 28/12/2004*1d
- This command is used to decrypt a PGP encrypted message. (PGP only)
+ The first pattern matches all dates between January 1st, 2005 and January
+ 1st 2006. The second pattern matches all dates between October 18th, 2004
+ and October 4th 2004 (2 weeks before 18/10/2004), while the third pattern
+ matches all dates 1 day around December 28th, 2004 (i.e. Dec 27th, 28th
+ and 29th).
- 6\b6.\b.3\b3.\b.1\b16\b63\b3.\b. p\bpg\bgp\bp_\b_e\ben\bnc\bcr\bry\byp\bpt\bt_\b_o\bon\bnl\bly\by_\b_c\bco\bom\bmm\bma\ban\bnd\bd
+ Relative dates are also very important, as they make it possible to
+ specify date ranges between a fixed number of units and the current date.
+ How this works can be seen in the following example:
- Type: string
- Default: ""
+ ~d >2w # messages older than two weeks
+ ~d <3d # messages newer than 3 days
+ ~d =1m # messages that are exactly one month old
- This command is used to encrypt a body part without signing it. (PGP
- only)
+3. Format Strings
- 6\b6.\b.3\b3.\b.1\b16\b64\b4.\b. p\bpg\bgp\bp_\b_e\ben\bnc\bcr\bry\byp\bpt\bt_\b_s\bsi\big\bgn\bn_\b_c\bco\bom\bmm\bma\ban\bnd\bd
+ 3.1. Introduction
- Type: string
- Default: ""
+ The so called Format Strings offer great flexibility when configuring
+ mutt-ng. In short, they describe what items to print out how in menus and
+ status messages.
- This command is used to both sign and encrypt a body part. (PGP only)
+ Basically, they work as this: for different menus and bars, there's a
+ variable specifying the layout. For every item available, there is a so
+ called expando.
- 6\b6.\b.3\b3.\b.1\b16\b65\b5.\b. p\bpg\bgp\bp_\b_e\ben\bnt\btr\bry\by_\b_f\bfo\bor\brm\bma\bat\bt
+ For example, when running mutt-ng on different machines or different
+ versions for testing purposes, it may be interesting to have the following
+ information always printed on screen when one is in the index:
- Type: string
- Default: "%4n %t%f %4l/0x%k %-4a %2c %u"
+ o the current hostname
- This variable allows you to customize the PGP key selection menu to
- your personal taste. This string is similar to ````$index_format'''',
- but has its own set of printf()-like sequences:
+ o the current mutt-ng version number
- %\b%n\bn number
+ The setting for the status bar of the index is controlled via the
+ $status_format variable. For the hostname and version string, there's an
+ expando for $status_format: %h expands to the hostname and %v to the
+ version string. When just configuring:
- %\b%k\bk key id
+ set status_format = "%v on %h: ..."
- %\b%u\bu user id
+ mutt-ng will replace the sequence %v with the version string and %h with
+ the host's name. When you are, for example, running mutt-ng version 1.5.9i
+ on host mailhost, you'll see the following when you're in the index:
- %\b%a\ba algorithm
+ Mutt-ng 1.5.9i on mailhost: ...
- %\b%l\bl key length
+ In the index, there're more useful information one could want to see:
- %\b%f\bf flags
+ o which mailbox is open
- %\b%c\bc capabilities
+ o how man new, flagged or postponed messages
- %\b%t\bt trust/validity of the key-uid association
+ o ...
- %\b%[\b[<\b<s\bs>\b>]\b]
- date of the key where <s> is an strftime(3) expression
+ To include the mailbox' name is as easy as:
- (PGP only)
+ set status_format = "%v on %h: %B: ...
- 6\b6.\b.3\b3.\b.1\b16\b66\b6.\b. p\bpg\bgp\bp_\b_e\bex\bxp\bpo\bor\brt\bt_\b_c\bco\bom\bmm\bma\ban\bnd\bd
+ When the currently opened mailbox is Inbox, this will be expanded to:
- Type: string
- Default: ""
+ Mutt-ng 1.5.9i on mailhost: Inbox: ...
- This command is used to export a public key from the user's key ring.
- (PGP only)
+ For the number of certain types of messages, one more feature of the
+ format strings is extremely useful. If there aren't messages of a certain
+ type, it may not be desired to print just that there aren't any but
+ instead only print something if there are any.
- 6\b6.\b.3\b3.\b.1\b16\b67\b7.\b. p\bpg\bgp\bp_\b_g\bge\bet\btk\bke\bey\bys\bs_\b_c\bco\bom\bmm\bma\ban\bnd\bd
+ 3.2. Conditional Expansion
- Type: string
- Default: ""
+ To only print the number of messages if there are new messages in the
+ current mailbox, further extend $status_format to:
- This command is invoked whenever mutt-ng will need public key
- information. %r is the only printf-like sequence used with this
- format. (PGP only)
+ set status_format = "%v on %h: %B %?n?%n new? ...
- 6\b6.\b.3\b3.\b.1\b16\b68\b8.\b. p\bpg\bgp\bp_\b_g\bgo\boo\bod\bd_\b_s\bsi\big\bgn\bn
+ This feature is called nonzero-printing and works as this: some expandos
+ may be optionally printed nonzero, i.e. a portion of the format string is
+ only evaluated if the value of the expando is different from zero. The
+ basic syntax is:
- Type: regular expression
- Default: ""
+ %?<item>?<string if nonzero>?
- If you assign a text to this variable, then a PGP signature is only
- considered verified if the output from ``$pgp_verify_command''
- contains the text. Use this variable if the exit code from the command
- is 0 even for bad signatures. (PGP only)
+ which tells mutt-ng to only look at <string if nonzero> if the value of
+ the %<item%gt; expando is different from zero. In our example, we used n
+ as the expando to check for and %n new as the optional nonzero string.
- 6\b6.\b.3\b3.\b.1\b16\b69\b9.\b. p\bpg\bgp\bp_\b_i\big\bgn\bno\bor\bre\be_\b_s\bsu\bub\bbk\bke\bey\bys\bs
+ But this is not all: this feature only offers one alternative: ``print
+ something if not zero.'' Mutt-ng does, as you might guess, also provide a
+ logically complete version: ``if zero, print something and else print
+ something else.'' This is achieved by the following syntax for those
+ expandos which may be printed nonzero:
- Type: boolean
- Default: yes
+ %?<item>?<string if nonzero>&<string if zero>?
- Setting this variable will cause Mutt-ng to ignore OpenPGP subkeys.
- Instead, the principal key will inherit the subkeys' capabilities.
- Unset this if you want to play interesting key selection games. (PGP
- only)
+ Using this we can make mutt-ng to do the following:
- 6\b6.\b.3\b3.\b.1\b17\b70\b0.\b. p\bpg\bgp\bp_\b_i\bim\bmp\bpo\bor\brt\bt_\b_c\bco\bom\bmm\bma\ban\bnd\bd
+ o make it print ``n new messages'' whereby n is the count but only if
+ there new ones
- Type: string
- Default: ""
+ o and make it print ``no new messages'' if there aren't any
- This command is used to import a key from a message into the user's
- public key ring. (PGP only)
+ The corresponding configuration is:
- 6\b6.\b.3\b3.\b.1\b17\b71\b1.\b. p\bpg\bgp\bp_\b_l\bli\bis\bst\bt_\b_p\bpu\bub\bbr\bri\bin\bng\bg_\b_c\bco\bom\bmm\bma\ban\bnd\bd
+ set status_format = "%v on %h: %B: %?n?%n new messages&no new messages? ...
- Type: string
- Default: ""
+ This doubles the use of the ``new messages'' string because it'll get
+ always printed. Thus, it can be shortened to:
- This command is used to list the public key ring's contents. The
- output format must be analogous to the one used by gpg --list-keys
- --with-colons.
+ set status_format = "%v on %h: %B: %?n?%n&no? new messages ...
- This format is also generated by the pgpring utility which comes with
- mutt-ng. (PGP only)
+ As you might see from this rather simple example, one can create very
+ complex but fancy status messages. Please see the reference chapter for
+ expandos and those which may be printed nonzero.
- 6\b6.\b.3\b3.\b.1\b17\b72\b2.\b. p\bpg\bgp\bp_\b_l\bli\bis\bst\bt_\b_s\bse\bec\bcr\bri\bin\bng\bg_\b_c\bco\bom\bmm\bma\ban\bnd\bd
+ 3.3. Modifications and Padding
- Type: string
- Default: ""
+ Besides the information given so far, there're even more features of
+ format strings:
- This command is used to list the secret key ring's contents. The
- output format must be analogous to the one used by gpg --list-keys
- --with-colons.
+ o When specifying %_<item> instead of just %<item>, mutt-ng will convert
+ all characters in the expansion of <item> to lowercase.
- This format is also generated by the pgpring utility which comes with
- mutt-ng. (PGP only)
+ o When specifying %:<item> instead of just %<item>, mutt-ng will convert
+ all dots in the expansion of <item> to underscores (_).
- 6\b6.\b.3\b3.\b.1\b17\b73\b3.\b. p\bpg\bgp\bp_\b_l\blo\bon\bng\bg_\b_i\bid\bds\bs
+ Also, there's a feature called Padding supplied by the following two
+ expandos: %|X and %>X .
- Type: boolean
- Default: no
+ %|X
- If set, use 64 bit PGP key IDs. Unset uses the normal 32 bit Key IDs.
- (PGP only)
+ When this occurs, mutt-ng will fill the rest of the line with the
+ character X. In our example, filling the rest of the line with
+ dashes is done by setting:
- 6\b6.\b.3\b3.\b.1\b17\b74\b4.\b. p\bpg\bgp\bp_\b_m\bmi\bim\bme\be_\b_a\bau\but\bto\bo
+ set status_format = "%v on %h: %B: %?n?%n&no? new messages %|-"
- Type: quadoption
- Default: ask-yes
+ %>X
- This option controls whether Mutt-ng will prompt you for automatically
- sending a (signed/encrypted) message using PGP/MIME when inline
- (traditional) fails (for any reason).
+ Since the previous expando stops at the end of line, there must be
+ a way to fill the gap between two items via the %>X expando: it
+ puts as many characters X in between two items so that the rest of
+ the line will be right-justified. For example, to not put the
+ version string and hostname of our example on the left but on the
+ right and fill the gap with spaces, one might use (note the space
+ after %>):
- Also note that using the old-style PGP message format is s\bst\btr\bro\bon\bng\bgl\bly\by
- d\bde\bep\bpr\bre\bec\bca\bat\bte\bed\bd. (PGP only)
+ set status_format = "%B: %?n?%n&no? new messages %> (%v on %h)"
- 6\b6.\b.3\b3.\b.1\b17\b75\b5.\b. p\bpg\bgp\bp_\b_r\bre\bep\bpl\bly\byi\bin\bnl\bli\bin\bne\be
+4. Using Tags
- Type: boolean
- Default: no
+ Sometimes it is desirable to perform an operation on a group of messages
+ all at once rather than one at a time. An example might be to save
+ messages to a mailing list to a separate folder, or to delete all messages
+ with a given subject. To tag all messages matching a pattern, use the
+ tag-pattern function, which is bound to ``shift-T'' by default. Or you can
+ select individual messages by hand using the ``tag-message'' function,
+ which is bound to ``t'' by default. See patterns for Mutt-ng's pattern
+ matching syntax.
- Setting this variable will cause Mutt-ng to always attempt to create
- an inline (traditional) message when replying to a message which is
- PGP encrypted/signed inline. This can be overridden by use of the
- _\bp_\bg_\bp_\b-_\bm_\be_\bn_\bu, when inline is not required. This option does not
- automatically detect if the (replied-to) message is inline; instead it
- relies on Mutt-ng internals for previously checked/flagged messages.
+ Once you have tagged the desired messages, you can use the ``tag-prefix''
+ operator, which is the ``;'' (semicolon) key by default. When the
+ ``tag-prefix'' operator is used, the next operation will be applied to all
+ tagged messages if that operation can be used in that manner. If the
+ $auto_tag variable is set, the next operation applies to the tagged
+ messages automatically, without requiring the ``tag-prefix''.
- Note that Mutt-ng might automatically use PGP/MIME for messages which
- consist of more than a single MIME part. Mutt-ng can be configured to
- ask before sending PGP/MIME messages when inline (traditional) would
- not work. See also: ````$pgp_mime_auto''''.
+ In macro or push commands, you can use the ``tag-prefix-cond'' operator.
+ If there are no tagged messages, mutt will "eat" the rest of the macro to
+ abort it's execution.Mutt-ng will stop "eating" the macro when it
+ encounters the ``end-cond'' operator; after this operator the rest of the
+ macro will be executed asnormal.
- Also note that using the old-style PGP message format is s\bst\btr\bro\bon\bng\bgl\bly\by
- d\bde\bep\bpr\bre\bec\bca\bat\bte\bed\bd. (PGP only)
+5. Using Hooks
- 6\b6.\b.3\b3.\b.1\b17\b76\b6.\b. p\bpg\bgp\bp_\b_r\bre\bet\bta\bai\bin\bna\bab\bbl\ble\be_\b_s\bsi\big\bgs\bs
+ A hook is a concept borrowed from the EMACS editor which allows you to
+ execute arbitrary commands before performing some operation. For example,
+ you may wish to tailor your configuration based upon which mailbox you are
+ reading, or to whom you are sending mail. In the Mutt-ng world, a hook
+ consists of a regexp or patterns along with a configuration
+ option/command. See
- Type: boolean
- Default: no
+ o folder-hook
- If set, signed and encrypted messages will consist of nested
- multipart/signed and multipart/encrypted body parts.
+ o send-hook
- This is useful for applications like encrypted and signed mailing
- lists, where the outer layer (multipart/encrypted) can be easily
- removed, while the inner multipart/signed part is retained. (PGP
- only)
+ o message-hook
- 6\b6.\b.3\b3.\b.1\b17\b77\b7.\b. p\bpg\bgp\bp_\b_s\bsh\bho\bow\bw_\b_u\bun\bnu\bus\bsa\bab\bbl\ble\be
+ o save-hook
- Type: boolean
- Default: yes
+ o mbox-hook
- If set, mutt-ng will display non-usable keys on the PGP key selection
- menu. This includes keys which have been revoked, have expired, or
- have been marked as ``disabled'' by the user. (PGP only)
+ o fcc-hook
- 6\b6.\b.3\b3.\b.1\b17\b78\b8.\b. p\bpg\bgp\bp_\b_s\bsi\big\bgn\bn_\b_a\bas\bs
+ o fcc-save-hook
- Type: string
- Default: ""
+ for specific details on each type of hook available.
- If you have more than one key pair, this option allows you to specify
- which of your private keys to use. It is recommended that you use the
- keyid form to specify your key (e.g., ``0x00112233''). (PGP only)
+ Note: if a hook changes configuration settings, these changes remain
+ effective until the end of the current mutt session. As this is generally
+ not desired, a default hook needs to be added before all other hooks to
+ restore configuration defaults. Here is an example with send-hook and the
+ my_hdr directive:
- 6\b6.\b.3\b3.\b.1\b17\b79\b9.\b. p\bpg\bgp\bp_\b_s\bsi\big\bgn\bn_\b_c\bco\bom\bmm\bma\ban\bnd\bd
+ send-hook . 'unmy_hdr From:'
+ send-hook '~C ^b@b\.b$' my-hdr from: c@c.c
- Type: string
- Default: ""
+ 5.1. Message Matching in Hooks
- This command is used to create the detached PGP signature for a
- multipart/signed PGP/MIME body part. (PGP only)
+ Hooks that act upon messages (send-hook, save-hook, fcc-hook,message-hook
+ )are evaluated in a slightly different manner. For the other types of
+ hooks, a regexp is sufficient. But in dealing with messages a finer grain
+ of control is needed for matching since for different purposes you want to
+ match different criteria.
- 6\b6.\b.3\b3.\b.1\b18\b80\b0.\b. p\bpg\bgp\bp_\b_s\bso\bor\brt\bt_\b_k\bke\bey\bys\bs
+ Mutt-ng allows the use of the patterns language for matching messages in
+ hook commands. This works in exactly the same way as it would when
+ limiting orsearching the mailbox, except that you are restricted to those
+ operators which match information mutt extracts from the header of the
+ message (i.e. from, to, cc, date, subject, etc.).
- Type: sort order
- Default: address
+ For example, if you wanted to set your return address based upon sending
+ mail to a specific address, you could do something like:
- Specifies how the entries in the `pgp keys' menu are sorted. The
- following are legal values:
+ send-hook '~t ^me@cs\.hmc\.edu$' 'my-hdr From: Mutt-ng User <user@host>'
- a\bad\bdd\bdr\bre\bes\bss\bs
- sort alphabetically by user id
+ which would execute the given command when sending mail to me@cs.hmc.edu.
- k\bke\bey\byi\bid\bd
- sort alphabetically by key id
+ However, it is not required that you write the pattern to match using the
+ full searching language. You can still specify a simple regular expression
+ like the other hooks, in which case Mutt-ng will translate your pattern
+ into the full language, using the translation specified by the
+ default-hook variable. The pattern is translated at the time the hook is
+ declared, so the value of default-hook that is in effect at that time will
+ be used.
- d\bda\bat\bte\be
- sort by key creation date
+6. Using the sidebar
- t\btr\bru\bus\bst\bt
- sort by the trust of the key
+ The sidebar, a feature specific to Mutt-ng, allows you to use a mailbox
+ listing which looks very similar to the ones you probably know from GUI
+ mail clients. The sidebar lists all specified mailboxes, shows the number
+ in each and highlights the ones with new email Use the following
+ configuration commands:
- If you prefer reverse order of the above values, prefix it with
- `reverse-'. (PGP only)
+ set sidebar_visible="yes"
+ set sidebar_width=25
- 6\b6.\b.3\b3.\b.1\b18\b81\b1.\b. p\bpg\bgp\bp_\b_s\bst\btr\bri\bic\bct\bt_\b_e\ben\bnc\bc
+ If you want to specify the mailboxes you can do so with:
- Type: boolean
- Default: yes
+ set mbox='=INBOX'
+ mailboxes INBOX \
+ MBOX1 \
+ MBOX2 \
+ ...
- If set, Mutt-ng will automatically encode PGP/MIME signed messages as
- _\bq_\bu_\bo_\bt_\be_\bd_\b-_\bp_\br_\bi_\bn_\bt_\ba_\bb_\bl_\be. Please note that unsetting this variable may lead
- to problems with non-verifyable PGP signatures, so only change this if
- you know what you are doing. (PGP only)
+ You can also specify the colors for mailboxes with new mails by using:
- 6\b6.\b.3\b3.\b.1\b18\b82\b2.\b. p\bpg\bgp\bp_\b_t\bti\bim\bme\beo\bou\but\bt
+ color sidebar_new red black
+ color sidebar white black
- Type: number
- Default: 300
+ Reasonable key bindings look e.g. like this:
- The number of seconds after which a cached passphrase will expire if
- not used. (PGP only)
+ bind index \Cp sidebar-prev
+ bind index \Cn sidebar-next
+ bind index \Cb sidebar-open
+ bind pager \Cp sidebar-prev
+ bind pager \Cn sidebar-next
+ bind pager \Cb sidebar-open
- 6\b6.\b.3\b3.\b.1\b18\b83\b3.\b. p\bpg\bgp\bp_\b_u\bus\bse\be_\b_g\bgp\bpg\bg_\b_a\bag\bge\ben\bnt\bt
+ macro index B ':toggle sidebar_visible^M'
+ macro pager B ':toggle sidebar_visible^M'
- Type: boolean
- Default: no
+ You can then go up and down by pressing Ctrl-P and Ctrl-N, and switch on
+ and off the sidebar simply by pressing 'B'.
- If set, mutt-ng will use a possibly-running gpg-agent process. (PGP
- only)
+7. External Address Queries
- 6\b6.\b.3\b3.\b.1\b18\b84\b4.\b. p\bpg\bgp\bp_\b_v\bve\ber\bri\bif\bfy\by_\b_c\bco\bom\bmm\bma\ban\bnd\bd
+ Mutt-ng supports connecting to external directory databases such as LDAP,
+ ph/qi, bbdb, or NIS through a wrapper script which connects to mutt using
+ a simple interface. Using the $query_command variable, you specify the
+ wrapper command to use. For example:
- Type: string
- Default: ""
+ set query_command = "mutt_ldap_query.pl '%s'"
- This command is used to verify PGP signatures. (PGP only)
+ The wrapper script should accept the query on the command-line. It should
+ return a one line message, then each matching response on a single line,
+ each line containing a tab separated address then name thensome other
+ optional information. On error, or if there are no matching addresses,
+ return a non-zero exit code and a one line error message.
- 6\b6.\b.3\b3.\b.1\b18\b85\b5.\b. p\bpg\bgp\bp_\b_v\bve\ber\bri\bif\bfy\by_\b_k\bke\bey\by_\b_c\bco\bom\bmm\bma\ban\bnd\bd
+ An example multiple response output:
- Type: string
- Default: ""
+ Searching database ... 20 entries ... 3 matching:
+ me@cs.hmc.edu Michael Elkins mutt dude
+ blong@fiction.net Brandon Long mutt and more
+ roessler@guug.de Thomas Roessler mutt pgp
- This command is used to verify key information from the key selection
- menu. (PGP only)
+ There are two mechanisms for accessing the query function of mutt. One is
+ to do a query from the index menu using the query function (default: Q).
+ This will prompt for a query, then bring up the query menu which will list
+ the matching responses. From the query menu, you can select addresses to
+ create aliases, or to mail. You can tag multiple addressesto mail, start a
+ new query, or have a new query appended to the current responses.
- 6\b6.\b.3\b3.\b.1\b18\b86\b6.\b. p\bpi\bip\bpe\be_\b_d\bde\bec\bco\bod\bde\be
+ The other mechanism for accessing the query function is for address
+ completion, similar to the alias completion. In any prompt for address
+ entry, you can use the complete-query function (default: ^T) to run a
+ query based on the current address you have typed. Like aliases, mutt will
+ look for what you have typed back to the last space or comma. If there is
+ a single response for that query, mutt will expand the address in place.
+ If there are multiple responses, mutt will activate the querymenu. At the
+ query menu, you can select one or more addresses to be added to the
+ prompt.
+
+8. Mailbox Formats
+
+ Mutt-ng supports reading and writing of four different mailbox formats:
+ mbox, MMDF, MH and Maildir. The mailbox type is autodetected, so there is
+ no need to use a flag for different mailbox types. When creating
+ newmailboxes, Mutt-ng uses the default specified with the $mbox_type
+ variable.
+
+ mbox. This is the most widely used mailbox format for UNIX. All messages
+ are stored in a single file. Each message has a line of the form:
+
+ From me@cs.hmc.edu Fri, 11 Apr 1997 11:44:56 PST
+
+ to denote the start of a new message (this is often referred to as the
+ ``From_'' line).
+
+ MMDF. This is a variant of the mbox format. Each message is surrounded by
+ lines containing ``^A^A^A^A'' (four control-A's).
+
+ MH. A radical departure from mbox and MMDF, a mailbox consists of a
+ directory and each message is stored in a separate file. The filename
+ indicates the message number (however, this is may not correspond to the
+ message number Mutt-ng displays). Deleted messages arerenamed with a comma
+ (,) prepended to the filename. Note: Mutt detects this type of mailbox by
+ looking for either .mh_sequences or .xmhcache (needed to distinguish
+ normal directories from MH mailboxes).
+
+ Maildir. The newest of the mailbox formats, used by the Qmail MTA (a
+ replacement for sendmail). Similar to MH, except that it adds three
+ subdirectories of the mailbox: tmp, new and cur .Filenames for the
+ messages are chosen in such a way they are unique, even when twoprograms
+ are writing the mailbox over NFS, which means that no file locking is
+ needed.
+
+9. Mailbox Shortcuts
+
+ There are a number of built in shortcuts which refer to specific
+ mailboxes. These shortcuts can be used anywhere you are prompted for a
+ file or mailbox path.
+
+ o ! -- refers to your $spoolfile (incoming) mailbox
+
+ o > -- refers to your $mbox file
+
+ o < -- refers to your $record file
+
+ o ^ -- refers to the current mailbox
+
+ o - or !! -- refers to the file you've last visited
+
+ o ~ -- refers to your home directory
+
+ o = or + -- refers to your $folder directory
+
+ o @alias -- refers to the save-hook as determined by the address of the
+ alias
+
+10. Handling Mailing Lists
+
+ Mutt-ng has a few configuration options that make dealing with large
+ amounts of mail easier. The first thing you must do is to let Mutt know
+ what addresses you consider to be mailing lists (technically this does not
+ have to be a mailing list, but that is what it is most often used for),
+ and what lists you are subscribed to. This is accomplished through the use
+ of the lists commands in your muttrc.
+
+ Now that Mutt-ng knows what your mailing lists are, it can do several
+ things, the first of which is the ability to show the name of a list
+ through which you received a message (i.e., of a subscribed list) in the
+ index menu display. This is useful to distinguish between personal and
+ list mail in the same mailbox. In the $index_format variable, the escape
+ ``%L'' will return the string ``To <list>'' when ``list'' appears in the
+ ``To'' field, and ``Cc <list>'' when it appears in the ``Cc'' field
+ (otherwise it returns the name of the author).
+
+ Often times the ``To'' and ``Cc'' fields in mailing list messages tend to
+ get quite large. Most people do not bother to remove the author of the
+ message they are reply to from the list, resulting in two or more copies
+ being sent to that person. The ``list-reply'' function, which by default
+ is bound to ``L'' in the index menu and pager, helps reduce the clutter by
+ only replying to the known mailing list addresses instead of all
+ recipients (except as specified by Mail-Followup-To, see below).
+
+ Mutt-ng also supports the Mail-Followup-To header. When you send a message
+ to a list of recipients which includes one or several subscribed mailing
+ lists, and if the $followup_to option is set, mutt will generate a
+ Mail-Followup-To header which contains all the recipients to whom you send
+ this message, but not your address. This indicates that group-replies or
+ list-replies (also known as ``followups'') to this message should only be
+ sent to the original recipients of the message, and not separately to you
+ - you'll receive your copy through one of the mailing lists you are
+ subscribed to.
+
+ Conversely, when group-replying or list-replying to a message which has a
+ Mail-Followup-To header, mutt will respect this header if the
+ $honor_followup_to configuration variable is set. Using list-reply will in
+ this case also make sure that the reply goes to the mailing list, even if
+ it's not specified in the list of recipients in the Mail-Followup-To.
- Type: boolean
- Default: no
+ Note that, when header editing is enabled, you can create a
+ Mail-Followup-To header manually. Mutt-ng will only auto-generate this
+ header if it doesn't exist when you send the message.
+
+ The other method some mailing list admins use is to generate a
+ ``Reply-To'' field which points back to the mailing list address rather
+ than the author of the message. This can create problems when trying to
+ reply directly to the author in private, since most mail clients will
+ automatically reply to the address given in the ``Reply-To'' field.
+ Mutt-ng uses the $reply_to variable to help decide which address to use.
+ If set to ask-yes or ask-no, you will be prompted as to whether or not you
+ would like to use the address given inthe ``Reply-To'' field, or reply
+ directly to the address given in the ``From'' field. When set to yes, the
+ ``Reply-To'' field will be used when present.
+
+ The ``X-Label:'' header field can be used to further identify mailing
+ lists or list subject matter (or just to annotate messages individually).
+ The $index_format variable's ``%y'' and ``%Y'' escapes can be used to
+ expand ``X-Label:'' fields in the index, and Mutt-ng's pattern-matcher can
+ match regular expressions to ``X-Label:'' fields with the ``~y'' selector.
+ ``X-Label:'' is not a standard message header field, but it can easily be
+ inserted by procmailand other mail filtering agents.
+
+ Lastly, Mutt-ng has the ability to sort the mailbox into threads. A thread
+ is a group of messages which all relate to the same subject. This is
+ usually organized into a tree-like structure where a message and all of
+ its replies are represented graphically. If you've ever used a threaded
+ news client, this is the same concept. It makes dealingwith large volume
+ mailing lists easier because you can easily delete uninteresting threads
+ and quickly find topics of value.
- Used in connection with the _\bp_\bi_\bp_\be_\b-_\bm_\be_\bs_\bs_\ba_\bg_\be command. When unset, Mutt-ng
- will pipe the messages without any preprocessing. When set, Mutt-ng
- will weed headers and will attempt to PGP/MIME decode the messages
- first.
+11. Editing threads
- 6\b6.\b.3\b3.\b.1\b18\b87\b7.\b. p\bpi\bip\bpe\be_\b_s\bse\bep\bp
+ Mutt-ng has the ability to dynamically restructure threads that are broken
+ either by misconfigured software or bad behavior from some correspondents.
+ This allows to clean your mailboxes formats) from these annoyances which
+ make it hard to follow a discussion.
- Type: string
- Default: "\n"
+ 11.1. Linking threads
- The separator to add between messages when piping a list of tagged
- messages to an external Unix command.
+ Some mailers tend to "forget" to correctly set the "In-Reply-To:" and
+ "References:" headers when replying to a message. This results in broken
+ discussions because Mutt-ng has not enough information to guess the
+ correct threading. You can fix this by tagging the reply, then moving to
+ the parent message and using the ``link-threads'' function (bound to & by
+ default). The reply will then be connected to this "parent" message.
- 6\b6.\b.3\b3.\b.1\b18\b88\b8.\b. p\bpi\bip\bpe\be_\b_s\bsp\bpl\bli\bit\bt
+ You can also connect multiple children at once, tagging them and using the
+ tag-prefix command (';') or the auto_tag option.
- Type: boolean
- Default: no
+ 11.2. Breaking threads
+
+ On mailing lists, some people are in the bad habit of starting a new
+ discussion by hitting "reply" to any message from the list and changing
+ the subject to a totally unrelated one. You can fix such threads by using
+ the ``break-thread'' function (boundby default to #), which will turn the
+ subthread starting from the current message into a whole different thread.
+
+12. Delivery Status Notification (DSN) Support
+
+ RfC 1894 defines a set of MIME content types for relaying information
+ about the status of electronic mail messages. These can be thought of as
+ ``return receipts.''
+
+ Users can make use of it in one of the following two ways:
+
+ o Berkeley sendmail 8.8.x currently has some command line options in
+ which the mail client can make requests as to what type of status
+ messages should be returned.
+
+ o The SMTP support via libESMTP supports it, too.
- Used in connection with the _\bp_\bi_\bp_\be_\b-_\bm_\be_\bs_\bs_\ba_\bg_\be command and the ``tag-
- prefix'' operator. If this variable is unset, when piping a list of
- tagged messages Mutt-ng will concatenate the messages and will pipe
- them as a single folder. When set, Mutt-ng will pipe the messages one
- by one. In both cases the messages are piped in the current sorted
- order, and the ````$pipe_sep'''' separator is added after each
- message.
+ To support this, there are two variables:
- 6\b6.\b.3\b3.\b.1\b18\b89\b9.\b. p\bpo\bop\bp_\b_a\bau\but\bth\bh_\b_t\btr\bry\by_\b_a\bal\bll\bl
+ o $dsn_notify is used to request receipts for different results (such as
+ failed message,message delivered, etc.).
- Type: boolean
- Default: yes
+ o $dsn_return requests how much of your message should be returned with
+ the receipt (headers or full message).
- If set, Mutt-ng will try all available methods. When unset, Mutt-ng
- will only fall back to other authentication methods if the previous
- methods are unavailable. If a method is available but authentication
- fails, Mutt-ng will not connect to the POP server.
+ Please see the reference chapter for possible values.
- 6\b6.\b.3\b3.\b.1\b19\b90\b0.\b. p\bpo\bop\bp_\b_a\bau\but\bth\bhe\ben\bnt\bti\bic\bca\bat\bto\bor\brs\bs
+13. POP3 Support (OPTIONAL)
- Type: string
- Default: ""
+ If Mutt-ng was compiled with POP3 support (by running the configure script
+ with the --enable-pop flag), it has the ability to work with mailboxes
+ located on a remote POP3 server and fetch mail for local browsing.
- This is a colon-delimited list of authentication methods mutt-ng may
- attempt to use to log in to an POP server, in the order mutt-ng should
- try them. Authentication methods are either 'user', 'apop' or any
- SASL mechanism, eg 'digest-md5', 'gssapi' or 'cram-md5'. This
- parameter is case-insensitive. If this parameter is unset (the
- default) mutt-ng will try all available methods, in order from most-
- secure to least-secure.
+ You can access the remote POP3 mailbox by selecting the folder
+ pop://popserver/.
- Example: set pop_authenticators="digest-md5:apop:user"
+ You can select an alternative port by specifying it with the server, i.e.:
+ pop://popserver:port/.
- 6\b6.\b.3\b3.\b.1\b19\b91\b1.\b. p\bpo\bop\bp_\b_c\bch\bhe\bec\bck\bki\bin\bnt\bte\ber\brv\bva\bal\bl
+ You can also specify different username for each folder, i.e.:
+ pop://username@popserver[:port]/.
- Type: number
- Default: 60
+ Polling for new mail is more expensive over POP3 than locally. For this
+ reason the frequency at which Mutt-ng will check for mail remotely can be
+ controlled by the $pop_mail_check variable, which defaults to every 60
+ seconds.
- This variable configures how often (in seconds) POP should look for
- new mail.
+ If Mutt-ng was compiled with SSL support (by running the configure script
+ with the --with-ssl flag), connections to POP3 servers can be encrypted.
+ This naturally requires that the server supports SSL encrypted
+ connections. To access a folder with POP3/SSL, you should use pops:
+ prefix, ie: pops://[username@]popserver[:port]/.
- 6\b6.\b.3\b3.\b.1\b19\b92\b2.\b. p\bpo\bop\bp_\b_d\bde\bel\ble\bet\bte\be
+ Another way to access your POP3 mail is the fetch-mail function (default:
+ G). It allows to connect to pop-host ,fetch all your new mail and place it
+ in the local $spoolfile. After this point, Mutt-ng runs exactly as if the
+ mail had always been local.
- Type: quadoption
- Default: ask-no
+ Note: If you only need to fetch all messages to local mailbox you should
+ consider using a specialized program, such as fetchmail(1).
- If set, Mutt-ng will delete successfully downloaded messages from the
- POP server when using the fetch-mail function. When unset, Mutt-ng
- will download messages but also leave them on the POP server.
+14. IMAP Support (OPTIONAL)
- 6\b6.\b.3\b3.\b.1\b19\b93\b3.\b. p\bpo\bop\bp_\b_h\bho\bos\bst\bt
+ If Mutt-ng was compiled with IMAP support (by running the configure script
+ with the --enable-imap flag), it has the ability to work with folders
+ located on a remote IMAP server.
- Type: string
- Default: ""
+ You can access the remote inbox by selecting the folder via its URL:
- The name of your POP server for the fetch-mail function. You can also
- specify an alternative port, username and password, ie:
+ imap://imapserver/INBOX
- [pop[s]://][username[:password]@]popserver[:port]
+ where imapserver is the name of the IMAP server and INBOX is the special
+ name for your spool mailbox on the IMAP server. If you want to access
+ another mail folder at the IMAP server, you should use
- 6\b6.\b.3\b3.\b.1\b19\b94\b4.\b. p\bpo\bop\bp_\b_l\bla\bas\bst\bt
+ imap://imapserver/path/to/folder
- Type: boolean
- Default: no
+ where path/to/folder is the path of the folder you want to access. You can
+ select an alternative port by specifying it with the server, i.e.:
- If this variable is set, mutt-ng will try to use the "LAST" POP
- command for retrieving only unread messages from the POP server when
- using the fetch-mail function.
+ imap://imapserver:port/INBOX
- 6\b6.\b.3\b3.\b.1\b19\b95\b5.\b. p\bpo\bop\bp_\b_p\bpa\bas\bss\bs
+ You can also specify different username for each folder by prenpending
+ your username and an @ symbol to the server's name.
- Type: string
- Default: ""
+ If Mutt-ng was compiled with SSL support (by running the configure script
+ with the --with-ssl flag), connections to IMAP servers can be encrypted.
+ This naturally requires that the server supports SSL encrypted
+ connections. To access a folder with IMAP/SSL, you only need to substitute
+ the initial imap:// by imaps:// in the above examples.
- Specifies the password for your POP account. If unset, Mutt-ng will
- prompt you for your password when you open POP mailbox. W\bWa\bar\brn\bni\bin\bng\bg: you
- should only use this option when you are on a fairly secure machine,
- because the superuser can read your muttngrc even if you are the only
- one who can read the file.
+ Note that not all servers use / as the hierarchy separator. Mutt-ng should
+ correctly notice which separator is being used by the server and
+ convertpaths accordingly.
- 6\b6.\b.3\b3.\b.1\b19\b96\b6.\b. p\bpo\bop\bp_\b_r\bre\bec\bco\bon\bnn\bne\bec\bct\bt
+ When browsing folders on an IMAP server, you can toggle whether to look at
+ only the folders you are subscribed to, or all folders with the
+ toggle-subscribed command. See also the $imap_list_subscribed variable.
- Type: quadoption
- Default: ask-yes
+ Polling for new mail on an IMAP server can cause noticeable delays. So,
+ you'll want to carefully tune the $imap_mail_check and $timeout variables.
- Controls whether or not Mutt-ng will try to reconnect to POP server
- when connection lost.
+ Note that if you are using mbox as the mail store on UW servers prior
+ tov12.250, the server has been reported to disconnect a client if another
+ client selects the same folder.
- 6\b6.\b.3\b3.\b.1\b19\b97\b7.\b. p\bpo\bop\bp_\b_u\bus\bse\ber\br
+ 14.1. The Folder Browser
- Type: string
- Default: ""
+ As of version 1.2, mutt supports browsing mailboxes on an IMAP server.
+ This is mostly the same as the local file browser, with the following
+ differences:
- Your login name on the POP server.
+ o Instead of file permissions, mutt displays the string "IMAP", possibly
+ followed by the symbol "+", indicating that the entry contains both
+ messages and subfolders. On Cyrus-like servers folders will often
+ contain both messages and subfolders.
- This variable defaults to your user name on the local machine.
+ o For the case where an entry can contain both messages and subfolders,
+ the selection key (bound to enter by default) will choose to descend
+ into the subfolder view. If you wish to view the messages in that
+ folder, you must use view-file instead (bound to space by default).
- 6\b6.\b.3\b3.\b.1\b19\b98\b8.\b. p\bpo\bos\bst\bt_\b_i\bin\bnd\bde\ben\bnt\bt_\b_s\bst\btr\bri\bin\bng\bg
+ o You can create, delete and rename mailboxes with the create-mailbox,
+ delete-mailbox, and rename-mailbox commands (default bindings: C , d
+ and r, respectively). You may also subscribe and unsubscribe to
+ mailboxes (normally these are bound to s and u, respectively).
- Type: string
- Default: ""
+ 14.2. Authentication
- Similar to the ````$attribution'''' variable, Mutt-ng will append this
- string after the inclusion of a message which is being replied to.
+ Mutt-ng supports four authentication methods with IMAP servers: SASL,
+ GSSAPI, CRAM-MD5, and LOGIN (there is a patch by Grant Edwards to add NTLM
+ authentication for you poor exchange users out there, but it has yet to be
+ integrated into the main tree). There is also support for the
+ pseudo-protocol ANONYMOUS, which allows you to log in to a public IMAP
+ server without having an account. To use ANONYMOUS, simply make your
+ username blank or "anonymous".
- 6\b6.\b.3\b3.\b.1\b19\b99\b9.\b. p\bpo\bos\bst\bt_\b_m\bmo\bod\bde\ber\bra\bat\bte\bed\bd
+ SASL is a special super-authenticator, which selects among several
+ protocols (including GSSAPI, CRAM-MD5, ANONYMOUS, and DIGEST-MD5) the most
+ secure method available on your host and the server. Using some of these
+ methods (including DIGEST-MD5 and possibly GSSAPI), your entire session
+ will be encrypted and invisible to those teeming network snoops. It is the
+ best option if you have it. To use it, you must have the Cyrus SASL
+ libraryinstalled on your system and compile mutt with the --with-sasl
+ flag.
- Type: quadoption
- Default: ask-yes
+ Mutt-ng will try whichever methods are compiled in and available on the
+ server, in the following order: SASL, ANONYMOUS, GSSAPI, CRAM-MD5, LOGIN.
- If set to _\by_\be_\bs, Mutt-ng will post article to newsgroup that have not
- permissions to posting (e.g. moderated). N\bNo\bot\bte\be:\b: if newsserver does not
- support posting to that newsgroup or totally read-only, that posting
- will not have an effect.
+ There are a few variables which control authentication:
- 6\b6.\b.3\b3.\b.2\b20\b00\b0.\b. p\bpo\bos\bst\btp\bpo\bon\bne\be
+ o $imap_user - controls the username under which you request
+ authentication on the IMAP server, for all authenticators. This is
+ overridden by an explicit username in the mailbox path (i.e. by using
+ a mailbox name of the form {user@host}).
- Type: quadoption
- Default: ask-yes
+ o $imap_pass - a password which you may preset, used by all
+ authentication methods where a password is needed.
- Controls whether or not messages are saved in the ````$postponed''''
- mailbox when you elect not to send immediately.
+ o $imap_authenticators - a colon-delimited list of IMAP authentication
+ methods to try, in the order you wish to try them. If specified, this
+ overrides mutt's default (attempt everything, in the order listed
+ above).
- 6\b6.\b.3\b3.\b.2\b20\b01\b1.\b. p\bpo\bos\bst\btp\bpo\bon\bne\bed\bd
+15. NNTP Support (OPTIONAL)
- Type: path
- Default: "~/postponed"
+ If compiled with ``--enable-nntp'' option, Mutt-ng can read news from a
+ newsserver via NNTP. You can open a newsgroup with the
+ ``change-newsgroup'' function from the index/pager which is by default
+ bound to i.
- Mutt-ng allows you to indefinitely ````postpone'' sending a message''
- which you are editing. When you choose to postpone a message, Mutt-ng
- saves it in the mailbox specified by this variable. Also see the
- ````$postpone'''' variable.
+ The Default newsserver can be obtained from the $NNTPSERVER environment
+ variable. Like other news readers, info about subscribed newsgroups is
+ saved in a file as specified by the $nntp_newsrc variable. Article headers
+ are cached and can be loaded from a file when a newsgroup is entered
+ instead loading from newsserver; currently, this caching mechanism still
+ is different from the header caching for maildir/IMAP.
- 6\b6.\b.3\b3.\b.2\b20\b02\b2.\b. p\bpr\bre\bec\bco\bon\bnn\bne\bec\bct\bt
+ 15.1. Again: Scoring
- Type: string
- Default: ""
+ Especially for Usenet, people often ask for advanced filtering and scoring
+ functionality. Of course, mutt-ng has scoring and allows a killfile, too.
+ How to use a killfile has been discussed in Message Scoring.
- If set, a shell command to be executed if mutt-ng fails to establish a
- connection to the server. This is useful for setting up secure
- connections, e.g. with ssh(1). If the command returns a nonzero
- status, mutt-ng gives up opening the server. Example:
+ What has not been discusses in detail is mutt-ng's built-in realname
+ filter. For may newsreaders including those for ``advanced users'' like
+ slrn or tin, there are frequent request for such functionality. The
+ solutions offered often are complicated regular expressions.
- preconnect="ssh -f -q -L 1234:mailhost.net:143 mailhost.net sleep 20 <
- /dev/null > /dev/null"
+ In mutt-ng this is as easy as
- Mailbox 'foo' on mailhost.net can now be reached as
- '{localhost:1234}foo'.
+ score ~* =42
- NOTE: For this example to work, you must be able to log in to the
- remote machine without having to enter a password.
+ This tells mutt-ng to apply a score of 42 to all messages whose sender
+ specified a valid realname and a valid email address. Using
- 6\b6.\b.3\b3.\b.2\b20\b03\b3.\b. p\bpr\bri\bin\bnt\bt
+ score !~* =42
- Type: quadoption
- Default: ask-no
+ on the contrary applies a score of 42 to all messages not matching those
+ criteria which are very strict:
- Controls whether or not Mutt-ng really prints messages. This is set
- to _\ba_\bs_\bk_\b-_\bn_\bo by default, because some people accidentally hit ``p'' often
- (like me).
+ o Email addresses must be valid according to RfC 2822
- 6\b6.\b.3\b3.\b.2\b20\b04\b4.\b. p\bpr\bri\bin\bnt\bt_\b_c\bco\bom\bmm\bma\ban\bnd\bd
+ o the name must consist of at least 2 fields whereby a field must not
+ end in a dot. This means that ``Joe User'' and ``Joe A.User'' are
+ valid while ``J. User'' and ``J. A. User'' aren't.
- Type: path
- Default: "lpr"
+ o it's assumed that users are interested in reading their own mail and
+ mail from people who they have defined an alias forso that those 2
+ groups of messages are excluded from the strict rules.
- This specifies the command pipe that should be used to print messages.
+16. SMTP Support (OPTIONAL)
- 6\b6.\b.3\b3.\b.2\b20\b05\b5.\b. p\bpr\bri\bin\bnt\bt_\b_d\bde\bec\bco\bod\bde\be
+ Mutt-ng can be built using a library called ``libESMTP'' which provides
+ SMTP functionality. When configure was called with --with-libesmtp or the
+ output muttng -v contains +USE_LIBESMTP, this will be or is the case
+ already. The SMTP support includes support for Delivery Status
+ Notification (see dsn section) as well as handling the 8BITMIME flag
+ controlled via $use_8bitmime.
- Type: boolean
- Default: yes
+ To enable sending mail directly via SMTP without an MTA such as Postfix or
+ SSMTP and the like, simply set the $smtp_host variable pointing to your
+ SMTP server.
- Used in connection with the print-message command. If this option is
- set, the message is decoded before it is passed to the external
- command specified by ``$print_command''. If this option is unset, no
- processing will be applied to the message when printing it. The
- latter setting may be useful if you are using some advanced printer
- filter which is able to properly format e-mail messages for printing.
+ Authentication mechanisms are available via the $smtp_user and $smtp_pass
+ variables.
- 6\b6.\b.3\b3.\b.2\b20\b06\b6.\b. p\bpr\bri\bin\bnt\bt_\b_s\bsp\bpl\bli\bit\bt
+ Transport Encryption via the StartTLS command is also available. For this
+ to work, first of all Mutt-ng must be built with SSL or GNUTLS. Secondly,
+ the $smtp_use_tls variable must be either set to ``enabled'' or
+ ``required.'' In both cases, StartTLS will be used if the server supports
+ it: for the second case, the connection will fail ifit doesn't while
+ switching back to unencrypted communication for the first one.
- Type: boolean
- Default: no
+ Some mail providers require user's to set a particular envelope sender,
+ i.e. they allow for only one value which may not be what the user wants to
+ send as the From: header. In this case, the variable $smtp_envelope may be
+ used to set the envelope different from the From: header.
- Used in connection with the print-message command. If this option is
- set, the command specified by ``$print_command'' is executed once for
- each message which is to be printed. If this option is unset, the
- command specified by ``$print_command'' is executed only once, and all
- the messages are concatenated, with a form feed as the message
- separator.
+17. Managing multiple IMAP/POP/NNTP accounts (OPTIONAL)
- Those who use the e\ben\bns\bsc\bcr\bri\bip\bpt\bt(1) program's mail-printing mode will most
- likely want to set this option.
+ If you happen to have accounts on multiple IMAP and/or POP servers, you
+ may find managing all the authentication settings inconvenient and
+ error-prone. The account-hook command may help. This hook works like
+ folder-hook but is invoked whenever you access a remote mailbox (including
+ inside the folder browser), not just when you open the mailbox.
- 6\b6.\b.3\b3.\b.2\b20\b07\b7.\b. p\bpr\bro\bom\bmp\bpt\bt_\b_a\baf\bft\bte\ber\br
+ Some examples:
- Type: boolean
- Default: yes
+ account-hook . 'unset imap_user; unset imap_pass; unset tunnel'
+ account-hook imap://host1/ 'set imap_user=me1 imap_pass=foo'
+ account-hook imap://host2/ 'set tunnel="ssh host2 /usr/libexec/imapd"'
- If you use an _\be_\bx_\bt_\be_\br_\bn_\ba_\bl ````$pager'''', setting this variable will
- cause Mutt-ng to prompt you for a command when the pager exits rather
- than returning to the index menu. If unset, Mutt-ng will return to
- the index menu when the external pager exits.
+18. Start a WWW Browser on URLs (EXTERNAL)
- 6\b6.\b.3\b3.\b.2\b20\b08\b8.\b. q\bqu\bue\ber\bry\by_\b_c\bco\bom\bmm\bma\ban\bnd\bd
+ If a message contains URLs (unified resource locator = address in the WWW
+ space like http://www.mutt.org/), it is efficient to get a menu with all
+ the URLs and start a WWW browser on one of them. This functionality is
+ provided by the external urlview program which can be retrieved at
+ <ftp://ftp.mutt.org/mutt/contrib/> and the configuration commands:
- Type: path
- Default: ""
+ macro index \cb |urlview\n
+ macro pager \cb |urlview\n
- This specifies the command that mutt-ng will use to make external
- address queries. The string should contain a %s, which will be
- substituted with the query string the user types. See ````query''''
- for more information.
+19. Compressed folders Support (OPTIONAL)
- 6\b6.\b.3\b3.\b.2\b20\b09\b9.\b. q\bqu\bui\bit\bt
+ If Mutt-ng was compiled with compressed folders support (by running the
+ configure script with the --enable-compressed flag), Mutt can open folders
+ stored in an arbitrary format, provided that the user has a script to
+ convert from/to this format to one of the accepted.
- Type: quadoption
- Default: yes
+ The most common use is to open compressed archived folders e.g. with gzip.
- This variable controls whether ``quit'' and ``exit'' actually quit
- from mutt-ng. If it set to yes, they do quit, if it is set to no,
- they have no effect, and if it is set to ask-yes or ask-no, you are
- prompted for confirmation when you try to quit.
+ In addition, the user can provide a script that gets a folder in an
+ accepted format and appends its context to the folder in the user-defined
+ format, which may be faster than converting the entire folder to the
+ accepted format, appending to it and converting back to the user-defined
+ format.
- 6\b6.\b.3\b3.\b.2\b21\b10\b0.\b. q\bqu\buo\bot\bte\be_\b_e\bem\bmp\bpt\bty\by
+ There are three hooks defined (open-hook, close-hook and append-hook
+ )which define commands to uncompress and compress a folder and to append
+ messages to an existing compressed folder respectively.
- Type: boolean
- Default: yes
+ For example:
- Controls whether or not empty lines will be quoted using
- ````indent_string''''.
+ open-hook \\.gz$ "gzip -cd %f > %t"
+ close-hook \\.gz$ "gzip -c %t > %f"
+ append-hook \\.gz$ "gzip -c %t >> %f"
- 6\b6.\b.3\b3.\b.2\b21\b11\b1.\b. q\bqu\buo\bot\bte\be_\b_q\bqu\buo\bot\bte\bed\bd
+ You do not have to specify all of the commands. If you omit append-hook
+ ,the folder will be open and closed again each time you will add to it. If
+ you omit close-hook (or give empty command) , the folder will be open in
+ the mode. If you specify append-hook though you'll be able to append to
+ the folder.
- Type: boolean
- Default: no
+ Note that Mutt-ng will only try to use hooks if the file is not in one of
+ the accepted formats. In particular, if the file is empty, mutt supposes
+ it is not compressed. This is important because it allows the use of
+ programs that do not have well defined extensions. Just use "." as a
+ regexp. But this may be surprising if your compressing script produces
+ empty files. In this situation, unset $save_empty ,so that the compressed
+ file will be removed if you delete all of the messages.
- Controls how quoted lines will be quoted. If set, one quote character
- will be added to the end of existing prefix. Otherwise, quoted lines
- will be prepended by ````indent_string''''.
+ 19.1. Open a compressed mailbox for reading
- 6\b6.\b.3\b3.\b.2\b21\b12\b2.\b. q\bqu\buo\bot\bte\be_\b_r\bre\beg\bge\bex\bxp\bp
+ Usage: open-hookregexp "command"
- Type: regular expression
- Default: "^([ \t]*[|>:}#])+"
+ The command is the command that can be used for opening the folders whose
+ names match regexp.
- A regular expression used in the internal-pager to determine quoted
- sections of text in the body of a message.
+ The command string is the printf-like format string, and it should accept
+ two parameters: %f, which is replaced with the (compressed) folder name,
+ and %t which is replaced with the name of the temporary folder to which to
+ write.
- N\bNo\bot\bte\be:\b: In order to use the _\bq_\bu_\bo_\bt_\be_\bdx\bx patterns in the internal pager, you
- need to set this to a regular expression that matches _\be_\bx_\ba_\bc_\bt_\bl_\by the
- quote characters at the beginning of quoted lines.
+ %f and %t can be repeated any number of times in the command string, and
+ all of the entries are replaced with the appropriate folder name. In
+ addition, %% is replaced by %, as in printf, and any other %anything is
+ left as is.
- 6\b6.\b.3\b3.\b.2\b21\b13\b3.\b. r\bre\bea\bad\bd_\b_i\bin\bnc\bc
+ The command should not remove the original compressed file. The command
+ should return non-zero exit status if it fails, so mutt knows something's
+ wrong.
- Type: number
- Default: 10
+ Example:
- If set to a value greater than 0, Mutt-ng will display which message
- it is currently on when reading a mailbox. The message is printed
- after _\br_\be_\ba_\bd_\b__\bi_\bn_\bc messages have been read (e.g., if set to 25, Mutt-ng
- will print a message when it reads message 25, and then again when it
- gets to message 50). This variable is meant to indicate progress when
- reading large mailboxes which may take some time. When set to 0, only
- a single message will appear before the reading the mailbox.
+ open-hook \\.gz$ "gzip -cd %f > %t"
- Also see the ````$write_inc'''' variable.
+ If the command is empty, this operation is disabled for this file type.
- 6\b6.\b.3\b3.\b.2\b21\b14\b4.\b. r\bre\bea\bad\bd_\b_o\bon\bnl\bly\by
+ 19.2. Write a compressed mailbox
- Type: boolean
- Default: no
+ Usage: close-hookregexp"command"
- If set, all folders are opened in read-only mode.
+ This is used to close the folder that was open with the open-hook command
+ after some changes were made to it.
- 6\b6.\b.3\b3.\b.2\b21\b15\b5.\b. r\bre\bea\bal\bln\bna\bam\bme\be
+ The command string is the command that can be used for closing the folders
+ whose names match regexp. It has the same format as in the open-hook
+ command. Temporary folder in this case is the folder previously produced
+ by the open-hook command.
- Type: string
- Default: ""
+ The command should not remove the decompressed file. The command should
+ return non-zero exit status if it fails, so mutt knows something's wrong.
- This variable specifies what "real" or "personal" name should be used
- when sending messages.
+ Example:
- By default, this is the GECOS field from /etc/passwd. Note that this
- variable will _\bn_\bo_\bt be used when the user has set a real name in the
- ``$from'' variable.
+ close-hook \\.gz$ "gzip -c %t > %f"
- 6\b6.\b.3\b3.\b.2\b21\b16\b6.\b. r\bre\bec\bca\bal\bll\bl
+ If the command is empty, this operation is disabled for this file type,
+ and the file can only be open in the readonly mode.
- Type: quadoption
- Default: ask-yes
+ close-hook is not called when you exit from the folder if the folder was
+ not changed.
- Controls whether or not Mutt-ng recalls postponed messages when
- composing a new message. Also see ````$postponed''''.
+ 19.3. Append a message to a compressed mailbox
- Setting this variable to ``yes'' is not generally useful, and thus not
- recommended.
+ Usage: append-hookregexp"command"
- 6\b6.\b.3\b3.\b.2\b21\b17\b7.\b. r\bre\bec\bco\bor\brd\bd
+ This command is used for saving to an existing compressed folder. The
+ command is the command that can be used for appending to the folders whose
+ names match regexp. It has the same format as in the open-hook command.
+ The temporary folder in this case contains the messages that are
+ beingappended.
- Type: path
- Default: ""
+ The command should not remove the decompressed file. The command should
+ return non-zero exit status if it fails, so mutt knows something's wrong.
- This specifies the file into which your outgoing messages should be
- appended. (This is meant as the primary method for saving a copy of
- your messages, but another way to do this is using the ````my_hdr''''
- command to create a _\bB_\bc_\bc_\b: field with your email address in it.)
+ Example:
- The value of _\b`_\b`_\b$_\br_\be_\bc_\bo_\br_\bd_\b'_\b' is overridden by the ````$force_name'''' and
- ````$save_name'''' variables, and the ````fcc-hook'''' command.
+ append-hook \\.gz$ "gzip -c %t >> %f"
- 6\b6.\b.3\b3.\b.2\b21\b18\b8.\b. r\bre\bep\bpl\bly\by_\b_r\bre\beg\bge\bex\bxp\bp
+ When append-hook is used, the folder is not opened, which saves time, but
+ this means that we can not find out what the folder type is. Thus the
+ default ($mbox_type )type is always supposed (i.e. this is the format used
+ for the temporary folder).
- Type: regular expression
- Default: "^(re([\[0-9\]+])*|aw):[ \t]*"
+ If the file does not exist when you save to it, close-hook is called, and
+ not append-hook. append-hook is only for appending to existing folders.
- A regular expression used to recognize reply messages when threading
- and replying. The default value corresponds to the English "Re:" and
- the German "Aw:".
+ If the command is empty, this operation is disabled for this file type. In
+ this case, the folder will be open and closed again (using open-hook and
+ close-hook respectively) each time you will add to it.
- 6\b6.\b.3\b3.\b.2\b21\b19\b9.\b. r\bre\bep\bpl\bly\by_\b_s\bse\bel\blf\bf
+ 19.4. Encrypted folders
- Type: boolean
- Default: no
+ The compressed folders support can also be used to handle encrypted
+ folders. If you want to encrypt a folder with PGP, you may want to usethe
+ following hooks:
- If unset and you are replying to a message sent by you, Mutt-ng will
- assume that you want to reply to the recipients of that message rather
- than to yourself.
+ open-hook \\.pgp$ "pgp -f < %f > %t"
+ close-hook \\.pgp$ "pgp -fe YourPgpUserIdOrKeyId < %t > %f"
- 6\b6.\b.3\b3.\b.2\b22\b20\b0.\b. r\bre\bep\bpl\bly\by_\b_t\bto\bo
+ Please note, that PGP does not support appending to an encrypted folder,
+ so there is no append-hook defined.
- Type: quadoption
- Default: ask-yes
+ Note: the folder is temporary stored decrypted in the /tmp directory,
+ where it can be read by your system administrator. So thinkabout the
+ security aspects of this.
- If set, when replying to a message, Mutt-ng will use the address
- listed in the Reply-to: header as the recipient of the reply. If
- unset, it will use the address in the From: header field instead.
- This option is useful for reading a mailing list that sets the Reply-
- To: header field to the list address and you want to send a private
- message to the author of a message.
+Chapter 5. Mutt-ng's MIME Support
- 6\b6.\b.3\b3.\b.2\b22\b21\b1.\b. r\bre\bes\bso\bol\blv\bve\be
+ Table of Contents
- Type: boolean
- Default: yes
+ 1. Using MIME in Mutt
- When set, the cursor will be automatically advanced to the next
- (possibly undeleted) message whenever a command that modifies the
- current message is executed.
+ 1.1. Viewing MIME messages in the pager
- 6\b6.\b.3\b3.\b.2\b22\b22\b2.\b. r\bre\bev\bve\ber\brs\bse\be_\b_a\bal\bli\bia\bas\bs
+ 1.2. The Attachment Menu
- Type: boolean
- Default: no
+ 1.3. The Compose Menu
- This variable controls whether or not Mutt-ng will display the
- "personal" name from your aliases in the index menu if it finds an
- alias that matches the message's sender. For example, if you have the
- following alias:
+ 2. MIME Type configuration with mime.types
- alias juser abd30425@somewhere.net (Joe User)
+ 3. MIME Viewer configuration with mailcap
- and then you receive mail which contains the following header:
+ 3.1. The Basics of the mailcap file
- From: abd30425@somewhere.net
+ 3.2. Secure use of mailcap
- It would be displayed in the index menu as ``Joe User'' instead of
- ``abd30425@somewhere.net.'' This is useful when the person's e-mail
- address is not human friendly (like CompuServe addresses).
+ 3.3. Advanced mailcap Usage
- 6\b6.\b.3\b3.\b.2\b22\b23\b3.\b. r\bre\bev\bve\ber\brs\bse\be_\b_n\bna\bam\bme\be
+ 3.4. Example mailcap files
- Type: boolean
- Default: no
+ 4. MIME Autoview
- It may sometimes arrive that you receive mail to a certain machine,
- move the messages to another machine, and reply to some the messages
- from there. If this variable is set, the default _\bF_\br_\bo_\bm_\b: line of the
- reply messages is built using the address where you received the
- messages you are replying to i\bif\bf that address matches your alternates.
- If the variable is unset, or the address that would be used doesn't
- match your alternates, the _\bF_\br_\bo_\bm_\b: line will use your address on the
- current machine.
+ 5. MIME Multipart/Alternative
- 6\b6.\b.3\b3.\b.2\b22\b24\b4.\b. r\bre\bev\bve\ber\brs\bse\be_\b_r\bre\bea\bal\bln\bna\bam\bme\be
+ 6. MIME Lookup
- Type: boolean
- Default: yes
+ Quite a bit of effort has been made to make Mutt-ng the premier text-mode
+ MIME MUA. Every effort has been made to provide the functionality that the
+ discerning MIME user requires, and the conformance to the standards
+ wherever possible. When configuring Mutt-ng for MIME, there are two
+ extratypes of configuration files which Mutt-ng uses. One is the
+ mime.types file, which contains the mapping of file extensions to IANA
+ MIME types. The other is the mailcap file, which specifies the external
+ commands to use for handling specific MIME types.
- This variable fine-tunes the behaviour of the ``reverse_name''
- feature. When it is set, mutt-ng will use the address from incoming
- messages as-is, possibly including eventual real names. When it is
- unset, mutt-ng will override any such real names with the setting of
- the ``realname'' variable.
+1. Using MIME in Mutt
- 6\b6.\b.3\b3.\b.2\b22\b25\b5.\b. r\brf\bfc\bc2\b20\b04\b47\b7_\b_p\bpa\bar\bra\bam\bme\bet\bte\ber\brs\bs
+ There are three areas/menus in Mutt-ng which deal with MIME, they are the
+ pager (while viewing a message), the attachment menu and the compose menu.
- Type: boolean
- Default: no
+ 1.1. Viewing MIME messages in the pager
- When this variable is set, Mutt-ng will decode RFC-2047-encoded MIME
- parameters. You want to set this variable when mutt-ng suggests you to
- save attachments to files named like this:
- =?iso-8859-1?Q?file=5F=E4=5F991116=2Ezip?=
+ When you select a message from the index and view it in the pager, Mutt
+ decodes the message to a text representation. Mutt-ng internally supports
+ a number of MIME types, including text/plain, text/enriched,
+ message/rfc822, and message/news .In addition, the export controlled
+ version of Mutt-ng recognizes a variety of PGP MIME types, including
+ PGP/MIME and application/pgp.
- When this variable is set interactively, the change doesn't have the
- desired effect before you have changed folders.
+ Mutt-ng will denote attachments with a couple lines describing them. These
+ lines are of the form:
- Note that this use of RFC 2047's encoding is explicitly, prohibited by
- the standard, but nevertheless encountered in the wild. Also note
- that setting this parameter will _\bn_\bo_\bt have the effect that mutt-ng
- _\bg_\be_\bn_\be_\br_\ba_\bt_\be_\bs this kind of encoding. Instead, mutt-ng will
- unconditionally use the encoding specified in RFC 2231.
+ [-- Attachment #1: Description --]
+ [-- Type: text/plain, Encoding: 7bit, Size: 10000 --]
- 6\b6.\b.3\b3.\b.2\b22\b26\b6.\b. s\bsa\bav\bve\be_\b_a\bad\bdd\bdr\bre\bes\bss\bs
+ Where the Description is the description or filename given for the
+ attachment, and the Encoding is one of
+ 7bit/8bit/quoted-printable/base64/binary.
- Type: boolean
- Default: no
+ If Mutt-ng cannot deal with a MIME type, it will display a message like:
- If set, mutt-ng will take the sender's full address when choosing a
- default folder for saving a mail. If ````$save_name'''' or
- ````$force_name'''' is set too, the selection of the fcc folder will
- be changed as well.
+ [-- image/gif is unsupported (use 'v' to view this part) --]
- 6\b6.\b.3\b3.\b.2\b22\b27\b7.\b. s\bsa\bav\bve\be_\b_e\bem\bmp\bpt\bty\by
+ 1.2. The Attachment Menu
- Type: boolean
- Default: yes
+ The default binding for view-attachments is `v', which displays the
+ attachment menu for a message. The attachment menu displays a list ofthe
+ attachments in a message. From the attachment menu, you can save, print,
+ pipe, delete, and view attachments. You can apply these operations to a
+ group of attachments at once, by tagging the attachments and by using the
+ ``tag-prefix'' operator. You can also reply to the current message from
+ this menu, and only the current attachment (or the attachments tagged)
+ will be quoted in your reply. You can view attachments as text, or view
+ them using the mailcap viewer definition.
- When unset, mailboxes which contain no saved messages will be removed
- when closed (the exception is ````$spoolfile'''' which is never
- removed). If set, mailboxes are never removed.
+ Finally, you can apply the usual message-related functions (like
+ <resend-message>, and the reply and forward functions) to attachments of
+ type message/rfc822.
- N\bNo\bot\bte\be:\b: This only applies to mbox and MMDF folders, Mutt-ng does not
- delete MH and Maildir directories.
+ See the help on the attachment menu for more information.
- 6\b6.\b.3\b3.\b.2\b22\b28\b8.\b. s\bsa\bav\bve\be_\b_n\bna\bam\bme\be
+ 1.3. The Compose Menu
- Type: boolean
- Default: no
+ The compose menu is the menu you see before you send a message. It allows
+ you to edit the recipient list, the subject, and other aspects of your
+ message. It also contains a list of the attachments of your message,
+ including the main body. From this menu, you can print, copy, filter,
+ pipe, edit, compose, review, and rename an attachment or a list of tagged
+ attachments. You can also modifying the attachment information, notably
+ the type, encoding and description.
- This variable controls how copies of outgoing messages are saved.
- When set, a check is made to see if a mailbox specified by the
- recipient address exists (this is done by searching for a mailbox in
- the ````$folder'''' directory with the _\bu_\bs_\be_\br_\bn_\ba_\bm_\be part of the recipient
- address). If the mailbox exists, the outgoing message will be saved
- to that mailbox, otherwise the message is saved to the ````$record''''
- mailbox.
+ Attachments appear as follows:
- Also see the ````$force_name'''' variable.
+ 1 [text/plain, 7bit, 1K] /tmp/mutt-euler-8082-0 <no description>
+ 2 [applica/x-gunzip, base64, 422K] ~/src/mutt-0.85.tar.gz <no description>
- 6\b6.\b.3\b3.\b.2\b22\b29\b9.\b. s\bsa\bav\bve\be_\b_u\bun\bns\bsu\bub\bbs\bsc\bcr\bri\bib\bbe\bed\bd
+ The '-' denotes that Mutt-ng will delete the file after sending (or
+ postponing, or canceling) the message. It can be toggled with the
+ toggle-unlink command (default: u). The next field is the MIME
+ content-type, and can be changed with the edit-type command (default: ^T).
+ The next field is the encoding for the attachment, which allows a binary
+ message to be encoded for transmission on 7bit links. It can be changed
+ with the edit-encoding command (default: ^E). The next field is the size
+ of the attachment, rounded to kilobytes or megabytes. The next field is
+ the filename, which can be changed with the rename-file command (default:
+ R). The final field is the description of the attachment, and can be
+ changed with the edit-description command (default: d).
- Type: boolean
- Default: no
+2. MIME Type configuration with mime.types
- When _\bs_\be_\bt, info about unsubscribed newsgroups will be saved into
- ``newsrc'' file and into cache.
+ When you add an attachment to your mail message, Mutt-ng searches your
+ personal mime.types file within $HOME and then the system mime.types file
+ at /usr/local/share/mutt/mime.types or /etc/mime.types
- 6\b6.\b.3\b3.\b.2\b23\b30\b0.\b. s\bsc\bco\bor\bre\be
+ The mime.types file consist of lines containing a MIME type and a space
+ separated list of extensions. For example:
- Type: boolean
- Default: yes
+ application/postscript ps eps
+ application/pgp pgp
+ audio/x-aiff aif aifc aiff
- When this variable is _\bu_\bn_\bs_\be_\bt, scoring is turned off. This can be
- useful to selectively disable scoring for certain folders when the
- ````$score_threshold_delete'''' variable and friends are used.
+ A sample mime.types file comes with the Mutt-ng distribution, and should
+ contain most of the MIME types you are likely to use.
- 6\b6.\b.3\b3.\b.2\b23\b31\b1.\b. s\bsc\bco\bor\bre\be_\b_t\bth\bhr\bre\bes\bsh\bho\bol\bld\bd_\b_d\bde\bel\ble\bet\bte\be
+ If Mutt-ng can not determine the mime type by the extension of the file
+ you attach, it will look at the file. If the file is free of binary
+ information, Mutt-ng will assume that the file is plain text, and mark it
+ as text/plain. If the file contains binary information, then Mutt-ng will
+ mark it as application/octet-stream. You can change the MIME type that
+ Mutt-ng assigns to an attachment by using the edit-type command from the
+ compose menu (default: ^T). The MIME type is actually a major mime type
+ followed by the sub-type, separated by a '/'. 6 major types: application,
+ text, image, video, audio, and model have been approved after various
+ internet discussions. Mutt-ng recognises all of these if the appropriate
+ entry is found in the mime.types file. It also recognises other major mime
+ types, such as the chemical type that is widely used in the molecular
+ modelling community to pass molecular data in various forms to various
+ molecular viewers. Non-recognised mime types should only be used if the
+ recipient of the message is likely to be expecting such attachments.
- Type: number
- Default: -1
+3. MIME Viewer configuration with mailcap
- Messages which have been assigned a score equal to or lower than the
- value of this variable are automatically marked for deletion by mutt-
- ng. Since mutt-ng scores are always greater than or equal to zero,
- the default setting of this variable will never mark a message for
- deletion.
+ Mutt-ng supports RfC 1524 MIME Configuration, in particular the Unix
+ specific format specified in Appendix A of the RfC. This file format is
+ commonly referred to as the mailcap format. Many MIME compliant programs
+ utilize the mailcap format, allowing you to specify handling for all MIME
+ types in one place for all programs. Programs known to use this format
+ include Netscape, XMosaic, lynx and metamail.
- 6\b6.\b.3\b3.\b.2\b23\b32\b2.\b. s\bsc\bco\bor\bre\be_\b_t\bth\bhr\bre\bes\bsh\bho\bol\bld\bd_\b_f\bfl\bla\bag\bg
+ In order to handle various MIME types that Mutt-ng can not handle
+ internally, Mutt-ng parses a series of external configuration files to
+ find an external handler. The default search string for these files is a
+ colon delimited list set to
- Type: number
- Default: 9999
+ ${HOME}/.mailcap:/usr/local/share/mutt/mailcap:/etc/mailcap:/etc/mailcap:/usr/etc/mailcap:/usr/local/etc/mailcap
- Messages which have been assigned a score greater than or equal to
- this variable's value are automatically marked "flagged".
+ where $HOME is your home directory.
- 6\b6.\b.3\b3.\b.2\b23\b33\b3.\b. s\bsc\bco\bor\bre\be_\b_t\bth\bhr\bre\bes\bsh\bho\bol\bld\bd_\b_r\bre\bea\bad\bd
+ In particular, the metamail distribution will install a mailcap file,
+ usually as /usr/local/etc/mailcap, which contains some baseline entries.
- Type: number
- Default: -1
+ 3.1. The Basics of the mailcap file
- Messages which have been assigned a score equal to or lower than the
- value of this variable are automatically marked as read by mutt-ng.
- Since mutt-ng scores are always greater than or equal to zero, the
- default setting of this variable will never mark a message read.
+ A mailcap file consists of a series of lines which are comments, blank, or
+ definitions.
+
+ A comment line consists of a # character followed by anything you want.
+
+ A blank line is blank.
- 6\b6.\b.3\b3.\b.2\b23\b34\b4.\b. s\bse\ben\bnd\bd_\b_c\bch\bha\bar\brs\bse\bet\bt
+ A definition line consists of a content type, a view command, and any
+ number of optional fields. Each field of a definition line is dividedby a
+ semicolon ';' character.
- Type: string
- Default: "us-ascii:iso-8859-1:utf-8"
+ The content type is specified in the MIME standard type/subtype method.
+ For example, text/plain, text/html, image/gif, etc. In addition, the
+ mailcap format includes two formats for wildcards, one using the special
+ '*' subtype, the other is the implicit wild, where you only include the
+ major type. For example, image/* ,or video, will match all image types and
+ video types, respectively.
- A list of character sets for outgoing messages. Mutt-ng will use the
- first character set into which the text can be converted exactly. If
- your ````$charset'''' is not iso-8859-1 and recipients may not
- understand UTF-8, it is advisable to include in the list an
- appropriate widely used standard character set (such as iso-8859-2,
- koi8-r or iso-2022-jp) either instead of or after "iso-8859-1".
+ The view command is a Unix command for viewing the type specified. There
+ are two different types of commands supported. The default is to send the
+ body of the MIME message to the command on stdin. You can change this
+ behavior by using %s as a parameter to your view command. This will cause
+ Mutt-ng to save the body of the MIME message to a temporary file, and then
+ call the view command with the %s replaced by the name of the temporary
+ file. In both cases, Mutt-ng will turn over the terminal to the view
+ program until the program quits, at which time Mutt will remove the
+ temporary file if it exists.
- 6\b6.\b.3\b3.\b.2\b23\b35\b5.\b. s\bse\ben\bnd\bdm\bma\bai\bil\bl
+ So, in the simplest form, you can send a text/plain message to the
+ external pager more on stdin:
- Type: path
- Default: "/usr/sbin/sendmail -oem -oi"
+ text/plain; more
- Specifies the program and arguments used to deliver mail sent by Mutt-
- ng. Mutt-ng expects that the specified program interprets additional
- arguments as recipient addresses.
+ Or, you could send the message as a file:
- 6\b6.\b.3\b3.\b.2\b23\b36\b6.\b. s\bse\ben\bnd\bdm\bma\bai\bil\bl_\b_w\bwa\bai\bit\bt
+ text/plain; more %s
- Type: number
- Default: 0
+ Perhaps you would like to use lynx to interactively view a text/html
+ message:
- Specifies the number of seconds to wait for the ````$sendmail''''
- process to finish before giving up and putting delivery in the
- background.
+ text/html; lynx %s
- Mutt-ng interprets the value of this variable as follows:
+ In this case, lynx does not support viewing a file from stdin, so you must
+ use the %s syntax. Note:Some older versions of lynx contain a bug where
+ they will check the mailcap file for a viewer for text/html. They will
+ find the line which calls lynx, and run it. This causes lynx to
+ continuously spawn itself to view the object.
- >\b>0\b0 number of seconds to wait for sendmail to finish before
- continuing
+ On the other hand, maybe you don't want to use lynx interactively, youjust
+ want to have it convert the text/html to text/plain, then you can use:
- 0\b0 wait forever for sendmail to finish
+ text/html; lynx -dump %s | more
- <\b<0\b0 always put sendmail in the background without waiting
+ Perhaps you wish to use lynx to view text/html files, and a pager on all
+ other text formats, then you would use the following:
- Note that if you specify a value other than 0, the output of the child
- process will be put in a temporary file. If there is some error, you
- will be informed as to where to find the output.
+ text/html; lynx %s
+ text/*; more
- 6\b6.\b.3\b3.\b.2\b23\b37\b7.\b. s\bsh\bhe\bel\bll\bl
+ This is the simplest form of a mailcap file.
- Type: path
- Default: ""
+ 3.2. Secure use of mailcap
- Command to use when spawning a subshell. By default, the user's login
- shell from /etc/passwd is used.
+ The interpretation of shell meta-characters embedded in MIME parameters
+ can lead to security problems in general. Mutt-ng tries to quote
+ parameters in expansion of %s syntaxes properly, and avoids risky
+ characters by substituting them, see the $mailcap_sanitize variable.
- 6\b6.\b.3\b3.\b.2\b23\b38\b8.\b. s\bsh\bho\bor\brt\bte\ben\bn_\b_h\bhi\bie\ber\bra\bar\brc\bch\bhy\by
+ Although mutt's procedures to invoke programs with mailcap seem to be
+ safe, there are other applications parsing mailcap, maybe taking less care
+ of it. Therefore you should pay attention to the following rules:
- Type: boolean
- Default: no
+ Keep the %-expandos away from shell quoting. Don't quote them with single
+ or double quotes. Mutt-ng does this for you, the right way, as should any
+ other program which interprets mailcap. Don't put them into backtick
+ expansions. Be highly careful with eval statements, and avoid them if
+ possible at all. Trying to fix broken behaviour with quotes introduces new
+ leaks - there is no alternative to correct quoting in the first place.
- When _\bs_\be_\bt, the "hierarchy" of the sidebar entries will be shortened
- only if they cannot be printed in full length (because
- ````$sidebar_width'''' is set to a too low value). For example, if the
- newsgroup name ``de.alt.sysadmin.recovery'' doesn't fit on the screen,
- it'll get shortened ``d.a.s.recovery'' while ``de.alt.d0'' still would
- and thus will not get shortened.
+ If you have to use the %-expandos' values in context where you need
+ quoting or backtick expansions, put that value into a shell variable and
+ reference the shell variable where necessary, as in the following example
+ (using $charset inside the backtick expansion is safe, since it is not
+ itself subject to any further expansion):
- 6\b6.\b.3\b3.\b.2\b23\b39\b9.\b. s\bsh\bho\bow\bw_\b_n\bne\bew\bw_\b_n\bne\bew\bws\bs
+ text/test-mailcap-bug; cat %s; copiousoutput; test=charset=%{charset} \
+ && test "`echo $charset | tr '[A-Z]' '[a-z]'`" != iso-8859-1
- Type: boolean
- Default: yes
+ 3.3. Advanced mailcap Usage
- If _\bs_\be_\bt, newsserver will be asked for new newsgroups on entering the
- browser. Otherwise, it will be done only once for a newsserver. Also
- controls whether or not number of new articles of subscribed
- newsgroups will be then checked.
+ 3.3.1. Optional Fields
- 6\b6.\b.3\b3.\b.2\b24\b40\b0.\b. s\bsh\bho\bow\bw_\b_o\bon\bnl\bly\by_\b_u\bun\bnr\bre\bea\bad\bd
+ In addition to the required content-type and view command fields, you can
+ add semi-colon ';' separated fields to set flags and other options.
+ Mutt-ng recognizes the following optional fields:
- Type: boolean
- Default: no
+ copiousoutput
- If _\bs_\be_\bt, only subscribed newsgroups that contain unread articles will
- be displayed in browser.
+ This flag tells Mutt-ng that the command passes possibly large
+ amounts of text on stdout. This causes Mutt-ng to invoke a pager
+ (either the internal pager or the external pager defined by the
+ pager variable) on the output of the view command. Without this
+ flag, Mutt-ng assumes that the command is interactive. One could
+ use this to replace the pipe to more in the lynx -dump example in
+ the Basic section:
- 6\b6.\b.3\b3.\b.2\b24\b41\b1.\b. s\bsi\bid\bde\beb\bba\bar\br_\b_d\bde\bel\bli\bim\bm
+ text/html; lynx -dump %s ; copiousoutput
- Type: string
- Default: "|"
+ This will cause lynx to format the text/html output as text/plain
+ and Mutt-ng will use your standard pager to display the results.
- This specifies the delimiter between the sidebar (if visible) and
- other screens.
+ needsterminal
- 6\b6.\b.3\b3.\b.2\b24\b42\b2.\b. s\bsi\bid\bde\beb\bba\bar\br_\b_v\bvi\bis\bsi\bib\bbl\ble\be
+ Mutt-ng uses this flag when viewing attachments with auto_view, in
+ order to decide whether it should honor the setting of the
+ $wait_key variable or not. When an attachment is viewed using an
+ interactive program, and the corresponding mailcap entry has a
+ needsterminal flag, Mutt-ng will use $wait_key and the exit
+ statusof the program to decide if it will ask you to press a key
+ after the external program has exited. In all other situations it
+ will not prompt you for a key.
- Type: boolean
- Default: no
+ compose=<command>
- This specifies whether or not to show the mailbox list pane.
+ This flag specifies the command to use to create a new attachment
+ of a specific MIME type. Mutt-ng supports this from the compose
+ menu.
- 6\b6.\b.3\b3.\b.2\b24\b43\b3.\b. s\bsi\bid\bde\beb\bba\bar\br_\b_w\bwi\bid\bdt\bth\bh
+ composetyped=<command>
- Type: number
- Default: 0
+ This flag specifies the command to use to create a new attachment
+ of a specific MIME type. This command differs from the compose
+ command in that mutt will expect standard MIME headers on the
+ data. This can be used to specify parameters, filename,
+ description, etc. for a new attachment. Mutt-ng supports this from
+ the compose menu.
- The width of the mailbox list pane (left sidebar like in GUIs).
+ print=<command>
- 6\b6.\b.3\b3.\b.2\b24\b44\b4.\b. s\bsi\big\bg_\b_d\bda\bas\bsh\bhe\bes\bs
+ This flag specifies the command to use to print a specific MIME
+ type. Mutt-ng supports this from the attachment and compose menus.
- Type: boolean
- Default: yes
+ edit=<command>
- If set, a line containing ``-- '' will be inserted before your
- ````$signature''''. It is s\bst\btr\bro\bon\bng\bgl\bly\by recommended that you not unset
- this variable unless your ``signature'' contains just your name. The
- reason for this is because many software packages use ``-- \n'' to
- detect your signature. For example, Mutt-ng has the ability to
- highlight the signature in a different color in the builtin pager.
+ This flag specifies the command to use to edit a specific MIME
+ type. Mutt-ng supports this from the compose menu, and also uses
+ it to compose new attachments. Mutt-ng will default to the defined
+ editor for text attachments.
- 6\b6.\b.3\b3.\b.2\b24\b45\b5.\b. s\bsi\big\bg_\b_o\bon\bn_\b_t\bto\bop\bp
+ nametemplate=<template>
- Type: boolean
- Default: no
+ This field specifies the format for the file denoted by %s in the
+ command fields. Certain programs will require a certain file
+ extension, for instance, to correctly view a file. For instance,
+ lynx will only interpret a file as text/html if the file ends in
+ .html. So, you would specify lynx as a text/html viewer with a
+ line in the mailcap file like:
- If set, the signature will be included before any quoted or forwarded
- text. It is s\bst\btr\bro\bon\bng\bgl\bly\by recommended that you do not set this variable
- unless you really know what you are doing, and are prepared to take
- some heat from netiquette guardians.
+ text/html; lynx %s; nametemplate=%s.html
- 6\b6.\b.3\b3.\b.2\b24\b46\b6.\b. s\bsi\big\bgn\bna\bat\btu\bur\bre\be
+ test=<command>
- Type: path
- Default: "~/.signature"
+ This field specifies a command to run to test whether this mailcap
+ entry should be used. The command is defined with the command
+ expansion rules defined in the next section. If the command
+ returns 0, then the test passed, and Mutt-ng uses this entry. If
+ the command returns non-zero, then the test failed, and Mutt-ng
+ continues searching for the right entry. Note:the content-type
+ must match before Mutt-ng performs the test. For example:
- Specifies the filename of your signature, which is appended to all
- outgoing messages. If the filename ends with a pipe (``|''), it is
- assumed that filename is a shell command and input should be read from
- its stdout.
+ text/html; netscape -remote 'openURL(%s)' ; test=RunningX
+ text/html; lynx %s
- 6\b6.\b.3\b3.\b.2\b24\b47\b7.\b. s\bsi\big\bgn\bno\bof\bff\bf_\b_s\bst\btr\bri\bin\bng\bg
+ In this example, Mutt-ng will run the program RunningX which will
+ return 0 if the X Window manager is running, and non-zero if it
+ isn't. If RunningX returns 0, then Mutt-ng will call netscape to
+ display the text/html object. If RunningX doesn't return 0, then
+ Mutt-ng will go on to the next entry and use lynx to display the
+ text/html object.
- Type: string
- Default: ""
+ 3.3.2. Search Order
- If set, this string will be inserted before the signature. This is
- useful for people that want to sign off every message they send with
- their name.
+ When searching for an entry in the mailcap file, Mutt-ng will search for
+ the most useful entry for its purpose. For instance, if you are attempting
+ to print an image/gif, and you have the following entries in your mailcap
+ file, Mutt-ng will search for an entry with the print command:
- If you want to insert your website's URL, additional contact
- information or witty quotes into your mails, better use a signature
- file instead of the signoff string.
+ image/*; xv %s
+ image/gif; ; print= anytopnm %s | pnmtops | lpr; \
+ nametemplate=%s.gif
- 6\b6.\b.3\b3.\b.2\b24\b48\b8.\b. s\bsi\bim\bmp\bpl\ble\be_\b_s\bse\bea\bar\brc\bch\bh
+ Mutt-ng will skip the image/* entry and use the image/gif entry with the
+ print command.
- Type: string
- Default: "~f %s | ~s %s"
+ In addition, you can use this with auto_view to denote two commands for
+ viewing an attachment, one to be viewed automatically, the other to be
+ viewed interactively from the attachment menu. In addition, you can then
+ use the test feature to determine which viewer to use interactively
+ depending on your environment.
- Specifies how Mutt-ng should expand a simple search into a real search
- pattern. A simple search is one that does not contain any of the ~
- operators. See ````patterns'''' for more information on search
- patterns.
+ text/html; netscape -remote 'openURL(%s)' ; test=RunningX
+ text/html; lynx %s; nametemplate=%s.html
+ text/html; lynx -dump %s; nametemplate=%s.html; copiousoutput
- For example, if you simply type joe at a search or limit prompt, Mutt-
- ng will automatically expand it to the value specified by this
- variable. For the default value it would be:
+ For auto_view, Mutt-ng will choose the third entry because of the
+ copiousoutput tag. For interactive viewing, Mutt will run the program
+ RunningX to determine if it should use the first entry. If the program
+ returns non-zero, Mutt-ng will use the second entry for interactive
+ viewing.
- ~f joe | ~s joe
+ 3.3.3. Command Expansion
- 6\b6.\b.3\b3.\b.2\b24\b49\b9.\b. s\bsl\ble\bee\bep\bp_\b_t\bti\bim\bme\be
+ The various commands defined in the mailcap files are passed to the
+ /bin/sh shell using the system() function. Before the command is passed to
+ /bin/sh -c, it is parsed to expand various special parameters with
+ information from Mutt-ng. The keywords Mutt-ng expands are:
- Type: number
- Default: 1
+ %s
- Specifies time, in seconds, to pause while displaying certain
- informational messages, while moving from folder to folder and after
- expunging messages from the current folder. The default is to pause
- one second, so a value of zero for this option suppresses the pause.
+ As seen in the basic mailcap section, this variable is expanded to
+ a filename specified by the calling program. This file contains
+ the body of the message to view/print/edit or where the composing
+ program should place the results of composition. In addition, the
+ use of this keyword causes Mutt-ng to not pass the body of the
+ message to the view/print/edit program on stdin.
- 6\b6.\b.3\b3.\b.2\b25\b50\b0.\b. s\bsm\bma\bar\brt\bt_\b_w\bwr\bra\bap\bp
+ %t
- Type: boolean
- Default: yes
+ Mutt-ng will expand %t to the text representation of the content
+ type of the message in the same form as the first parameter of the
+ mailcap definition line, ie text/html or image/gif.
- Controls the display of lines longer than the screen width in the
- internal pager. If set, long lines are wrapped at a word boundary. If
- unset, lines are simply wrapped at the screen edge. Also see the
- ````$markers'''' variable.
+ %{<parameter>}
- 6\b6.\b.3\b3.\b.2\b25\b51\b1.\b. s\bsm\bmi\bil\ble\bey\bys\bs
+ Mutt-ng will expand this to the value of the specified parameter
+ from the Content-Type: line of the mail message. For instance, if
+ Your mail message contains:
- Type: regular expression
- Default: "(>From )|(:[-^]?[][)(><}{|/DP])"
+ Content-Type: text/plain; charset=iso-8859-1
- The _\bp_\ba_\bg_\be_\br uses this variable to catch some common false positives of
- ````$quote_regexp'''', most notably smileys in the beginning of a line
+ then Mutt-ng will expand %{charset} to iso-8859-1. The default
+ metamail mailcap file uses this feature to test the charset to
+ spawn an xterm using the right charset to view the message.
- 6\b6.\b.3\b3.\b.2\b25\b52\b2.\b. s\bsm\bmi\bim\bme\be_\b_a\bas\bsk\bk_\b_c\bce\ber\brt\bt_\b_l\bla\bab\bbe\bel\bl
+ \%
- Type: boolean
- Default: yes
+ This will be replaced by a %
- This flag controls whether you want to be asked to enter a label for a
- certificate about to be added to the database or not. It is set by
- default. (S/MIME only)
+ Mutt-ng does not currently support the %F and %n keywords specified in RfC
+ 1524. The main purpose of these parameters is for multipart messages,
+ which is handled internally by Mutt-ng.
- 6\b6.\b.3\b3.\b.2\b25\b53\b3.\b. s\bsm\bmi\bim\bme\be_\b_c\bca\ba_\b_l\blo\boc\bca\bat\bti\bio\bon\bn
+ 3.4. Example mailcap files
- Type: path
- Default: ""
- This variable contains the name of either a directory, or a file which
- contains trusted certificates for use with OpenSSL. (S/MIME only)
+ This mailcap file is fairly simple and standard:
- 6\b6.\b.3\b3.\b.2\b25\b54\b4.\b. s\bsm\bmi\bim\bme\be_\b_c\bce\ber\brt\bti\bif\bfi\bic\bca\bat\bte\bes\bs
+ >
+ # I'm always running X :)
+ video/*; xanim %s > /dev/null
+ image/*; xv %s > /dev/null
- Type: path
- Default: ""
+ # I'm always running netscape (if my computer had more memory, maybe)
+ text/html; netscape -remote 'openURL(%s)'
- Since there is no pubring/secring as with PGP, mutt-ng has to handle
- storage and retrieval of keys by itself. This is very basic right now,
- and keys and certificates are stored in two different directories,
- both named as the hash-value retrieved from OpenSSL. There is an index
- file which contains mailbox-address keyid pairs, and which can be
- manually edited. This one points to the location of the certificates.
- (S/MIME only)
+ This mailcap file shows quite a number of examples:
- 6\b6.\b.3\b3.\b.2\b25\b55\b5.\b. s\bsm\bmi\bim\bme\be_\b_d\bde\bec\bcr\bry\byp\bpt\bt_\b_c\bco\bom\bmm\bma\ban\bnd\bd
+ # Use xanim to view all videos Xanim produces a header on startup,
+ # send that to /dev/null so I don't see it
+ video/*; xanim %s > /dev/null
- Type: string
- Default: ""
+ # Send html to a running netscape by remote
+ text/html; netscape -remote 'openURL(%s)'; test=RunningNetscape
+ # If I'm not running netscape but I am running X, start netscape on the
+ # object
+ text/html; netscape %s; test=RunningX
- This format string specifies a command which is used to decrypt
- application/x-pkcs7-mime attachments.
+ # Else use lynx to view it as text
+ text/html; lynx %s
- The OpenSSL command formats have their own set of printf-like
- sequences similar to PGP's:
+ # This version would convert the text/html to text/plain
+ text/html; lynx -dump %s; copiousoutput
- %\b%f\bf Expands to the name of a file containing a message.
+ # I use enscript to print text in two columns to a page
+ text/*; more %s; print=enscript -2Gr %s
- %\b%s\bs Expands to the name of a file containing the signature part of a
- multipart/signed attachment when verifying it.
+ # Netscape adds a flag to tell itself to view jpegs internally
+ image/jpeg;xv %s; x-mozilla-flags=internal
- %\b%k\bk The key-pair specified with ``$smime_default_key''
+ # Use xv to view images if I'm running X
+ # In addition, this uses the \ to extend the line and set my editor
+ # for images
+ image/*;xv %s; test=RunningX; edit=xpaint %s
- %\b%c\bc One or more certificate IDs.
+ # Convert images to text using the netpbm tools
+ image/*; (anytopnm %s | pnmscale -xysize 80 46 | ppmtopgm | \
+ pgmtopbm | pbmtoascii -1x2 ) 2>&1 ; copiousoutput
- %\b%a\ba The algorithm used for encryption.
+ # Send excel spreadsheets to my NT box
+ application/ms-excel; open.pl %s
- %\b%C\bC CA location: Depending on whether ``$smime_ca_location'' points
- to a directory or file, this expands to "-CApath
- ``$smime_ca_location''" or "-CAfile ``$smime_ca_location''".
+4. MIME Autoview
- For examples on how to configure these formats, see the smime.rc in
- the samples/ subdirectory which has been installed on your system
- alongside the documentation. (S/MIME only)
+ Usage: auto_viewmime-type [mime-type ...]
- 6\b6.\b.3\b3.\b.2\b25\b56\b6.\b. s\bsm\bmi\bim\bme\be_\b_d\bde\bec\bcr\bry\byp\bpt\bt_\b_u\bus\bse\be_\b_d\bde\bef\bfa\bau\bul\blt\bt_\b_k\bke\bey\by
+ Usage: unauto_viewmime-type [mime-type ...]
- Type: boolean
- Default: yes
+ In addition to explicitly telling Mutt-ng to view an attachment with
+ theMIME viewer defined in the mailcap file, Mutt-ng has support for
+ automatically viewing MIME attachments while in the pager.
- If set (default) this tells mutt-ng to use the default key for
- decryption. Otherwise, if manage multiple certificate-key-pairs, mutt-
- ng will try to use the mailbox-address to determine the key to use. It
- will ask you to supply a key, if it can't find one. (S/MIME only)
+ To work, you must define a viewer in the mailcap file which uses the
+ copiousoutput option to denote that it is non-interactive. Usually, you
+ also use the entry to convert the attachment to a text representation
+ which you can view in the pager.
- 6\b6.\b.3\b3.\b.2\b25\b57\b7.\b. s\bsm\bmi\bim\bme\be_\b_d\bde\bef\bfa\bau\bul\blt\bt_\b_k\bke\bey\by
+ You then use the auto_view muttrc command to list the content-types that
+ you wish to view automatically.
- Type: string
- Default: ""
+ For instance, if you set auto_view to:
- This is the default key-pair to use for signing. This must be set to
- the keyid (the hash-value that OpenSSL generates) to work properly
- (S/MIME only)
+ auto_view text/html application/x-gunzip application/postscript
+ image/gif application/x-tar-gz
- 6\b6.\b.3\b3.\b.2\b25\b58\b8.\b. s\bsm\bmi\bim\bme\be_\b_e\ben\bnc\bcr\bry\byp\bpt\bt_\b_c\bco\bom\bmm\bma\ban\bnd\bd
+ Mutt-ng could use the following mailcap entries to automatically view
+ attachments of these types.
- Type: string
- Default: ""
+ text/html; lynx -dump %s; copiousoutput; nametemplate=%s.html
+ image/*; anytopnm %s | pnmscale -xsize 80 -ysize 50 | ppmtopgm | pgmtopbm | pbmtoascii ; copiousoutput
+ application/x-gunzip; gzcat; copiousoutput
+ application/x-tar-gz; gunzip -c %s | tar -tf - ; copiousoutput
+ application/postscript; ps2ascii %s; copiousoutput
- This command is used to create encrypted S/MIME messages. (S/MIME
- only)
+ ``unauto_view'' can be used to remove previous entries from the autoview
+ list. This can be used with message-hook to autoview messages based on
+ size, etc. ``unauto_view *'' will remove all previous entries.
- 6\b6.\b.3\b3.\b.2\b25\b59\b9.\b. s\bsm\bmi\bim\bme\be_\b_e\ben\bnc\bcr\bry\byp\bpt\bt_\b_w\bwi\bit\bth\bh
+5. MIME Multipart/Alternative
- Type: string
- Default: ""
+ Usage: alternative_ordermime-type [mime-type ...]
- This sets the algorithm that should be used for encryption. Valid
- choices are "des", "des3", "rc2-40", "rc2-64", "rc2-128". If unset
- "3des" (TripleDES) is used. (S/MIME only)
+ Usage: unalternative_ordermime-type [mime-type ...]
- 6\b6.\b.3\b3.\b.2\b26\b60\b0.\b. s\bsm\bmi\bim\bme\be_\b_g\bge\bet\bt_\b_c\bce\ber\brt\bt_\b_c\bco\bom\bmm\bma\ban\bnd\bd
+ Mutt-ng has some heuristics for determining which attachment of a
+ multipart/alternative type to display. First, mutt will check the
+ alternative_order list to determine if one of the available typesis
+ preferred. The alternative_order list consists of a number of MIME types
+ in order, including support for implicit and explicit wildcards, for
+ example:
- Type: string
- Default: ""
+ alternative_order text/enriched text/plain text
+ application/postscript image/*
- This command is used to extract X509 certificates from a PKCS7
- structure. (S/MIME only)
+ Next, mutt will check if any of the types have a defined auto_view, and
+ use that. Failing that, Mutt-ng will look for any text type. As a last
+ attempt, mutt willlook for any type it knows how to handle.
- 6\b6.\b.3\b3.\b.2\b26\b61\b1.\b. s\bsm\bmi\bim\bme\be_\b_g\bge\bet\bt_\b_c\bce\ber\brt\bt_\b_e\bem\bma\bai\bil\bl_\b_c\bco\bom\bmm\bma\ban\bnd\bd
+ To remove a MIME type from the alternative_order list, use the
+ unalternative_order command.
- Type: string
- Default: ""
+6. MIME Lookup
- This command is used to extract the mail address(es) used for storing
- X509 certificates, and for verification purposes (to check whether the
- certificate was issued for the sender's mailbox). (S/MIME only)
+ Usage: mime_lookupmime-type [mime-type ...]
- 6\b6.\b.3\b3.\b.2\b26\b62\b2.\b. s\bsm\bmi\bim\bme\be_\b_g\bge\bet\bt_\b_s\bsi\big\bgn\bne\ber\br_\b_c\bce\ber\brt\bt_\b_c\bco\bom\bmm\bma\ban\bnd\bd
+ Usage: unmime_lookupmime-type [mime-type ...]
- Type: string
- Default: ""
+ Mutt-ng's mime_lookup list specifies a list of mime-types that should not
+ be treated according to their mailcap entry. This option is designed
+ todeal with binary types such as application/octet-stream. When an
+ attachment's mime-type is listed in mime_lookup, then the extension of the
+ filename will be compared to the list of extensions in the mime.types
+ file. The mime-type associated with this extension will then be used to
+ process the attachment according to the rules in the mailcap file and
+ according to any other configuration options (such as auto_view)
+ specified. Common usage would be:
- This command is used to extract only the signers X509 certificate from
- a S/MIME signature, so that the certificate's owner may get compared
- to the email's 'From'-field. (S/MIME only)
+ mime_lookup application/octet-stream application/X-Lotus-Manuscript
- 6\b6.\b.3\b3.\b.2\b26\b63\b3.\b. s\bsm\bmi\bim\bme\be_\b_i\bim\bmp\bpo\bor\brt\bt_\b_c\bce\ber\brt\bt_\b_c\bco\bom\bmm\bma\ban\bnd\bd
+ In addition, the unmime_lookup command may be used to disable this feature
+ for any particular mime-type if it had been set, for example, in a global
+ muttrc.
- Type: string
- Default: ""
+Chapter 6. Security Considerations
- This command is used to import a certificate via smime_keys. (S/MIME
- only)
+ Table of Contents
- 6\b6.\b.3\b3.\b.2\b26\b64\b4.\b. s\bsm\bmi\bim\bme\be_\b_i\bis\bs_\b_d\bde\bef\bfa\bau\bul\blt\bt
+ 1. Passwords
- Type: boolean
- Default: no
+ 2. Temporary Files
- The default behaviour of mutt-ng is to use PGP on all auto-
- sign/encryption operations. To override and to use OpenSSL instead
- this must be set. However, this has no effect while replying, since
- mutt-ng will automatically select the same application that was used
- to sign/encrypt the original message. (Note that this variable can be
- overridden by unsetting ``$crypt_autosmime''.) (S/MIME only)
+ 3. Information Leaks
- 6\b6.\b.3\b3.\b.2\b26\b65\b5.\b. s\bsm\bmi\bim\bme\be_\b_k\bke\bey\bys\bs
+ 3.1. Message-ID: headers
- Type: path
- Default: ""
+ 3.2. mailto:-style links
- Since there is no pubring/secring as with PGP, mutt-ng has to handle
- storage ad retrieval of keys/certs by itself. This is very basic right
- now, and stores keys and certificates in two different directories,
- both named as the hash-value retrieved from OpenSSL. There is an index
- file which contains mailbox-address keyid pair, and which can be
- manually edited. This one points to the location of the private keys.
- (S/MIME only)
+ 4. External applications
- 6\b6.\b.3\b3.\b.2\b26\b66\b6.\b. s\bsm\bmi\bim\bme\be_\b_p\bpk\bk7\b7o\bou\but\bt_\b_c\bco\bom\bmm\bma\ban\bnd\bd
+ 4.1. mailcap
- Type: string
- Default: ""
+ 4.2. Other
- This command is used to extract PKCS7 structures of S/MIME signatures,
- in order to extract the public X509 certificate(s). (S/MIME only)
+ First of all, mutt-ng contains no security holes included by intention but
+ may contain unknown security holes. As a consequence, please run mutt-ng
+ only with as few permissions as possible.
- 6\b6.\b.3\b3.\b.2\b26\b67\b7.\b. s\bsm\bmi\bim\bme\be_\b_s\bsi\big\bgn\bn_\b_c\bco\bom\bmm\bma\ban\bnd\bd
+ Please do not run mutt-ng as the super user.
- Type: string
- Default: ""
+ When configuring mutt-ng, there're some points to note about secure
+ setups.
- This command is used to created S/MIME signatures of type
- multipart/signed, which can be read by all mail clients. (S/MIME
- only)
+ In practice, mutt-ng can be easily made as vulnerable as even the most
+ insecure mail user agents (in their default configuration) just by
+ changing mutt-ng's configuration files: it then can execute arbitrary
+ programs and scripts attached to messages, send out private data on its
+ own, etc. Although this is not believed to the common type of setup,
+ please read this chapter carefully.
- 6\b6.\b.3\b3.\b.2\b26\b68\b8.\b. s\bsm\bmi\bim\bme\be_\b_s\bsi\big\bgn\bn_\b_o\bop\bpa\baq\bqu\bue\be_\b_c\bco\bom\bmm\bma\ban\bnd\bd
+1. Passwords
- Type: string
- Default: ""
+ Although mutt-ng can be told the various passwords for accounts, please
+ never store passwords in configuration files. Besides the fact that the
+ system's operator can always read them, you could forget to replace the
+ actual password with asterisks when reporting a bug or asking for help
+ via, for example, a mailing list so that your mail including your password
+ could be archived by internet search engines, etc. Please never store
+ passwords on disk.
- This command is used to created S/MIME signatures of type
- application/x-pkcs7-signature, which can only be handled by mail
- clients supporting the S/MIME extension. (S/MIME only)
+2. Temporary Files
- 6\b6.\b.3\b3.\b.2\b26\b69\b9.\b. s\bsm\bmi\bim\bme\be_\b_t\bti\bim\bme\beo\bou\but\bt
+ Mutt-ng uses many temporary files for viewing messages, verifying digital
+ signatures, etc. The $umask variable can be used to change the default
+ permissions of these files. Please only change it if you really know what
+ you are doing. Also, a different location for these files may be desired
+ which can be changed via the $tmpdir variable.
- Type: number
- Default: 300
+3. Information Leaks
- The number of seconds after which a cached passphrase will expire if
- not used. (S/MIME only)
+ 3.1. Message-ID: headers
- 6\b6.\b.3\b3.\b.2\b27\b70\b0.\b. s\bsm\bmi\bim\bme\be_\b_v\bve\ber\bri\bif\bfy\by_\b_c\bco\bom\bmm\bma\ban\bnd\bd
+ In the default configuration, mutt-ng will leak some information to the
+ outside world when sending messages: the generation of Message-ID: headers
+ includes a step counter which is increased (and rotated) with every
+ message sent. If you'd like to hide this information probably telling
+ others how many mail you sent in which time, you at least need to remove
+ the %P expando from the default setting of the $msgid_format variable.
+ Please make sure that you really know how local parts of these Message-ID:
+ headers are composed.
- Type: string
- Default: ""
+ 3.2. mailto:-style links
- This command is used to verify S/MIME signatures of type
- multipart/signed. (S/MIME only)
+ As mutt-ng be can be set up to be the mail client to handle mailto: style
+ links in websites, there're security considerations, too. To keep the old
+ behavior by default, mutt-ng will be strict in interpreting them which
+ means that arbitrary header fields can be embedded in these links which
+ could override existing header fields or attach arbitrary files. This may
+ be problematic if the $edit_headers variable is unset, i.e. the user
+ doesn't want to see header fields while editing the message.
- 6\b6.\b.3\b3.\b.2\b27\b71\b1.\b. s\bsm\bmi\bim\bme\be_\b_v\bve\ber\bri\bif\bfy\by_\b_o\bop\bpa\baq\bqu\bue\be_\b_c\bco\bom\bmm\bma\ban\bnd\bd
+ For example, following a link like
- Type: string
- Default: ""
- This command is used to verify S/MIME signatures of type
- application/x-pkcs7-mime. (S/MIME only)
+ mailto:joe@host?Attach=~/.gnupg/secring.gpg
- 6\b6.\b.3\b3.\b.2\b27\b72\b2.\b. s\bsm\bmt\btp\bp_\b_a\bau\but\bth\bh_\b_p\bpa\bas\bss\bsw\bwo\bor\brd\bd
+ will send out the user's private gnupg keyring to joe@host if the user
+ doesn't follow the information on screen carefully enough.
- Type: string
- Default: ""
+ When unsetting the $strict_mailto variable, mutt-ng will
- Defines the password to use with SMTP AUTH. If
- ````$smtp_auth_username'''' is set, but this variable is not, you will
- be prompted for a password when sending.
+ o be less strict when interpreting these links by prepending a X-Mailto-
+ string to all header fields embedded in such a link and
- 6\b6.\b.3\b3.\b.2\b27\b73\b3.\b. s\bsm\bmt\btp\bp_\b_a\bau\but\bth\bh_\b_u\bus\bse\ber\brn\bna\bam\bme\be
+ o turn on the $edit_headers variable by force to let the user see all
+ the headers (because they still may leak information.)
- Type: string
- Default: ""
+4. External applications
- Defines the username to use with SMTP AUTH. Setting this variable
- will cause mutt-ng to attempt to use SMTP AUTH when sending.
+ Mutt-ng in many places has to rely on external applications or for
+ convenience supports mechanisms involving external applications.
- 6\b6.\b.3\b3.\b.2\b27\b74\b4.\b. s\bsm\bmt\btp\bp_\b_h\bho\bos\bst\bt
+ 4.1. mailcap
- Type: string
- Default: ""
+ One of these is the mailcap mechanism as defined by RfC 1524. Mutt-ng can
+ be set up to automatically execute any given utility as listed in one of
+ the mailcap files (see the $mailcap_path variable for details.)
- Defines the SMTP host which will be used to deliver mail, as opposed
- to invoking the sendmail binary. Setting this variable overrides the
- value of ````$sendmail'''', and any associated variables.
+ These utilities may have a variety of security vulnerabilities, including
+ overwriting of arbitrary files, information leaks or other exploitable
+ bugs. These vulnerabilities may go unnoticed by the user, especially when
+ they are called automatically (and without interactive prompting) from the
+ mailcap file(s). When using mutt-ng's autoview mechanism in combination
+ with mailcap files, please be sure to...
- 6\b6.\b.3\b3.\b.2\b27\b75\b5.\b. s\bsm\bmt\btp\bp_\b_p\bpo\bor\brt\bt
+ o manually select trustworth applications with a reasonable calling
+ sequence
- Type: number
- Default: 25
+ o periodically check the contents of mailcap files, especially after
+ software installations or upgrades
- Defines the port that the SMTP host is listening on for mail delivery.
- Must be specified as a number.
+ o keep the software packages referenced in the mailcap file up to date
- Defaults to 25, the standard SMTP port, but RFC 2476-compliant SMTP
- servers will probably desire 587, the mail submission port.
+ o leave the $mailcap_sanitize variable in its default state to restrict
+ mailcap expandos to a safe set of characters
- 6\b6.\b.3\b3.\b.2\b27\b76\b6.\b. s\bso\bor\brt\bt
+ 4.2. Other
- Type: sort order
- Default: date
+ Besides the mailcap mechanism, mutt-ng uses a number of other external
+ utilities for operation.
- Specifies how to sort messages in the _\bi_\bn_\bd_\be_\bx menu. Valid values are:
+ The same security considerations apply for these as for tools involved via
+ mailcap (for example, mutt-ng is vulnerable to Denial of Service Attacks
+ with compressed folders support if the uncompressed mailbox is too large
+ for the disk it is saved to.)
- date or date-sent
- date-received
- from
- mailbox-order (unsorted)
- score
- size
- spam
- subject
- threads
- to
+ As already noted, most of these problems are not built in but caused by
+ wrong configuration, so please check your configuration.
- You may optionally use the reverse- prefix to specify reverse sorting
- order (example: set sort=reverse-date-sent).
+Chapter 7. Reference
- 6\b6.\b.3\b3.\b.2\b27\b77\b7.\b. s\bso\bor\brt\bt_\b_a\bal\bli\bia\bas\bs
+ Table of Contents
- Type: sort order
- Default: alias
+ 1. Command line options
- Specifies how the entries in the `alias' menu are sorted. The
- following are legal values:
+ 2. Patterns
- address (sort alphabetically by email address)
- alias (sort alphabetically by alias name)
- unsorted (leave in order specified in .muttrc)
+ 3. Configuration Commands
- 6\b6.\b.3\b3.\b.2\b27\b78\b8.\b. s\bso\bor\brt\bt_\b_a\bau\bux\bx
+ 4. Configuration variables
- Type: sort order
- Default: date
+ 5. Functions
- When sorting by threads, this variable controls how threads are sorted
- in relation to other threads, and how the branches of the thread trees
- are sorted. This can be set to any value that ````$sort'''' can,
- except threads (in that case, mutt-ng will just use date-sent). You
- can also specify the last- prefix in addition to the reverse- prefix,
- but last- must come after reverse-. The last- prefix causes messages
- to be sorted against its siblings by which has the last descendant,
- using the rest of sort_aux as an ordering. For instance, set
- sort_aux=last- date-received would mean that if a new message is
- received in a thread, that thread becomes the last one displayed (or
- the first, if you have set sort=reverse-threads.) Note: For reversed
- ````$sort'''' order ``$sort_aux'' is reversed again (which is not the
- right thing to do, but kept to not break any existing configuration
- setting).
- 6\b6.\b.3\b3.\b.2\b27\b79\b9.\b. s\bso\bor\brt\bt_\b_b\bbr\bro\bow\bws\bse\ber\br
+ 5.1. generic
- Type: sort order
- Default: alpha
+ 5.2. index
- Specifies how to sort entries in the file browser. By default, the
- entries are sorted alphabetically. Valid values:
+ 5.3. pager
- alpha (alphabetically)
- date
- size
- unsorted
+ 5.4. alias
- You may optionally use the reverse- prefix to specify reverse sorting
- order (example: set sort_browser=reverse-date).
+ 5.5. query
- 6\b6.\b.3\b3.\b.2\b28\b80\b0.\b. s\bso\bor\brt\bt_\b_r\bre\be
+ 5.6. attach
- Type: boolean
- Default: yes
+ 5.7. compose
- This variable is only useful when sorting by threads with
- ````$strict_threads'''' unset. In that case, it changes the heuristic
- mutt-ng uses to thread messages by subject. With sort_re set, mutt-ng
- will only attach a message as the child of another message by subject
- if the subject of the child message starts with a substring matching
- the setting of ````$reply_regexp''''. With sort_re unset, mutt-ng
- will attach the message whether or not this is the case, as long as
- the non-````$reply_regexp'''' parts of both messages are identical.
+ 5.8. postpone
- 6\b6.\b.3\b3.\b.2\b28\b81\b1.\b. s\bsp\bpa\bam\bm_\b_s\bse\bep\bpa\bar\bra\bat\bto\bor\br
+ 5.9. browser
- Type: string
- Default: ","
+ 5.10. pgp
- ````spam_separator'''' controls what happens when multiple spam
- headers are matched: if unset, each successive header will overwrite
- any previous matches value for the spam label. If set, each successive
- match will append to the previous, using ````spam_separator'''' as a
- separator.
+ 5.11. editor
- 6\b6.\b.3\b3.\b.2\b28\b82\b2.\b. s\bsp\bpo\boo\bol\blf\bfi\bil\ble\be
+ 5.12. sidebar
- Type: path
- Default: ""
+1. Command line options
- If your spool mailbox is in a non-default place where Mutt-ng cannot
- find it, you can specify its location with this variable. Mutt-ng
- will automatically set this variable to the value of the environment
- variable $MAIL if it is not set.
+ Running mutt with no arguments will make Mutt-ng attempt to read your
+ spool mailbox. However, it is possible to read other mailboxes and to send
+ messages from the command line as well.
- 6\b6.\b.3\b3.\b.2\b28\b83\b3.\b. s\bss\bsl\bl_\b_c\bca\ba_\b_c\bce\ber\brt\bti\bif\bfi\bic\bca\bat\bte\bes\bs_\b_f\bfi\bil\ble\be
+ Table 7.1. Reference: Command Line Options
- Type: path
- Default: ""
+ Option Description
+ -A expand an alias
+ -a attach a file to a message
+ -b specify a blind carbon-copy (BCC) address
+ -c specify a carbon-copy (Cc) address
+ -e specify a config command to be run after initialization files are
+ read
+ -f specify a mailbox to load
+ -F specify an alternate file to read initialization commands
+ -h print help on command line options
+ -H specify a draft file from which to read a header and body
+ -i specify a file to include in a message composition
+ -m specify a default mailbox type
+ -n do not read the system Muttngrc
+ -p recall a postponed message
+ -Q query a configuration variable
+ -R open mailbox in read-only mode
+ -s specify a subject (enclose in quotes if it contains spaces)
+ -t dump the value of all variables to stdout
+ -T dump the value of all changed variables to stdout
+ -v show version number and compile-time definitions
+ -x simulate the mailx(1) compose mode
+ -y show a menu containing the files specified by the mailboxes command
+ -z exit immediately if there are no messages in the mailbox
+ -Z open the first folder with new message,exit immediately if none
+
+ To read messages in a mailbox
+
+ mutt ] -nz ] ] -F muttrc ] ] -m type ] ] -f mailbox ]
+
+ To compose a new message
+
+ mutt ] -n ] ] -F muttrc ] ] -a file ] ] -c address ] ] -i filename ] ] -s
+ subject ] address ] address ... ]
+
+ Mutt-ng also supports a ``batch'' mode to send prepared messages. Simply
+ redirect input from the file you wish to send. For example,
+
+ mutt -s "data set for run #2" professor@bigschool.edu < ~/run2.dat
+
+ This command will send a message to ``professor@bigschool.edu'' with a
+ subject of ``data set for run #2''. In the body of the message will be the
+ contents of the file ``~/run2.dat''.
+
+2. Patterns
- This variable specifies a file containing trusted CA certificates.
- Any server certificate that is signed with one of these CA
- certificates are also automatically accepted.
+ Table 7.2. Reference: Patterns
- Example: set ssl_ca_certificates_file=/etc/ssl/certs/ca-
- certificates.crt
+ Pattern Modifier Argument Description
+ ~A/=A all messages
+ ~b/=b EXPR messages which contain EXPR in the message
+ body
+ ~B/=B EXPR messages which contain EXPR in the whole
+ message
+ ~c/=c EXPR messages carbon-copied to EXPR
+ ~C/=C EXPR message is either to: or cc: EXPR
+ ~D/=D deleted messages
+ ~d/=d [MIN]-[MAX] messages with ``date-sent'' in a Date range
+ ~E/=E expired messages
+ ~e/=e EXPR message which contains EXPR in the ``Sender''
+ field
+ ~F/=F flagged messages
+ ~f/=f EXPR messages originating from EXPR
+ ~g/=g cryptographically signed messages
+ ~G/=G cryptographically encrypted messages
+ ~H/=H EXPR messages with a spam attribute matching EXPR
+ ~h/=h EXPR messages which contain EXPR in the message
+ header
+ ~k/=k message contains PGP key material
+ ~i/=i EXPR message which match ID in the ``Message-ID''
+ field
+ ~L/=L EXPR message is either originated or received by
+ EXPR
+ ~l/=l message is addressed to a known mailing list
+ ~m/=m [MIN]-[MAX] message in the range MIN to MAX *)
+ ~M/=M multipart messages
+ ~n/=n [MIN]-[MAX] messages with a score in the range MIN to MAX
+ *)
+ ~N/=N new messages
+ ~O/=O old messages
+ ~p/=p message is addressed to you (consults
+ alternates)
+ ~P/=P message is from you (consults alternates)
+ ~Q/=Q messages which have been replied to
+ ~R/=R read messages
+ ~r/=r [MIN]-[MAX] messages with ``date-received'' in a Date
+ range
+ ~S/=S superseded messages
+ ~s/=s EXPR messages having EXPR in the ``Subject''
+ field.
+ ~T/=T tagged messages
+ ~t/=t EXPR messages addressed to EXPR
+ ~U/=U unread messages
+ ~u/=u message is addressed to a subscribed mailing
+ list
+ ~v/=v message is part of a collapsed thread.
+ ~V/=V cryptographically verified messages
+ messages which contain EXPR in the
+ ~w/=w EXPR `Newsgroups' field (if compiled with NNTP
+ support)
+ ~x/=x EXPR messages which contain EXPR in the
+ `References' field
+ ~y/=y EXPR messages which contain EXPR in the `X-Label'
+ field
+ ~z/=z [MIN]-[MAX] messages with a size in the range MIN to MAX
+ *)
+ ~=/== duplicated messages (see $duplicate_threads)
+ ~$/=$ unreferenced messages (requires threaded
+ view)
+ ``From'' contains realname and
+ ~*/=* (syntactically) valid address (excluded are
+ addresses matching against alternates or any
+ alias)
- 6\b6.\b.3\b3.\b.2\b28\b84\b4.\b. s\bss\bsl\bl_\b_c\bcl\bli\bie\ben\bnt\bt_\b_c\bce\ber\brt\bt
+ Where EXPR are regexp. Special attention has to be made when using regular
+ expressions inside of patterns. Specifically, Mutt-ng's parser for these
+ patterns will strip one level of backslash (\), which is normally used for
+ quoting. If it is your intention to use a backslash in the regular
+ expression, you will need to use two backslashes instead (\\).
- Type: path
- Default: ""
+ *) The forms <[MAX], >[MIN], [MIN]- and -[MAX] are allowed, too.
- The file containing a client certificate and its associated private
- key.
+3. Configuration Commands
- 6\b6.\b.3\b3.\b.2\b28\b85\b5.\b. s\bss\bsl\bl_\b_m\bmi\bin\bn_\b_d\bdh\bh_\b_p\bpr\bri\bim\bme\be_\b_b\bbi\bit\bts\bs
+ The following are the commands understood by mutt.
- Type: number
- Default: 0
+ o account-hook pattern command
- This variable specifies the minimum acceptable prime size (in bits)
- for use in any Diffie-Hellman key exchange. A value of 0 will use the
- default from the GNUTLS library.
+ o aliaskeyaddress [, address, ... ]
- 6\b6.\b.3\b3.\b.2\b28\b86\b6.\b. s\bss\bsl\bl_\b_s\bst\bta\bar\brt\btt\btl\bls\bs
+ o unalias [ * | key ... ]
- Type: quadoption
- Default: yes
+ o alternatesregexp [ regexp ... ]
- If set (the default), mutt-ng will attempt to use STARTTLS on servers
- advertising the capability. When unset, mutt-ng will not attempt to
- use STARTTLS regardless of the server's capabilities.
+ o unalternates [ * | regexp ... ]
- 6\b6.\b.3\b3.\b.2\b28\b87\b7.\b. s\bss\bsl\bl_\b_u\bus\bse\be_\b_s\bss\bsl\blv\bv3\b3
+ o alternative_ordermimetype [ mimetype ... ]
- Type: boolean
- Default: yes
- This variables specifies whether to attempt to use SSLv3 in the SSL
- authentication process.
+ o unalternative_ordermimetype [ mimetype ... ]
- 6\b6.\b.3\b3.\b.2\b28\b88\b8.\b. s\bss\bsl\bl_\b_u\bus\bse\be_\b_t\btl\bls\bsv\bv1\b1
+ o append-hook regexp command
- Type: boolean
- Default: yes
+ o auto_viewmimetype [ mimetype ... ]
- This variables specifies whether to attempt to use TLSv1 in the SSL
- authentication process.
+ o unauto_viewmimetype [ mimetype ... ]
- 6\b6.\b.3\b3.\b.2\b28\b89\b9.\b. s\bst\bta\bat\btu\bus\bs_\b_c\bch\bha\bar\brs\bs
+ o bind map key function
- Type: string
- Default: "-*%A"
+ o charset-hook alias charset
- Controls the characters used by the "%r" indicator in
- ````$status_format''''. The first character is used when the mailbox
- is unchanged. The second is used when the mailbox has been changed,
- and it needs to be resynchronized. The third is used if the mailbox is
- in read-only mode, or if the mailbox will not be written when exiting
- that mailbox (You can toggle whether to write changes to a mailbox
- with the toggle-write operation, bound by default to "%"). The fourth
- is used to indicate that the current folder has been opened in attach-
- message mode (Certain operations like composing a new mail, replying,
- forwarding, etc. are not permitted in this mode).
+ o close-hook regexp command
- 6\b6.\b.3\b3.\b.2\b29\b90\b0.\b. s\bst\bta\bat\btu\bus\bs_\b_f\bfo\bor\brm\bma\bat\bt
+ o colorobjectforegroundbackground [ regexp ]
- Type: string
- Default: "-%r-Mutt-ng: %f [Msgs:%?M?%M/?%m%?n? New:%n?%?o? Old:%o?%?d?
- Del:%d?%?F? Flag:%F?%?t? Tag:%t?%?p? Post:%p?%?b? Inc:%b?%?l?
- %l?]---(%s/%S)-%>-(%P)---"
+ o uncolorindexpattern [ pattern ... ]
- Controls the format of the status line displayed in the _\bi_\bn_\bd_\be_\bx menu.
- This string is similar to ````$index_format'''', but has its own set
- of printf()-like sequences:
+ o execfunction [ function ... ]
- %\b%b\bb number of mailboxes with new mail *
+ o fcc-hook pattern mailbox
- %\b%B\bB the short pathname of the current mailbox
+ o fcc-save-hook pattern mailbox
- %\b%d\bd number of deleted messages *
+ o folder-hook pattern command
- %\b%f\bf the full pathname of the current mailbox
+ o hdr_orderheader [ header ... ]
- %\b%F\bF number of flagged messages *
+ o unhdr_orderheader [ header ... ]
- %\b%h\bh local hostname
+ o charset-hook charset local-charset
- %\b%l\bl size (in bytes) of the current mailbox *
+ o ignorepattern [ pattern ... ]
- %\b%L\bL size (in bytes) of the messages shown (i.e., which match the
- current limit) *
+ o unignorepattern [ pattern ... ]
- %\b%m\bm the number of messages in the mailbox *
+ o listsregexp [ regexp ... ]
- %\b%M\bM the number of messages shown (i.e., which match the current
- limit) *
+ o unlistsregexp [ regexp ... ]
- %\b%n\bn number of new messages in the mailbox *
+ o macromenukeysequence [ description ]
- %\b%o\bo number of old unread messages *
+ o mailboxesfilename [ filename ... ]
- %\b%p\bp number of postponed messages *
+ o mbox-hook pattern mailbox
- %\b%P\bP percentage of the way through the index
+ o message-hook pattern command
- %\b%r\br modified/read-only/won't-write/attach-message indicator,
- according to ``$status_chars''
+ o mime_lookupmimetype [ mimetype ... ]
- %\b%s\bs current sorting mode (``$sort'')
+ o unmime_lookupmimetype [ mimetype ... ]
- %\b%S\bS current aux sorting method (``$sort_aux'')
+ o monoobject attribute [ regexp ]
- %\b%t\bt number of tagged messages *
+ o unmonoindexpattern [ pattern ... ]
- %\b%u\bu number of unread messages *
+ o my_hdr string
- %\b%v\bv Mutt-ng version string
+ o unmy_hdrfield [ field ... ]
- %\b%V\bV currently active limit pattern, if any *
+ o open-hook regexp command
- %\b%>\b>X\bX
- right justify the rest of the string and pad with "X"
+ o crypt-hook pattern key-id
- %\b%|\b|X\bX
- pad to the end of the line with "X"
+ o push string
- * = can be optionally printed if nonzero
+ o resetvariable [ variable ... ]
- Some of the above sequences can be used to optionally print a string
- if their value is nonzero. For example, you may only want to see the
- number of flagged messages if such messages exist, since zero is not
- particularly meaningful. To optionally print a string based upon one
- of the above sequences, the following construct is used
+ o save-hook regexp filename
- %?<sequence_char>?<optional_string>?
+ o score pattern value
- where _\bs_\be_\bq_\bu_\be_\bn_\bc_\be_\b__\bc_\bh_\ba_\br is a character from the table above, and
- _\bo_\bp_\bt_\bi_\bo_\bn_\ba_\bl_\b__\bs_\bt_\br_\bi_\bn_\bg is the string you would like printed if _\bs_\be_\bq_\bu_\be_\bn_\bc_\be_\b__\bc_\bh_\ba_\br
- is nonzero. _\bo_\bp_\bt_\bi_\bo_\bn_\ba_\bl_\b__\bs_\bt_\br_\bi_\bn_\bg m\bma\bay\by contain other sequences as well as
- normal text, but you may n\bno\bot\bt nest optional strings.
+ o unscorepattern [ pattern ... ]
- Here is an example illustrating how to optionally print the number of
- new messages in a mailbox: %?n?%n new messages.?
+ o send-hook regexp command
- Additionally you can switch between two strings, the first one, if a
- value is zero, the second one, if the value is nonzero, by using the
- following construct: %?<sequence_char>?<if_string>&<else_string>?
+ o reply-hook regexp command
- You can additionally force the result of any printf-like sequence to
- be lowercase by prefixing the sequence character with an underscore
- (_) sign. For example, if you want to display the local hostname in
- lowercase, you would use: %_h
+ o set [no|inv]variable[ =value ] [ variable ... ]
- If you prefix the sequence character with a colon (:) character, mutt-
- ng will replace any dots in the expansion by underscores. This might
- be helpful with IMAP folders that don't like dots in folder names.
+ o unsetvariable [ variable ... ]
- 6\b6.\b.3\b3.\b.2\b29\b91\b1.\b. s\bst\bta\bat\btu\bus\bs_\b_o\bon\bn_\b_t\bto\bop\bp
+ o source filename
- Type: boolean
- Default: no
+ o spam pattern format
- Setting this variable causes the ``status bar'' to be displayed on the
- first line of the screen rather than near the bottom.
+ o nospam pattern
- 6\b6.\b.3\b3.\b.2\b29\b92\b2.\b. s\bst\btr\bri\bic\bct\bt_\b_m\bmi\bim\bme\be
+ o subscriberegexp [ regexp ... ]
- Type: boolean
- Default: yes
+ o unsubscriberegexp [ regexp ... ]
- When unset, non MIME-compliant messages that doesn't have any charset
- indication in ``Content-Type'' field can be displayed (non MIME-
- compliant messages are often generated by old mailers or buggy mailers
- like MS Outlook Express). See also ``$assumed_charset''.
+ o togglevariable [ variable ... ]
- This option also replaces linear-white-space between encoded-word and
- *text to a single space to prevent the display of MIME-encoded
- ``Subject'' field from being devided into multiple lines.
+ o unhook hook-type
- 6\b6.\b.3\b3.\b.2\b29\b93\b3.\b. s\bst\btr\bri\bic\bct\bt_\b_t\bth\bhr\bre\bea\bad\bds\bs
+4. Configuration variables
- Type: boolean
- Default: no
+ The following list contains all variables which, in the process of
+ providing more consistency, have been renamed and are partially even
+ removed already. The left column contains the old synonym variables, the
+ right column the full/new name:
- If set, threading will only make use of the ``In-Reply-To'' and
- ``References'' fields when you ````$sort'''' by message threads. By
- default, messages with the same subject are grouped together in
- ``pseudo threads.'' This may not always be desirable, such as in a
- personal mailbox where you might have several unrelated messages with
- the subject ``hi'' which will get grouped together.
+ Table 7.3. Reference: Obsolete Variables
- 6\b6.\b.3\b3.\b.2\b29\b94\b4.\b. s\bst\btu\buf\bff\bf_\b_q\bqu\buo\bot\bte\bed\bd
+ Old Name New Name
+ edit_hdrs $edit_headers
+ forw_decode $forward_decode
+ forw_format $forward_format
+ forw_quote $forward_quote
+ hdr_format $index_format
+ indent_str $indent_string
+ mime_fwd $mime_forward
+ msg_format $message_format
+ pgp_autosign $crypt_autosign
+ pgp_autoencrypt $crypt_autoencrypt
+ pgp_replyencrypt $crypt_replyencrypt
+ pgp_replysign $crypt_replysign
+ pgp_replysignencrypted $crypt_replysignencrypted
+ pgp_verify_sig $crypt_verify_sig
+ pgp_create_traditional $pgp_autoinline
+ pgp_auto_traditional $pgp_replyinline
+ forw_decrypt $forward_decrypt
+ smime_sign_as $smime_default_key
+ post_indent_str $post_indent_string
+ print_cmd $print_command
+ shorten_hierarchy $sidebar_shorten_hierarchy
+ ask_followup_to $nntp_ask_followup_to
+ ask_x_comment_to $nntp_ask_x_comment_to
+ catchup_newsgroup $nntp_catchup
+ followup_to_poster $nntp_followup_to_poster
+ group_index_format $nntp_group_index_format
+ inews $nntp_inews
+ mime_subject $nntp_mime_subject
+ news_cache_dir $nntp_cache_dir
+ news_server $nntp_host
+ newsrc $nntp_newsrc
+ nntp_poll $nntp_mail_check
+ pop_checkinterval $pop_mail_check
+ post_moderated $nntp_post_moderated
+ save_unsubscribed $nntp_save_unsubscribed
+ show_new_news $nntp_show_new_news
+ show_only_unread $nntp_show_only_unread
+ x_comment_to $nntp_x_comment_to
+ smtp_auth_username $smtp_user
+ smtp_auth_password $smtp_pass
+ user_agent $agent_string
- Type: boolean
- Default: no
+ The contrib subdirectory contains a script named update-config.pl which
+ eases migration.
- If set, attachments with flowed format will have their quoting
- ``stuffed'', i.e. a space will be inserted between the quote
- characters and the actual text.
+ A complete list of current variables follows.
- 6\b6.\b.3\b3.\b.2\b29\b95\b5.\b. s\bsu\bus\bsp\bpe\ben\bnd\bd
+1. $abort_noattach
- Type: boolean
- Default: yes
+ Type: quadoption
- When _\bu_\bn_\bs_\be_\bt, mutt-ng won't stop when the user presses the terminal's
- _\bs_\bu_\bs_\bp key, usually ``control-Z''. This is useful if you run mutt-ng
- inside an xterm using a command like xterm -e mutt-ng.
+ Default: no
- 6\b6.\b.3\b3.\b.2\b29\b96\b6.\b. t\bte\bex\bxt\bt_\b_f\bfl\blo\bow\bwe\bed\bd
+ This variable specifies whether to abort sending if no attachment was made
+ but the content references them, i.e. the content matches the regular
+ expression given in $attach_remind_regexp. If a match was found and this
+ variable is set to yes, message sending will be aborted but the mail will
+ be send nevertheless if set to no.
- Type: boolean
- Default: no
+ This variable and $attach_remind_regexp are intended to remind the user to
+ attach files if the message's text references them.
- When set, mutt-ng will generate text/plain; format=flowed attachments.
- This format is easier to handle for some mailing software, and
- generally just looks like ordinary text. To actually make use of this
- format's features, you'll need support in your editor.
+ See also the $attach_remind_regexp variable.
- Note that ``$indent_string'' is ignored when this option is set.
+2. $abort_nosubject
- 6\b6.\b.3\b3.\b.2\b29\b97\b7.\b. t\bth\bho\bor\bro\bou\bug\bgh\bh_\b_s\bse\bea\bar\brc\bch\bh
+ Type: quadoption
- Type: boolean
- Default: no
+ Default: ask-yes
- Affects the _\b~_\bb and _\b~_\bh search operations described in section
- ````patterns'''' above. If set, the headers and attachments of
- messages to be searched are decoded before searching. If unset,
- messages are searched as they appear in the folder.
+ If set to yes, when composing messages and no subject is given at the
+ subject prompt, composition will be aborted. If set to no, composing
+ messages with no subject given at the subject prompt will never be
+ aborted.
- 6\b6.\b.3\b3.\b.2\b29\b98\b8.\b. t\bth\bhr\bre\bea\bad\bd_\b_r\bre\bec\bce\bei\biv\bve\bed\bd
+3. $abort_unmodified
- Type: boolean
- Default: no
+ Type: quadoption
- When set, mutt-ng uses the date received rather than the date sent to
- thread messages by subject.
+ Default: yes
- 6\b6.\b.3\b3.\b.2\b29\b99\b9.\b. t\bti\bil\bld\bde\be
+ If set to yes, composition will automatically abort after editing the
+ message body if no changes are made to the file (this check only happens
+ after the first edit of the file). When set to no, composition will never
+ be aborted.
- Type: boolean
- Default: no
+4. $agent_string
- When set, the internal-pager will pad blank lines to the bottom of the
- screen with a tilde (~).
+ Type: boolean
- 6\b6.\b.3\b3.\b.3\b30\b00\b0.\b. t\bti\bim\bme\beo\bou\but\bt
+ Default: yes
- Type: number
- Default: 600
+ When set, Mutt-ng will add a ``User-Agent:'' header to outgoing messages,
+ indicating which version of Mutt-ng was used for composing them.
- This variable controls the _\bn_\bu_\bm_\bb_\be_\br _\bo_\bf _\bs_\be_\bc_\bo_\bn_\bd_\bs Mutt-ng will wait for a
- key to be pressed in the main menu before timing out and checking for
- new mail. A value of zero or less will cause Mutt-ng to never time
- out.
+5. $alias_file
- 6\b6.\b.3\b3.\b.3\b30\b01\b1.\b. t\btm\bmp\bpd\bdi\bir\br
+ Type: path
- Type: path
- Default: ""
+ Default: "~/.muttngrc"
- This variable allows you to specify where Mutt-ng will place its
- temporary files needed for displaying and composing messages. If this
- variable is not set, the environment variable TMPDIR is used. If
- TMPDIR is not set then "/tmp" is used.
+ The default file in which to save aliases created by the ``create-alias''
+ function.
- 6\b6.\b.3\b3.\b.3\b30\b02\b2.\b. t\bto\bo_\b_c\bch\bha\bar\brs\bs
+ Note: Mutt-ng will not automatically source this file; you must explicitly
+ use the ``source'' command for it to be executed.
- Type: string
- Default: " +TCFL"
+6. $alias_format
- Controls the character used to indicate mail addressed to you. The
- first character is the one used when the mail is NOT addressed to your
- address (default: space). The second is used when you are the only
- recipient of the message (default: +). The third is when your address
- appears in the TO header field, but you are not the only recipient of
- the message (default: T). The fourth character is used when your
- address is specified in the CC header field, but you are not the only
- recipient. The fifth character is used to indicate mail that was sent
- by _\by_\bo_\bu. The sixth character is used to indicate when a mail was sent
- to a mailing-list you subscribe to (default: L).
+ Type: string
- 6\b6.\b.3\b3.\b.3\b30\b03\b3.\b. t\btr\bra\bas\bsh\bh
+ Default: "%4n %2f %t %-10a %r"
- Type: path
- Default: ""
+ Specifies the format of the data displayed for the ``alias'' menu. The
+ following printf(3)-style sequences are available:
- If set, this variable specifies the path of the trash folder where the
- mails marked for deletion will be moved, instead of being irremediably
- purged.
+ %a
- NOTE: When you delete a message in the trash folder, it is really
- deleted, so that you have a way to clean the trash.
+ alias name
- 6\b6.\b.3\b3.\b.3\b30\b04\b4.\b. t\btu\bun\bnn\bne\bel\bl
+ %f
- Type: string
- Default: ""
+ flags - currently, a "d" for an alias marked for deletion
- Setting this variable will cause mutt-ng to open a pipe to a command
- instead of a raw socket. You may be able to use this to set up
- preauthenticated connections to your IMAP/POP3 server. Example:
+ %n
- tunnel="ssh -q mailhost.net /usr/local/libexec/imapd"
+ index number
- NOTE: For this example to work you must be able to log in to the
- remote machine without having to enter a password.
+ %r
- 6\b6.\b.3\b3.\b.3\b30\b05\b5.\b. u\bum\bma\bas\bsk\bk
+ address which alias expands to
- Type: number
- Default: 0077
+ %t
- This sets the umask that will be used by mutt-ng when creating all
- kinds of files. If unset, the default value is 077.
+ character which indicates if the alias is tagged for inclusion
- 6\b6.\b.3\b3.\b.3\b30\b06\b6.\b. u\bun\bnc\bco\bol\bll\bla\bap\bps\bse\be_\b_j\bju\bum\bmp\bp
+7. $allow_8bit
- Type: boolean
- Default: no
+ Type: boolean
- When _\bs_\be_\bt, Mutt-ng will jump to the next unread message, if any, when
- the current thread is _\bu_\bncollapsed.
+ Default: yes
- 6\b6.\b.3\b3.\b.3\b30\b07\b7.\b. u\bus\bse\be_\b_8\b8b\bbi\bit\btm\bmi\bim\bme\be
+ Controls whether 8-bit data is converted to 7-bit using either
+ quoted-printable or base64 encoding when sending mail.
- Type: boolean
- Default: no
+8. $allow_ansi
- W\bWa\bar\brn\bni\bin\bng\bg:\b: do not set this variable unless you are using a version of
- sendmail which supports the -B8BITMIME flag (such as sendmail 8.8.x)
- or you may not be able to send mail.
+ Type: boolean
- When _\bs_\be_\bt, Mutt-ng will invoke ````$sendmail'''' with the -B8BITMIME
- flag when sending 8-bit messages to enable ESMTP negotiation.
+ Default: no
- 6\b6.\b.3\b3.\b.3\b30\b08\b8.\b. u\bus\bse\be_\b_d\bdo\bom\bma\bai\bin\bn
+ Controls whether ANSI color codes in messages (and color tags in rich text
+ messages) are to be interpreted. Messages containing these codes are rare,
+ but if this option is set, their text will be colored accordingly. Note
+ that this may override your color choices, and even present a security
+ problem, since a message could include a line like ``[-- PGP output
+ follows ..." and give it the same color as your attachment color.
- Type: boolean
- Default: yes
+9. $arrow_cursor
- When set, Mutt-ng will qualify all local addresses (ones without the
- @host portion) with the value of ````$hostname''''. If _\bu_\bn_\bs_\be_\bt, no
- addresses will be qualified.
+ Type: boolean
- 6\b6.\b.3\b3.\b.3\b30\b09\b9.\b. u\bus\bse\be_\b_f\bfr\bro\bom\bm
+ Default: no
- Type: boolean
- Default: yes
+ When set, an arrow (``->'') will be used to indicate the current entry in
+ menus instead of highlighting the whole line. On slow network or modem
+ links this will make response faster because there is less that has to be
+ redrawn on the screen when moving to the next or previous entries in the
+ menu.
- When _\bs_\be_\bt, Mutt-ng will generate the `From:' header field when sending
- messages. If _\bu_\bn_\bs_\be_\bt, no `From:' header field will be generated unless
- the user explicitly sets one using the ````my_hdr'''' command.
+10. $ascii_chars
- 6\b6.\b.3\b3.\b.3\b31\b10\b0.\b. u\bus\bse\ber\br_\b_a\bag\bge\ben\bnt\bt
+ Type: boolean
- Type: boolean
- Default: yes
+ Default: no
- When _\bs_\be_\bt, mutt-ng will add a "User-Agent" header to outgoing messages,
- indicating which version of mutt-ng was used for composing them.
+ If set, Mutt-ng will use plain ASCII characters when displaying thread and
+ attachment trees, instead of the default ACS characters.
- 6\b6.\b.3\b3.\b.3\b31\b11\b1.\b. v\bvi\bis\bsu\bua\bal\bl
+11. $askbcc
- Type: path
- Default: ""
+ Type: boolean
- Specifies the visual editor to invoke when the _\b~_\bv command is given in
- the builtin editor.
+ Default: no
- 6\b6.\b.3\b3.\b.3\b31\b12\b2.\b. w\bwa\bai\bit\bt_\b_k\bke\bey\by
+ If set, Mutt-ng will prompt you for blind-carbon-copy (Bcc) recipients
+ before editing an outgoing message.
- Type: boolean
- Default: yes
+12. $askcc
- Controls whether Mutt-ng will ask you to press a key after _\bs_\bh_\be_\bl_\bl_\b-
- _\be_\bs_\bc_\ba_\bp_\be, _\bp_\bi_\bp_\be_\b-_\bm_\be_\bs_\bs_\ba_\bg_\be, _\bp_\bi_\bp_\be_\b-_\be_\bn_\bt_\br_\by, _\bp_\br_\bi_\bn_\bt_\b-_\bm_\be_\bs_\bs_\ba_\bg_\be, and _\bp_\br_\bi_\bn_\bt_\b-_\be_\bn_\bt_\br_\by
- commands.
+ Type: boolean
- It is also used when viewing attachments with ````auto_view'''',
- provided that the corresponding mailcap entry has a _\bn_\be_\be_\bd_\bs_\bt_\be_\br_\bm_\bi_\bn_\ba_\bl
- flag, and the external program is interactive.
+ Default: no
- When set, Mutt-ng will always ask for a key. When unset, Mutt-ng will
- wait for a key only if the external command returned a non-zero
- status.
+ If set, Mutt-ng will prompt you for carbon-copy (Cc) recipients before
+ editing the body of an outgoing message.
- 6\b6.\b.3\b3.\b.3\b31\b13\b3.\b. w\bwe\bee\bed\bd
+13. $assumed_charset
- Type: boolean
- Default: yes
+ Type: string
- When set, mutt-ng will weed headers when displaying, forwarding,
- printing, or replying to messages.
+ Default: "us-ascii"
- 6\b6.\b.3\b3.\b.3\b31\b14\b4.\b. w\bwr\bra\bap\bp_\b_s\bse\bea\bar\brc\bch\bh
+ This variable is a colon-separated list of character encoding schemes for
+ messages without character encoding indication. Header field values and
+ message body content without character encoding indication would be
+ assumed that they are written in one of this list. By default, all the
+ header fields and message body without any charset indication are assumed
+ to be in us-ascii.
- Type: boolean
- Default: yes
+ For example, Japanese users might prefer this:
- Controls whether searches wrap around the end of the mailbox.
+ set assumed_charset="iso-2022-jp:euc-jp:shift_jis:utf-8"
- When set, searches will wrap around the first (or last) message. When
- unset, searches will not wrap.
+ However, only the first content is valid for the message body. This
+ variable is valid only if $strict_mime is unset.
- 6\b6.\b.3\b3.\b.3\b31\b15\b5.\b. w\bwr\bra\bap\bpm\bma\bar\brg\bgi\bin\bn
+14. $attach_format
- Type: number
- Default: 0
+ Type: string
- Controls the size of the margin remaining at the right side of the
- terminal when mutt-ng's pager does smart wrapping.
+ Default: "%u%D%I %t%4n %T%.40d%> [%.7m/%.10M, %.6e%?C?, %C?, %s] "
- 6\b6.\b.3\b3.\b.3\b31\b16\b6.\b. w\bwr\bri\bit\bte\be_\b_b\bbc\bcc\bc
+ This variable describes the format of the ``attachment'' menu. The
+ following printf(3)-style sequences are understood:
- Type: boolean
- Default: yes
+ %C
- Controls whether mutt-ng writes out the Bcc header when preparing
- messages to be sent. Exim users may wish to unset this.
+ charset
- 6\b6.\b.3\b3.\b.3\b31\b17\b7.\b. w\bwr\bri\bit\bte\be_\b_i\bin\bnc\bc
+ %c
- Type: number
- Default: 10
+ requires charset conversion (n or c)
- When writing a mailbox, a message will be printed every _\bw_\br_\bi_\bt_\be_\b__\bi_\bn_\bc
- messages to indicate progress. If set to 0, only a single message
- will be displayed before writing a mailbox.
+ %D
- Also see the ````$read_inc'''' variable.
+ deleted flag
- 6\b6.\b.3\b3.\b.3\b31\b18\b8.\b. x\bx_\b_c\bco\bom\bmm\bme\ben\bnt\bt_\b_t\bto\bo
+ %d
- Type: boolean
- Default: no
+ description
- If _\bs_\be_\bt, Mutt-ng will add ``X-Comment-To:'' field (that contains full
- name of original article author) to article that followuped to
- newsgroup.
+ %e
- 6\b6.\b.3\b3.\b.3\b31\b19\b9.\b. x\bxt\bte\ber\brm\bm_\b_i\bic\bco\bon\bn
-
- Type: string
- Default: "M%?n?AIL&ail?"
-
- Controls the format of the icon title, as long as xterm_set_titles is
- enabled. This string is identical in formatting to the one used by
- ````$status_format''''.
-
- 6\b6.\b.3\b3.\b.3\b32\b20\b0.\b. x\bxt\bte\ber\brm\bm_\b_s\bse\bet\bt_\b_t\bti\bit\btl\ble\bes\bs
-
- Type: boolean
- Default: no
-
- Controls whether mutt-ng sets the xterm title bar and icon name (as
- long as you're in an appropriate terminal). The default must be off to
- force in the validity checking.
-
- 6\b6.\b.3\b3.\b.3\b32\b21\b1.\b. x\bxt\bte\ber\brm\bm_\b_t\bti\bit\btl\ble\be
-
- Type: string
- Default: "Mutt-ng with %?m?%m messages&no messages?%?n? [%n New]?"
-
- Controls the format of the title bar of the xterm provided that
- xterm_set_titles has been set. This string is identical in formatting
- to the one used by ````$status_format''''.
-
- 6\b6.\b.4\b4.\b. F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs
-
- The following is the list of available functions listed by the mapping
- in which they are available. The default key setting is given, and an
- explanation of what the function does. The key bindings of these
- functions can be changed with the ``bind'' command.
-
- 6\b6.\b.4\b4.\b.1\b1.\b. g\bge\ben\bne\ber\bri\bic\bc
-
- The _\bg_\be_\bn_\be_\br_\bi_\bc menu is not a real menu, but specifies common functions
- (such as movement) available in all menus except for _\bp_\ba_\bg_\be_\br and _\be_\bd_\bi_\bt_\bo_\br.
- Changing settings for this menu will affect the default bindings for
- all menus (except as noted).
- bottom-page L move to the bottom of the page
- current-bottom not bound move current entry to bottom of page
- current-middle not bound move current entry to middle of page
- current-top not bound move current entry to top of page
- enter-command : enter a muttrc command
- exit q exit this menu
- first-entry = move to the first entry
- half-down ] scroll down 1/2 page
- half-up [ scroll up 1/2 page
- help ? this screen
- jump number jump to an index number
- last-entry * move to the last entry
- middle-page M move to the middle of the page
- next-entry j move to the next entry
- next-line > scroll down one line
- next-page z move to the next page
- previous-entry k move to the previous entry
- previous-line < scroll up one line
- previous-page Z move to the previous page
- refresh ^L clear and redraw the screen
- search / search for a regular expression
- search-next n search for next match
- search-opposite not bound search for next match in opposite direction
- search-reverse ESC / search backwards for a regular expression
- select-entry RET select the current entry
- shell-escape ! run a program in a subshell
- tag-entry t toggle the tag on the current entry
- tag-prefix ; apply next command to tagged entries
- tag-prefix-cond not bound apply next function ONLY to tagged messages
- top-page H move to the top of the page
- what-key not bound display the keycode for a key press
-
- 6\b6.\b.4\b4.\b.2\b2.\b. i\bin\bnd\bde\bex\bx
-
- bounce-message b remail a message to another user
- change-folder c open a different folder
- change-folder-readonly ESC c open a different folder in read only mode
- check-traditional-pgp ESC P check for classic pgp
- clear-flag W clear a status flag from a message
- copy-message C copy a message to a file/mailbox
- create-alias a create an alias from a message sender
- decode-copy ESC C decode a message and copy it to a file/mailbox
- decode-save ESC s decode a message and save it to a file/mailbox
- delete-message d delete the current entry
- delete-pattern D delete messages matching a pattern
- delete-subthread ESC d delete all messages in subthread
- delete-thread ^D delete all messages in thread
- display-address @ display full address of sender
- display-toggle-weed h display message and toggle header weeding
- display-message RET display a message
- edit e edit the current message
- edit-type ^E edit the current message's Content-Type
- exit x exit without saving changes
- extract-keys ^K extract PGP public keys
- fetch-mail G retrieve mail from POP server
- flag-message F toggle a message's 'important' flag
- forget-passphrase ^F wipe PGP passphrase from memory
- forward-message f forward a message with comments
- group-reply g reply to all recipients
- limit l show only messages matching a pattern
- list-reply L reply to specified mailing list
- mail m compose a new mail message
- mail-key ESC k mail a PGP public key
- next-new TAB jump to the next new message
- next-subthread ESC n jump to the next subthread
- next-thread ^N jump to the next thread
- next-undeleted j move to the next undeleted message
- next-unread not bound jump to the next unread message
- parent-message P jump to parent message in thread
- pipe-message | pipe message/attachment to a shell command
- previous-new ESC TAB jump to the previous new message
- previous-page Z move to the previous page
- previous-subthread ESC p jump to previous subthread
- previous-thread ^P jump to previous thread
- previous-undeleted k move to the last undelete message
- previous-unread not bound jump to the previous unread message
- print-message p print the current entry
- query Q query external program for addresses
- quit q save changes to mailbox and quit
- read-subthread ESC r mark the current subthread as read
- read-thread ^R mark the current thread as read
- recall-message R recall a postponed message
- reply r reply to a message
- resend-message ESC e resend message and preserve MIME structure
- save-message s save message/attachment to a file
- set-flag w set a status flag on a message
- show-version V show the Mutt version number and date
- show-limit ESC l show currently active limit pattern, if any
- sort-mailbox o sort messages
- sort-reverse O sort messages in reverse order
- sync-mailbox $ save changes to mailbox
- tag-pattern T tag messages matching a pattern
- tag-thread ESC t tag/untag all messages in the current thread
- toggle-new N toggle a message's 'new' flag
- toggle-write % toggle whether the mailbox will be rewritten
- undelete-message u undelete the current entry
- undelete-pattern U undelete messages matching a pattern
- undelete-subthread ESC u undelete all messages in subthread
- undelete-thread ^U undelete all messages in thread
- untag-pattern ^T untag messages matching a pattern
- view-attachments v show MIME attachments
-
- 6\b6.\b.4\b4.\b.3\b3.\b. p\bpa\bag\bge\ber\br
-
- bottom not bound jump to the bottom of the message
- bounce-message b remail a message to another user
- change-folder c open a different folder
- change-folder-readonly ESC c open a different folder in read only mode
- check-traditional-pgp ESC P check for classic pgp
- copy-message C copy a message to a file/mailbox
- create-alias a create an alias from a message sender
- decode-copy ESC C decode a message and copy it to a file/mailbox
- decode-save ESC s decode a message and save it to a file/mailbox
- delete-message d delete the current entry
- delete-subthread ESC d delete all messages in subthread
- delete-thread ^D delete all messages in thread
- display-address @ display full address of sender
- display-toggle-weed h display message and toggle header weeding
- edit e edit the current message
- edit-type ^E edit the current message's Content-Type
- enter-command : enter a muttrc command
- exit i return to the main-menu
- extract-keys ^K extract PGP public keys
- flag-message F toggle a message's 'important' flag
- forget-passphrase ^F wipe PGP passphrase from memory
- forward-message f forward a message with comments
- group-reply g reply to all recipients
- half-up not bound move up one-half page
- half-down not bound move down one-half page
- help ? this screen
- list-reply L reply to specified mailing list
- mail m compose a new mail message
- mail-key ESC k mail a PGP public key
- mark-as-new N toggle a message's 'new' flag
- next-line RET scroll down one line
- next-entry J move to the next entry
- next-new TAB jump to the next new message
- next-page move to the next page
- next-subthread ESC n jump to the next subthread
- next-thread ^N jump to the next thread
- next-undeleted j move to the next undeleted message
- next-unread not bound jump to the next unread message
- parent-message P jump to parent message in thread
- pipe-message | pipe message/attachment to a shell command
- previous-line BackSpace scroll up one line
- previous-entry K move to the previous entry
- previous-new not bound jump to the previous new message
- previous-page - move to the previous page
- previous-subthread ESC p jump to previous subthread
- previous-thread ^P jump to previous thread
- previous-undeleted k move to the last undelete message
- previous-unread not bound jump to the previous unread message
- print-message p print the current entry
- quit Q save changes to mailbox and quit
- read-subthread ESC r mark the current subthread as read
- read-thread ^R mark the current thread as read
- recall-message R recall a postponed message
- redraw-screen ^L clear and redraw the screen
- reply r reply to a message
- save-message s save message/attachment to a file
- search / search for a regular expression
- search-next n search for next match
- search-opposite not bound search for next match in opposite direction
- search-reverse ESC / search backwards for a regular expression
- search-toggle \ toggle search pattern coloring
- shell-escape ! invoke a command in a subshell
- show-version V show the Mutt version number and date
- skip-quoted S skip beyond quoted text
- sync-mailbox $ save changes to mailbox
- tag-message t tag a message
- toggle-quoted T toggle display of quoted text
- top ^ jump to the top of the message
- undelete-message u undelete the current entry
- undelete-subthread ESC u undelete all messages in subthread
- undelete-thread ^U undelete all messages in thread
- view-attachments v show MIME attachments
-
- 6\b6.\b.4\b4.\b.4\b4.\b. a\bal\bli\bia\bas\bs
-
- search / search for a regular expression
- search-next n search for next match
- search-reverse ESC / search backwards for a regular expression
-
- 6\b6.\b.4\b4.\b.5\b5.\b. q\bqu\bue\ber\bry\by
-
- create-alias a create an alias from a message sender
- mail m compose a new mail message
- query Q query external program for addresses
- query-append A append new query results to current results
- search / search for a regular expression
- search-next n search for next match
- search-opposite not bound search for next match in opposite direction
- search-reverse ESC / search backwards for a regular expression
-
- 6\b6.\b.4\b4.\b.6\b6.\b. a\bat\btt\bta\bac\bch\bh
-
- bounce-message b remail a message to another user
- collapse-parts v toggle display of subparts
- delete-entry d delete the current entry
- display-toggle-weed h display message and toggle header weeding
- edit-type ^E edit the current entry's Content-Type
- extract-keys ^K extract PGP public keys
- forward-message f forward a message with comments
- group-reply g reply to all recipients
- list-reply L reply to specified mailing list
- pipe-entry | pipe message/attachment to a shell command
- print-entry p print the current entry
- reply r reply to a message
- resend-message ESC e resend message and preserve MIME structure
- save-entry s save message/attachment to a file
- undelete-entry u undelete the current entry
- view-attach RET view attachment using mailcap entry if necessary
- view-mailcap m force viewing of attachment using mailcap
- view-text T view attachment as text
-
- 6\b6.\b.4\b4.\b.7\b7.\b. c\bco\bom\bmp\bpo\bos\bse\be
-
- attach-file a attach a file(s) to this message
- attach-message A attach message(s) to this message
- attach-key ESC k attach a PGP public key
- copy-file C save message/attachment to a file
- detach-file D delete the current entry
- display-toggle-weed h display message and toggle header weeding
- edit-bcc b edit the BCC list
- edit-cc c edit the CC list
- edit-description d edit attachment description
- edit-encoding ^E edit attachment transfer-encoding
- edit-fcc f enter a file to save a copy of this message in
- edit-from ESC f edit the from: field
- edit-file ^X e edit the file to be attached
- edit-headers E edit the message with headers
- edit e edit the message
- edit-mime m edit attachment using mailcap entry
- edit-reply-to r edit the Reply-To field
- edit-subject s edit the subject of this message
- edit-to t edit the TO list
- edit-type ^T edit attachment type
- filter-entry F filter attachment through a shell command
- forget-passphrase ^F wipe PGP passphrase from memory
- ispell i run ispell on the message
- new-mime n compose new attachment using mailcap entry
- pgp-menu p show PGP options
- pipe-entry | pipe message/attachment to a shell command
- postpone-message P save this message to send later
- print-entry l print the current entry
- rename-file R rename/move an attached file
- send-message y send the message
- toggle-unlink u toggle whether to delete file after sending it
- view-attach RET view attachment using mailcap entry if necessary
- write-fcc w write the message to a folder
-
- 6\b6.\b.4\b4.\b.8\b8.\b. p\bpo\bos\bst\btp\bpo\bon\bne\be
-
- delete-entry d delete the current entry
- undelete-entry u undelete the current entry
-
- 6\b6.\b.4\b4.\b.9\b9.\b. b\bbr\bro\bow\bws\bse\ber\br
-
- change-dir c change directories
- check-new TAB check mailboxes for new mail
- enter-mask m enter a file mask
- search / search for a regular expression
- search-next n search for next match
- search-reverse ESC / search backwards for a regular expression
- select-new N select a new file in this directory
- sort o sort messages
- sort-reverse O sort messages in reverse order
- toggle-mailboxes TAB toggle whether to browse mailboxes or all files
- view-file SPACE view file
- subscribe s subscribe to current mailbox (IMAP Only)
- unsubscribe u unsubscribe to current mailbox (IMAP Only)
- toggle-subscribed T toggle view all/subscribed mailboxes (IMAP Only)
-
- 6\b6.\b.4\b4.\b.1\b10\b0.\b. p\bpg\bgp\bp
-
- view-name % view the key's user id
- verify-key c verify a PGP public key
-
- 6\b6.\b.4\b4.\b.1\b11\b1.\b. e\bed\bdi\bit\bto\bor\br
-
- backspace BackSpace delete the char in front of the cursor
- backward-char ^B move the cursor one character to the left
- backward-word ESC b move the cursor to the previous word
- bol ^A jump to the beginning of the line
- buffy-cycle Space cycle among incoming mailboxes
- capitalize-word ESC c uppercase the first character in the word
- complete TAB complete filename or alias
- complete-query ^T complete address with query
- delete-char ^D delete the char under the cursor
- downcase-word ESC l lowercase all characters in current word
- eol ^E jump to the end of the line
- forward-char ^F move the cursor one character to the right
- forward-word ESC f move the cursor to the next word
- history-down not bound scroll down through the history list
- history-up not bound scroll up through the history list
- kill-eol ^K delete chars from cursor to end of line
- kill-eow ESC d delete chars from cursor to end of word
- kill-line ^U delete all chars on the line
- kill-word ^W delete the word in front of the cursor
- quote-char ^V quote the next typed key
- transpose-chars not bound transpose character under cursor with previous
- upcase-word ESC u uppercase all characters in current word
-
- 7\b7.\b. M\bMi\bis\bsc\bce\bel\bll\bla\ban\bny\by
-
- 7\b7.\b.1\b1.\b. A\bAc\bck\bkn\bno\bow\bwl\ble\bed\bdg\bge\bem\bme\ben\bnt\bts\bs
-
- Kari Hurtta <kari.hurtta@fmi.fi> co-developed the original MIME
- parsing code back in the ELM-ME days.
-
- The following people have been very helpful to the development of
- Mutt:
-
- Vikas Agnihotri <vikasa@writeme.com>,
- Francois Berjon <Francois.Berjon@aar.alcatel-alsthom.fr>,
- Aric Blumer <aric@fore.com>,
- John Capo <jc@irbs.com>,
- David Champion <dgc@uchicago.edu,
- Brendan Cully <brendan@kublai.com>,
- Liviu Daia <daia@stoilow.imar.ro>,
- Thomas E. Dickey <dickey@herndon4.his.com>,
- David DeSimone <fox@convex.hp.com>,
- Nickolay N. Dudorov <nnd@wint.itfs.nsk.su>,
- Ruslan Ermilov <ru@freebsd.org>,
- Edmund Grimley Evans <edmundo@rano.org,
- Michael Finken <finken@conware.de>,
- Sven Guckes <guckes@math.fu-berlin.de>,
- Lars Hecking <lhecking@nmrc.ie>,
- Mark Holloman <holloman@nando.net>,
- Andreas Holzmann <holzmann@fmi.uni-passau.de>,
- Marco d'Itri <md@linux.it>,
- Bjrn Jacke <bjacke@suse.com>,
- Byrial Jensen <byrial@image.dk>,
- David Jeske <jeske@igcom.net>,
- Christophe Kalt <kalt@hugo.int-evry.fr>,
- Tommi Komulainen <Tommi.Komulainen@iki.fi>,
- Felix von Leitner (a.k.a ``Fefe'') <leitner@math.fu-berlin.de>,
- Brandon Long <blong@fiction.net>,
- Jimmy Mkel <jmy@flashback.net>,
- Lars Marowsky-Bree <lmb@pointer.in-minden.de>,
- Thomas ``Mike'' Michlmayr <mike@cosy.sbg.ac.at>,
- Andrew W. Nosenko <awn@bcs.zp.ua>,
- David O'Brien <obrien@Nuxi.cs.ucdavis.edu>,
- Clint Olsen <olsenc@ichips.intel.com>,
- Park Myeong Seok <pms@romance.kaist.ac.kr>,
- Thomas Parmelan <tom@ankh.fr.eu.org>,
- Ollivier Robert <roberto@keltia.freenix.fr>,
- Thomas Roessler <roessler@does-not-exist.org>,
- Roland Rosenfeld <roland@spinnaker.de>,
- TAKIZAWA Takashi <taki@luna.email.ne.jp>,
- Allain Thivillon <Allain.Thivillon@alma.fr>,
- Gero Treuner <gero@faveve.uni-stuttgart.de>,
- Vsevolod Volkov <vvv@lucky.net>,
- Ken Weinert <kenw@ihs.com>
-
- 7\b7.\b.2\b2.\b. A\bAb\bbo\bou\but\bt t\bth\bhi\bis\bs d\bdo\boc\bcu\bum\bme\ben\bnt\bt
-
- This document was written in SGML, and then rendered using the sgml-
- tools package.
+ MIME Content-Transfer-Encoding: header field
+ %f
+
+ filename
+
+ %I
+
+ MIME Content-Disposition: header field (I=inline, A=attachment)
+
+ %m
+
+ major MIME type
+
+ %M
+
+ MIME subtype
+
+ %n
+
+ attachment number
+
+ %s
+
+ size
+
+ %t
+
+ tagged flag
+
+ %T
+
+ graphic tree characters
+
+ %u
+
+ unlink (=to delete) flag
+
+ %>X
+
+ right justify the rest of the string and pad with character "X"
+
+ %|X
+
+ pad to the end of the line with character "X"
+
+15. $attach_remind_regexp
+
+ Type: regular expression
+
+ Default: "attach"
+
+ If this variable is non-empty, muttng will scan a message's contents
+ before sending for this regular expression. If it is found, it will ask
+ for what to do depending on the setting of $abort_noattach.
+
+ This variable and $abort_noattach are intended to remind the user to
+ attach files if the message's text references them.
+
+16. $attach_sep
+
+ Type: string
+
+ Default: "\n"
+
+ The separator to add between attachments when operating (saving, printing,
+ piping, etc) on a list of tagged attachments.
+
+17. $attach_split
+
+ Type: boolean
+
+ Default: yes
+
+ If this variable is unset, when operating (saving, printing, piping, etc)
+ on a list of tagged attachments, Mutt-ng will concatenate the attachments
+ and will operate on them as a single attachment. The ``$attach_sep''
+ separator is added after each attachment. When set, Mutt-ng will operate
+ on the attachments one by one.
+
+18. $attribution
+
+ Type: string
+
+ Default: "On %d, %n wrote:"
+
+ This is the string that will precede a message which has been included in
+ a reply. For a full listing of defined printf(3)-like sequences see the
+ section on ``$index_format''.
+
+19. $auto_tag
+
+ Type: boolean
+
+ Default: no
+
+ When set, functions in the index menu which affect a message will be
+ applied to all tagged messages (if there are any). When unset, you must
+ first use the ``tag-prefix'' function (default: ";") to make the next
+ function apply to all tagged messages.
+
+20. $autoedit
+
+ Type: boolean
+
+ Default: no
+
+ When set along with ``$edit_headers'', Mutt-ng will skip the initial
+ send-menu and allow you to immediately begin editing the body of your
+ message. The send-menu may still be accessed once you have finished
+ editing the body of your message.
+
+ Also see ``$fast_reply''.
+
+21. $beep
+
+ Type: boolean
+
+ Default: yes
+
+ When this variable is set, Mutt-ng will beep when an error occurs.
+
+22. $beep_new
+
+ Type: boolean
+
+ Default: no
+
+ When this variable is set, Mutt-ng will beep whenever it prints a message
+ notifying you of new mail. This is independent of the setting of the
+ ``$beep'' variable.
+
+23. $bounce
+
+ Type: quadoption
+
+ Default: ask-yes
+
+ Controls whether you will be asked to confirm bouncing messages. If set to
+ yes you don't get asked if you want to bounce a message. Setting this
+ variable to no is not generally useful, and thus not recommended, because
+ you are unable to bounce messages.
+
+24. $bounce_delivered
+
+ Type: boolean
+
+ Default: yes
+
+ When this variable is set, Mutt-ng will include Delivered-To: header
+ fields when bouncing messages. Postfix users may wish to unset this
+ variable.
+
+25. $braille_friendly
+
+ Type: boolean
+
+ Default: no
+
+ When this variable is set, mutt will place the cursor at the beginning of
+ the current line in menus, even when the arrow_cursor variable is unset,
+ making it easier for blind persons using Braille displays to follow these
+ menus. The option is disabled by default because many visual terminals
+ don't permit making the cursor invisible.
+
+26. $certificate_file
+
+ Type: path
+
+ Default: "~/.mutt_certificates"
+
+ Availability: SSL or GNUTLS
+
+ This variable specifies the file where the certificates you trust are
+ saved. When an unknown certificate is encountered, you are asked if you
+ accept it or not. If you accept it, the certificate can also be saved in
+ this file and further connections are automatically accepted.
+
+ You can also manually add CA certificates in this file. Any server
+ certificate that is signed with one of these CA certificates are also
+ automatically accepted.
+
+ Example: set certificate_file=~/.muttng/certificates
+
+27. $charset
+
+ Type: string
+
+ Default: ""
+
+ Character set your terminal uses to display and enter textual data.
+
+28. $check_new
+
+ Type: boolean
+
+ Default: yes
+
+ Note: this option only affects maildir and MH style mailboxes.
+
+ When set, Mutt-ng will check for new mail delivered while the mailbox is
+ open. Especially with MH mailboxes, this operation can take quite some
+ time since it involves scanning the directory and checking each file to
+ see if it has already been looked at. If it's unset, no check for new mail
+ is performed while the mailbox is open.
+
+29. $collapse_unread
+
+ Type: boolean
+
+ Default: yes
+
+ When unset, Mutt-ng will not collapse a thread if it contains any unread
+ messages.
+
+30. $compose_format
+
+ Type: string
+
+ Default: "-- Mutt-ng: Compose [Approx. msg size: %l Atts: %a]%>-"
+
+ Controls the format of the status line displayed in the ``compose'' menu.
+ This string is similar to ``$status_format'', but has its own set of
+ printf(3)-like sequences:
+
+ %a
+
+ total number of attachments
+
+ %h
+
+ local hostname
+
+ %l
+
+ approximate size (in bytes) of the current message
+
+ %v
+
+ Mutt-ng version string
+
+ See the text describing the ``$status_format'' option for more information
+ on how to set ``$compose_format''.
+
+31. $config_charset
+
+ Type: string
+
+ Default: ""
+
+ When defined, Mutt-ng will recode commands in rc files from this encoding.
+
+32. $confirmappend
+
+ Type: boolean
+
+ Default: yes
+
+ When set, Mutt-ng will prompt for confirmation when appending messages to
+ an existing mailbox.
+
+33. $confirmcreate
+
+ Type: boolean
+
+ Default: yes
+
+ When set, Mutt-ng will prompt for confirmation when saving messages to a
+ mailbox which does not yet exist before creating it.
+
+34. $connect_timeout
+
+ Type: number
+
+ Default: 30
+
+ Causes Mutt-ng to timeout a network connection (for IMAP or POP) after
+ this many seconds if the connection is not able to be established. A
+ negative value causes Mutt-ng to wait indefinitely for the connection to
+ succeed.
+
+35. $content_type
+
+ Type: string
+
+ Default: "text/plain"
+
+ Sets the default Content-Type: header field for the body of newly composed
+ messages.
+
+36. $copy
+
+ Type: quadoption
+
+ Default: yes
+
+ This variable controls whether or not copies of your outgoing messages
+ will be saved for later references. Also see ``$record'', ``$save_name'',
+ ``$force_name'' and ``fcc-hook''.
+
+37. $crypt_autoencrypt
+
+ Type: boolean
+
+ Default: no
+
+ Setting this variable will cause Mutt-ng to always attempt to PGP encrypt
+ outgoing messages. This is probably only useful in connection to the
+ send-hook command. It can be overridden by use of the pgp-menu, when
+ encryption is not required or signing is requested as well. If
+ ``$smime_is_default'' is set, then OpenSSL is used instead to create
+ S/MIME messages and settings can be overridden by use of the smime-menu.
+ (Crypto only)
+
+38. $crypt_autopgp
+
+ Type: boolean
+
+ Default: yes
+
+ This variable controls whether or not Mutt-ng may automatically enable PGP
+ encryption/signing for messages. See also ``$crypt_autoencrypt'',
+ ``$crypt_replyencrypt'', ``$crypt_autosign'', ``$crypt_replysign'' and
+ ``$smime_is_default''.
+
+39. $crypt_autosign
+
+ Type: boolean
+
+ Default: no
+
+ Setting this variable will cause Mutt-ng to always attempt to
+ cryptographically sign outgoing messages. This can be overridden by use of
+ the pgp-menu, when signing is not required or encryption is requested as
+ well. If ``$smime_is_default'' is set, then OpenSSL is used instead to
+ create S/MIME messages and settings can be overridden by use of the
+ smime-menu. (Crypto only)
+
+40. $crypt_autosmime
+
+ Type: boolean
+
+ Default: yes
+
+ This variable controls whether or not Mutt-ng may automatically enable
+ S/MIME encryption/signing for messages. See also ``$crypt_autoencrypt'',
+ ``$crypt_replyencrypt'', ``$crypt_autosign'', ``$crypt_replysign'' and
+ ``$smime_is_default''.
+
+41. $crypt_replyencrypt
+
+ Type: boolean
+
+ Default: yes
+
+ If set, automatically PGP or OpenSSL encrypt replies to messages which are
+ encrypted. (Crypto only)
+
+42. $crypt_replysign
+
+ Type: boolean
+
+ Default: no
+
+ If set, automatically PGP or OpenSSL sign replies to messages which are
+ signed.
+
+ Note: this does not work on messages that are encrypted and signed!
+ (Crypto only)
+
+43. $crypt_replysignencrypted
+
+ Type: boolean
+
+ Default: no
+
+ If set, automatically PGP or OpenSSL sign replies to messages which are
+ encrypted. This makes sense in combination with ``$crypt_replyencrypt'',
+ because it allows you to sign all messages which are automatically
+ encrypted. This works around the problem noted in ``$crypt_replysign'',
+ that Mutt-ng is not able to find out whether an encrypted message is also
+ signed. (Crypto only)
+
+44. $crypt_timestamp
+
+ Type: boolean
+
+ Default: yes
+
+ If set, Mutt-ng will include a time stamp in the lines surrounding PGP or
+ S/MIME output, so spoofing such lines is more difficult. If you are using
+ colors to mark these lines, and rely on these, you may unset this setting.
+ (Crypto only)
+
+45. $crypt_use_gpgme
+
+ Type: boolean
+
+ Default: no
+
+ This variable controls the use the GPGME enabled crypto backends. If it is
+ set and Mutt-ng was build with gpgme support, the gpgme code for S/MIME
+ and PGP will be used instead of the classic code.
+
+ Note: You need to use this option in your .muttngrc configuration file as
+ it won't have any effect when used interactively.
+
+46. $crypt_verify_sig
+
+ Type: quadoption
+
+ Default: yes
+
+ If ``yes'', always attempt to verify PGP or S/MIME signatures. If ``ask'',
+ ask whether or not to verify the signature. If ``no'', never attempt to
+ verify cryptographic signatures. (Crypto only)
+
+47. $date_format
+
+ Type: string
+
+ Default: "!%a, %b %d, %Y at %I:%M:%S%p %Z"
+
+ This variable controls the format of the date printed by the ``%d''
+ sequence in ``$index_format''. This is passed to strftime(3) to process
+ the date.
+
+ Unless the first character in the string is a bang (``!''), the month and
+ week day names are expanded according to the locale specified in the
+ variable ``$locale''. If the first character in the string is a bang, the
+ bang is discarded, and the month and week day names in the rest of the
+ string are expanded in the C locale (that is in US English).
+
+48. $debug_level
+
+ Type: number
+
+ Default: 1
+
+ Availability: debug
+
+ This variable specifies the current debug level and may be used to
+ increase or decrease the verbosity level during runtime. It overrides the
+ level given with the -d command line option.
+
+ Currently, this number must be >= 0 and <= 5 and muttng must be started
+ with -d to enable debugging at all; enabling at runtime is not possible.
+
+49. $default_hook
+
+ Type: string
+
+ Default: "~f %s !~P | (~P ~C %s)"
+
+ This variable controls how send-hooks, message-hooks, save-hooks, and
+ fcc-hooks will be interpreted if they are specified with only a simple
+ regexp, instead of a matching pattern. The hooks are expanded when they
+ are declared, so a hook will be interpreted according to the value of this
+ variable at the time the hook is declared. The default value matches if
+ the message is either from a user matching the regular expression given,
+ or if it is from you (if the from address matches ``alternates'') and is
+ to or cc'ed to a user matching the given regular expression.
+
+50. $delete
+
+ Type: quadoption
+
+ Default: ask-yes
+
+ Controls whether or not messages are really deleted when closing or
+ synchronizing a mailbox. If set to yes, messages marked for deleting will
+ automatically be purged without prompting. If set to no, messages marked
+ for deletion will be kept in the mailbox.
+
+51. $delete_space
+
+ Type: boolean
+
+ Default: no
+
+ When sending messages with format=flowed by setting the $text_flowed
+ variable, this variable specifies whether to also set the DelSp parameter
+ to yes. If this is unset, no additional parameter will be send as a value
+ of no already is the default behavior.
+
+ Note: this variable only has an effect on outgoing messages (if
+ $text_flowed is set) but not on incomming.
+
+52. $delete_untag
+
+ Type: boolean
+
+ Default: yes
+
+ If this option is set, Mutt-ng will untag messages when marking them for
+ deletion. This applies when you either explicitly delete a message, or
+ when you save it to another folder.
+
+53. $digest_collapse
+
+ Type: boolean
+
+ Default: yes
+
+ If this option is set, Mutt-ng's received-attachments menu will not show
+ the subparts of individual messages in a multipart/digest. To see these
+ subparts, press 'v' on that menu.
+
+54. $display_filter
+
+ Type: path
+
+ Default: ""
+
+ When set, specifies a command used to filter messages. When a message is
+ viewed it is passed as standard input to $display_filter, and the filtered
+ message is read from the standard output.
+
+55. $dotlock_program
+
+ Type: path
+
+ Default: "$muttng_bindir/muttng_dotlock"
+
+ Availability: Standalone and Dotlock
+
+ Contains the path of the muttng_dotlock(1) binary to be used by Mutt-ng.
+
+56. $dsn_notify
+
+ Type: string
+
+ Default: ""
+
+ Note: you should not enable this unless you are using Sendmail 8.8.x or
+ greater or in connection with the SMTP support via libESMTP.
+
+ This variable sets the request for when notification is returned. The
+ string consists of a comma separated list (no spaces!) of one or more of
+ the following: never, to never request notification, failure, to request
+ notification on transmission failure, delay, to be notified of message
+ delays, success, to be notified of successful transmission.
+
+ Example: set dsn_notify="failure,delay"
+
+57. $dsn_return
+
+ Type: string
+
+ Default: ""
+
+ Note: you should not enable this unless you are using Sendmail 8.8.x or
+ greater or in connection with the SMTP support via libESMTP.
+
+ This variable controls how much of your message is returned in DSN
+ messages. It may be set to either hdrs to return just the message header,
+ or full to return the full message.
+
+ Example: set dsn_return=hdrs
+
+58. $duplicate_threads
+
+ Type: boolean
+
+ Default: yes
+
+ This variable controls whether Mutt-ng, when sorting by threads, threads
+ messages with the same Message-Id: header field together. If it is set, it
+ will indicate that it thinks they are duplicates of each other with an
+ equals sign in the thread diagram.
+
+59. $edit_headers
+
+ Type: boolean
+
+ Default: no
+
+ This option allows you to edit the header of your outgoing messages along
+ with the body of your message.
+
+ Which empty header fields to show is controlled by the $editor_headers
+ option.
+
+60. $editor
+
+ Type: path
+
+ Default: ""
+
+ This variable specifies which editor is used by Mutt-ng. It defaults to
+ the value of the $VISUAL, or $EDITOR, environment variable, or to the
+ string "vi" if neither of those are set.
+
+61. $editor_headers
+
+ Type: string
+
+ Default: "From: To: Cc: Bcc: Subject: Reply-To: Newsgroups: Followup-To:
+ X-Comment-To:"
+
+ If $edit_headers is set, this space-separated list specifies which
+ non-empty header fields to edit in addition to user-defined headers.
+
+ Note: if $edit_headers had to be turned on by force because $strict_mailto
+ is unset, this option has no effect.
+
+62. $encode_from
+
+ Type: boolean
+
+ Default: no
+
+ When set, Mutt-ng will quoted-printable encode messages when they contain
+ the string ``From '' (note the trailing space) in the beginning of a line.
+ Useful to avoid the tampering certain mail delivery and transport agents
+ tend to do with messages.
+
+ Note: as mutt-ng currently violates RfC3676 defining format=flowed, it's
+ <em/strongly/ advised to set this option although discouraged by the
+ standard. Alternatively, you must take care of space-stuffing <tt/From /
+ lines (with a trailing space) yourself.
+
+63. $entropy_file
+
+ Type: path
+
+ Default: ""
+
+ Availability: SSL
+
+ The file which includes random data that is used to initialize SSL library
+ functions.
+
+64. $envelope_from_address
+
+ Type: e-mail address
+
+ Default: ""
+
+ Manually sets the envelope sender for outgoing messages. This value is
+ ignored if ``$use_envelope_from'' is unset.
+
+65. $escape
+
+ Type: string
+
+ Default: "~"
+
+ Escape character to use for functions in the builtin editor.
+
+66. $fast_reply
+
+ Type: boolean
+
+ Default: no
+
+ When set, the initial prompt for recipients and subject are skipped when
+ replying to messages, and the initial prompt for subject is skipped when
+ forwarding messages.
+
+ Note: this variable has no effect when the ``$autoedit'' variable is set.
+
+67. $fcc_attach
+
+ Type: boolean
+
+ Default: yes
+
+ This variable controls whether or not attachments on outgoing messages are
+ saved along with the main body of your message.
+
+68. $fcc_clear
+
+ Type: boolean
+
+ Default: no
+
+ When this variable is set, FCCs will be stored unencrypted and unsigned,
+ even when the actual message is encrypted and/or signed. (PGP only)
+
+69. $file_charset
+
+ Type: string
+
+ Default: ""
+
+ This variable is a colon-separated list of character encoding schemes for
+ text file attatchments. If unset, $charset value will be used instead. For
+ example, the following configuration would work for Japanese text
+ handling:
+
+ set file_charset="iso-2022-jp:euc-jp:shift_jis:utf-8"
+
+ Note: ``iso-2022-*'' must be put at the head of the value as shown above
+ if included.
+
+70. $folder
+
+ Type: path
+
+ Default: "~/Mail"
+
+ Specifies the default location of your mailboxes. A ``+'' or ``='' at the
+ beginning of a pathname will be expanded to the value of this variable.
+ Note that if you change this variable from the default value you need to
+ make sure that the assignment occurs before you use ``+'' or ``='' for any
+ other variables since expansion takes place during the ``set'' command.
+
+71. $folder_format
+
+ Type: string
+
+ Default: "%2C %t %N %F %2l %-8.8u %-8.8g %8s %d %f"
+
+ This variable allows you to customize the file browser display to your
+ personal taste. This string is similar to ``$index_format'', but has its
+ own set of printf(3)-like sequences:
+
+ %C
+
+ current file number
+
+ %d
+
+ date/time folder was last modified
+
+ %f
+
+ filename
+
+ %F
+
+ file permissions
+
+ %g
+
+ group name (or numeric gid, if missing)
+
+ %l
+
+ number of hard links
+
+ %N
+
+ N if folder has new mail, blank otherwise
+
+ %s
+
+ size in bytes
+
+ %t
+
+ * if the file is tagged, blank otherwise
+
+ %u
+
+ owner name (or numeric uid, if missing)
+
+ %>X
+
+ right justify the rest of the string and pad with character "X"
+
+ %|X
+
+ pad to the end of the line with character "X"
+
+72. $followup_to
+
+ Type: boolean
+
+ Default: yes
+
+ Controls whether or not the Mail-Followup-To: header field is generated
+ when sending mail. When set, Mutt-ng will generate this field when you are
+ replying to a known mailing list, specified with the ``subscribe'' or
+ ``lists'' commands or detected by common mailing list headers.
+
+ This field has two purposes. First, preventing you from receiving
+ duplicate copies of replies to messages which you send to mailing lists.
+ Second, ensuring that you do get a reply separately for any messages sent
+ to known lists to which you are not subscribed. The header will contain
+ only the list's address for subscribed lists, and both the list address
+ and your own email address for unsubscribed lists. Without this header, a
+ group reply to your message sent to a subscribed list will be sent to both
+ the list and your address, resulting in two copies of the same email for
+ you.
+
+73. $force_buffy_check
+
+ Type: boolean
+
+ Default: no
+
+ When set, it causes Mutt-ng to check for new mail when the buffy-list
+ command is invoked. When unset, buffy_list will just list all mailboxes
+ which are already known to have new mail.
+
+ Also see the following variables: ``$timeout'', ``$mail_check'' and
+ ``$imap_mail_check''.
+
+74. $force_name
+
+ Type: boolean
+
+ Default: no
+
+ This variable is similar to ``$save_name'', except that Mutt-ng will store
+ a copy of your outgoing message by the username of the address you are
+ sending to even if that mailbox does not exist.
+
+ Also see the ``$record'' variable.
+
+75. $forward_decode
+
+ Type: boolean
+
+ Default: yes
+
+ Controls the decoding of complex MIME messages into text/plain when
+ forwarding a message. The message header is also RFC2047 decoded. This
+ variable is only used, if ``$mime_forward'' is unset, otherwise
+ ``$mime_forward_decode'' is used instead.
+
+76. $forward_decrypt
+
+ Type: boolean
+
+ Default: yes
+
+ Controls the handling of encrypted messages when forwarding a message.
+ When set, the outer layer of encryption is stripped off. This variable is
+ only used if ``$mime_forward'' is set and ``$mime_forward_decode'' is
+ unset. (PGP only)
+
+77. $forward_edit
+
+ Type: quadoption
+
+ Default: yes
+
+ This quadoption controls whether or not the user is automatically placed
+ in the editor when forwarding messages. For those who always want to
+ forward with no modification, use a setting of no.
+
+78. $forward_format
+
+ Type: string
+
+ Default: "[%a: %s]"
+
+ This variable controls the default subject when forwarding a message. It
+ uses the same format sequences as the ``$index_format'' variable.
+
+79. $forward_quote
+
+ Type: boolean
+
+ Default: no
+
+ When set forwarded messages included in the main body of the message (when
+ ``$mime_forward'' is unset) will be quoted using ``$indent_string''.
+
+80. $from
+
+ Type: e-mail address
+
+ Default: ""
+
+ This variable contains a default from address. It can be overridden using
+ my_hdr (including from send-hooks) and ``$reverse_name''. This variable is
+ ignored if ``$use_from'' is unset.
+
+ E.g. you can use send-hook Mutt-ng-devel@lists.berlios.de 'my_hdr From:
+ Foo Bar <foo@bar.fb>' when replying to the mutt-ng developer's mailing
+ list and Mutt-ng takes this email address.
+
+ Defaults to the contents of the environment variable $EMAIL.
+
+81. $gecos_mask
+
+ Type: regular expression
+
+ Default: "^[^,]*"
+
+ A regular expression used by Mutt-ng to parse the GECOS field of a
+ password entry when expanding the alias. By default the regular expression
+ is set to ``^[^,]*'' which will return the string up to the first ``,''
+ encountered. If the GECOS field contains a string like "lastname,
+ firstname" then you should do: set gecos_mask=".*".
+
+ This can be useful if you see the following behavior: you address a e-mail
+ to user ID stevef whose full name is Steve Franklin. If Mutt-ng expands
+ stevef to ``Franklin'' stevef@foo.bar then you should set the gecos_mask
+ to a regular expression that will match the whole name so Mutt-ng will
+ expand ``Franklin'' to ``Franklin, Steve''.
+
+82. $hdrs
+
+ Type: boolean
+
+ Default: yes
+
+ When unset, the header fields normally added by the ``my_hdr'' command are
+ not created. This variable must be unset before composing a new message or
+ replying in order to take effect. If set, the user defined header fields
+ are added to every new message.
+
+83. $header
+
+ Type: boolean
+
+ Default: no
+
+ When set, this variable causes Mutt-ng to include the header of the
+ message you are replying to into the edit buffer. The ``$weed'' setting
+ applies.
+
+84. $header_cache
+
+ Type: path
+
+ Default: ""
+
+ Availability: Header Cache
+
+ The $header_cache variable points to the header cache database.
+
+ If $header_cache points to a directory it will contain a header cache
+ database per folder. If $header_cache points to a file that file will be a
+ single global header cache. By default it is unset so no header caching
+ will be used.
+
+85. $header_cache_compress
+
+ Type: boolean
+
+ Default: no
+
+ If enabled the header cache will be compressed. So only one fifth of the
+ usual diskspace is used, but the uncompression can result in a slower open
+ of the cached folder.
+
+86. $help
+
+ Type: boolean
+
+ Default: yes
+
+ When set, help lines describing the bindings for the major functions
+ provided by each menu are displayed on the first line of the screen.
+
+ Note: The binding will not be displayed correctly if the function is bound
+ to a sequence rather than a single keystroke. Also, the help line may not
+ be updated if a binding is changed while Mutt-ng is running. Since this
+ variable is primarily aimed at new users, neither of these should present
+ a major problem.
+
+87. $hidden_host
+
+ Type: boolean
+
+ Default: no
+
+ When set, Mutt-ng will skip the host name part of ``$hostname'' variable
+ when adding the domain part to addresses. This variable does not affect
+ the generation of Message-ID: header fields, and it will not lead to the
+ cut-off of first-level domains.
+
+88. $hide_limited
+
+ Type: boolean
+
+ Default: no
+
+ When set, Mutt-ng will not show the presence of messages that are hidden
+ by limiting, in the thread tree.
+
+89. $hide_missing
+
+ Type: boolean
+
+ Default: yes
+
+ When set, Mutt-ng will not show the presence of missing messages in the
+ thread tree.
+
+90. $hide_thread_subject
+
+ Type: boolean
+
+ Default: yes
+
+ When set, Mutt-ng will not show the subject of messages in the thread tree
+ that have the same subject as their parent or closest previously displayed
+ sibling.
+
+91. $hide_top_limited
+
+ Type: boolean
+
+ Default: no
+
+ When set, Mutt-ng will not show the presence of messages that are hidden
+ by limiting, at the top of threads in the thread tree. Note that when
+ $hide_missing is set, this option will have no effect.
+
+92. $hide_top_missing
+
+ Type: boolean
+
+ Default: yes
+
+ When set, Mutt-ng will not show the presence of missing messages at the
+ top of threads in the thread tree. Note that when $hide_limited is set,
+ this option will have no effect.
+
+93. $history
+
+ Type: number
+
+ Default: 10
+
+ This variable controls the size (in number of strings remembered) of the
+ string history buffer. The buffer is cleared each time the variable is
+ changed.
+
+94. $honor_followup_to
+
+ Type: quadoption
+
+ Default: yes
+
+ This variable controls whether or not a Mail-Followup-To: header field is
+ honored when group-replying to a message.
+
+95. $hostname
+
+ Type: string
+
+ Default: ""
+
+ Specifies the hostname to use after the ``@'' in local e-mail addresses
+ and during generation of Message-Id: headers.
+
+ Please be sure to really know what you are doing when changing this
+ variable to configure a custom domain part of Message-IDs.
+
+96. $ignore_list_reply_to
+
+ Type: boolean
+
+ Default: no
+
+ Affects the behaviour of the reply function when replying to messages from
+ mailing lists. When set, if the ``Reply-To:'' header field is set to the
+ same value as the ``To:'' header field, Mutt-ng assumes that the
+ ``Reply-To:'' header field was set by the mailing list to automate
+ responses to the list, and will ignore this field. To direct a response to
+ the mailing list when this option is set, use the list-reply function;
+ group-reply will reply to both the sender and the list.
+
+97. $imap_authenticators
+
+ Type: string
+
+ Default: ""
+
+ Availability: IMAP
+
+ This is a colon-delimited list of authentication methods Mutt-ng may
+ attempt to use to log in to an IMAP server, in the order Mutt-ng should
+ try them. Authentication methods are either ``login'' or the right side of
+ an IMAP ``AUTH='' capability string, e.g. ``digest-md5'', ``gssapi'' or
+ ``cram-md5''. This parameter is case-insensitive.
+
+ If this parameter is unset (the default) Mutt-ng will try all available
+ methods, in order from most-secure to least-secure.
+
+ Example: set imap_authenticators="gssapi:cram-md5:login"
+
+ Note: Mutt-ng will only fall back to other authentication methods if the
+ previous methods are unavailable. If a method is available but
+ authentication fails, Mutt-ng will not connect to the IMAP server.
+
+98. $imap_check_subscribed
+
+ Type: boolean
+
+ Default: no
+
+ When set, mutt will fetch the set of subscribed folders from your server
+ on connection, and add them to the set of mailboxes it polls for new mail.
+ See also the ``mailboxes'' command.
+
+99. $imap_delim_chars
+
+ Type: string
+
+ Default: "/."
+
+ Availability: IMAP
+
+ This contains the list of characters which you would like to treat as
+ folder separators for displaying IMAP paths. In particular it helps in
+ using the '=' shortcut for your $folder variable.
+
+100. $imap_headers
+
+ Type: string
+
+ Default: ""
+
+ Availability: IMAP
+
+ Mutt-ng requests these header fields in addition to the default headers
+ (``DATE FROM SUBJECT TO CC MESSAGE-ID REFERENCES CONTENT-TYPE
+ CONTENT-DESCRIPTION IN-REPLY-TO REPLY-TO LINES X-LABEL'') from IMAP
+ servers before displaying the ``index'' menu. You may want to add more
+ headers for spam detection.
+
+ Note: This is a space separated list.
+
+101. $imap_home_namespace
+
+ Type: string
+
+ Default: ""
+
+ Availability: IMAP
+
+ You normally want to see your personal folders alongside your INBOX in the
+ IMAP browser. If you see something else, you may set this variable to the
+ IMAP path to your folders.
+
+102. $imap_keepalive
+
+ Type: number
+
+ Default: 900
+
+ Availability: IMAP
+
+ This variable specifies the maximum amount of time in seconds that Mutt-ng
+ will wait before polling open IMAP connections, to prevent the server from
+ closing them before Mutt-ng has finished with them.
+
+ The default is well within the RFC-specified minimum amount of time (30
+ minutes) before a server is allowed to do this, but in practice the RFC
+ does get violated every now and then.
+
+ Reduce this number if you find yourself getting disconnected from your
+ IMAP server due to inactivity.
+
+103. $imap_list_subscribed
+
+ Type: boolean
+
+ Default: no
+
+ Availability: IMAP
+
+ This variable configures whether IMAP folder browsing will look for only
+ subscribed folders or all folders. This can be toggled in the IMAP browser
+ with the toggle-subscribed function.
+
+104. $imap_login
+
+ Type: string
+
+ Default: ""
+
+ Availability: IMAP
+
+ Your login name on the IMAP server.
+
+ This variable defaults to the value of ``$imap_user.''
+
+105. $imap_mail_check
+
+ Type: number
+
+ Default: 300
+
+ This variable configures how often (in seconds) Mutt-ng should look for
+ new mail in IMAP folders. This is split from the ``mail_check'' variable
+ to generate less traffic and get more accurate information for local
+ folders.
+
+106. $imap_pass
+
+ Type: string
+
+ Default: ""
+
+ Availability: IMAP
+
+ Specifies the password for your IMAP account. If unset, Mutt-ng will
+ prompt you for your password when you invoke the fetch-mail function.
+
+ Warning: you should only use this option when you are on a fairly secure
+ machine, because the superuser can read your configuration even if you are
+ the only one who can read the file.
+
+107. $imap_passive
+
+ Type: boolean
+
+ Default: yes
+
+ Availability: IMAP
+
+ When set, Mutt-ng will not open new IMAP connections to check for new
+ mail. Mutt-ng will only check for new mail over existing IMAP connections.
+ This is useful if you don't want to be prompted to user/password pairs on
+ Mutt-ng invocation, or if opening the connection is slow.
+
+108. $imap_peek
+
+ Type: boolean
+
+ Default: yes
+
+ Availability: IMAP
+
+ If set, Mutt-ng will avoid implicitly marking your mail as read whenever
+ you fetch a message from the server. This is generally a good thing, but
+ can make closing an IMAP folder somewhat slower. This option exists to
+ appease speed freaks.
+
+109. $imap_reconnect
+
+ Type: quadoption
+
+ Default: ask-yes
+
+ Availability: IMAP
+
+ Controls whether or not Mutt-ng will try to reconnect to IMAP server when
+ the connection is lost.
+
+110. $imap_servernoise
+
+ Type: boolean
+
+ Default: yes
+
+ Availability: IMAP
+
+ When set, Mutt-ng will display warning messages from the IMAP server as
+ error messages. Since these messages are often harmless, or generated due
+ to configuration problems on the server which are out of the users' hands,
+ you may wish to suppress them at some point.
+
+111. $imap_user
+
+ Type: string
+
+ Default: ""
+
+ Availability: IMAP
+
+ The name of the user whose mail you intend to access on the IMAP server.
+
+ This variable defaults to your user name on the local machine.
+
+112. $implicit_autoview
+
+ Type: boolean
+
+ Default: no
+
+ If set, Mutt-ng will look for a mailcap entry with the ``copiousoutput''
+ flag set for every MIME attachment it doesn't have an internal viewer
+ defined for. If such an entry is found, Mutt-ng will use the viewer
+ defined in that entry to convert the body part to text form.
+
+113. $include
+
+ Type: quadoption
+
+ Default: ask-yes
+
+ Controls whether or not a copy of the message(s) you are replying to is
+ included in your reply.
+
+114. $include_onlyfirst
+
+ Type: boolean
+
+ Default: no
+
+ Controls whether or not Mutt-ng includes only the first attachment of the
+ message you are replying.
+
+115. $indent_string
+
+ Type: string
+
+ Default: "> "
+
+ Specifies the string to prepend to each line of text quoted in a message
+ to which you are replying. You are strongly encouraged not to change this
+ value, as it tends to agitate the more fanatical netizens.
+
+116. $index_format
+
+ Type: string
+
+ Default: "%4C %Z %{%b %d} %-15.15L (%?l?%4l&%4c?) %s"
+
+ This variable allows you to customize the message index display to your
+ personal taste.
+
+ ``Format strings'' are similar to the strings used in the ``C'' function
+ printf(3) to format output (see the man page for more detail). The
+ following sequences are defined in Mutt-ng:
+
+ %a
+
+ address of the author
+
+ %A
+
+ reply-to address (if present; otherwise: address of author)
+
+ %b
+
+ filename of the original message folder (think mailBox)
+
+ %B
+
+ the list to which the letter was sent, or else the folder name
+ (%b).
+
+ %c
+
+ number of characters (bytes) in the message
+
+ %C
+
+ current message number
+
+ %d
+
+ date and time of the message in the format specified by
+ ``date_format'' converted to sender's time zone
+
+ %D
+
+ date and time of the message in the format specified by
+ ``date_format'' converted to the local time zone
+
+ %e
+
+ current message number in thread
+
+ %E
+
+ number of messages in current thread
+
+ %f
+
+ entire From: line (address + real name)
+
+ %F
+
+ author name, or recipient name if the message is from you
+
+ %H
+
+ spam attribute(s) of this message
+
+ %g
+
+ newsgroup name (if compiled with nntp support)
+
+ %i
+
+ message-id of the current message
+
+ %l
+
+ number of lines in the message (does not work with maildir, mh,
+ and possibly IMAP folders)
+
+ %L
+
+ If an address in the To or CC header field matches an address
+ defined by the users ``subscribe'' command, this displays "To
+ <list-name>", otherwise the same as %F.
+
+ %m
+
+ total number of message in the mailbox
+
+ %M
+
+ number of hidden messages if the thread is collapsed.
+
+ %N
+
+ message score
+
+ %n
+
+ author's real name (or address if missing)
+
+ %O
+
+ (_O_riginal save folder) Where Mutt-ng would formerly have stashed
+ the message: list name or recipient name if no list
+
+ %s
+
+ subject of the message
+
+ %S
+
+ status of the message (N/D/d/!/r/*)
+
+ %t
+
+ `to:' field (recipients)
+
+ %T
+
+ the appropriate character from the $to_chars string
+
+ %u
+
+ user (login) name of the author
+
+ %v
+
+ first name of the author, or the recipient if the message is from
+ you
+
+ %W
+
+ name of organization of author (`organization:' field)
+
+ %y
+
+ `x-label:' field, if present
+
+ %Y
+
+ `x-label' field, if present, and (1) not at part of a thread tree,
+ (2) at the top of a thread, or (3) `x-label' is different from
+ preceding message's `x-label'.
+
+ %Z
+
+ message status flags
+
+ %{fmt}
+
+ the date and time of the message is converted to sender's time
+ zone, and ``fmt'' is expanded by the library function
+ ``strftime''; a leading bang disables locales
+
+ %[fmt]
+
+ the date and time of the message is converted to the local time
+ zone, and ``fmt'' is expanded by the library function
+ ``strftime''; a leading bang disables locales
+
+ %(fmt)
+
+ the local date and time when the message was received. ``fmt'' is
+ expanded by the library function ``strftime''; a leading bang
+ disables locales
+
+ %<fmt>
+
+ the current local time. ``fmt'' is expanded by the library
+ function ``strftime''; a leading bang disables locales.
+
+ %>X
+
+ right justify the rest of the string and pad with character "X"
+
+ %|X
+
+ pad to the end of the line with character "X"
+
+ See also: ``$to_chars''.
+
+117. $ispell
+
+ Type: path
+
+ Default: "ispell"
+
+ How to invoke ispell (GNU's spell-checking software).
+
+118. $keep_flagged
+
+ Type: boolean
+
+ Default: no
+
+ If set, read messages marked as flagged will not be moved from your spool
+ mailbox to your ``$mbox'' mailbox, or as a result of a ``mbox-hook''
+ command.
+
+119. $list_reply
+
+ Type: quadoption
+
+ Default: no
+
+ When set, address replies to the mailing list the original message came
+ from (instead to the author only). Setting this option to ``ask-yes'' or
+ ``ask-no'' will ask if you really intended to reply to the author only.
+
+120. $locale
+
+ Type: string
+
+ Default: "C"
+
+ The locale used by strftime(3) to format dates. Legal values are the
+ strings your system accepts for the locale variable LC_TIME.
+
+121. $mail_check
+
+ Type: number
+
+ Default: 5
+
+ This variable configures how often (in seconds) Mutt-ng should look for
+ new mail.
+
+ Note: This does not apply to IMAP mailboxes, see $imap_mail_check.
+
+122. $mailcap_path
+
+ Type: string
+
+ Default: ""
+
+ This variable specifies which files to consult when attempting to display
+ MIME bodies not directly supported by Mutt-ng.
+
+123. $mailcap_sanitize
+
+ Type: boolean
+
+ Default: yes
+
+ If set, Mutt-ng will restrict possible characters in mailcap % expandos to
+ a well-defined set of safe characters. This is the safe setting, but we
+ are not sure it doesn't break some more advanced MIME stuff.
+
+ DON'T CHANGE THIS SETTING UNLESS YOU ARE REALLY SURE WHAT YOU ARE DOING!
+
+124. $maildir_header_cache_verify
+
+ Type: boolean
+
+ Default: yes
+
+ Availability: Header Cache
+
+ Check for Maildir unaware programs other than Mutt-ng having modified
+ maildir files when the header cache is in use. This incurs one stat(2) per
+ message every time the folder is opened.
+
+125. $maildir_trash
+
+ Type: boolean
+
+ Default: no
+
+ If set, messages marked as deleted will be saved with the maildir
+ (T)rashed flag instead of physically deleted.
+
+ NOTE: this only applies to maildir-style mailboxes. Setting it will have
+ no effect on other mailbox types.
+
+ It is similiar to the trash option.
+
+126. $mark_old
+
+ Type: boolean
+
+ Default: yes
+
+ Controls whether or not Mutt-ng marks newunread messages as old if you
+ exit a mailbox without reading them.
+
+ With this option set, the next time you start Mutt-ng, the messages will
+ show up with an "O" next to them in the ``index'' menu, indicating that
+ they are old.
+
+127. $markers
+
+ Type: boolean
+
+ Default: yes
+
+ Controls the display of wrapped lines in the internal pager. If set, a
+ ``+'' marker is displayed at the beginning of wrapped lines. Also see the
+ ``$smart_wrap'' variable.
+
+128. $mask
+
+ Type: regular expression
+
+ Default: "!^\.[^.]"
+
+ A regular expression used in the file browser, optionally preceded by the
+ not operator ``!''. Only files whose names match this mask will be shown.
+ The match is always case-sensitive.
+
+129. $max_display_recips
+
+ Type: number
+
+ Default: 0
+
+ When set non-zero, this specifies the maximum number of recipient header
+ lines (To:, Cc: and Bcc:) to display in the pager if header weeding is
+ turned on. In case the number of lines exeeds its value, the last line
+ will have 3 dots appended.
+
+130. $max_line_length
+
+ Type: number
+
+ Default: 0
+
+ When set, the maximum line length for displaying ``format = flowed''
+ messages is limited to this length. A value of 0 (which is also the
+ default) means that the maximum line length is determined by the terminal
+ width and $wrapmargin.
+
+131. $mbox
+
+ Type: path
+
+ Default: "~/mbox"
+
+ This specifies the folder into which read mail in your ``$spoolfile''
+ folder will be appended.
+
+132. $mbox_type
+
+ Type: folder magic
+
+ Default: mbox
+
+ The default mailbox type used when creating new folders. May be any of
+ mbox, MMDF, MH and Maildir.
+
+133. $menu_context
+
+ Type: number
+
+ Default: 0
+
+ This variable controls the number of lines of context that are given when
+ scrolling through menus. (Similar to ``$pager_context''.)
+
+134. $menu_move_off
+
+ Type: boolean
+
+ Default: yes
+
+ When unset, the bottom entry of menus will never scroll up past the bottom
+ of the screen, unless there are less entries than lines. When set, the
+ bottom entry may move off the bottom.
+
+135. $menu_scroll
+
+ Type: boolean
+
+ Default: no
+
+ When set, menus will be scrolled up or down one line when you attempt to
+ move across a screen boundary. If unset, the screen is cleared and the
+ next or previous page of the menu is displayed (useful for slow links to
+ avoid many redraws).
+
+136. $message_format
+
+ Type: string
+
+ Default: "%s"
+
+ This is the string displayed in the ``attachment'' menu for attachments of
+ type message/rfc822. For a full listing of defined printf(3)-like
+ sequences see the section on ``$index_format''.
+
+137. $meta_key
+
+ Type: boolean
+
+ Default: no
+
+ If set, forces Mutt-ng to interpret keystrokes with the high bit (bit 8)
+ set as if the user had pressed the ESC key and whatever key remains after
+ having the high bit removed. For example, if the key pressed has an ASCII
+ value of 0xf4, then this is treated as if the user had pressed ESC then
+ ``x''. This is because the result of removing the high bit from ``0xf4''
+ is ``0x74'', which is the ASCII character ``x''.
+
+138. $metoo
+
+ Type: boolean
+
+ Default: no
+
+ If unset, Mutt-ng will remove your address (see the ``alternates''
+ command) from the list of recipients when replying to a message.
+
+139. $mh_purge
+
+ Type: boolean
+
+ Default: no
+
+ When unset, Mutt-ng will mimic mh's behaviour and rename deleted messages
+ to ,<old file name> in mh folders instead of really deleting them. If the
+ variable is set, the message files will simply be deleted.
+
+140. $mh_seq_flagged
+
+ Type: string
+
+ Default: "flagged"
+
+ The name of the MH sequence used for flagged messages.
+
+141. $mh_seq_replied
+
+ Type: string
+
+ Default: "replied"
+
+ The name of the MH sequence used to tag replied messages.
+
+142. $mh_seq_unseen
+
+ Type: string
+
+ Default: "unseen"
+
+ The name of the MH sequence used for unseen messages.
+
+143. $mime_forward
+
+ Type: quadoption
+
+ Default: no
+
+ When set, the message you are forwarding will be attached as a separate
+ MIME part instead of included in the main body of the message.
+
+ This is useful for forwarding MIME messages so the receiver can properly
+ view the message as it was delivered to you. If you like to switch between
+ MIME and not MIME from mail to mail, set this variable to ask-no or
+ ask-yes.
+
+ Also see ``$forward_decode'' and ``$mime_forward_decode''.
+
+144. $mime_forward_decode
+
+ Type: boolean
+
+ Default: no
+
+ Controls the decoding of complex MIME messages into text/plain when
+ forwarding a message while ``$mime_forward'' is set. Otherwise
+ ``$forward_decode'' is used instead.
+
+145. $mime_forward_rest
+
+ Type: quadoption
+
+ Default: yes
+
+ When forwarding multiple attachments of a MIME message from the recvattach
+ menu, attachments which cannot be decoded in a reasonable manner will be
+ attached to the newly composed message if this option is set.
+
+146. $mix_entry_format
+
+ Type: string
+
+ Default: "%4n %c %-16s %a"
+
+ Availability: Mixmaster
+
+ This variable describes the format of a remailer line on the mixmaster
+ chain selection screen. The following printf(3)-like sequences are
+ supported:
+
+ %n
+
+ The running number on the menu.
+
+ %c
+
+ Remailer capabilities.
+
+ %s
+
+ The remailer's short name.
+
+ %a
+
+ The remailer's e-mail address.
+
+147. $mixmaster
+
+ Type: path
+
+ Default: "mixmaster"
+
+ Availability: Mixmaster
+
+ This variable contains the path to the Mixmaster binary on your system. It
+ is used with various sets of parameters to gather the list of known
+ remailers, and to finally send a message through the mixmaster chain.
+
+148. $move
+
+ Type: quadoption
+
+ Default: ask-no
+
+ Controls whether or not Mutt-ng will move read messages from your spool
+ mailbox to your ``$mbox'' mailbox, or as a result of a ``mbox-hook''
+ command.
+
+149. $msgid_format
+
+ Type: string
+
+ Default: "%Y%m%d%h%M%s.G%P%p"
+
+ This is the format for the ``local part'' of the Message-Id: header field
+ generated by Mutt-ng. If this variable is empty, no Message-Id: headers
+ will be generated. The '%' character marks that certain data will be added
+ to the string, similar to printf(3). The following characters are allowed:
+
+ %d
+
+ the current day of month
+
+ %h
+
+ the current hour
+
+ %m
+
+ the current month
+
+ %M
+
+ the current minute
+
+ %O
+
+ the current UNIX timestamp (octal)
+
+ %p
+
+ the process ID
+
+ %P
+
+ the current Message-ID prefix (a character rotating with every
+ Message-ID being generated)
+
+ %r
+
+ a random integer value (decimal)
+
+ %R
+
+ a random integer value (hexadecimal)
+
+ %s
+
+ the current second
+
+ %T
+
+ the current UNIX timestamp (decimal)
+
+ %X
+
+ the current UNIX timestamp (hexadecimal)
+
+ %Y
+
+ the current year (Y2K compliant)
+
+ %%
+
+ the '%' character
+
+ Note: Please only change this setting if you know what you are doing. Also
+ make sure to consult RFC2822 to produce technically valid strings.
+
+150. $muttng_bindir
+
+ Type: system property
+
+ Value: /opt/freebsd4/mutt-ng/bin
+
+ This is a read-only system property and specifies the directory containing
+ the muttng binary.
+
+151. $muttng_docdir
+
+ Type: system property
+
+ Value: /opt/freebsd4/mutt-ng/doc/muttng
+
+ This is a read-only system property and specifies the directory containing
+ the muttng documentation.
+
+152. $muttng_folder_name
+
+ Type: system property
+
+ Value:
+
+ This is a read-only system property and, at runtime, specifies the last
+ part of the full path or URI of the folder currently open (if any), i.e.
+ everything after the last ``/''.
+
+153. $muttng_folder_path
+
+ Type: system property
+
+ Value:
+
+ This is a read-only system property and, at runtime, specifies the full
+ path or URI of the folder currently open (if any).
+
+154. $muttng_hcache_backend
+
+ Type: system property
+
+ Value: qdbm
+
+ This is a read-only system property and specifies the header chaching's
+ database backend.
+
+155. $muttng_pwd
+
+ Type: system property
+
+ Value:
+
+ This is a read-only system property and, at runtime, specifies the current
+ working directory of the muttng binary.
+
+156. $muttng_revision
+
+ Type: system property
+
+ Value: 522
+
+ This is a read-only system property and specifies muttng's subversion
+ revision string.
+
+157. $muttng_sysconfdir
+
+ Type: system property
+
+ Value: /opt/freebsd4/mutt-ng/etc
+
+ This is a read-only system property and specifies the directory containing
+ the muttng system-wide configuration.
+
+158. $muttng_version
+
+ Type: system property
+
+ Value: devel
+
+ This is a read-only system property and specifies muttng's version string.
+
+159. $narrow_tree
+
+ Type: boolean
+
+ Default: no
+
+ This variable, when set, makes the thread tree narrower, allowing deeper
+ threads to fit on the screen.
+
+160. $net_inc
+
+ Type: number
+
+ Default: 10
+
+ Operations that expect to transfer a large amount of data over the network
+ will update their progress every net_inc kilobytes. If set to 0, no
+ progress messages will be displayed.
+
+ See also ``$read_inc'' and ``$write_inc''.
+
+161. $nntp_ask_followup_to
+
+ Type: boolean
+
+ Default: no
+
+ Availability: NNTP
+
+ If set, Mutt-ng will prompt you for the Followup-To: header field before
+ editing the body of an outgoing news article.
+
+162. $nntp_ask_x_comment_to
+
+ Type: boolean
+
+ Default: no
+
+ Availability: NNTP
+
+ If set, Mutt-ng will prompt you for the X-Comment-To: header field before
+ editing the body of an outgoing news article.
+
+163. $nntp_cache_dir
+
+ Type: path
+
+ Default: "~/.muttng"
+
+ Availability: NNTP
+
+ This variable points to directory where Mutt-ng will cache news article
+ headers. If unset, headers will not be saved at all and will be reloaded
+ each time when you enter a newsgroup.
+
+ As for the header caching in connection with IMAP and/or Maildir, this
+ drastically increases speed and lowers traffic.
+
+164. $nntp_catchup
+
+ Type: quadoption
+
+ Default: ask-yes
+
+ Availability: NNTP
+
+ If this variable is set, Mutt-ng will mark all articles in a newsgroup as
+ read when you leaving it.
+
+165. $nntp_context
+
+ Type: number
+
+ Default: 1000
+
+ Availability: NNTP
+
+ This variable controls how many news articles to cache per newsgroup (if
+ caching is enabled, see $nntp_cache_dir) and how many news articles to
+ show in the ``index'' menu.
+
+ If there're more articles than defined with $nntp_context, all older ones
+ will be removed/not shown in the index.
+
+166. $nntp_followup_to_poster
+
+ Type: quadoption
+
+ Default: ask-yes
+
+ Availability: NNTP
+
+ If this variable is set and the keyword "poster" is present in the
+ Followup-To: header field, a follow-up to the newsgroup is not permitted.
+ The message will be mailed to the submitter of the message via mail.
+
+167. $nntp_group_index_format
+
+ Type: string
+
+ Default: "%4C %M%N %5s %-45.45f %d"
+
+ Availability: NNTP
+
+ This variable allows you to customize the newsgroup browser display to
+ your personal taste. This string is similar to ``index_format'', but has
+ its own set of printf(3)-like sequences:
+
+ %C current newsgroup number
+ %d description of newsgroup (retrieved from server)
+ %f newsgroup name
+ %M ``-'' if newsgroup not allowed for direct post (moderated for example)
+ %N ``N'' if newsgroup is new, ``u'' if unsubscribed, blank otherwise
+ %n number of new articles in newsgroup
+ %s number of unread articles in newsgroup
+ %>X right justify the rest of the string and pad with character "X"
+ %|X pad to the end of the line with character "X"
+
+
+168. $nntp_host
+
+ Type: string
+
+ Default: ""
+
+ Availability: NNTP
+
+ This variable specifies the name (or address) of the NNTP server to be
+ used.
+
+ It defaults to the value specified via the environment variable
+ $NNTPSERVER or contained in the file /etc/nntpserver.
+
+ You can also specify a username and an alternative port for each
+ newsserver, e.g.
+
+ [nntp[s]://][username[:password]@]newsserver[:port]
+
+ Note: Using a password as shown and stored in a configuration file
+ presents a security risk since the superuser of your machine may read it
+ regardless of the file's permissions.
+
+169. $nntp_inews
+
+ Type: path
+
+ Default: ""
+
+ Availability: NNTP
+
+ If set, specifies the program and arguments used to deliver news posted by
+ Mutt-ng. Otherwise, Mutt-ng posts article using current connection. The
+ following printf(3)-style sequence is understood:
+
+ %s newsserver name
+
+
+ Example: set inews="/usr/local/bin/inews -hS"
+
+170. $nntp_load_description
+
+ Type: boolean
+
+ Default: yes
+
+ Availability: NNTP
+
+ This variable controls whether or not descriptions for newsgroups are to
+ be loaded when subscribing to a newsgroup.
+
+171. $nntp_mail_check
+
+ Type: number
+
+ Default: 60
+
+ Availability: NNTP
+
+ The time in seconds until any operations on a newsgroup except posting a
+ new article will cause a recheck for new news. If set to 0, Mutt-ng will
+ recheck on each operation in index (stepping, read article, etc.).
+
+172. $nntp_mime_subject
+
+ Type: boolean
+
+ Default: yes
+
+ Availability: NNTP
+
+ If unset, an 8-bit ``Subject:'' header field in a news article will not be
+ encoded according to RFC2047.
+
+ Note: Only change this setting if you know what you are doing.
+
+173. $nntp_newsrc
+
+ Type: path
+
+ Default: "~/.newsrc"
+
+ Availability: NNTP
+
+ This file contains information about subscribed newsgroup and articles
+ read so far.
+
+ To ease the use of multiple news servers, the following printf(3)-style
+ sequence is understood:
+
+ %s newsserver name
+
+
+174. $nntp_pass
+
+ Type: string
+
+ Default: ""
+
+ Availability: NNTP
+
+ Your password for NNTP account.
+
+ Note: Storing passwords in a configuration file presents a security risk
+ since the superuser of your machine may read it regardless of the file's
+ permissions.
+
+175. $nntp_post_moderated
+
+ Type: quadoption
+
+ Default: ask-yes
+
+ Availability: NNTP
+
+ If set to yes, Mutt-ng will post articles to newsgroup that have not
+ permissions to post (e.g. moderated).
+
+ Note: if the newsserver does not support posting to that newsgroup or a
+ group is totally read-only, that posting will not have any effect.
+
+176. $nntp_reconnect
+
+ Type: quadoption
+
+ Default: ask-yes
+
+ Availability: NNTP
+
+ Controls whether or not Mutt-ng will try to reconnect to a newsserver when
+ the was connection lost.
+
+177. $nntp_save_unsubscribed
+
+ Type: boolean
+
+ Default: no
+
+ Availability: NNTP
+
+ When set, info about unsubscribed newsgroups will be saved into the
+ ``newsrc'' file and into the news cache.
+
+178. $nntp_show_new_news
+
+ Type: boolean
+
+ Default: yes
+
+ Availability: NNTP
+
+ If set, the newsserver will be asked for new newsgroups on entering the
+ browser. Otherwise, it will be done only once for a newsserver. Also
+ controls whether or not the number of new articles of subscribed
+ newsgroups will be checked.
+
+179. $nntp_show_only_unread
+
+ Type: boolean
+
+ Default: no
+
+ Availability: NNTP
+
+ If set, only subscribed newsgroups that contain unread articles will be
+ displayed in the newsgroup browser.
+
+180. $nntp_user
+
+ Type: string
+
+ Default: ""
+
+ Availability: NNTP
+
+ Your login name on the NNTP server. If unset and the server requires
+ authentification, Mutt-ng will prompt you for your account name.
+
+181. $nntp_x_comment_to
+
+ Type: boolean
+
+ Default: no
+
+ Availability: NNTP
+
+ If set, Mutt-ng will add a ``X-Comment-To:'' header field (that contains
+ full name of the original article author) to articles that you followup
+ to.
+
+182. $operating_system
+
+ Type: string
+
+ Default: ""
+
+ This specifies the operating system name for the User-Agent: header field.
+ If this is unset, it will be set to the operating system name that
+ uname(2) returns. If uname(2) fails, ``UNIX'' will be used.
+
+ It may, for example, look as: ``mutt-ng 1.5.9i (Linux)''.
+
+183. $pager
+
+ Type: path
+
+ Default: "builtin"
+
+ This variable specifies which pager you would like to use to view
+ messages. ``builtin'' means to use the builtin pager, otherwise this
+ variable should specify the pathname of the external pager you would like
+ to use.
+
+ Using an external pager may have some disadvantages: Additional keystrokes
+ are necessary because you can't call Mutt-ng functions directly from the
+ pager, and screen resizes cause lines longer than the screen width to be
+ badly formatted in the help menu.
+
+184. $pager_context
+
+ Type: number
+
+ Default: 0
+
+ This variable controls the number of lines of context that are given when
+ displaying the next or previous page in the internal pager. By default,
+ Mutt-ng will display the line after the last one on the screen at the top
+ of the next page (0 lines of context).
+
+185. $pager_format
+
+ Type: string
+
+ Default: "-%Z- %C/%m: %-20.20n %s"
+
+ This variable controls the format of the one-line message ``status''
+ displayed before each message in either the internal or an external pager.
+ The valid sequences are listed in the ``$index_format'' section.
+
+186. $pager_index_lines
+
+ Type: number
+
+ Default: 0
+
+ Determines the number of lines of a mini-index which is shown when in the
+ pager. The current message, unless near the top or bottom of the folder,
+ will be roughly one third of the way down this mini-index, giving the
+ reader the context of a few messages before and after the message. This is
+ useful, for example, to determine how many messages remain to be read in
+ the current thread. One of the lines is reserved for the status bar from
+ the index, so a pager_index_lines of 6 will only show 5 lines of the
+ actual index. A value of 0 results in no index being shown. If the number
+ of messages in the current folder is less than pager_index_lines, then the
+ index will only use as many lines as it needs.
+
+187. $pager_stop
+
+ Type: boolean
+
+ Default: no
+
+ When set, the internal-pager will not move to the next message when you
+ are at the end of a message and invoke the next-page function.
+
+188. $pgp_auto_decode
+
+ Type: boolean
+
+ Default: no
+
+ If set, Mutt-ng will automatically attempt to decrypt traditional PGP
+ messages whenever the user performs an operation which ordinarily would
+ result in the contents of the message being operated on. For example, if
+ the user displays a pgp-traditional message which has not been manually
+ checked with the check-traditional-pgp function, Mutt-ng will
+ automatically check the message for traditional pgp.
+
+189. $pgp_autoinline
+
+ Type: boolean
+
+ Default: no
+
+ This option controls whether Mutt-ng generates old-style inline
+ (traditional) PGP encrypted or signed messages under certain
+ circumstances. This can be overridden by use of the pgp-menu, when inline
+ is not required.
+
+ Note that Mutt-ng might automatically use PGP/MIME for messages which
+ consist of more than a single MIME part. Mutt-ng can be configured to ask
+ before sending PGP/MIME messages when inline (traditional) would not work.
+ See also: ``$pgp_mime_auto''.
+
+ Also note that using the old-style PGP message format is
+ stronglydeprecated. (PGP only)
+
+190. $pgp_check_exit
+
+ Type: boolean
+
+ Default: yes
+
+ If set, Mutt-ng will check the exit code of the PGP subprocess when
+ signing or encrypting. A non-zero exit code means that the subprocess
+ failed. (PGP only)
+
+191. $pgp_clearsign_command
+
+ Type: string
+
+ Default: ""
+
+ This format is used to create a old-style ``clearsigned'' PGP message.
+
+ Note that the use of this format is stronglydeprecated. (PGP only)
+
+192. $pgp_decode_command
+
+ Type: string
+
+ Default: ""
+
+ This format strings specifies a command which is used to decode
+ application/pgp attachments.
+
+ The PGP command formats have their own set of printf(3)-like sequences:
+
+ %p
+
+ Expands to PGPPASSFD=0 when a pass phrase is needed, to an empty
+ string otherwise. Note: This may be used with a %? construct.
+
+ %f
+
+ Expands to the name of a file containing a message.
+
+ %s
+
+ Expands to the name of a file containing the signature part of a
+ multipart/signed attachment when verifying it.
+
+ %a
+
+ The value of $pgp_sign_as.
+
+ %r
+
+ One or more key IDs.
+
+ For examples on how to configure these formats for the various versions of
+ PGP which are floating around, see the pgp*.rc and gpg.rc files in the
+ samples/ subdirectory which has been installed on your system alongside
+ the documentation. (PGP only)
+
+193. $pgp_decrypt_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to decrypt a PGP encrypted message. (PGP only)
+
+194. $pgp_encrypt_only_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to encrypt a body part without signing it. (PGP only)
+
+195. $pgp_encrypt_sign_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to both sign and encrypt a body part. (PGP only)
+
+196. $pgp_entry_format
+
+ Type: string
+
+ Default: "%4n %t%f %4l/0x%k %-4a %2c %u"
+
+ This variable allows you to customize the PGP key selection menu to your
+ personal taste. This string is similar to ``$index_format'', but has its
+ own set of printf(3)-like sequences:
+
+ %n
+
+ number
+
+ %k
+
+ key id
+
+ %u
+
+ user id
+
+ %a
+
+ algorithm
+
+ %l
+
+ key length
+
+ %f
+
+ flags
+
+ %c
+
+ capabilities
+
+ %t
+
+ trust/validity of the key-uid association
+
+ %[<s>]
+
+ date of the key where <s> is an strftime(3) expression
+
+ (PGP only)
+
+197. $pgp_export_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to export a public key from the user's key ring. (PGP
+ only)
+
+198. $pgp_getkeys_command
+
+ Type: string
+
+ Default: ""
+
+ This command is invoked whenever Mutt-ng will need public key information.
+ %r is the only printf(3)-like sequence used with this format. (PGP only)
+
+199. $pgp_good_sign
+
+ Type: regular expression
+
+ Default: ""
+
+ If you assign a text to this variable, then a PGP signature is only
+ considered verified if the output from $pgp_verify_command contains the
+ text. Use this variable if the exit code from the command is 0 even for
+ bad signatures. (PGP only)
+
+200. $pgp_ignore_subkeys
+
+ Type: boolean
+
+ Default: yes
+
+ Setting this variable will cause Mutt-ng to ignore OpenPGP subkeys.
+ Instead, the principal key will inherit the subkeys' capabilities. Unset
+ this if you want to play interesting key selection games. (PGP only)
+
+201. $pgp_import_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to import a key from a message into the user's public
+ key ring. (PGP only)
+
+202. $pgp_list_pubring_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to list the public key ring's contents. The output
+ format must be analogous to the one used by gpg --list-keys --with-colons.
+
+ This format is also generated by the pgpring utility which comes with
+ Mutt-ng. (PGP only)
+
+203. $pgp_list_secring_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to list the secret key ring's contents. The output
+ format must be analogous to the one used by gpg --list-keys --with-colons.
+
+ This format is also generated by the pgpring utility which comes with
+ Mutt-ng. (PGP only)
+
+204. $pgp_long_ids
+
+ Type: boolean
+
+ Default: no
+
+ If set, use 64 bit PGP key IDs. Unset uses the normal 32 bit Key IDs. (PGP
+ only)
+
+205. $pgp_mime_auto
+
+ Type: quadoption
+
+ Default: ask-yes
+
+ This option controls whether Mutt-ng will prompt you for automatically
+ sending a (signed/encrypted) message using PGP/MIME when inline
+ (traditional) fails (for any reason).
+
+ Also note that using the old-style PGP message format is
+ stronglydeprecated. (PGP only)
+
+206. $pgp_replyinline
+
+ Type: boolean
+
+ Default: no
+
+ Setting this variable will cause Mutt-ng to always attempt to create an
+ inline (traditional) message when replying to a message which is PGP
+ encrypted/signed inline. This can be overridden by use of the pgp-menu,
+ when inline is not required. This option does not automatically detect if
+ the (replied-to) message is inline; instead it relies on Mutt-ng internals
+ for previously checked/flagged messages.
+
+ Note that Mutt-ng might automatically use PGP/MIME for messages which
+ consist of more than a single MIME part. Mutt-ng can be configured to ask
+ before sending PGP/MIME messages when inline (traditional) would not work.
+ See also: ``$pgp_mime_auto''.
+
+ Also note that using the old-style PGP message format is
+ stronglydeprecated. (PGP only)
+
+207. $pgp_retainable_sigs
+
+ Type: boolean
+
+ Default: no
+
+ If set, signed and encrypted messages will consist of nested
+ multipart/signed and multipart/encrypted body parts.
+
+ This is useful for applications like encrypted and signed mailing lists,
+ where the outer layer (multipart/encrypted) can be easily removed, while
+ the inner multipart/signed part is retained. (PGP only)
+
+208. $pgp_show_unusable
+
+ Type: boolean
+
+ Default: yes
+
+ If set, Mutt-ng will display non-usable keys on the PGP key selection
+ menu. This includes keys which have been revoked, have expired, or have
+ been marked as ``disabled'' by the user. (PGP only)
+
+209. $pgp_sign_as
+
+ Type: string
+
+ Default: ""
+
+ If you have more than one key pair, this option allows you to specify
+ which of your private keys to use. It is recommended that you use the
+ keyid form to specify your key (e.g., ``0x00112233''). (PGP only)
+
+210. $pgp_sign_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to create the detached PGP signature for a
+ multipart/signed PGP/MIME body part. (PGP only)
+
+211. $pgp_sort_keys
+
+ Type: sort order
+
+ Default: address
+
+ Specifies how the entries in the ``pgp keys'' menu are sorted. The
+ following are legal values:
+
+ address
+
+ sort alphabetically by user id
+
+ keyid
+
+ sort alphabetically by key id
+
+ date
+
+ sort by key creation date
+
+ trust
+
+ sort by the trust of the key
+
+ If you prefer reverse order of the above values, prefix it with
+ ``reverse-''. (PGP only)
+
+212. $pgp_strict_enc
+
+ Type: boolean
+
+ Default: yes
+
+ If set, Mutt-ng will automatically encode PGP/MIME signed messages as
+ quoted-printable. Please note that unsetting this variable may lead to
+ problems with non-verifyable PGP signatures, so only change this if you
+ know what you are doing. (PGP only)
+
+213. $pgp_timeout
+
+ Type: number
+
+ Default: 300
+
+ The number of seconds after which a cached passphrase will expire if not
+ used. Default: 300. (PGP only)
+
+214. $pgp_use_gpg_agent
+
+ Type: boolean
+
+ Default: no
+
+ If set, Mutt-ng will use a possibly-running gpg-agent process. (PGP only)
+
+215. $pgp_verify_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to verify PGP signatures. (PGP only)
+
+216. $pgp_verify_key_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to verify key information from the key selection
+ menu. (PGP only)
+
+217. $pipe_decode
+
+ Type: boolean
+
+ Default: no
+
+ Used in connection with the pipe-message command. When unset, Mutt-ng will
+ pipe the messages without any preprocessing. When set, Mutt-ng will weed
+ headers and will attempt to PGP/MIME decode the messages first.
+
+218. $pipe_sep
+
+ Type: string
+
+ Default: "\n"
+
+ The separator to add between messages when piping a list of tagged
+ messages to an external Unix command.
+
+219. $pipe_split
+
+ Type: boolean
+
+ Default: no
+
+ Used in connection with the pipe-message command and the ``tag- prefix''
+ or ``tag-prefix-cond'' operators. If this variable is unset, when piping a
+ list of tagged messages Mutt-ng will concatenate the messages and will
+ pipe them as a single folder. When set, Mutt-ng will pipe the messages one
+ by one. In both cases the messages are piped in the current sorted order,
+ and the ``$pipe_sep'' separator is added after each message.
+
+220. $pop_auth_try_all
+
+ Type: boolean
+
+ Default: yes
+
+ Availability: POP
+
+ If set, Mutt-ng will try all available methods. When unset, Mutt-ng will
+ only fall back to other authentication methods if the previous methods are
+ unavailable. If a method is available but authentication fails, Mutt-ng
+ will not connect to the POP server.
+
+221. $pop_authenticators
+
+ Type: string
+
+ Default: ""
+
+ Availability: POP
+
+ This is a colon-delimited list of authentication methods Mutt-ng may
+ attempt to use to log in to an POP server, in the order Mutt-ng should try
+ them. Authentication methods are either ``user'', ``apop'' or any SASL
+ mechanism, eg ``digest-md5'', ``gssapi'' or ``cram-md5''.
+
+ This parameter is case-insensitive. If this parameter is unset (the
+ default) Mutt-ng will try all available methods, in order from most-secure
+ to least-secure.
+
+ Example: set pop_authenticators="digest-md5:apop:user"
+
+222. $pop_delete
+
+ Type: quadoption
+
+ Default: ask-no
+
+ Availability: POP
+
+ If set, Mutt-ng will delete successfully downloaded messages from the POP
+ server when using the ``fetch-mail'' function. When unset, Mutt-ng will
+ download messages but also leave them on the POP server.
+
+223. $pop_host
+
+ Type: string
+
+ Default: ""
+
+ Availability: POP
+
+ The name of your POP server for the ``fetch-mail'' function. You can also
+ specify an alternative port, username and password, i.e.:
+
+ [pop[s]://][username[:password]@]popserver[:port]
+
+ Note: Storing passwords in a configuration file presents a security risk
+ since the superuser of your machine may read it regardless of the file's
+ permissions.
+
+224. $pop_last
+
+ Type: boolean
+
+ Default: no
+
+ Availability: POP
+
+ If this variable is set, Mutt-ng will try to use the ``LAST'' POP command
+ for retrieving only unread messages from the POP server when using the
+ ``fetch-mail'' function.
+
+225. $pop_mail_check
+
+ Type: number
+
+ Default: 60
+
+ Availability: POP
+
+ This variable configures how often (in seconds) POP should look for new
+ mail.
+
+226. $pop_pass
+
+ Type: string
+
+ Default: ""
+
+ Availability: POP
+
+ Specifies the password for your POP account. If unset, Mutt-ng will prompt
+ you for your password when you open POP mailbox.
+
+ Note: Storing passwords in a configuration file presents a security risk
+ since the superuser of your machine may read it regardless of the file's
+ permissions.
+
+227. $pop_reconnect
+
+ Type: quadoption
+
+ Default: ask-yes
+
+ Availability: POP
+
+ Controls whether or not Mutt-ng will try to reconnect to a POP server when
+ the connection is lost.
+
+228. $pop_user
+
+ Type: string
+
+ Default: ""
+
+ Availability: POP
+
+ Your login name on the POP server.
+
+ This variable defaults to your user name on the local machine.
+
+229. $post_indent_string
+
+ Type: string
+
+ Default: ""
+
+ Similar to the ``$attribution'' variable, Mutt-ng will append this string
+ after the inclusion of a message which is being replied to.
+
+230. $postpone
+
+ Type: quadoption
+
+ Default: ask-yes
+
+ Controls whether or not messages are saved in the ``$postponed'' mailbox
+ when you elect not to send immediately.
+
+231. $postponed
+
+ Type: path
+
+ Default: "~/postponed"
+
+ Mutt-ng allows you to indefinitely ``postpone sending a message'' which
+ you are editing. When you choose to postpone a message, Mutt-ng saves it
+ in the mailbox specified by this variable. Also see the ``$postpone''
+ variable.
+
+232. $preconnect
+
+ Type: string
+
+ Default: ""
+
+ If set, a shell command to be executed if Mutt-ng fails to establish a
+ connection to the server. This is useful for setting up secure
+ connections, e.g. with ssh(1). If the command returns a nonzero status,
+ Mutt-ng gives up opening the server. Example:
+
+ preconnect="ssh -f -q -L 1234:mailhost.net:143 mailhost.net sleep 20 <
+ /dev/null > /dev/null"
+
+ Mailbox ``foo'' on mailhost.net can now be reached as
+ ``{localhost:1234}foo''.
+
+ Note: For this example to work, you must be able to log in to the remote
+ machine without having to enter a password.
+
+233. $print
+
+ Type: quadoption
+
+ Default: ask-no
+
+ Controls whether or not Mutt-ng really prints messages. This is set to
+ ask-no by default, because some people accidentally hit ``p'' often.
+
+234. $print_command
+
+ Type: path
+
+ Default: "lpr"
+
+ This specifies the command pipe that should be used to print messages.
+
+235. $print_decode
+
+ Type: boolean
+
+ Default: yes
+
+ Used in connection with the print-message command. If this option is set,
+ the message is decoded before it is passed to the external command
+ specified by $print_command. If this option is unset, no processing will
+ be applied to the message when printing it. The latter setting may be
+ useful if you are using some advanced printer filter which is able to
+ properly format e-mail messages for printing.
+
+236. $print_split
+
+ Type: boolean
+
+ Default: no
+
+ Used in connection with the print-message command. If this option is set,
+ the command specified by $print_command is executed once for each message
+ which is to be printed. If this option is unset, the command specified by
+ $print_command is executed only once, and all the messages are
+ concatenated, with a form feed as the message separator.
+
+ Those who use the enscript(1) program's mail-printing mode will most
+ likely want to set this option.
+
+237. $prompt_after
+
+ Type: boolean
+
+ Default: yes
+
+ If you use an external ``$pager'', setting this variable will cause
+ Mutt-ng to prompt you for a command when the pager exits rather than
+ returning to the index menu. If unset, Mutt-ng will return to the index
+ menu when the external pager exits.
+
+238. $query_command
+
+ Type: path
+
+ Default: ""
+
+ This specifies the command that Mutt-ng will use to make external address
+ queries. The string should contain a %s, which will be substituted with
+ the query string the user types. See ``query'' for more information.
+
+239. $quit
+
+ Type: quadoption
+
+ Default: yes
+
+ This variable controls whether ``quit'' and ``exit'' actually quit from
+ Mutt-ng. If it set to yes, they do quit, if it is set to no, they have no
+ effect, and if it is set to ask-yes or ask-no, you are prompted for
+ confirmation when you try to quit.
+
+240. $quote_empty
+
+ Type: boolean
+
+ Default: yes
+
+ Controls whether or not empty lines will be quoted using
+ ``indent_string''.
+
+241. $quote_quoted
+
+ Type: boolean
+
+ Default: no
+
+ Controls how quoted lines will be quoted. If set, one quote character will
+ be added to the end of existing prefix. Otherwise, quoted lines will be
+ prepended by ``indent_string''.
+
+242. $quote_regexp
+
+ Type: regular expression
+
+ Default: "^([ \t]*[|>:}#])+"
+
+ A regular expression used in the internal-pager to determine quoted
+ sections of text in the body of a message.
+
+ Note: In order to use the quotedx patterns in the internal pager, you need
+ to set this to a regular expression that matches exactly the quote
+ characters at the beginning of quoted lines.
+
+243. $read_inc
+
+ Type: number
+
+ Default: 10
+
+ If set to a value greater than 0, Mutt-ng will display which message it is
+ currently on when reading a mailbox. The message is printed after read_inc
+ messages have been read (e.g., if set to 25, Mutt-ng will print a message
+ when it reads message 25, and then again when it gets to message 50). This
+ variable is meant to indicate progress when reading large mailboxes which
+ may take some time. When set to 0, only a single message will appear
+ before the reading the mailbox.
+
+ Also see the ``$write_inc'' variable.
+
+244. $read_only
+
+ Type: boolean
+
+ Default: no
+
+ If set, all folders are opened in read-only mode.
+
+245. $realname
+
+ Type: string
+
+ Default: ""
+
+ This variable specifies what ``real'' or ``personal'' name should be used
+ when sending messages.
+
+ By default, this is the GECOS field from /etc/passwd.
+
+ Note: This variable will not be used when the user has set a real name in
+ the $from variable.
+
+246. $recall
+
+ Type: quadoption
+
+ Default: ask-yes
+
+ Controls whether or not Mutt-ng recalls postponed messages when composing
+ a new message. Also see ``$postponed''.
+
+ Setting this variable to yes is not generally useful, and thus not
+ recommended.
+
+247. $record
+
+ Type: path
+
+ Default: ""
+
+ This specifies the file into which your outgoing messages should be
+ appended. (This is meant as the primary method for saving a copy of your
+ messages, but another way to do this is using the ``my_hdr'' command to
+ create a Bcc: header field with your email address in it.)
+
+ The value of $record is overridden by the ``$force_name'' and
+ ``$save_name'' variables, and the ``fcc-hook'' command.
+
+248. $reply_regexp
+
+ Type: regular expression
+
+ Default: "^(re([\[0-9\]+])*|aw):[ \t]*"
+
+ A regular expression used to recognize reply messages when threading and
+ replying. The default value corresponds to the English ``Re:'' and the
+ German ``Aw:''.
+
+249. $reply_self
+
+ Type: boolean
+
+ Default: no
+
+ If unset and you are replying to a message sent by you, Mutt-ng will
+ assume that you want to reply to the recipients of that message rather
+ than to yourself.
+
+250. $reply_to
+
+ Type: quadoption
+
+ Default: ask-yes
+
+ If set, when replying to a message, Mutt-ng will use the address listed in
+ the ``Reply-To:'' header field as the recipient of the reply. If unset, it
+ will use the address in the ``From:'' header field instead.
+
+ This option is useful for reading a mailing list that sets the
+ ``Reply-To:'' header field to the list address and you want to send a
+ private message to the author of a message.
+
+251. $resolve
+
+ Type: boolean
+
+ Default: yes
+
+ When set, the cursor will be automatically advanced to the next (possibly
+ undeleted) message whenever a command that modifies the current message is
+ executed.
+
+252. $reverse_alias
+
+ Type: boolean
+
+ Default: no
+
+ This variable controls whether or not Mutt-ng will display the
+ ``personal'' name from your aliases in the index menu if it finds an alias
+ that matches the message's sender. For example, if you have the following
+ alias:
+
+ alias juser abd30425@somewhere.net (Joe User)
+
+ and then you receive mail which contains the following header:
+
+ From: abd30425@somewhere.net
+
+ It would be displayed in the index menu as ``Joe User'' instead of
+ ``abd30425@somewhere.net.'' This is useful when the person's e-mail
+ address is not human friendly (like CompuServe addresses).
+
+253. $reverse_name
+
+ Type: boolean
+
+ Default: no
+
+ It may sometimes arrive that you receive mail to a certain machine, move
+ the messages to another machine, and reply to some the messages from
+ there. If this variable is set, the default From: line of the reply
+ messages is built using the address where you received the messages you
+ are replying to if that address matches your alternates. If the variable
+ is unset, or the address that would be used doesn't match your alternates,
+ the From: line will use your address on the current machine.
+
+254. $reverse_realname
+
+ Type: boolean
+
+ Default: yes
+
+ This variable fine-tunes the behaviour of the reverse_name feature. When
+ it is set, Mutt-ng will use the address from incoming messages as-is,
+ possibly including eventual real names. When it is unset, Mutt-ng will
+ override any such real names with the setting of the realname variable.
+
+255. $rfc2047_parameters
+
+ Type: boolean
+
+ Default: no
+
+ When this variable is set, Mutt-ng will decode RFC-2047-encoded MIME
+ parameters. You want to set this variable when Mutt-ng suggests you to
+ save attachments to files named like this:
+
+ =?iso-8859-1?Q?file=5F=E4=5F991116=2Ezip?=
+
+ When this variable is set interactively, the change doesn't have the
+ desired effect before you have changed folders.
+
+ Note that this use of RFC 2047's encoding is explicitly, prohibited by the
+ standard, but nevertheless encountered in the wild.
+
+ Also note that setting this parameter will not have the effect that
+ Mutt-ng generates this kind of encoding. Instead, Mutt-ng will
+ unconditionally use the encoding specified in RFC 2231.
+
+256. $save_address
+
+ Type: boolean
+
+ Default: no
+
+ If set, Mutt-ng will take the sender's full address when choosing a
+ default folder for saving a mail. If ``$save_name'' or ``$force_name'' is
+ set too, the selection of the fcc folder will be changed as well.
+
+257. $save_empty
+
+ Type: boolean
+
+ Default: yes
+
+ When unset, mailboxes which contain no saved messages will be removed when
+ closed (the exception is ``$spoolfile'' which is never removed). If set,
+ mailboxes are never removed.
+
+ Note: This only applies to mbox and MMDF folders, Mutt-ng does not delete
+ MH and Maildir directories.
+
+258. $save_name
+
+ Type: boolean
+
+ Default: no
+
+ This variable controls how copies of outgoing messages are saved. When
+ set, a check is made to see if a mailbox specified by the recipient
+ address exists (this is done by searching for a mailbox in the ``$folder''
+ directory with the username part of the recipient address). If the mailbox
+ exists, the outgoing message will be saved to that mailbox, otherwise the
+ message is saved to the ``$record'' mailbox.
+
+ Also see the ``$force_name'' variable.
+
+259. $score
+
+ Type: boolean
+
+ Default: yes
+
+ When this variable is unset, scoring is turned off. This can be useful to
+ selectively disable scoring for certain folders when the
+ ``$score_threshold_delete'' variable and friends are used.
+
+260. $score_threshold_delete
+
+ Type: number
+
+ Default: -1
+
+ Messages which have been assigned a score equal to or lower than the value
+ of this variable are automatically marked for deletion by Mutt-ng. Since
+ Mutt-ng scores are always greater than or equal to zero, the default
+ setting of this variable will never mark a message for deletion.
+
+261. $score_threshold_flag
+
+ Type: number
+
+ Default: 9999
+
+ Messages which have been assigned a score greater than or equal to this
+ variable's value are automatically marked ``flagged''.
+
+262. $score_threshold_read
+
+ Type: number
+
+ Default: -1
+
+ Messages which have been assigned a score equal to or lower than the value
+ of this variable are automatically marked as read by Mutt-ng. Since
+ Mutt-ng scores are always greater than or equal to zero, the default
+ setting of this variable will never mark a message read.
+
+263. $send_charset
+
+ Type: string
+
+ Default: "us-ascii:iso-8859-1:utf-8"
+
+ A list of character sets for outgoing messages. Mutt-ng will use the first
+ character set into which the text can be converted exactly. If your
+ ``$charset'' is not iso-8859-1 and recipients may not understand UTF-8, it
+ is advisable to include in the list an appropriate widely used standard
+ character set (such as iso-8859-2, koi8-r or iso-2022-jp) either instead
+ of or after iso-8859-1.
+
+264. $sendmail
+
+ Type: path
+
+ Default: "/usr/sbin/sendmail -oem -oi"
+
+ Specifies the program and arguments used to deliver mail sent by Mutt-ng.
+ Mutt-ng expects that the specified program interprets additional arguments
+ as recipient addresses.
+
+265. $sendmail_wait
+
+ Type: number
+
+ Default: 0
+
+ Specifies the number of seconds to wait for the ``$sendmail'' process to
+ finish before giving up and putting delivery in the background.
+
+ Mutt-ng interprets the value of this variable as follows:
+
+ >0
+
+ number of seconds to wait for sendmail to finish before continuing
+
+ 0
+
+ wait forever for sendmail to finish
+
+ <0
+
+ always put sendmail in the background without waiting
+
+ Note that if you specify a value other than 0, the output of the child
+ process will be put in a temporary file. If there is some error, you will
+ be informed as to where to find the output.
+
+266. $shell
+
+ Type: path
+
+ Default: ""
+
+ Command to use when spawning a subshell. By default, the user's login
+ shell from /etc/passwd is used.
+
+267. $sidebar_boundary
+
+ Type: string
+
+ Default: "."
+
+ When the sidebar is displayed and $sidebar_shorten_hierarchy is set, this
+ variable specifies the characters at which to split a folder name into
+ ``hierarchy items.''
+
+268. $sidebar_delim
+
+ Type: string
+
+ Default: "|"
+
+ This specifies the delimiter between the sidebar (if visible) and other
+ screens.
+
+269. $sidebar_newmail_only
+
+ Type: boolean
+
+ Default: no
+
+ If set, only folders with new mail will be shown in the sidebar.
+
+270. $sidebar_number_format
+
+ Type: string
+
+ Default: "%m%?n?(%n)?%?f?[%f]?"
+
+ This variable controls how message counts are printed when the sidebar is
+ enabled. If this variable is empty (and only if), no numbers will be
+ printed and mutt-ng won't frequently count mail (which may be a great
+ speedup esp. with mbox-style mailboxes.)
+
+ The following printf(3)-like sequences are supported all of which may be
+ printed non-zero:
+
+ %d
+
+ Number of deleted messages. 1)
+
+ %F
+
+ Number of flagged messages.
+
+ %m
+
+ Total number of messages.
+
+ %M
+
+ Total number of messages shown, i.e. not hidden by a limit. 1)
+
+ %n
+
+ Number of new messages.
+
+ %t
+
+ Number of tagged messages. 1)
+
+ 1) These expandos only have a non-zero value for the current mailbox and
+ will always be zero otherwise.
+
+271. $sidebar_shorten_hierarchy
+
+ Type: boolean
+
+ Default: no
+
+ When set, the ``hierarchy'' of the sidebar entries will be shortened only
+ if they cannot be printed in full length (because ``$sidebar_width'' is
+ set to a too low value). For example, if the newsgroup name
+ ``de.alt.sysadmin.recovery'' doesn't fit on the screen, it'll get
+ shortened ``d.a.s.recovery'' while ``de.alt.d0'' still would and thus will
+ not get shortened.
+
+ At which characters this compression is done is controled via the
+ $sidebar_boundary variable.
+
+272. $sidebar_visible
+
+ Type: boolean
+
+ Default: no
+
+ This specifies whether or not to show the sidebar (a list of folders
+ specified with the ``mailboxes'' command).
+
+273. $sidebar_width
+
+ Type: number
+
+ Default: 0
+
+ The width of the sidebar.
+
+274. $sig_dashes
+
+ Type: boolean
+
+ Default: yes
+
+ If set, a line containing ``-- '' (dash, dash, space) will be inserted
+ before your ``$signature''. It is strongly recommended that you not unset
+ this variable unless your ``signature'' contains just your name. The
+ reason for this is because many software packages use ``-- \n'' to detect
+ your signature.
+
+ For example, Mutt-ng has the ability to highlight the signature in a
+ different color in the builtin pager.
+
+275. $sig_on_top
+
+ Type: boolean
+
+ Default: no
+
+ If set, the signature will be included before any quoted or forwarded
+ text. It is strongly recommended that you do not set this variable unless
+ you really know what you are doing, and are prepared to take some heat
+ from netiquette guardians.
+
+276. $signature
+
+ Type: path
+
+ Default: "~/.signature"
+
+ Specifies the filename of your signature, which is appended to all
+ outgoing messages. If the filename ends with a pipe (``|''), it is assumed
+ that filename is a shell command and input should be read from its stdout.
+
+277. $signoff_string
+
+ Type: string
+
+ Default: ""
+
+ If set, this string will be inserted before the signature. This is useful
+ for people that want to sign off every message they send with their name.
+
+ If you want to insert your website's URL, additional contact information
+ or witty quotes into your mails, better use a signature file instead of
+ the signoff string.
+
+278. $simple_search
+
+ Type: string
+
+ Default: "~f %s | ~s %s"
+
+ Specifies how Mutt-ng should expand a simple search into a real search
+ pattern. A simple search is one that does not contain any of the ~
+ operators. See ``patterns'' for more information on search patterns.
+
+ For example, if you simply type ``joe'' at a search or limit prompt,
+ Mutt-ng will automatically expand it to the value specified by this
+ variable. For the default value it would be:
+
+ ~f joe | ~s joe
+
+279. $sleep_time
+
+ Type: number
+
+ Default: 1
+
+ Specifies time, in seconds, to pause while displaying certain
+ informational messages, while moving from folder to folder and after
+ expunging messages from the current folder. The default is to pause one
+ second, so a value of zero for this option suppresses the pause.
+
+280. $smart_wrap
+
+ Type: boolean
+
+ Default: yes
+
+ Controls the display of lines longer than the screen width in the internal
+ pager. If set, long lines are wrapped at a word boundary. If unset, lines
+ are simply wrapped at the screen edge. Also see the ``$markers'' variable.
+
+281. $smileys
+
+ Type: regular expression
+
+ Default: "(>From )|(:[-^]?[][)(><}{|/DP])"
+
+ The pager uses this variable to catch some common false positives of
+ ``$quote_regexp'', most notably smileys in the beginning of a line
+
+282. $smime_ask_cert_label
+
+ Type: boolean
+
+ Default: yes
+
+ This flag controls whether you want to be asked to enter a label for a
+ certificate about to be added to the database or not. It is set by
+ default. (S/MIME only)
+
+283. $smime_ca_location
+
+ Type: path
+
+ Default: ""
+
+ This variable contains the name of either a directory, or a file which
+ contains trusted certificates for use with OpenSSL. (S/MIME only)
+
+284. $smime_certificates
+
+ Type: path
+
+ Default: ""
+
+ Since there is no pubring/secring as with PGP, Mutt-ng has to handle
+ storage and retrieval of keys by itself. This is very basic right now, and
+ keys and certificates are stored in two different directories, both named
+ as the hash-value retrieved from OpenSSL. There is an index file which
+ contains mailbox-address keyid pairs, and which can be manually edited.
+ This one points to the location of the certificates. (S/MIME only)
+
+285. $smime_decrypt_command
+
+ Type: string
+
+ Default: ""
+
+ This format string specifies a command which is used to decrypt
+ application/x-pkcs7-mime attachments.
+
+ The OpenSSL command formats have their own set of printf(3)-like sequences
+ similar to PGP's:
+
+ %f
+
+ Expands to the name of a file containing a message.
+
+ %s
+
+ Expands to the name of a file containing the signature part of a
+ multipart/signed attachment when verifying it.
+
+ %k
+
+ The key-pair specified with $smime_default_key
+
+ %c
+
+ One or more certificate IDs.
+
+ %a
+
+ The algorithm used for encryption.
+
+ %C
+
+ CA location: Depending on whether $smime_ca_location points to a
+ directory or file, this expands to "-CApath $smime_ca_location" or
+ "-CAfile $smime_ca_location".
+
+ For examples on how to configure these formats, see the smime.rc in the
+ samples/ subdirectory which has been installed on your system alongside
+ the documentation. (S/MIME only)
+
+286. $smime_decrypt_use_default_key
+
+ Type: boolean
+
+ Default: yes
+
+ If set (default) this tells Mutt-ng to use the default key for decryption.
+ Otherwise, if manage multiple certificate-key-pairs, Mutt-ng will try to
+ use the mailbox-address to determine the key to use. It will ask you to
+ supply a key, if it can't find one. (S/MIME only)
+
+287. $smime_default_key
+
+ Type: string
+
+ Default: ""
+
+ This is the default key-pair to use for signing. This must be set to the
+ keyid (the hash-value that OpenSSL generates) to work properly (S/MIME
+ only)
+
+288. $smime_encrypt_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to create encrypted S/MIME messages. (S/MIME only)
+
+289. $smime_encrypt_with
+
+ Type: string
+
+ Default: ""
+
+ This sets the algorithm that should be used for encryption. Valid choices
+ are ``des'', ``des3'', ``rc2-40'', ``rc2-64'', ``\frc2-128''.
+
+ If unset ``3des'' (TripleDES) is used. (S/MIME only)
+
+290. $smime_get_cert_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to extract X509 certificates from a PKCS7 structure.
+ (S/MIME only)
+
+291. $smime_get_cert_email_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to extract the mail address(es) used for storing X509
+ certificates, and for verification purposes (to check whether the
+ certificate was issued for the sender's mailbox). (S/MIME only)
+
+292. $smime_get_signer_cert_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to extract only the signers X509 certificate from a
+ S/MIME signature, so that the certificate's owner may get compared to the
+ email's ``From:'' header field. (S/MIME only)
+
+293. $smime_import_cert_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to import a certificate via smime_keysng. (S/MIME
+ only)
+
+294. $smime_is_default
+
+ Type: boolean
+
+ Default: no
+
+ The default behaviour of Mutt-ng is to use PGP on all auto-sign/encryption
+ operations. To override and to use OpenSSL instead this must be set.
+
+ However, this has no effect while replying, since Mutt-ng will
+ automatically select the same application that was used to sign/encrypt
+ the original message.
+
+ (Note that this variable can be overridden by unsetting $crypt_autosmime.)
+ (S/MIME only)
+
+295. $smime_keys
+
+ Type: path
+
+ Default: ""
+
+ Since there is no pubring/secring as with PGP, Mutt-ng has to handle
+ storage ad retrieval of keys/certs by itself. This is very basic right
+ now, and stores keys and certificates in two different directories, both
+ named as the hash-value retrieved from OpenSSL. There is an index file
+ which contains mailbox-address keyid pair, and which can be manually
+ edited. This one points to the location of the private keys. (S/MIME only)
+
+296. $smime_pk7out_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to extract PKCS7 structures of S/MIME signatures, in
+ order to extract the public X509 certificate(s). (S/MIME only)
+
+297. $smime_sign_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to created S/MIME signatures of type
+ multipart/signed, which can be read by all mail clients. (S/MIME only)
+
+298. $smime_sign_opaque_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to created S/MIME signatures of type
+ application/x-pkcs7-signature, which can only be handled by mail clients
+ supporting the S/MIME extension. (S/MIME only)
+
+299. $smime_timeout
+
+ Type: number
+
+ Default: 300
+
+ The number of seconds after which a cached passphrase will expire if not
+ used. (S/MIME only)
+
+300. $smime_verify_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to verify S/MIME signatures of type multipart/signed.
+ (S/MIME only)
+
+301. $smime_verify_opaque_command
+
+ Type: string
+
+ Default: ""
+
+ This command is used to verify S/MIME signatures of type
+ application/x-pkcs7-mime. (S/MIME only)
+
+302. $smtp_host
+
+ Type: string
+
+ Default: ""
+
+ Availability: SMTP
+
+ Defines the SMTP host which will be used to deliver mail, as opposed to
+ invoking the sendmail binary. Setting this variable overrides the value of
+ ``$sendmail'', and any associated variables.
+
+303. $smtp_pass
+
+ Type: string
+
+ Default: ""
+
+ Availability: SMTP
+
+ Defines the password to use with SMTP AUTH. If ``$smtp_user'' is set, but
+ this variable is not, you will be prompted for a password when sending.
+
+ Note: Storing passwords in a configuration file presents a security risk
+ since the superuser of your machine may read it regardless of the file's
+ permissions.
+
+304. $smtp_port
+
+ Type: number
+
+ Default: 25
+
+ Availability: SMTP
+
+ Defines the port that the SMTP host is listening on for mail delivery.
+ Must be specified as a number.
+
+ Defaults to 25, the standard SMTP port, but RFC 2476-compliant SMTP
+ servers will probably desire 587, the mail submission port.
+
+305. $smtp_use_tls
+
+ Type: string
+
+ Default: ""
+
+ Availability: SMTP (and SSL)
+
+ Defines wether to use STARTTLS. If this option is set to ``required'' and
+ the server does not support STARTTLS or there is an error in the TLS
+ Handshake, the connection will fail. Setting this to ``enabled'' will try
+ to start TLS and continue without TLS in case of an error. Muttng still
+ needs to have SSL support enabled in order to use it.
+
+306. $smtp_user
+
+ Type: string
+
+ Default: ""
+
+ Availability: SMTP
+
+ Defines the username to use with SMTP AUTH. Setting this variable will
+ cause Mutt-ng to attempt to use SMTP AUTH when sending.
+
+307. $sort
+
+ Type: sort order
+
+ Default: date
+
+ Specifies how to sort messages in the index menu. Valid values are:
+
+ date or date-sent
+ date-received
+ from
+ mailbox-order (unsorted)
+ score
+ size
+ spam
+ subject
+ threads
+ to
+
+
+ You may optionally use the ``reverse-'' prefix to specify reverse sorting
+ order (example: set sort=reverse-date-sent).
+
+308. $sort_alias
+
+ Type: sort order
+
+ Default: alias
+
+ Specifies how the entries in the ``alias'' menu are sorted. The following
+ are legal values:
+
+ address (sort alphabetically by email address)
+ alias (sort alphabetically by alias name)
+ unsorted (leave in order specified in .muttrc)
+
+
+309. $sort_aux
+
+ Type: sort order
+
+ Default: date
+
+ When sorting by threads, this variable controls how threads are sorted in
+ relation to other threads, and how the branches of the thread trees are
+ sorted. This can be set to any value that ``$sort'' can, except threads
+ (in that case, Mutt-ng will just use date-sent). You can also specify the
+ ``last-'' prefix in addition to ``reverse-'' prefix, but last- must come
+ after reverse-. The last- prefix causes messages to be sorted against its
+ siblings by which has the last descendant, using the rest of sort_aux as
+ an ordering.
+
+ For instance, set sort_aux=last-date-received would mean that if a new
+ message is received in a thread, that thread becomes the last one
+ displayed (or the first, if you have set sort=reverse-threads.)
+
+ Note: For reversed ``$sort'' order $sort_aux is reversed again (which is
+ not the right thing to do, but kept to not break any existing
+ configuration setting).
+
+310. $sort_browser
+
+ Type: sort order
+
+ Default: alpha
+
+ Specifies how to sort entries in the file browser. By default, the entries
+ are sorted alphabetically. Valid values:
+
+ alpha (alphabetically)
+ date
+ size
+ unsorted
+
+
+ You may optionally use the ``reverse-'' prefix to specify reverse sorting
+ order (example: set sort_browser=reverse-date).
+
+311. $sort_re
+
+ Type: boolean
+
+ Default: yes
+
+ This variable is only useful when sorting by threads with
+ ``$strict_threads'' unset. In that case, it changes the heuristic Mutt-ng
+ uses to thread messages by subject. With $sort_reset, Mutt-ng will only
+ attach a message as the child of another message by subject if the subject
+ of the child message starts with a substring matching the setting of
+ ``$reply_regexp''. With $sort_reunset, Mutt-ng will attach the message
+ whether or not this is the case, as long as the non-``$reply_regexp''
+ parts of both messages are identical.
+
+312. $spam_separator
+
+ Type: string
+
+ Default: ","
+
+ ``spam_separator'' controls what happens when multiple spam headers are
+ matched: if unset, each successive header will overwrite any previous
+ matches value for the spam label. If set, each successive match will
+ append to the previous, using ``spam_separator'' as a separator.
+
+313. $spoolfile
+
+ Type: path
+
+ Default: ""
+
+ If your spool mailbox is in a non-default place where Mutt-ng cannot find
+ it, you can specify its location with this variable. Mutt-ng will
+ automatically set this variable to the value of the environment variable
+ $MAIL if it is not set.
+
+314. $ssl_ca_certificates_file
+
+ Type: path
+
+ Default: ""
+
+ This variable specifies a file containing trusted CA certificates. Any
+ server certificate that is signed with one of these CA certificates are
+ also automatically accepted.
+
+ Example: set ssl_ca_certificates_file=/etc/ssl/certs/ca-certificates.crt
+
+315. $ssl_client_cert
+
+ Type: path
+
+ Default: ""
+
+ Availability: SSL
+
+ The file containing a client certificate and its associated private key.
+
+316. $ssl_force_tls
+
+ Type: boolean
+
+ Default: no
+
+ If this variable is set, mutt-ng will require that all connections to
+ remote servers be encrypted. Furthermore it will attempt to negotiate TLS
+ even if the server does not advertise the capability, since it would
+ otherwise have to abort the connection anyway. This option supersedes
+ ``$ssl_starttls''.
+
+317. $ssl_min_dh_prime_bits
+
+ Type: number
+
+ Default: 0
+
+ Availability: GNUTLS
+
+ This variable specifies the minimum acceptable prime size (in bits) for
+ use in any Diffie-Hellman key exchange. A value of 0 will use the default
+ from the GNUTLS library.
+
+318. $ssl_starttls
+
+ Type: quadoption
+
+ Default: yes
+
+ Availability: SSL or GNUTLS
+
+ If set (the default), Mutt-ng will attempt to use STARTTLS on servers
+ advertising the capability. When unset, Mutt-ng will not attempt to use
+ STARTTLS regardless of the server's capabilities.
+
+319. $ssl_use_sslv2
+
+ Type: boolean
+
+ Default: yes
+
+ Availability: SSL
+
+ This variables specifies whether to attempt to use SSLv2 in the SSL
+ authentication process.
+
+320. $ssl_use_sslv3
+
+ Type: boolean
+
+ Default: yes
+
+ Availability: SSL or GNUTLS
+
+ This variables specifies whether to attempt to use SSLv3 in the SSL
+ authentication process.
+
+321. $ssl_use_tlsv1
+
+ Type: boolean
+
+ Default: yes
+
+ Availability: SSL or GNUTLS
+
+ This variables specifies whether to attempt to use TLSv1 in the SSL
+ authentication process.
+
+322. $ssl_usesystemcerts
+
+ Type: boolean
+
+ Default: yes
+
+ Availability: SSL
+
+ If set to yes, Mutt-ng will use CA certificates in the system-wide
+ certificate store when checking if server certificate is signed by a
+ trusted CA.
+
+323. $status_chars
+
+ Type: string
+
+ Default: "-*%A"
+
+ Controls the characters used by the ``%r'' indicator in
+ ``$status_format''. The first character is used when the mailbox is
+ unchanged. The second is used when the mailbox has been changed, and it
+ needs to be resynchronized. The third is used if the mailbox is in
+ read-only mode, or if the mailbox will not be written when exiting that
+ mailbox (You can toggle whether to write changes to a mailbox with the
+ toggle-write operation, bound by default to ``%''). The fourth is used to
+ indicate that the current folder has been opened in attach-message mode
+ (Certain operations like composing a new mail, replying, forwarding, etc.
+ are not permitted in this mode).
+
+324. $status_format
+
+ Type: string
+
+ Default: "-%r-Mutt-ng: %f [Msgs:%?M?%M/?%m%?n? New:%n?%?o? Old:%o?%?d?
+ Del:%d?%?F? Flag:%F?%?t? Tag:%t?%?p? Post:%p?%?b? Inc:%b?%?l?
+ %l?]---(%s/%S)-%>-(%P)---"
+
+ Controls the format of the status line displayed in the index menu. This
+ string is similar to ``$index_format'', but has its own set of
+ printf(3)-like sequences:
+
+ %b
+
+ number of mailboxes with new mail *
+
+ %B
+
+ the short pathname of the current mailbox
+
+ %d
+
+ number of deleted messages *
+
+ %f
+
+ the full pathname of the current mailbox
+
+ %F
+
+ number of flagged messages *
+
+ %h
+
+ local hostname
+
+ %l
+
+ size (in bytes) of the current mailbox *
+
+ %L
+
+ size (in bytes) of the messages shown (i.e., which match the
+ current limit) *
+
+ %m
+
+ the number of messages in the mailbox *
+
+ %M
+
+ the number of messages shown (i.e., which match the current limit)
+ *
+
+ %n
+
+ number of new messages in the mailbox *
+
+ %o
+
+ number of old unread messages *
+
+ %p
+
+ number of postponed messages *
+
+ %P
+
+ percentage of the way through the index
+
+ %r
+
+ modified/read-only/won't-write/attach-message indicator, according
+ to $status_chars
+
+ %s
+
+ current sorting mode ($sort)
+
+ %S
+
+ current aux sorting method ($sort_aux)
+
+ %t
+
+ number of tagged messages *
+
+ %u
+
+ number of unread messages *
+
+ %v
+
+ Mutt-ng version string
+
+ %V
+
+ currently active limit pattern, if any *
+
+ %>X
+
+ right justify the rest of the string and pad with "X"
+
+ %|X
+
+ pad to the end of the line with "X"
+
+ * = can be optionally printed if nonzero
+
+ Some of the above sequences can be used to optionally print a string if
+ their value is nonzero. For example, you may only want to see the number
+ of flagged messages if such messages exist, since zero is not particularly
+ meaningful. To optionally print a string based upon one of the above
+ sequences, the following construct is used
+
+ %?<sequence_char>?<optional_string>?
+
+ where sequence_char is a character from the table above, and
+ optional_string is the string you would like printed if sequence_char is
+ nonzero. optional_stringmay contain other sequences as well as normal
+ text, but you may not nest optional strings.
+
+ Here is an example illustrating how to optionally print the number of new
+ messages in a mailbox:
+
+ %?n?%n new messages.?
+
+ Additionally you can switch between two strings, the first one, if a value
+ is zero, the second one, if the value is nonzero, by using the following
+ construct:
+
+ %?<sequence_char>?<if_string>&<else_string>?
+
+ You can additionally force the result of any printf(3)-like sequence to be
+ lowercase by prefixing the sequence character with an underscore (_) sign.
+ For example, if you want to display the local hostname in lowercase, you
+ would use:
+
+ %_h
+
+ If you prefix the sequence character with a colon (:) character, Mutt-ng
+ will replace any dots in the expansion by underscores. This might be
+ helpful with IMAP folders that don't like dots in folder names.
+
+325. $status_on_top
+
+ Type: boolean
+
+ Default: no
+
+ Setting this variable causes the ``status bar'' to be displayed on the
+ first line of the screen rather than near the bottom.
+
+326. $strict_mailto
+
+ Type: boolean
+
+ Default: yes
+
+ With mailto: style links, a body as well as arbitrary header information
+ may be embedded. This may lead to (user) headers being overwriten without
+ note if ``$edit_headers'' is unset.
+
+ If this variable is set, mutt-ng is strict and allows anything to be
+ changed. If it's unset, all headers given will be prefixed with
+ ``X-Mailto-'' and the message including headers will be shown in the
+ editor regardless of what ``$edit_headers'' is set to.
+
+327. $strict_mime
+
+ Type: boolean
+
+ Default: yes
+
+ When unset, non MIME-compliant messages that doesn't have any charset
+ indication in the ``Content-Type:'' header field can be displayed (non
+ MIME-compliant messages are often generated by old mailers or buggy
+ mailers like MS Outlook Express). See also $assumed_charset.
+
+ This option also replaces linear-white-space between encoded-word and
+ *text to a single space to prevent the display of MIME-encoded
+ ``Subject:'' header field from being devided into multiple lines.
+
+328. $strict_threads
+
+ Type: boolean
+
+ Default: no
+
+ If set, threading will only make use of the ``In-Reply-To:'' and
+ ``References:'' header fields when you ``$sort'' by message threads. By
+ default, messages with the same subject are grouped together in ``pseudo
+ threads.'' This may not always be desirable, such as in a personal mailbox
+ where you might have several unrelated messages with the subject ``hi''
+ which will get grouped together. See also ``$sort_re'' for a less drastic
+ way of controlling this behaviour.
+
+329. $strip_was
+
+ Type: boolean
+
+ Default: no
+
+ When set, mutt-ng will remove the trailing part of the ``Subject:'' line
+ which matches $strip_was_regex when replying. This is useful to properly
+ react on subject changes and reduce ``subject noise.'' (esp. in Usenet)
+
+330. $strip_was_regex
+
+ Type: regular expression
+
+ Default: "\([Ww][Aa][RrSs]: .*\)[ ]*$"
+
+ When non-empty and $strip_was is set, mutt-ng will remove this trailing
+ part of the ``Subject'' line when replying if it won't be empty
+ afterwards.
+
+331. $stuff_quoted
+
+ Type: boolean
+
+ Default: no
+
+ If set, attachments with flowed format will have their quoting
+ ``stuffed'', i.e. a space will be inserted between the quote characters
+ and the actual text.
+
+332. $suspend
+
+ Type: boolean
+
+ Default: yes
+
+ When unset, Mutt-ng won't stop when the user presses the terminal's susp
+ key, usually CTRL+Z. This is useful if you run Mutt-ng inside an xterm
+ using a command like ``xterm -e muttng.''
+
+333. $text_flowed
+
+ Type: boolean
+
+ Default: no
+
+ When set, Mutt-ng will generate text/plain; format=flowed attachments.
+ This format is easier to handle for some mailing software, and generally
+ just looks like ordinary text. To actually make use of this format's
+ features, you'll need support in your editor.
+
+ Note that $indent_string is ignored when this option is set.
+
+334. $thorough_search
+
+ Type: boolean
+
+ Default: no
+
+ Affects the ~b and ~h search operations described in section ``patterns''
+ above. If set, the headers and attachments of messages to be searched are
+ decoded before searching. If unset, messages are searched as they appear
+ in the folder.
+
+335. $thread_received
+
+ Type: boolean
+
+ Default: no
+
+ When set, Mutt-ng uses the date received rather than the date sent to
+ thread messages by subject.
+
+336. $tilde
+
+ Type: boolean
+
+ Default: no
+
+ When set, the internal-pager will pad blank lines to the bottom of the
+ screen with a tilde (~).
+
+337. $timeout
+
+ Type: number
+
+ Default: 600
+
+ This variable controls the number of seconds Mutt-ng will wait for a key
+ to be pressed in the main menu before timing out and checking for new
+ mail. A value of zero or less will cause Mutt-ng to never time out.
+
+338. $tmpdir
+
+ Type: path
+
+ Default: ""
+
+ This variable allows you to specify where Mutt-ng will place its temporary
+ files needed for displaying and composing messages. If this variable is
+ not set, the environment variable $TMPDIR is used. If $TMPDIR is not set
+ then "/tmp" is used.
+
+339. $to_chars
+
+ Type: string
+
+ Default: " +TCFL"
+
+ Controls the character used to indicate mail addressed to you. The first
+ character is the one used when the mail is NOT addressed to your address
+ (default: space). The second is used when you are the only recipient of
+ the message (default: +). The third is when your address appears in the
+ ``To:'' header field, but you are not the only recipient of the message
+ (default: T). The fourth character is used when your address is specified
+ in the ``Cc:'' header field, but you are not the only recipient. The fifth
+ character is used to indicate mail that was sent by you. The sixth
+ character is used to indicate when a mail was sent to a mailing-list
+ you're subscribe to (default: L).
+
+340. $trash
+
+ Type: path
+
+ Default: ""
+
+ If set, this variable specifies the path of the trash folder where the
+ mails marked for deletion will be moved, instead of being irremediably
+ purged.
+
+ Note: When you delete a message in the trash folder, it is really deleted,
+ so that there is no way to recover mail.
+
+341. $tunnel
+
+ Type: string
+
+ Default: ""
+
+ Setting this variable will cause Mutt-ng to open a pipe to a command
+ instead of a raw socket. You may be able to use this to set up
+ preauthenticated connections to your IMAP/POP3 server. Example:
+
+ tunnel="ssh -q mailhost.net /usr/local/libexec/imapd"
+
+ Note: For this example to work you must be able to log in to the remote
+ machine without having to enter a password.
+
+342. $umask
+
+ Type: number
+
+ Default: 0077
+
+ This sets the umask that will be used by Mutt-ng when creating all kinds
+ of files. If unset, the default value is 077.
+
+343. $uncollapse_jump
+
+ Type: boolean
+
+ Default: no
+
+ When set, Mutt-ng will jump to the next unread message, if any, when the
+ current thread is uncollapsed.
+
+344. $use_8bitmime
+
+ Type: boolean
+
+ Default: no
+
+ Warning: do not set this variable unless you are using a version of
+ sendmail which supports the -B8BITMIME flag (such as sendmail 8.8.x) or in
+ connection with the SMTP support via libESMTP. Otherwise you may not be
+ able to send mail.
+
+ When set, Mutt-ng will either invoke ``$sendmail'' with the -B8BITMIME
+ flag when sending 8-bit messages to enable ESMTP negotiation or tell
+ libESMTP to do so.
+
+345. $use_domain
+
+ Type: boolean
+
+ Default: yes
+
+ When set, Mutt-ng will qualify all local addresses (ones without the @host
+ portion) with the value of ``$hostname''. If unset, no addresses will be
+ qualified.
+
+346. $use_envelope_from
+
+ Type: boolean
+
+ Default: no
+
+ When set, mutt-ng will use ``$envelope_from_address'' as the envelope
+ sender if that is set, otherwise it will attempt to derive it from the
+ "From:" header.
+
+ Note: This information is passed to sendmail command using the "-f"
+ command line switch and passed to the SMTP server for libESMTP (if support
+ is compiled in).
+
+347. $use_from
+
+ Type: boolean
+
+ Default: yes
+
+ When set, Mutt-ng will generate the ``From:'' header field when sending
+ messages. If unset, no ``From:'' header field will be generated unless the
+ user explicitly sets one using the ``my_hdr'' command.
+
+348. $use_idn
+
+ Type: boolean
+
+ Default: yes
+
+ Availability: IDN
+
+ When set, Mutt-ng will show you international domain names decoded.
+
+ Note: You can use IDNs for addresses even if this is unset. This variable
+ only affects decoding.
+
+349. $use_ipv6
+
+ Type: boolean
+
+ Default: yes
+
+ When set, Mutt-ng will look for IPv6 addresses of hosts it tries to
+ contact. If this option is unset, Mutt-ng will restrict itself to IPv4
+ addresses. Normally, the default should work.
+
+350. $visual
+
+ Type: path
+
+ Default: ""
+
+ Specifies the visual editor to invoke when the ~v command is given in the
+ builtin editor.
+
+351. $wait_key
+
+ Type: boolean
+
+ Default: yes
+
+ Controls whether Mutt-ng will ask you to press a key after shell- escape,
+ pipe-message, pipe-entry, print-message, and print-entry commands.
+
+ It is also used when viewing attachments with ``auto_view'', provided that
+ the corresponding mailcap entry has a needsterminal flag, and the external
+ program is interactive.
+
+ When set, Mutt-ng will always ask for a key. When unset, Mutt-ng will wait
+ for a key only if the external command returned a non-zero status.
+
+352. $weed
+
+ Type: boolean
+
+ Default: yes
+
+ When set, Mutt-ng will weed headers when displaying, forwarding, printing,
+ or replying to messages.
+
+353. $wrap_search
+
+ Type: boolean
+
+ Default: yes
+
+ Controls whether searches wrap around the end of the mailbox.
+
+ When set, searches will wrap around the first (or last) message. When
+ unset, searches will not wrap.
+
+354. $wrapmargin
+
+ Type: number
+
+ Default: 0
+
+ Controls the size of the margin remaining at the right side of the
+ terminal when Mutt-ng's pager does smart wrapping.
+
+355. $write_bcc
+
+ Type: boolean
+
+ Default: yes
+
+ Controls whether Mutt-ng writes out the Bcc header when preparing messages
+ to be sent. Exim users may wish to unset this.
+
+356. $write_inc
+
+ Type: number
+
+ Default: 10
+
+ When writing a mailbox, a message will be printed every write_inc messages
+ to indicate progress. If set to 0, only a single message will be displayed
+ before writing a mailbox.
+
+ Also see the ``$read_inc'' variable.
+
+357. $xterm_icon
+
+ Type: string
+
+ Default: "M%?n?AIL&ail?"
+
+ Controls the format of the X11 icon title, as long as $xterm_set_titles is
+ set. This string is identical in formatting to the one used by
+ ``$status_format''.
+
+358. $xterm_leave
+
+ Type: string
+
+ Default: ""
+
+ If $xterm_set_titles is set, this string will be used to set the title
+ when leaving mutt-ng. For terminal-based programs, there's no easy and
+ portable way to read the current title so mutt-ng cannot read it upon
+ startup and restore it when exiting.
+
+ Based on the xterm FAQ, the following might work:
+
+ set xterm_leave = "`test x$DISPLAY != x && xprop -id $WINDOWID | grep
+ WM_NAME | cut -d '"' -f 2`"
+
+359. $xterm_set_titles
+
+ Type: boolean
+
+ Default: no
+
+ Controls whether Mutt-ng sets the xterm title bar and icon name (as long
+ as you're in an appropriate terminal). The default must be unset to force
+ in the validity checking.
+
+360. $xterm_title
+
+ Type: string
+
+ Default: "Mutt-ng with %?m?%m messages&no messages?%?n? [%n New]?"
+
+ Controls the format of the title bar of the xterm provided that
+ $xterm_set_titles has been set. This string is identical in formatting to
+ the one used by ``$status_format''.
+
+5. Functions
+
+ The following is the list of available functions listed by the mapping in
+ which they are available. The default key setting is given, and an
+ explanation of what the function does. The key bindings of these functions
+ can be changed with the bind command.
+
+ 5.1. generic
+
+ The generic menu is not a real menu, but specifies common functions (such
+ as movement) available in all menus except for pager and editor. Changing
+ settings for this menu will affect the default bindings for all menus
+ (except as noted).
+
+ Table 7.4. Reference: Default Generic Function Bindings
+
+ Function Default Key Description
+ <bottom-page> L move to the bottom of the page
+ <current-bottom> move current entry to bottom of page
+ <current-middle> move current entry to middle of page
+ <current-top> move current entry to top of page
+ <enter-command> : enter a muttngrc command
+ <exit> q exit this menu
+ <first-entry> = move to the first entry
+ <half-down> ] scroll down 1/2 page
+ <half-up> [ scroll up 1/2 page
+ <help> ? this screen
+ <jump> number jump to an index number
+ <last-entry> * move to the last entry
+ <middle-page> M move to the middle of the page
+ <next-entry> j move to the next entry
+ <next-line> > scroll down one line
+ <next-page> z move to the next page
+ <previous-entry> k move to the previous entry
+ <previous-line> > scroll up one line
+ <previous-page> Z move to the previous page
+ <refresh> C-L clear and redraw the screen
+ <search> / search for a regular expression
+ <search-next> n search for next match
+ <search-opposite> search for next match in opposite direction
+ <search-reverse> E-/ search backwards for a regular expression
+ <select-entry> Return select the current entry
+ <shell-escape> ! run a program in a subshell
+ <tag-entry> t toggle the tag on the current entry
+ <tag-prefix> ; apply next command to tagged entries
+ <tag-prefix-cond> apply next function ONLY to tagged messages
+ <top-page> H move to the top of the page
+ <what-key> display the keycode for a key press
+
+ 5.2. index
+
+ Table 7.5. Reference: Default Index Function Bindings
+
+ Function Default Key Description
+ <bounce-message> b remail a message to another user
+ <change-folder> c open a different folder
+ <change-folder-readonly> E-c open a different folder in read
+ only mode
+ <check-traditional-pgp> E-P check for classic pgp
+ <clear-flag> W clear a status flag from a message
+ <copy-message> C copy a message to a file/mailbox
+ <create-alias> a create an alias from a message
+ sender
+ <decode-copy> E-C decode a message and copy it to a
+ file/mailbox
+ <decode-save> E-s decode a message and save it to a
+ file/mailbox
+ <delete-message> d delete the current entry
+ <delete-pattern> D delete messages matching a pattern
+ <delete-subthread> E-d delete all messages in subthread
+ <delete-thread> C-D delete all messages in thread
+ <display-address> @ display full address of sender
+ <display-toggle-weed> h display message and toggle header
+ weeding
+ <display-message> Return display a message
+ <edit> e edit the current message
+ <edit-type> C-E edit the current message's
+ Content-Type
+ <exit> x exit without saving changes
+ <extract-keys> C-K extract PGP public keys
+ <fetch-mail> G retrieve mail from POP server
+ <flag-message> F toggle a message's 'important' flag
+ <forget-passphrase> C-F wipe PGP passphrase from memory
+ <forward-message> f forward a message with comments
+ <group-reply> g reply to all recipients
+ <limit> l show only messages matching a
+ pattern
+ <list-reply> L reply to specified mailing list
+ <mail> m compose a new mail message
+ <mail-key> E-k mail a PGP public key
+ <next-new> jump to the next new message
+ <next-new-then-unread> Tab jump to the next new or unread
+ message
+ <next-subthread> E-n jump to the next subthread
+ <next-thread> C-N jump to the next thread
+ <next-undeleted> j move to the next undeleted message
+ <next-unread> jump to the next unread message
+ <parent-message> P jump to parent message in thread
+ <pipe-message> | pipe message/attachment to a shell
+ command
+ <previous-new> jump to the previous new message
+ <previous-new-then-unread> E-Tab jump to the previous new or unread
+ message
+ <previous-page> Z move to the previous page
+ <previous-subthread> E-p jump to previous subthread
+ <previous-thread> C-P jump to previous thread
+ <previous-undeleted> k move to the last undelete message
+ <previous-unread> jump to the previous unread message
+ <print-message> p print the current entry
+ <query> Q query external program for
+ addresses
+ <quit> q save changes to mailbox and quit
+ <read-subthread> E-r mark the current subthread as read
+ <read-thread> C-R mark the current thread as read
+ <recall-message> R recall a postponed message
+ <reply> r reply to a message
+ <resend-message> E-e resend message and preserve MIME
+ structure
+ <save-message> s save message/attachment to a file
+ <set-flag> w set a status flag on a message
+ <show-version> V show the Mutt-ng version number and
+ date
+ <show-limit> E-l show currently active limit
+ pattern, if any
+ <sort-mailbox> o sort messages
+ <sort-reverse> O sort messages in reverse order
+ <sync-mailbox> $ save changes to mailbox
+ <tag-pattern> T tag messages matching a pattern
+ <tag-thread> E-t tag/untag all messages in the
+ current thread
+ <toggle-new> N toggle a message's 'new' flag
+ <toggle-write> % toggle whether the mailbox will be
+ rewritten
+ <undelete-message> u undelete the current entry
+ <undelete-pattern> U undelete messages matching a
+ pattern
+ <undelete-subthread> E-u undelete all messages in subthread
+ <undelete-thread> C-U undelete all messages in thread
+ <untag-pattern> C-T untag messages matching a pattern
+ <view-attachments> v show MIME attachments
+
+ 5.3. pager
+
+ Table 7.6. Reference: Default Pager Function Bindings
+
+ Function Default Key Description
+ <bottom> jump to the bottom of the message
+ <bounce-message> b remail a message to another user
+ <change-folder> c open a different folder
+ <change-folder-readonly> E-c open a different folder in read
+ only mode
+ <check-traditional-pgp> E-P check for classic pgp
+ <copy-message> C copy a message to a file/mailbox
+ <create-alias> a create an alias from a message
+ <senderdecode-copy> E-C decode a message and copy it to a
+ file/mailbox
+ <decode-save> E-s decode a message and save it to a
+ file/mailbox
+ <delete-message> d delete the current entry
+ <delete-subthread> E-d delete all messages in subthread
+ <delete-thread> C-D delete all messages in thread
+ <display-address> @ display full address of sender
+ <display-toggle-weed> h display message and toggle header
+ weeding
+ <edit> e edit the current message
+ <edit-type> C-E edit the current message's
+ Content-Type
+ <enter-command> : enter a muttngrc command
+ <exit> i return to the main-menu
+ <extract-keys> C-K extract PGP public keys
+ <flag-message> F toggle a message's 'important' flag
+ <forget-passphrase> C-F wipe PGP passphrase from memory
+ <forward-message> f forward a message with comments
+ <group-reply> g reply to all recipients
+ <half-up> move up one-half page
+ <half-down> move down one-half page
+ <help> ? this screen
+ <list-reply> L reply to specified mailing list
+ <mail> m compose a new mail message
+ <mail-key> E-k mail a PGP public key
+ <mark-as-new> N toggle a message's 'new' flag
+ <next-line> Return scroll down one line
+ <next-entry> J move to the next entry
+ <next-new> jump to the next new message
+ <next-new-then-unread> Tab jump to the next new or unread
+ message
+ <next-page> move to the next page
+ <next-subthread> E-n jump to the next subthread
+ <next-thread> C-N jump to the next thread
+ <next-undeleted> j move to the next undeleted message
+ <next-unread> jump to the next unread message
+ <parent-message> P jump to parent message in thread
+ <pipe-message> | pipe message/attachment to a shell
+ command
+ <previous-line> BackSpace scroll up one line
+ <previous-entry> K move to the previous entry
+ <previous-new> jump to the previous new message
+ <previous-new-then-unread> jump to the previous new or unread
+ message
+ <previous-page> - move to the previous page
+ <previous-subthread> E-p jump to previous subthread
+ <previous-thread> C-P jump to previous thread
+ <previous-undeleted> k move to the last undelete message
+ <previous-unread> jump to the previous unread message
+ <print-message> p print the current entry
+ <quit> Q save changes to mailbox and quit
+ <read-subthread> E-r mark the current subthread as read
+ <read-thread> C-R mark the current thread as read
+ <recall-message> R recall a postponed message
+ <redraw-screen> C-L clear and redraw the screen
+ <reply> r reply to a message
+ <save-message> s save message/attachment to a file
+ <search> / search for a regular expression
+ <search-next> n search for next match
+ <search-opposite> search for next match in opposite
+ direction
+ <search-reverse> E-/ search backwards for a regular
+ expression
+ <search-toggle> \ toggle search pattern coloring
+ <shell-escape> ! invoke a command in a subshell
+ <show-version> V show the Mutt-ng version number and
+ date
+ <skip-quoted> S skip beyond quoted text
+ <sync-mailbox> $ save changes to mailbox
+ <tag-message> t tag a message
+ <toggle-quoted> T toggle display of quoted text
+ <top> ^ jump to the top of the message
+ <undelete-message> u undelete the current entry
+ <undelete-subthread> E-u undelete all messages in subthread
+ <undelete-thread> C-U undelete all messages in thread
+ <view-attachments> v show MIME attachments
+
+ 5.4. alias
+
+ Table 7.7. Reference: Default Alias Menu Function Bindings
+
+ Function Default Key Description
+ <search> / search for a regular expression
+ <search-next> n search for next match
+ <search-reverse> E-/ search backwards for a regular expression
+
+ 5.5. query
+
+ Table 7.8. Reference: Default Query Menu Function Bindings
+
+ Function Default Key Description
+ <create-alias> a create an alias from a message sender
+ <mail> m compose a new mail message
+ <query> Q query external program for addresses
+ <query-append> A append new query results to current results
+ <search> / search for a regular expression
+ <search-next> n search for next match
+ <search-opposite> search for next match in opposite direction
+ <search-reverse> E-/ search backwards for a regular expression
+
+ 5.6. attach
+
+ Table 7.9. Reference: Default Attachment Menu Function Bindings
+
+ Function Default Key Description
+ <bounce-message> b remail a message to another user
+ <collapse-parts> v toggle display of subparts
+ <delete-entry> d delete the current entry
+ <display-toggle-weed> h display message and toggle header
+ weeding
+ <edit-type> C-E edit the current entry's Content-Type
+ <extract-keys> C-K extract PGP public keys
+ <forward-message> f forward a message with comments
+ <group-reply> g reply to all recipients
+ <list-reply> L reply to specified mailing list
+ <pipe-entry> | pipe message/attachment to a shell
+ command
+ <print-entry> p print the current entry
+ <reply> r reply to a message
+ <resend-message> E-e resend message and preserve MIME
+ structure
+ <save-entry> s save message/attachment to a file
+ <undelete-entry> u undelete the current entry
+ <view-attach> Return view attachment using mailcap entry if
+ necessary
+ <view-mailcap> m force viewing of attachment using
+ mailcap
+ <view-text> T view attachment as text
+
+ 5.7. compose
+
+ Table 7.10. Reference: Default Compose Menu Function Bindings
+
+ Function Default Key Description
+ <attach-file> a attach a file(s) to this message
+ <attach-message> A attach message(s) to this message
+ <attach-key> E-k attach a PGP public key
+ <copy-file> C save message/attachment to a file
+ <detach-file> D delete the current entry
+ <display-toggle-weed> h display message and toggle header
+ weeding
+ <edit-bcc> b edit the BCC list
+ <edit-cc> c edit the CC list
+ <edit-description> d edit attachment description
+ <edit-encoding> C-E edit attachment transfer-encoding
+ <edit-fcc> f enter a file to save a copy of this
+ message in
+ <edit-from> E-f edit the from: field
+ <edit-file> C-X e edit the file to be attached
+ <edit-headers> E edit the message with headers
+ <edit> e edit the message
+ <edit-mime> m edit attachment using mailcap entry
+ <edit-reply-to> r edit the Reply-To field
+ <edit-subject> s edit the subject of this message
+ <edit-to> t edit the TO list
+ <edit-type> C-T edit attachment type
+ <filter-entry> F filter attachment through a shell
+ command
+ <forget-passphrase> C-F wipe PGP passphrase from memory
+ <ispell> i run ispell on the message
+ <new-mime> n compose new attachment using mailcap
+ entry
+ <pgp-menu> p show PGP options
+ <pipe-entry> | pipe message/attachment to a shell
+ command
+ <postpone-message> P save this message to send later
+ <print-entry> l print the current entry
+ <rename-file> R rename/move an attached file
+ <send-message> y send the message
+ <toggle-unlink> u toggle whether to delete file after
+ sending it
+ <view-attach> Return view attachment using mailcap entry if
+ necessary
+ <write-fcc> w write the message to a folder
+
+ 5.8. postpone
+
+ Table 7.11. Reference: Default Postpone Menu Function Bindings
+
+ Function Default Key Description
+ <delete-entry> d delete the current entry
+ <undelete-entry> u undelete the current entry
+
+ 5.9. browser
+
+ Table 7.12. Reference: Default Browser Menu Function Bindings
+
+ Function Default Key Description
+ <change-dir> c change directories
+ <check-new> Tab check mailboxes for new mail
+ <enter-mask> m enter a file mask
+ <search> / search for a regular expression
+ <search-next> n search for next match
+ <search-reverse> E-/ search backwards for a regular expression
+ <select-new> N select a new file in this directory
+ <sort> o sort messages
+ <sort-reverse> O sort messages in reverse order
+ <toggle-mailboxes> Tab toggle whether to browse mailboxes or all
+ files
+ <view-file> Space view file
+ <subscribe> s subscribe to current mailbox (IMAP Only)
+ <unsubscribe> u unsubscribe to current mailbox (IMAP Only)
+ <toggle-subscribed> T toggle view all/subscribed mailboxes (IMAP
+ Only)
+
+ 5.10. pgp
+
+ Table 7.13. Reference: Default PGP Menu Function Bindings
+
+ Function Default Key Description
+ <view-name> % view the key's user id
+ <verify-key> c verify a PGP public key
+
+ 5.11. editor
+
+ Table 7.14. Reference: Default Editor Function Bindings
+
+ Function Default Key Description
+ <backspace> BackSpace delete the char in front of the cursor
+ <backward-char> C-B move the cursor one character to the left
+ <backward-word> E-b move the cursor to the previous word
+ <bol> C-A jump to the beginning of the line
+ <buffy-cycle> Space cycle among incoming mailboxes
+ <capitalize-word> E-c uppercase the first character in the word
+ <complete> Tab complete filename or alias
+ <complete-query> C-T complete address with query
+ <delete-char> C-D delete the char under the cursor
+ <downcase-word> E-l lowercase all characters in current word
+ <eol> C-E jump to the end of the line
+ <forward-char> C-F move the cursor one character to the right
+ <forward-word> E-f move the cursor to the next word
+ <history-down> scroll down through the history list
+ <history-up> scroll up through the history list
+ <kill-eol> C-K delete chars from cursor to end of line
+ <kill-eow> E-d delete chars from cursor to end of word
+ <kill-line> C-U delete all chars on the line
+ <kill-word> C-W delete the word in front of the cursor
+ <quote-char> C-V quote the next typed key
+ <transpose-chars> transpose character under cursor with
+ previous
+ <upcase-word> E-u uppercase all characters in current word
+
+ 5.12. sidebar
+
+ Table 7.15. Referene: Default Sidebar Function Bindings
+
+ Key Function Description
+ <sidebar-scroll-up> Scrolls the mailbox list up 1 page
+ <sidebar-scroll-down> Scrolls the mailbox list down 1 page
+ <sidebar-next> Highlights the next mailbox
+ <sidebar-next-new> Highlights the next mailbox with new mail
+ <sidebar-previous> Highlights the previous mailbox
+ <sidebar-open> Opens the currently highlighted mailbox
+
+Appendix A. Acknowledgments
+
+ Kari Hurtta <kari.hurtta@fmi.fi> co-developed the original MIME >parsing
+ code back in the ELM-ME days.
+
+ The following people have been very helpful to the development of Mutt
+ (sorted by surnames):
+
+ o Vikas Agnihotri <vikasa@writeme.com>
+ o Francois Berjon < Francois.Berjon@aar.alcatel-alsthom.fr>
+ o Aric Blumer <aric@fore.com>
+ o John Capo <jc@irbs.com>
+ o David Champion <dgc@uchicago.edu>
+ o Brendan Cully <brendan@kublai.com>
+ o Liviu Daia <daia@stoilow.imar.ro>
+ o Thomas E. Dickey <dickey@herndon4.his.com>
+ o David DeSimone <fox@convex.hp.com>
+ o Nickolay N. Dudorov <nnd@wint.itfs.nsk.su>
+ o Ruslan Ermilov <ru@freebsd.org>
+ o Edmund Grimley Evans <edmundo@rano.org>
+ o Michael Finken <finken@conware.de>
+ o Sven Guckes <guckes@math.fu-berlin.de>
+ o Lars Hecking <lhecking@nmrc.ie>
+ o Mark Holloman <holloman@nando.net>
+ o Andreas Holzmann <holzmann@fmi.uni-passau.de>
+ o Marco d'Itri <md@linux.it>
+ o Björn Jacke <bjacke@suse.com>
+ o Byrial Jensen <byrial@image.dk>
+ o David Jeske <jeske@igcom.net>
+ o Christophe Kalt <kalt@hugo.int-evry.fr>
+ o Tommi Komulainen <Tommi.Komulainen@iki.fi>
+ o Felix von Leitner (a.k.a ``Fefe'') < leitner@math.fu-berlin.de >
+ o Brandon Long <blong@fiction.net>
+ o Jimmy Mäkeä <jmy@flashback.net>
+ o Lars Marowsky-Bree <lmb@pointer.in-minden.de>
+ o Thomas ``Mike'' Michlmayr <mike@cosy.sbg.ac.at>
+ o Andrew W. Nosenko <awn@bcs.zp.ua>
+ o David O'Brien <obrien@Nuxi.cs.ucdavis.edu>
+ o Clint Olsen <olsenc@ichips.intel.com>
+ o Park Myeong Seok <pms@romance.kaist.ac.kr>
+ o Thomas Parmelan <tom@ankh.fr.eu.org>
+ o Ollivier Robert <roberto@keltia.freenix.fr>
+ o Thomas Roessler <roessler@does-not-exist.org>
+ o Roland Rosenfeld <roland@spinnaker.de>
+ o TAKIZAWA Takashi <taki@luna.email.ne.jp>
+ o Allain Thivillon <Allain.Thivillon@alma.fr>
+ o Gero Treuner <gero@faveve.uni-stuttgart.de>
+ o Vsevolod Volkov <vvv@lucky.net>
+ o Ken Weinert <kenw@ihs.com>
+
+ Mutt-ng is developed by the following people:
+
+ o Andreas Krennmair <ak@synflood.at>
+ o Nico Golde <nico@ngolde.de>
+ o Rocco Rutte <pdmef@cs.tu-berlin.de>
+
+ The following people have been very helpful to the development of Mutt-ng
+ (sorted by surnames):
+
+ o Christian Gall <cg@cgall.de>
+ o Iain Lea <iain@bricbrac.de>
+ o Andreas Kneib <akneib@gmx.net>
+ o Felix Meinhold <felix.meinhold@gmx.net>
+ o Carsten Schoelzki <cjs@weisshuhn.de>
+ o Elimar Riesebieter <riesebie@lxtec.de>
+
+Appendix B. Hacking Documentation
+
+ This manual is written in XML and transformed via a XSLT stylesheet into
+ valid DocBook/XML and/or LaTeX to be again transformed via a XSLT
+ stylesheet into the final formats.
+
+ This two pass processing is required to keep the file size low and to
+ sanitize use, i.e. drastically lower the typing overhead.
+
+ To achieve the latter, the sources come with a file called
+ muttng-manual.xsl introducing the muttng-doc namespace which offers the
+ following tags to be used (note: this is far from being complete, any help
+ towards consistency is highly appreciated).
+
+ <muttng-doc:man name="" [sect=""]/>
+
+ References to manual pages. If the sect parameter is omitted,
+ it'll be 1 for the commands section. There's no auto-indexing yet.
+
+ <muttng-doc:envvar name=""/>
+
+ References to environment variables. The name parameter must
+ contain upper-case letters only without the dollar sign as it'll
+ be added automatically. Auto-indexing is done.
+
+ <muttng-doc:hook name=""/>
+
+ References to hooks. The string -hook will be added automatically
+ to the value given in the name parameter. All entries will be
+ auto-indexed.
+
+ <muttng-doc:pattern name="" [full="1"]/>
+
+ References to patterns. The name parameter must only contain the
+ letter/symbol for the pattern as the tilde symbol/equal sign will
+ be added automatically. Auto-indexing is done. If the full
+ parameter is given the equal sign as well as tilde will be printed
+ for a fully complete reference.
+
+ <muttng-doc:key [mod="C|E"]>key</muttng-doc:key>
+
+ Referencing a key.. Because it's somewhat untrivial to always get
+ the right escaping for LaTeX, there's a tag for it. The optional
+ modifiers C or E stand for Control and Escape respectively. To
+ still allow escaping, the actual key sequences must be given
+ within the tag.
+
+ <muttng-doc:funcdef name=""/>
+
+ Defining a command.. It's used to define a command with the name
+ given in the name parameter. The default key binding must be given
+ via <muttng-doc:key/> (see above). The string will be
+ automatically enclosed in <>. Auto-indexing is done. Also an
+ anchor with id func-[name] will be added with [name] being the
+ value of the name parameter.
+
+ <muttng-doc:funcref name=""/>
+
+ References to functions.. This is practically the same as the
+ above except that there's no anchor defined.
+
+ <muttng-doc:vardef name=""/>
+
+ Defining a variable. This is to be used by makedoc only to define
+ a command with a given name and XML-normalized link given via id.
+ Auto-indexing is done. The name parameter's value will be prefixed
+ with a dollar sign as for environment variables.
+
+ <muttng-doc:varref name=""/>
+
+ References to variables. This practically is the same as above
+ except that the text inbetween won't be wrapped within a <sect1>
+ tag. Auto-indexing is the same as for the above. This one is
+ intended for manual use.
+
+ <muttng-doc:web url""/>
+
+ Pretty print a linked URL. As for E-Mail addresses where the text
+ (mostly) equals the link's target, URLs must be enclosed in <>
+ (also this reduced redudant URL typing).
+
+ <muttng-doc:rfc num=""/>
+
+ References to RfC documents. Use this to produce links to RfC
+ document with number given as the num parameter. A link to
+ <http://www.faqs.org/> will be made. Auto-indexing is done under
+ RfC.
+
+ <muttng-doc:cmddef name="" [noanchor="1"]/>
+
+ Defining a configuration command. The name of the command is given
+ as the name parameter. In case a single command has multiple
+ possible calling sequences, specify noanchor="1" for subsequent
+ use. Auto-indexing is done. Specify the arguments within the tag.
+
+ <muttng-doc:cmdref name=""/>
+
+ References to configuration commands. Use this to refer to
+ commands as it builds the proper internal reference name.
+ Auto-indexing is done.
+
+ <muttng-doc:lstconf/>, <muttng-doc:lstmail/>, <muttng-doc:lstshell/>
+
+ Screen layout by context. These are used to specify environments
+ for different types of screen output. For DocBook output, all of
+ these simply map to <screen/>. But as a possible future migration
+ to LaTeX may be ahead, different languages defined for the
+ listings.sty packages may be used to have proper syntax
+ highlighting for these so that there must be a context sensitive
+ distinction.
+
+ <muttng-doc:special [docbook=""] [latex=""]/>
+
+ This is intended for specifying special strings for either
+ DocBook/XML or LaTeX.
+
+ Additional notes follow.
+
+ o To not fully bloat the XSL stylesheet procuding the LaTeX code, all
+ tables must have an attribute called texstr which is directly passed
+ to longtable.
+
+Index
+
+ Symbols
+
+ ~$/ =$, Patterns
+
+ ~*/ =*, Patterns
+
+ ~=/ ==, Patterns
+
+ ~A/ =A, Patterns
+
+ ~b/ =b, Complex Patterns, Patterns
+
+ ~B/ =B, Patterns
+
+ ~c/ =c, Patterns
+
+ ~C/ =C, Patterns
+
+ ~d/ =d, Patterns and Dates, Patterns
+
+ ~D/ =D, Patterns
+
+ ~E/ =E, Patterns
+
+ ~e/ =e, Patterns
+
+ ~f/ =f, Complex Patterns, Patterns
+
+ ~F/ =F, Patterns
+
+ ~g/ =g, Patterns
+
+ ~G/ =G, Patterns
+
+ ~H/ =H, Spam detection, Patterns
+
+ ~h/ =h, Patterns
+
+ ~i/ =i, Patterns
+
+ ~k/ =k, Patterns
+
+ ~L/ =L, Patterns
+
+ ~l/ =l, Patterns
+
+ ~m/ =m, Patterns
+
+ ~M/ =M, Patterns
+
+ ~n/ =n, Message Scoring, Patterns
+
+ ~N/ =N, Patterns
+
+ ~O/ =O, Patterns
+
+ ~p/ =p, Patterns
+
+ ~P/ =P, Patterns
+
+ ~Q/ =Q, Patterns
+
+ ~R/ =R, Patterns
+
+ ~r/ =r, Patterns
+
+ ~s/ =s, Complex Patterns, Patterns
+
+ ~S/ =S, Patterns
+
+ ~T/ =T, Patterns
+
+ ~t/ =t, Patterns
+
+ ~U/ =U, Complex Patterns, Patterns
+
+ ~u/ =u, Patterns
+
+ ~v/ =v, Patterns
+
+ ~V/ =V, Patterns
+
+ ~w/ =w, Patterns
+
+ ~x/ =x, Complex Patterns, Patterns
+
+ ~y/ =y, Handling Mailing Lists, Patterns
+
+ ~z/ =z, Patterns
+
+ A
+
+ $abort_noattach , $abort_noattach
+
+ $abort_nosubject , $abort_nosubject
+
+ $abort_unmodified , $abort_unmodified
+
+ account-hook, Managing multiple IMAP/POP/NNTP accounts (OPTIONAL),
+ Configuration Commands
+
+ $agent_string , Configuration variables
+
+ $agent_string , $agent_string
+
+ alias, Miscellaneous Functions, Defining/Using aliases, Configuration
+ Commands
+
+ $alias_file, Miscellaneous Functions, Defining/Using aliases
+
+ $alias_file , $alias_file
+
+ $alias_format , $alias_format
+
+ $allow_8bit , $allow_8bit
+
+ $allow_ansi , $allow_ansi
+
+ alternates, Alternative addresses, Configuration Commands
+
+ alternative_order, MIME Multipart/Alternative, Configuration Commands
+
+ append-hook, Compressed folders Support (OPTIONAL), Append a message to a
+ compressed mailbox, Encrypted folders, Configuration Commands
+
+ $arrow_cursor , $arrow_cursor
+
+ $ascii_chars , $ascii_chars
+
+ $askbcc , $askbcc
+
+ $askcc , $askcc
+
+ $assumed_charset , $assumed_charset
+
+ <attach-file>, Composing new messages, compose
+
+ <attach-key>, Composing new messages, compose
+
+ <attach-message>, Composing new messages, compose
+
+ $attach_format , $attach_format
+
+ $attach_remind_regexp , $attach_remind_regexp
+
+ $attach_sep , $attach_sep
+
+ $attach_split , $attach_split
+
+ $attribution, Change settings based upon message recipients, $attribution
+
+ $auto_tag, Using Tags
+
+ $autoedit , $autoedit
+
+ $auto_tag , $auto_tag
+
+ auto_view, The Pager, Optional Fields, Search Order, MIME Autoview, MIME
+ Multipart/Alternative, Configuration Commands
+
+ B
+
+ <backspace>, Editing Input Fields, editor
+
+ <backward-char>, Editing Input Fields, editor
+
+ <backward-word>, Editing Input Fields, editor
+
+ $beep , $beep
+
+ $beep_new , $beep_new
+
+ bind, Editing Input Fields, Changing the default key bindings, Keyboard
+ macros, Configuration Commands
+
+ <bol>, Editing Input Fields, editor
+
+ <bottom>, pager
+
+ <bottom-page>, generic
+
+ <bounce>, Sending Mail, $bounce
+
+ <bounce-message>, index, pager, attach
+
+ $bounce_delivered , $bounce_delivered
+
+ $braille_friendly , $braille_friendly
+
+ <buffy-cycle>, editor
+
+ C
+
+ <capitalize-word>, Editing Input Fields, editor
+
+ $certificate_file , $certificate_file
+
+ <change-dir>, browser
+
+ <change-folder>, index, pager
+
+ <change-folder-readonly>, index, pager
+
+ $charset , $charset
+
+ charset-hook, Defining aliases for character sets, Configuration Commands
+
+ <check-new>, browser
+
+ <check-traditional-pgp>, Miscellaneous Functions, index, pager
+
+ $check_new , $check_new
+
+ <clear-flag>, index
+
+ close-hook, Compressed folders Support (OPTIONAL), Write a compressed
+ mailbox, Append a message to a compressed mailbox, Configuration Commands
+
+ <collapse-all>, Threaded Mode
+
+ <collapse-parts>, attach
+
+ <collapse-thread>, Threaded Mode
+
+ $collapse_unread , $collapse_unread
+
+ color, The Pager, Using color and mono video attributes, Configuration
+ Commands
+
+ $COLORFGBG, Using color and mono video attributes
+
+ <complete>, Editing Input Fields, editor
+
+ <complete-query>, Editing Input Fields, editor
+
+ <compose>, Sending Mail
+
+ $compose_format , $compose_format
+
+ $config_charset , $config_charset
+
+ $confirmappend , $confirmappend
+
+ $confirmcreate , $confirmcreate
+
+ $connect_timeout , $connect_timeout
+
+ $content_type , $content_type
+
+ $copy , $copy
+
+ <copy-file>, compose
+
+ <copy-message>, index, pager
+
+ <create-alias>, Miscellaneous Functions, Defining/Using aliases, index,
+ pager, query
+
+ $crypt_autoencrypt , Configuration variables
+
+ $crypt_autosign , Configuration variables
+
+ crypt-hook, Choosing the cryptographic key of the recipient, Configuration
+ Commands
+
+ $crypt_replyencrypt , Configuration variables
+
+ $crypt_replysign , Configuration variables
+
+ $crypt_replysignencrypted , Configuration variables
+
+ $crypt_verify_sig , Configuration variables
+
+ $crypt_autoencrypt , $crypt_autoencrypt
+
+ $crypt_autopgp , $crypt_autopgp
+
+ $crypt_autosign , $crypt_autosign
+
+ $crypt_autosmime , $crypt_autosmime
+
+ $crypt_replyencrypt , $crypt_replyencrypt
+
+ $crypt_replysign , $crypt_replysign
+
+ $crypt_replysignencrypted , $crypt_replysignencrypted
+
+ $crypt_timestamp , $crypt_timestamp
+
+ $crypt_use_gpgme , $crypt_use_gpgme
+
+ $crypt_verify_sig , $crypt_verify_sig
+
+ <current-bottom>, generic
+
+ <current-middle>, generic
+
+ <current-top>, generic
+
+ D
+
+ $date_format , $date_format
+
+ $debug_level , $debug_level
+
+ <decode-copy>, index
+
+ <decode-save>, index, pager
+
+ default-hook, Message Matching in Hooks
+
+ $default_hook , $default_hook
+
+ $delete , $delete
+
+ <delete-char>, Editing Input Fields, editor
+
+ <delete-entry>, attach, postpone
+
+ <delete-message>, index, pager
+
+ <delete-pattern>, index
+
+ $delete_space, Additional Notes
+
+ <delete-subthread>, Threaded Mode, index, pager
+
+ <delete-thread>, Threaded Mode, index, pager
+
+ $delete_space , $delete_space
+
+ $delete_untag , $delete_untag
+
+ <detach-file>, Composing new messages, compose
+
+ $digest_collapse , $digest_collapse
+
+ <display-address>, index, pager
+
+ <display-message>, index
+
+ <display-toggle-weed>, Miscellaneous Functions, index, pager, attach,
+ compose
+
+ $display_filter , $display_filter
+
+ $dotlock_program , $dotlock_program
+
+ <downcase-word>, Editing Input Fields, editor
+
+ $dsn_notify, Delivery Status Notification (DSN) Support
+
+ $dsn_return, Delivery Status Notification (DSN) Support
+
+ $dsn_notify , $dsn_notify
+
+ $dsn_return , $dsn_return
+
+ $duplicate_threads , $duplicate_threads
+
+ E
+
+ <edit>, Miscellaneous Functions, index, pager, compose
+
+ <edit-bcc>, Composing new messages, compose
+
+ <edit-cc>, Composing new messages, compose
+
+ <edit-description>, Composing new messages, compose
+
+ <edit-encoding>, compose
+
+ <edit-fcc>, Composing new messages, compose
+
+ <edit-file>, compose
+
+ <edit-from>, Composing new messages, compose
+
+ $edit_headers, Editing the message header, User defined headers,
+ mailto:-style links, Configuration variables, compose
+
+ <edit-mime>, compose
+
+ <edit-reply-to>, Composing new messages, compose
+
+ <edit-subject>, Composing new messages, compose
+
+ <edit-to>, Composing new messages, compose
+
+ <edit-type>, Miscellaneous Functions, index, pager, attach, compose
+
+ $EDITOR, Manual Conventions, Composing new messages
+
+ $editor , $editor
+
+ $editor_headers, Editing the message header, Defining/Using aliases
+
+ $editor_headers , $editor_headers
+
+ $edit_headers , $edit_headers
+
+ $encode_from , $encode_from
+
+ <enter-command>, Miscellaneous Functions, generic, pager
+
+ <enter-mask>, browser
+
+ $entropy_file , $entropy_file
+
+ $envelope_from_address, $envelope_from_address
+
+ <eol>, Editing Input Fields, editor
+
+ $escape , $escape
+
+ exec, Executing functions, Configuration Commands
+
+ <exit>, generic, index, pager
+
+ <extract-keys>, Miscellaneous Functions, index, pager, attach
+
+ F
+
+ $fast_reply , $fast_reply
+
+ fcc-hook, Specify default Fcc: mailbox when composing, Specify default
+ save filename and default Fcc: mailbox at once, Using Hooks, Message
+ Matching in Hooks, Configuration Commands
+
+ fcc-save-hook, Specify default save filename, Specify default Fcc: mailbox
+ when composing, Specify default save filename and default Fcc: mailbox at
+ once, Using Hooks, Configuration Commands
+
+ $fcc_attach , $fcc_attach
+
+ $fcc_clear , $fcc_clear
+
+ <fetch-mail>, index
+
+ $file_charset , $file_charset
+
+ <filter-entry>, compose
+
+ <first-entry>, Moving Around in Menus, generic
+
+ <flag-message>, index, pager
+
+ $folder, Configuration Variables, Defining mailboxes which receive mail,
+ Mailbox Shortcuts, $folder
+
+ folder-hook, Setting variables based upon mailbox, Spam detection, Using
+ Hooks, Managing multiple IMAP/POP/NNTP accounts (OPTIONAL), Configuration
+ Commands
+
+ $folder_format , $folder_format
+
+ $followup_to, Mailing lists, Handling Mailing Lists
+
+ $followup_to , $followup_to
+
+ $force_buffy_check , $force_buffy_check
+
+ $force_name , $force_name
+
+ <forget-passphrase>, Miscellaneous Functions, Composing new messages,
+ index, pager, compose
+
+ <forward>, Sending Mail
+
+ <forward-char>, Editing Input Fields, editor
+
+ $forward_decode , Configuration variables
+
+ $forward_decrypt , Configuration variables
+
+ $forward_format , Configuration variables
+
+ <forward-message>, index, pager, attach
+
+ $forward_quote , Configuration variables
+
+ <forward-word>, Editing Input Fields, editor
+
+ $forward_decode , $forward_decode
+
+ $forward_decrypt , $forward_decrypt
+
+ $forward_edit , $forward_edit
+
+ $forward_format , $forward_format
+
+ $forward_quote , $forward_quote
+
+ $from , $from
+
+ G
+
+ $gecos_mask , $gecos_mask
+
+ <group-reply>, Sending Mail, index, pager, attach
+
+ H
+
+ <half-down>, generic, pager
+
+ <half-up>, generic, pager
+
+ $hdrs , $hdrs
+
+ hdr_order, Defining the order of headers when viewing messages,
+ Configuration Commands
+
+ $header , $header
+
+ $header_cache , $header_cache
+
+ $header_cache_compress , $header_cache_compress
+
+ <help>, Moving Around in Menus, $help, generic, pager
+
+ $hidden_host , $hidden_host
+
+ $hide_limited , $hide_limited
+
+ $hide_missing , $hide_missing
+
+ $hide_thread_subject , $hide_thread_subject
+
+ $hide_top_limited , $hide_top_limited
+
+ $hide_top_missing , $hide_top_missing
+
+ $history , $history
+
+ <history-down>, Editing Input Fields, editor
+
+ <history-up>, Editing Input Fields, editor
+
+ $HOME, MIME Type configuration with mime.types, MIME Viewer configuration
+ with mailcap
+
+ $honor_followup_to, Miscellaneous Functions, Handling Mailing Lists
+
+ $honor_followup_to , $honor_followup_to
+
+ $HOSTNAME, Environment Variables
+
+ $hostname , $hostname
+
+ I
+
+ iconv-hook, Defining aliases for character sets
+
+ ignore, Miscellaneous Functions, Ignoring (weeding) unwanted message
+ headers, Configuration Commands
+
+ $ignore_list_reply_to , $ignore_list_reply_to
+
+ $imap_authenticators, Authentication
+
+ $imap_home_namespace, Configuration Variables
+
+ $imap_list_subscribed, IMAP Support (OPTIONAL)
+
+ $imap_mail_check, Manual Conventions, Conditional parts, IMAP Support
+ (OPTIONAL)
+
+ $imap_pass, Authentication
+
+ $imap_user, Authentication
+
+ $imap_authenticators , $imap_authenticators
+
+ $imap_check_subscribed , $imap_check_subscribed
+
+ $imap_delim_chars , $imap_delim_chars
+
+ $imap_headers , $imap_headers
+
+ $imap_home_namespace , $imap_home_namespace
+
+ $imap_keepalive , $imap_keepalive
+
+ $imap_list_subscribed , $imap_list_subscribed
+
+ $imap_login , $imap_login
+
+ $imap_mail_check , $imap_mail_check
+
+ $imap_pass , $imap_pass
+
+ $imap_passive , $imap_passive
+
+ $imap_peek , $imap_peek
+
+ $imap_reconnect , $imap_reconnect
+
+ $imap_servernoise , $imap_servernoise
+
+ $imap_user , $imap_user
+
+ $implicit_autoview , $implicit_autoview
+
+ $include , $include
+
+ $include_onlyfirst , $include_onlyfirst
+
+ $indent_string , Configuration variables
+
+ $indent_string , $indent_string
+
+ $index_format, Threaded Mode, Spam detection, Handling Mailing Lists,
+ Configuration variables
+
+ $index_format , $index_format
+
+ <ispell>, Composing new messages, $ispell, compose
+
+ J
+
+ <jump>, generic
+
+ K
+
+ $keep_flagged , $keep_flagged
+
+ <kill-eol>, Editing Input Fields, editor
+
+ <kill-eow>, Editing Input Fields, editor
+
+ <kill-line>, Editing Input Fields, editor
+
+ <kill-word>, Editing Input Fields, editor
+
+ L
+
+ <last-entry>, Moving Around in Menus, generic
+
+ <limit>, index
+
+ <list-reply>, Miscellaneous Functions, Sending Mail, index, pager, attach
+
+ lists, Miscellaneous Functions, Mailing lists, Handling Mailing Lists,
+ Configuration Commands
+
+ $list_reply , $list_reply
+
+ $locale, Change settings based upon message recipients, $locale
+
+ M
+
+ macro, Miscellaneous Functions, Keyboard macros, Adding key sequences to
+ the keyboard buffer, Using Tags, Configuration Commands
+
+ <mail>, index, pager, query
+
+ <mail-key>, Sending Mail, index, pager
+
+ mailboxes, Defining mailboxes which receive mail, Configuration Commands
+
+ $mailcap_path, mailcap
+
+ $mailcap_sanitize, Secure use of mailcap, mailcap
+
+ $mailcap_path , $mailcap_path
+
+ $mailcap_sanitize , $mailcap_sanitize
+
+ $maildir_header_cache_verify , $maildir_header_cache_verify
+
+ $maildir_trash , $maildir_trash
+
+ $mail_check , $mail_check
+
+ <mark-as-new>, pager
+
+ $markers , $markers
+
+ $mark_old , $mark_old
+
+ $mask , $mask
+
+ $max_display_recips , $max_display_recips
+
+ $max_line_length , $max_line_length
+
+ $mbox, Mailbox Shortcuts, $mbox
+
+ mbox-hook, Using Multiple spool mailboxes, Using Hooks, Configuration
+ Commands
+
+ $mbox_type, Mailbox Formats, Append a message to a compressed mailbox
+
+ $mbox_type , $mbox_type
+
+ $menu_context , $menu_context
+
+ $menu_move_off , $menu_move_off
+
+ $menu_scroll , $menu_scroll
+
+ $message_format , Configuration variables
+
+ message-hook, Change settings before formatting a message, Using Hooks,
+ Message Matching in Hooks, MIME Autoview, Configuration Commands
+
+ $message_format , $message_format
+
+ $meta_key , $meta_key
+
+ $metoo , $metoo
+
+ $mh_purge , $mh_purge
+
+ $mh_seq_flagged , $mh_seq_flagged
+
+ $mh_seq_replied , $mh_seq_replied
+
+ $mh_seq_unseen , $mh_seq_unseen
+
+ <middle-page>, generic
+
+ $mime_forward , Configuration variables
+
+ $mime_forward , $mime_forward
+
+ $mime_forward_decode , $mime_forward_decode
+
+ $mime_forward_rest , $mime_forward_rest
+
+ mime_lookup, MIME Lookup, Configuration Commands
+
+ $mix_entry_format, Sending anonymous messages via mixmaster
+
+ $mixmaster , $mixmaster
+
+ $mix_entry_format , $mix_entry_format
+
+ mono, Using color and mono video attributes, Configuration Commands
+
+ $move , $move
+
+ $msgid_format, Message-ID: headers
+
+ $msgid_format , $msgid_format
+
+ $muttng_bindir , $muttng_bindir
+
+ $muttng_docdir , $muttng_docdir
+
+ $muttng_folder_name , $muttng_folder_name
+
+ $muttng_folder_path , $muttng_folder_path
+
+ $muttng_hcache_backend , $muttng_hcache_backend
+
+ $muttng_pwd , $muttng_pwd
+
+ $muttng_revision , $muttng_revision
+
+ $muttng_sysconfdir , $muttng_sysconfdir
+
+ $muttng_version , $muttng_version
+
+ my_hdr, User defined headers, Configuration Commands
+
+ N
+
+ $narrow_tree , $narrow_tree
+
+ $net_inc , $net_inc
+
+ <new-mime>, compose
+
+ <next-entry>, Moving Around in Menus, generic, pager
+
+ <next-line>, generic, pager
+
+ <next-new>, index, pager
+
+ <next-new-then-unread>, index, pager
+
+ <next-page>, generic, pager
+
+ <next-subthread>, Threaded Mode, index, pager
+
+ <next-thread>, Threaded Mode, index, pager
+
+ <next-undeleted>, index, pager
+
+ <next-unread>, index, pager
+
+ $nntp_ask_followup_to , Configuration variables
+
+ $nntp_ask_x_comment_to , Configuration variables
+
+ $nntp_cache_dir , Configuration variables
+
+ $nntp_catchup , Configuration variables
+
+ $nntp_followup_to_poster , Configuration variables
+
+ $nntp_group_index_format , Configuration variables
+
+ $nntp_host , Configuration variables
+
+ $nntp_inews , Configuration variables
+
+ $nntp_mail_check , Configuration variables
+
+ $nntp_mime_subject , Configuration variables
+
+ $nntp_newsrc, NNTP Support (OPTIONAL), Configuration variables
+
+ $nntp_post_moderated , Configuration variables
+
+ $nntp_save_unsubscribed , Configuration variables
+
+ $nntp_show_new_news , Configuration variables
+
+ $nntp_show_only_unread , Configuration variables
+
+ $nntp_x_comment_to , Configuration variables
+
+ $NNTPSERVER, NNTP Support (OPTIONAL)
+
+ $nntp_ask_followup_to , $nntp_ask_followup_to
+
+ $nntp_ask_x_comment_to , $nntp_ask_x_comment_to
+
+ $nntp_cache_dir , $nntp_cache_dir
+
+ $nntp_catchup , $nntp_catchup
+
+ $nntp_context , $nntp_context
+
+ $nntp_followup_to_poster , $nntp_followup_to_poster
+
+ $nntp_group_index_format , $nntp_group_index_format
+
+ $nntp_host , $nntp_host
+
+ $nntp_inews , $nntp_inews
+
+ $nntp_load_description , $nntp_load_description
+
+ $nntp_mail_check , $nntp_mail_check
+
+ $nntp_mime_subject , $nntp_mime_subject
+
+ $nntp_newsrc , $nntp_newsrc
+
+ $nntp_pass , $nntp_pass
+
+ $nntp_post_moderated , $nntp_post_moderated
+
+ $nntp_reconnect , $nntp_reconnect
+
+ $nntp_save_unsubscribed , $nntp_save_unsubscribed
+
+ $nntp_show_new_news , $nntp_show_new_news
+
+ $nntp_show_only_unread , $nntp_show_only_unread
+
+ $nntp_user , $nntp_user
+
+ $nntp_x_comment_to , $nntp_x_comment_to
+
+ nospam, Spam detection, Configuration Commands
+
+ O
+
+ open-hook, Compressed folders Support (OPTIONAL), Open a compressed
+ mailbox for reading, Write a compressed mailbox, Append a message to a
+ compressed mailbox, Configuration Commands
+
+ $operating_system , $operating_system
+
+ P
+
+ <page-down>, Moving Around in Menus
+
+ <page-up>, Moving Around in Menus
+
+ $pager , $pager
+
+ $pager_index_lines, Conditional parts
+
+ $pager_context , $pager_context
+
+ $pager_format , $pager_format
+
+ $pager_index_lines , $pager_index_lines
+
+ $pager_stop , $pager_stop
+
+ <parent-message>, Threaded Mode, index, pager
+
+ pattern-hook, Specify default save filename, Specify default Fcc: mailbox
+ when composing, Change settings based upon message recipients, Change
+ settings before formatting a message
+
+ $pgp_autoinline , Configuration variables
+
+ $pgp_entry_format, Using Mutt-ng with PGP
+
+ <pgp-menu>, Composing new messages, compose
+
+ $pgp_replyinline , Configuration variables
+
+ $pgp_sign_as, Using Mutt-ng with PGP
+
+ $pgp_autoinline , $pgp_autoinline
+
+ $pgp_auto_decode , $pgp_auto_decode
+
+ $pgp_check_exit , $pgp_check_exit
+
+ $pgp_clearsign_command , $pgp_clearsign_command
+
+ $pgp_decode_command , $pgp_decode_command
+
+ $pgp_decrypt_command , $pgp_decrypt_command
+
+ $pgp_encrypt_only_command , $pgp_encrypt_only_command
+
+ $pgp_encrypt_sign_command , $pgp_encrypt_sign_command
+
+ $pgp_entry_format , $pgp_entry_format
+
+ $pgp_export_command , $pgp_export_command
+
+ $pgp_getkeys_command , $pgp_getkeys_command
+
+ $pgp_good_sign , $pgp_good_sign
+
+ $pgp_ignore_subkeys , $pgp_ignore_subkeys
+
+ $pgp_import_command , $pgp_import_command
+
+ $pgp_list_pubring_command , $pgp_list_pubring_command
+
+ $pgp_list_secring_command , $pgp_list_secring_command
+
+ $pgp_long_ids , $pgp_long_ids
+
+ $pgp_mime_auto , $pgp_mime_auto
+
+ $pgp_replyinline , $pgp_replyinline
+
+ $pgp_retainable_sigs , $pgp_retainable_sigs
+
+ $pgp_show_unusable , $pgp_show_unusable
+
+ $pgp_sign_as , $pgp_sign_as
+
+ $pgp_sign_command , $pgp_sign_command
+
+ $pgp_sort_keys , $pgp_sort_keys
+
+ $pgp_strict_enc , $pgp_strict_enc
+
+ $pgp_timeout , $pgp_timeout
+
+ $pgp_use_gpg_agent , $pgp_use_gpg_agent
+
+ $pgp_verify_command , $pgp_verify_command
+
+ $pgp_verify_key_command , $pgp_verify_key_command
+
+ $pipe_decode, Miscellaneous Functions
+
+ <pipe-entry>, attach, compose
+
+ <pipe-message>, Miscellaneous Functions, index, pager
+
+ $pipe_split, Miscellaneous Functions
+
+ $pipe_decode , $pipe_decode
+
+ $pipe_sep , $pipe_sep
+
+ $pipe_split , $pipe_split
+
+ $pop_mail_check, POP3 Support (OPTIONAL), Configuration variables
+
+ $pop_authenticators , $pop_authenticators
+
+ $pop_auth_try_all , $pop_auth_try_all
+
+ $pop_delete , $pop_delete
+
+ $pop_host , $pop_host
+
+ $pop_last , $pop_last
+
+ $pop_mail_check , $pop_mail_check
+
+ $pop_pass , $pop_pass
+
+ $pop_reconnect , $pop_reconnect
+
+ $pop_user , $pop_user
+
+ $post_indent_string , Configuration variables
+
+ $postpone, Postponing Mail, $postpone
+
+ <postpone-message>, Composing new messages, compose
+
+ $postponed, Postponing Mail, $postponed
+
+ $post_indent_string , $post_indent_string
+
+ $preconnect , $preconnect
+
+ <previous-entry>, Moving Around in Menus, generic, pager
+
+ <previous-line>, generic, pager
+
+ <previous-new>, index, pager
+
+ <previous-new-then-unread>, index, pager
+
+ <previous-page>, generic, index, pager
+
+ <previous-subthread>, Threaded Mode, index, pager
+
+ <previous-thread>, Threaded Mode, index, pager
+
+ <previous-undeleted>, index, pager
+
+ <previous-unread>, index, pager
+
+ $print , $print
+
+ $print_command , Configuration variables
+
+ <print-entry>, attach, compose
+
+ <print-message>, index, pager
+
+ $print_command , $print_command
+
+ $print_decode , $print_decode
+
+ $print_split , $print_split
+
+ $prompt_after , $prompt_after
+
+ push, Adding key sequences to the keyboard buffer, Using Tags,
+ Configuration Commands
+
+ Q
+
+ <query>, index, query
+
+ <query-append>, query
+
+ $query_command, External Address Queries
+
+ $query_command , $query_command
+
+ <quit>, Moving Around in Menus, Composing new messages, $quit, index,
+ pager
+
+ <quote-char>, Editing Input Fields, editor
+
+ $quote_regexp, Miscellaneous Functions, Using color and mono video
+ attributes
+
+ $quote_empty , $quote_empty
+
+ $quote_quoted , $quote_quoted
+
+ $quote_regexp , $quote_regexp
+
+ R
+
+ <read-subthread>, Threaded Mode, index, pager
+
+ <read-thread>, Threaded Mode, index, pager
+
+ $read_inc , $read_inc
+
+ $read_only , $read_only
+
+ $realname , $realname
+
+ $recall , $recall
+
+ <recall-message>, index, pager
+
+ $record, Environment Variables, Specify default Fcc: mailbox when
+ composing, Mailbox Shortcuts, $record
+
+ <redraw-screen>, pager
+
+ <refresh>, generic
+
+ <rename-file>, compose
+
+ <reply>, Sending Mail, index, pager, attach
+
+ reply-hook, Change settings based upon message recipients, Configuration
+ Commands
+
+ $reply_to, Alternative addresses, Handling Mailing Lists
+
+ $reply_regexp , $reply_regexp
+
+ $reply_self , $reply_self
+
+ $reply_to , $reply_to
+
+ <resend-message>, Miscellaneous Functions, The Attachment Menu, index,
+ attach
+
+ reset, Setting variables, Configuration Commands
+
+ $resolve , $resolve
+
+ $reverse_alias , $reverse_alias
+
+ $reverse_name , $reverse_name
+
+ $reverse_realname , $reverse_realname
+
+ RfC
+
+ 1524, MIME Viewer configuration with mailcap, Command
+ Expansion, mailcap
+
+ 1894, Delivery Status Notification (DSN) Support
+
+ 2822, Again: Scoring
+
+ 3676, Sending
+
+ 822, User defined headers
+
+ $rfc2047_parameters , $rfc2047_parameters
+
+ S
+
+ $save_empty, Compressed folders Support (OPTIONAL)
+
+ <save-entry>, attach
+
+ save-hook, Specify default save filename, Specify default save filename
+ and default Fcc: mailbox at once, Using Hooks, Message Matching in Hooks,
+ Mailbox Shortcuts, Configuration Commands
+
+ <save-message>, index, pager
+
+ $save_address , $save_address
+
+ $save_empty , $save_empty
+
+ $save_name , $save_name
+
+ score, Message Scoring, Configuration Commands, $score
+
+ $score_threshold_delete, Message Scoring
+
+ $score_threshold_flag, Message Scoring
+
+ $score_threshold_read, Message Scoring
+
+ $score_threshold_delete , $score_threshold_delete
+
+ $score_threshold_flag , $score_threshold_flag
+
+ $score_threshold_read , $score_threshold_read
+
+ <search>, generic, pager, alias, query, browser
+
+ <search-next>, generic, pager, alias, query, browser
+
+ <search-opposite>, generic, pager, query
+
+ <search-reverse>, generic, pager, alias, query, browser
+
+ <search-toggle>, pager
+
+ <select-entry>, generic
+
+ <select-new>, browser
+
+ send-hook, Change settings based upon message recipients, Using Hooks,
+ Message Matching in Hooks, Configuration Commands
+
+ <send-message>, Composing new messages, compose
+
+ send2-hook, Change settings based upon message recipients
+
+ <senderdecode-copy>, pager
+
+ $sendmail, Change settings based upon message recipients, $sendmail
+
+ $sendmail_wait , $sendmail_wait
+
+ $send_charset , $send_charset
+
+ set, Setting variables, Configuration Commands
+
+ <set-flag>, index
+
+ $shell , $shell
+
+ <shell-escape>, Miscellaneous Functions, generic, pager
+
+ <show-limit>, index
+
+ <show-version>, index, pager
+
+ <sidebar-next>, sidebar
+
+ <sidebar-next-new>, sidebar
+
+ <sidebar-open>, sidebar
+
+ <sidebar-previous>, sidebar
+
+ <sidebar-scroll-down>, sidebar
+
+ <sidebar-scroll-up>, sidebar
+
+ $sidebar_shorten_hierarchy , Configuration variables
+
+ $sidebar_boundary , $sidebar_boundary
+
+ $sidebar_delim , $sidebar_delim
+
+ $sidebar_newmail_only , $sidebar_newmail_only
+
+ $sidebar_number_format , $sidebar_number_format
+
+ $sidebar_shorten_hierarchy , $sidebar_shorten_hierarchy
+
+ $sidebar_visible , $sidebar_visible
+
+ $sidebar_width , $sidebar_width
+
+ $signature, Change settings based upon message recipients, $signature
+
+ $signoff_string , $signoff_string
+
+ $sig_dashes , $sig_dashes
+
+ $sig_on_top , $sig_on_top
+
+ $simple_search , $simple_search
+
+ <skip-quoted>, Miscellaneous Functions, pager
+
+ $sleep_time , $sleep_time
+
+ $smart_wrap , $smart_wrap
+
+ $smileys , $smileys
+
+ $smime_default_key , Configuration variables
+
+ <smime-menu>, Composing new messages
+
+ $smime_ask_cert_label , $smime_ask_cert_label
+
+ $smime_ca_location , $smime_ca_location
+
+ $smime_certificates , $smime_certificates
+
+ $smime_decrypt_command , $smime_decrypt_command
+
+ $smime_decrypt_use_default_key , $smime_decrypt_use_default_key
+
+ $smime_default_key , $smime_default_key
+
+ $smime_encrypt_command , $smime_encrypt_command
+
+ $smime_encrypt_with , $smime_encrypt_with
+
+ $smime_get_cert_command , $smime_get_cert_command
+
+ $smime_get_cert_email_command , $smime_get_cert_email_command
+
+ $smime_get_signer_cert_command , $smime_get_signer_cert_command
+
+ $smime_import_cert_command , $smime_import_cert_command
+
+ $smime_is_default , $smime_is_default
+
+ $smime_keys , $smime_keys
+
+ $smime_pk7out_command , $smime_pk7out_command
+
+ $smime_sign_command , $smime_sign_command
+
+ $smime_sign_opaque_command , $smime_sign_opaque_command
+
+ $smime_timeout , $smime_timeout
+
+ $smime_verify_command , $smime_verify_command
+
+ $smime_verify_opaque_command , $smime_verify_opaque_command
+
+ $smtp_envelope, SMTP Support (OPTIONAL)
+
+ $smtp_host, SMTP Support (OPTIONAL)
+
+ $smtp_pass, SMTP Support (OPTIONAL), Configuration variables
+
+ $smtp_use_tls, SMTP Support (OPTIONAL)
+
+ $smtp_user, SMTP Support (OPTIONAL), Configuration variables
+
+ $smtp_host , $smtp_host
+
+ $smtp_pass , $smtp_pass
+
+ $smtp_port , $smtp_port
+
+ $smtp_user , $smtp_user
+
+ $smtp_use_tls , $smtp_use_tls
+
+ $sort , $sort, browser
+
+ <sort-mailbox>, index
+
+ <sort-reverse>, index, browser
+
+ $sort_alias , $sort_alias
+
+ $sort_aux , $sort_aux
+
+ $sort_browser , $sort_browser
+
+ $sort_re , $sort_re
+
+ source, Miscellaneous Functions, Defining/Using aliases, Reading
+ initialization commands from another file, Configuration Commands
+
+ spam, Spam detection, Configuration Commands
+
+ $spam_separator , $spam_separator
+
+ $spoolfile, Setting variables based upon mailbox, Defining mailboxes which
+ receive mail, Mailbox Shortcuts, POP3 Support (OPTIONAL), $spoolfile
+
+ $ssl_ca_certificates_file , $ssl_ca_certificates_file
+
+ $ssl_client_cert , $ssl_client_cert
+
+ $ssl_force_tls , $ssl_force_tls
+
+ $ssl_min_dh_prime_bits , $ssl_min_dh_prime_bits
+
+ $ssl_starttls , $ssl_starttls
+
+ $ssl_usesystemcerts , $ssl_usesystemcerts
+
+ $ssl_use_sslv2 , $ssl_use_sslv2
+
+ $ssl_use_sslv3 , $ssl_use_sslv3
+
+ $ssl_use_tlsv1 , $ssl_use_tlsv1
+
+ $status_format, Composing new messages, Introduction
+
+ $status_chars , $status_chars
+
+ $status_format , $status_format
+
+ $status_on_top , $status_on_top
+
+ $strict_mailto, mailto:-style links
+
+ $strict_threads, Threaded Mode
+
+ $strict_mailto , $strict_mailto
+
+ $strict_mime , $strict_mime
+
+ $strict_threads , $strict_threads
+
+ $strip_was , $strip_was
+
+ $strip_was_regex , $strip_was_regex
+
+ $stuff_quoted , $stuff_quoted
+
+ subscribe, Mailing lists, Configuration Commands, browser
+
+ $suspend , $suspend
+
+ <sync-mailbox>, Manual Conventions, index, pager
+
+ T
+
+ <tag-entry>, generic
+
+ <tag-message>, pager
+
+ <tag-pattern>, index
+
+ <tag-prefix>, generic
+
+ <tag-prefix-cond>, generic
+
+ <tag-thread>, Threaded Mode, index
+
+ $text_flowed , $text_flowed
+
+ $thorough_search , $thorough_search
+
+ $thread_received , $thread_received
+
+ $tilde , $tilde
+
+ $timeout, IMAP Support (OPTIONAL), $timeout
+
+ $tmpdir, Temporary Files, $tmpdir
+
+ $to_chars, Status Flags
+
+ toggle, Setting variables, Configuration Commands
+
+ <toggle-mailboxes>, browser
+
+ <toggle-new>, index
+
+ <toggle-quoted>, Miscellaneous Functions, pager
+
+ <toggle-subscribed>, browser
+
+ <toggle-unlink>, compose
+
+ <toggle-write>, index
+
+ <top>, pager
+
+ <top-page>, generic
+
+ $to_chars , $to_chars
+
+ <transpose-chars>, editor
+
+ $trash , $trash
+
+ $tunnel , $tunnel
+
+ U
+
+ $umask, Temporary Files, $umask
+
+ unalias, Defining/Using aliases, Configuration Commands
+
+ unalternates, Alternative addresses, Configuration Commands
+
+ unalternative_order, MIME Multipart/Alternative, Configuration Commands
+
+ unauto_view, MIME Autoview, Configuration Commands
+
+ $uncollapse_jump , $uncollapse_jump
+
+ uncolor, Using color and mono video attributes, Configuration Commands
+
+ <undelete-entry>, attach, postpone
+
+ <undelete-message>, index, pager
+
+ <undelete-pattern>, index
+
+ <undelete-subthread>, Threaded Mode, index, pager
+
+ <undelete-thread>, Threaded Mode, index, pager
+
+ unhdr_order, Defining the order of headers when viewing messages,
+ Configuration Commands
+
+ unhook, Removing hooks, Configuration Commands
+
+ unignore, Ignoring (weeding) unwanted message headers, Configuration
+ Commands
+
+ unlists, Mailing lists, Configuration Commands
+
+ unmailboxes, Defining mailboxes which receive mail
+
+ unmime_lookup, MIME Lookup, Configuration Commands
+
+ unmono, Using color and mono video attributes, Configuration Commands
+
+ unmy_hdr, User defined headers, Configuration Commands
+
+ unscore, Message Scoring, Configuration Commands
+
+ unset, Setting variables, Configuration Commands
+
+ unsubscribe, Mailing lists, Configuration Commands, browser
+
+ <untag-pattern>, index
+
+ <upcase-word>, Editing Input Fields, editor
+
+ $use_8bitmime, SMTP Support (OPTIONAL)
+
+ $use_8bitmime , $use_8bitmime
+
+ $use_domain , $use_domain
+
+ $use_envelope_from , $use_envelope_from
+
+ $use_from , $use_from
+
+ $use_idn , $use_idn
+
+ $use_ipv6 , $use_ipv6
+
+ V
+
+ <verify-key>, pgp
+
+ <view-attach>, attach, compose
+
+ <view-attachments>, index, pager
+
+ <view-file>, browser
+
+ <view-mailcap>, attach
+
+ <view-name>, pgp
+
+ <view-text>, attach
+
+ $VISUAL, Composing new messages
+
+ $visual , $visual
+
+ W
+
+ $wait_key, Miscellaneous Functions, Optional Fields
+
+ $wait_key , $wait_key
+
+ $weed, Miscellaneous Functions, $weed
+
+ <what-key>, generic
+
+ $wrapmargin , $wrapmargin
+
+ $wrap_search , $wrap_search
+
+ <write-fcc>, Composing new messages, compose
+
+ $write_bcc , $write_bcc
+
+ $write_inc , $write_inc
+
+ X
+
+ $xterm_icon , $xterm_icon
+
+ $xterm_leave , $xterm_leave
+
+ $xterm_set_titles , $xterm_set_titles
+
+ $xterm_title , $xterm_title