mutt stable branch with some hacks
at master 706 lines 26 kB view raw
1'\" t 2.\" -*-nroff-*- 3.\" 4.\" Copyright (C) 1996-2000 Michael R. Elkins <me@cs.hmc.edu> 5.\" Copyright (C) 1999-2000 Thomas Roessler <roessler@does-not-exist.org> 6.\" 7.\" This program is free software; you can redistribute it and/or modify 8.\" it under the terms of the GNU General Public License as published by 9.\" the Free Software Foundation; either version 2 of the License, or 10.\" (at your option) any later version. 11.\" 12.\" This program is distributed in the hope that it will be useful, 13.\" but WITHOUT ANY WARRANTY; without even the implied warranty of 14.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15.\" GNU General Public License for more details. 16.\" 17.\" You should have received a copy of the GNU General Public License 18.\" along with this program; if not, write to the Free Software 19.\" Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 20.\" 21.de EX 22.nf 23.ft CW 24.. 25.de EE 26.ft 27.fi 28.. 29.TH muttrc 5 "September 2002" Unix "User Manuals" 30.SH NAME 31muttrc \- Configuration file for the Mutt Mail User Agent 32.SH DESCRIPTION 33.PP 34A mutt configuration file consists of a series of \(lqcommands\(rq. 35Each line of the file may contain one or more commands. When 36multiple commands are used, they must be separated by a semicolon 37(\(lq\fB;\fP\(rq). 38.PP 39The hash mark, or pound sign (\(lq\fB#\fP\(rq), is used as a 40\(lqcomment\(rq character. You can use it to annotate your 41initialization file. All text after the comment character to the end 42of the line is ignored. 43.PP 44Single quotes (\(lq\fB'\fP\(rq) and double quotes (\(lq\fB"\fP\(rq) 45can be used to quote strings which contain spaces or other special 46characters. The difference between the two types of quotes is 47similar to that of many popular shell programs, namely that a single 48quote is used to specify a literal string (one that is not 49interpreted for shell variables or quoting with a backslash [see 50next paragraph]), while double quotes indicate a string which 51should be evaluated. For example, backticks are evaluated inside of 52double quotes, but not single quotes. 53.PP 54\fB\(rs\fP quotes the next character, just as in shells such as bash and zsh. 55For example, if want to put quotes (\(lq\fB"\fP\(rq) inside of a 56string, you can use \(lq\fB\(rs\fP\(rq to force the next character 57to be a literal instead of interpreted character. 58.PP 59\(lq\fB\(rs\(rs\fP\(rq means to insert a literal \(lq\fB\(rs\fP\(rq into the 60line. \(lq\fB\(rsn\fP\(rq and \(lq\fB\(rsr\fP\(rq have their usual 61C meanings of linefeed and carriage-return, respectively. 62.PP 63A \(lq\fB\(rs\fP\(rq at the end of a line can be used to split commands over 64multiple lines, provided that the split points don't appear in the 65middle of command names. 66.PP 67It is also possible to substitute the output of a Unix command in an 68initialization file. This is accomplished by enclosing the command 69in backticks (\fB`\fP\fIcommand\fP\fB`\fP). 70.PP 71UNIX environment variables can be accessed like the way it is done in shells 72like sh and bash: Prepend the name of the variable by a dollar 73(\(lq\fB\(Do\fP\(rq) sign. 74.PP 75.SH COMMANDS 76.PP 77.nf 78\fBalias\fP [\fB-group\fP \fIname\fP [...]] \fIkey\fP \fIaddress\fP [\fB,\fP \fIaddress\fP [ ... ]] 79\fBunalias\fP [\fB * \fP | \fIkey\fP ] 80.fi 81.IP 82\fBalias\fP defines an alias \fIkey\fP for the given addresses. Each 83\fIaddress\fP will be resolved into either an email address (user@example.com) 84or a named email address (User Name <user@example.com>). The address may be specified in either format, or in the format \(lquser@example.com (User 85Name)\(rq. 86\fBunalias\fP removes the alias corresponding to the given \fIkey\fP or 87all aliases when \(lq\fB*\fP\(rq is used as an argument. The optional 88\fB-group\fP argument to \fBalias\fP causes the aliased address(es) to be 89added to the named \fIgroup\fP. 90.PP 91.nf 92\fBgroup\fP [\fB-group\fP \fIname\fP] [\fB-rx\fP \fIEXPR\fP [ \fI...\fP ]] [\fB-addr\fP \fIaddress\fP [ \fI...\fP ]] 93\fBungroup\fP [\fB-group\fP \fIname\fP ] [ \fB*\fP | [[\fB-rx\fP \fIEXPR\fP [ \fI...\fP ]] [\fB-addr\fP \fIaddress\fP [ \fI...\fP ]]] 94.fi 95.IP 96\fBgroup\fP is used to directly add either addresses or regular expressions to 97the specified group or groups. The different categories of arguments to the 98\fBgroup\fP command can be in any order. The flags \fI-rx\fP and \fI-addr\fP 99specify what the following strings (that cannot begin with a hyphen) should be 100interpreted as: either a regular expression or an email address, respectively. 101\fBungroup\fP is used to remove addresses or regular expressions from the 102specified group or groups. The syntax is similar to the \fBgroup\fP command, 103however the special character \fB*\fP can be used to empty a group of all of 104its contents. 105.IP 106These address groups can also be created implicitly by the \fBalias\fP, \fBlists\fP, 107\fBsubscribe\fP and \fBalternates\fP commands by specifying the optional \fI-group\fP 108option. 109.IP 110Once defined, these address groups can be used in patterns to search for and limit the 111display to messages matching a group. 112.PP 113.nf 114\fBalternates\fP [\fB-group\fP \fIname\fP] \fIregexp\fP [ \fIregexp\fP [ ... ]] 115\fBunalternates\fP [\fB * \fP | \fIregexp\fP [ \fIregexp\fP [ ... ]] ] 116.fi 117.IP 118\fBalternates\fP is used to inform mutt about alternate addresses 119where you receive mail; you can use regular expressions to specify 120alternate addresses. This affects mutt's idea about messages 121from you, and messages addressed to you. \fBunalternates\fP removes 122a regular expression from the list of known alternates. The \fB-group\fP flag 123causes all of the subsequent regular expressions to be added to the named group. 124.PP 125.nf 126\fBalternative_order\fP \fItype\fP[\fB/\fP\fIsubtype\fP] [ ... ] 127\fBunalternative_order\fP [\fB * \fP | \fItype\fP/\fIsubtype\fP] [...] 128.fi 129.IP 130\fBalternative_order\fP command permits you to define an order of preference which is 131used by mutt to determine which part of a 132\fBmultipart/alternative\fP body to display. 133A subtype of \(lq\fB*\fP\(rq matches any subtype, as does an empty 134subtype. \fBunalternative_order\fP removes entries from the 135ordered list or deletes the entire list when \(lq\fB*\fP\(rq is used 136as an argument. 137.PP 138.nf 139\fBauto_view\fP \fItype\fP[\fB/\fP\fIsubtype\fP] [ ... ] 140\fBunauto_view\fP \fItype\fP[\fB/\fP\fIsubtype\fP] [ ... ] 141.fi 142.IP 143This commands permits you to specify that mutt should automatically 144convert the given MIME types to text/plain when displaying messages. 145For this to work, there must be a 146.BR mailcap (5) 147entry for the given MIME type with the 148.B copiousoutput 149flag set. A subtype of \(lq\fB*\fP\(rq 150matches any subtype, as does an empty subtype. 151.PP 152.nf 153\fBmime_lookup\fP \fItype\fP[\fB/\fP\fIsubtype\fP] [ ... ] 154\fBunmime_lookup\fP \fItype\fP[\fB/\fP\fIsubtype\fP] [ ... ] 155.fi 156.IP 157This command permits you to define a list of "data" MIME content 158types for which mutt will try to determine the actual file type from 159the file name, and not use a 160.BR mailcap (5) 161entry given for the original MIME type. For instance, you may add 162the \fBapplication/octet-stream\fP MIME type to this list. 163.TP 164\fBbind\fP \fImap1,map2,...\fP \fIkey\fP \fIfunction\fP 165This command binds the given \fIkey\fP for the given \fImap\fP or maps 166to the given \fIfunction\fP. Multiple maps may be specified by 167separating them with commas (no whitespace is allowed). 168.IP 169Valid maps are: 170.BR generic ", " alias ", " attach ", " 171.BR browser ", " editor ", " 172.BR index ", " compose ", " 173.BR pager ", " pgp ", " postpone ", " 174.BR mix . 175.IP 176For more information on keys and functions, please consult the Mutt 177Manual. Note that the function name is to be specified without 178angle brackets. 179.TP 180\fBaccount-hook\fP [\fB!\fP]\fIregexp\fP \fIcommand\fP 181This hook is executed whenever you access a remote mailbox. Useful 182to adjust configuration settings to different IMAP or POP servers. 183.TP 184\fBcharset-hook\fP \fIalias\fP \fIcharset\fP 185This command defines an alias for a character set. This is useful 186to properly display messages which are tagged with a character set 187name not known to mutt. 188.TP 189\fBiconv-hook\fP \fIcharset\fP \fIlocal-charset\fP 190This command defines a system-specific name for a character set. 191This is useful when your system's 192.BR iconv (3) 193implementation does not understand MIME character set names (such as 194.BR iso-8859-1 ), 195but instead insists on being fed with implementation-specific 196character set names (such as 197.BR 8859-1 ). 198In this specific case, you'd put this into your configuration file: 199.IP 200.B "iconv-hook iso-8859-1 8859-1" 201.TP 202\fBmessage-hook\fP [\fB!\fP]\fIpattern\fP \fIcommand\fP 203Before mutt displays (or formats for replying or forwarding) a 204message which matches the given \fIpattern\fP (or, when it is 205preceded by an exclamation mark, does not match the \fIpattern\fP), 206the given \fIcommand\fP is executed. When multiple 207\fBmessage-hook\fPs match, they are executed in the order in 208which they occur in the configuration file. 209.TP 210\fBfolder-hook\fP [\fB!\fP]\fIregexp\fP \fIcommand\fP 211When mutt enters a folder which matches \fIregexp\fP (or, when 212\fIregexp\fP is preceded by an exclamation mark, does not match 213\fIregexp\fP), the given \fIcommand\fP is executed. 214.IP 215When several \fBfolder-hook\fPs match a given mail folder, they are 216executed in the order given in the configuration file. 217.TP 218\fBmacro\fP \fImap\fP \fIkey\fP \fIsequence\fP [ \fIdescription\fP ] 219This command binds the given \fIsequence\fP of keys to the given 220\fIkey\fP in the given \fImap\fP or maps. For valid maps, see \fBbind\fP. To 221specify multiple maps, put only a comma between the maps. 222.PP 223.nf 224\fBcolor\fP \fIobject\fP \fIforeground\fP \fIbackground\fP [ \fIregexp\fP ] 225\fBcolor\fP index \fIforeground\fP \fIbackground\fP [ \fIpattern\fP ] 226\fBuncolor\fP index \fIpattern\fP [ \fIpattern\fP ... ] 227.fi 228.IP 229If your terminal supports color, these commands can be used to 230assign \fIforeground\fP/\fIbackground\fP combinations to certain 231objects. Valid objects are: 232.BR attachment ", " body ", " bold ", " error ", " header ", " 233.BR hdrdefault ", " index ", " indicator ", " markers ", " 234.BR message ", " normal ", " prompt ", " quoted ", " quoted\fIN\fP ", " 235.BR search ", " signature ", " status ", " tilde ", " tree ", " 236.BR underline . 237If the sidebar is enabled the following objects are also valid: 238.BR sidebar_divider ", " sidebar_flagged ", " sidebar_highlight ", " 239.BR sidebar_indicator ", " sidebar_new ", " sidebar_spoolfile . 240The 241.BR body " and " header 242objects allow you to restrict the colorization to a regular 243expression. The \fBindex\fP object permits you to select colored 244messages by pattern. 245.IP 246Valid colors include: 247.BR white ", " black ", " green ", " magenta ", " blue ", " 248.BR cyan ", " yellow ", " red ", " default ", " color\fIN\fP . 249.PP 250.nf 251\fBmono\fP \fIobject\fP \fIattribute\fP [ \fIregexp\fP ] 252\fBmono\fP index \fIattribute\fP [ \fIpattern\fP ] 253.fi 254.IP 255For terminals which don't support color, you can still assign 256attributes to objects. Valid attributes include: 257.BR none ", " bold ", " underline ", " 258.BR reverse ", and " standout . 259.TP 260[\fBun\fP]\fBignore\fP \fIpattern\fP [ \fIpattern\fP ... ] 261The \fBignore\fP command permits you to specify header fields which 262you usually don't wish to see. Any header field whose tag 263\fIbegins\fP with an \(lqignored\(rq pattern will be ignored. 264.IP 265The \fBunignore\fP command permits you to define exceptions from 266the above mentioned list of ignored headers. 267.PP 268.nf 269\fBlists\fP [\fB-group\fP \fIname\fP] \fIregexp\fP [ \fIregexp\fP ... ] 270\fBunlists\fP \fIregexp\fP [ \fIregexp\fP ... ] 271\fBsubscribe\fP [\fB-group\fP \fIname\fP] \fIregexp\fP [ \fIregexp\fP ... ] 272\fBunsubscribe\fP \fIregexp\fP [ \fIregexp\fP ... ] 273.fi 274.IP 275Mutt maintains two lists of mailing list address patterns, a list of 276subscribed mailing lists, and a list of known mailing lists. All 277subscribed mailing lists are known. Patterns use regular expressions. 278.IP 279The \fBlists\fP command adds a mailing list address to the list of 280known mailing lists. The \fBunlists\fP command removes a mailing 281list from the lists of known and subscribed mailing lists. The 282\fBsubscribe\fP command adds a mailing list to the lists of known 283and subscribed mailing lists. The \fBunsubscribe\fP command removes 284it from the list of subscribed mailing lists. The \fB-group\fP flag 285adds all of the subsequent regular expressions to the named group. 286.TP 287\fBmbox-hook\fP [\fB!\fP]\fIregexp\fP \fImailbox\fP 288When mutt changes to a mail folder which matches \fIregexp\fP, 289\fImailbox\fP will be used as the \(lqmbox\(rq folder, i.e., read 290messages will be moved to that folder when the mail folder is left. 291.IP 292The first matching \fBmbox-hook\fP applies. 293.PP 294.nf 295\fBmailboxes\fP \fIfilename\fP [ \fIfilename\fP ... ] 296\fBunmailboxes\fP [ \fB*\fP | \fIfilename\fP ... ] 297.fi 298.IP 299The \fBmailboxes\fP specifies folders which can receive mail and which will 300be checked for new messages. When changing folders, pressing space 301will cycle through folders with new mail. The \fBunmailboxes\fP 302command is used to remove a file name from the list of folders which 303can receive mail. If "\fB*\fP" is specified as the file name, the 304list is emptied. 305.PP 306.nf 307\fBmy_hdr\fP \fIstring\fP 308\fBunmy_hdr\fP \fIfield\fP 309.fi 310.IP 311Using \fBmy_hdr\fP, you can define headers which will be added to 312the messages you compose. \fBunmy_hdr\fP will remove the given 313user-defined headers. 314.TP 315\fBhdr_order\fP \fIheader1\fP \fIheader2\fP [ ... ] 316With this command, you can specify an order in which mutt will 317attempt to present headers to you when viewing messages. 318.TP 319\fBsave-hook\fP [\fB!\fP]\fIpattern\fP \fIfilename\fP 320When a message matches \fIpattern\fP, the default file name when 321saving it will be the given \fIfilename\fP. 322.TP 323\fBfcc-hook\fP [\fB!\fP]\fIpattern\fP \fIfilename\fP 324When an outgoing message matches \fIpattern\fP, the default file 325name for storing a copy (fcc) will be the given \fIfilename\fP. 326.TP 327\fBfcc-save-hook\fP [\fB!\fP]\fIpattern\fP \fIfilename\fP 328This command is an abbreviation for identical \fBfcc-hook\fP and 329\fBsave-hook\fP commands. 330.TP 331\fBsend-hook\fP [\fB!\fP]\fIpattern\fP \fIcommand\fP 332When composing a message matching \fIpattern\fP, \fIcommand\fP is 333executed. When multiple \fBsend-hook\fPs match, they are executed 334in the order in which they occur in the configuration file. 335.TP 336\fBsend2-hook\fP [\fB!\fP]\fIpattern\fP \fIcommand\fP 337Whenever a message matching \fIpattern\fP is changed (either by 338editing it or by using the compose menu), \fIcommand\fP 339is executed. When multiple \fBsend2-hook\fPs match, they are 340executed in the order in which they occur in the configuration file. 341Possible applications include setting the $sendmail variable when a 342message's from header is changed. 343.IP 344\fBsend2-hook\fP execution is not triggered by use of 345\fBenter-command\fP from the compose menu. 346.TP 347\fBreply-hook\fP [\fB!\fP]\fIpattern\fP \fIcommand\fP 348When replying to a message matching \fIpattern\fP, \fIcommand\fP is 349executed. When multiple \fBreply-hook\fPs match, they are executed 350in the order in which they occur in the configuration file, but all 351\fBreply-hook\fPs are matched and executed before \fBsend-hook\fPs, 352regardless of their order in the configuration file. 353.TP 354\fBcrypt-hook\fP \fIregexp\fP \fIkey-id\fP 355The crypt-hook command provides a method by which you can 356specify the ID of the public key to be used when encrypting messages 357to a certain recipient. The meaning of "key ID" is to be taken 358broadly: This can be a different e-mail address, a numerical key ID, 359or even just an arbitrary search string. 360You may use multiple 361\fBcrypt-hook\fPs with the same \fIregexp\fP; multiple matching 362\fBcrypt-hook\fPs result in the use of multiple \fIkey-id\fPs for 363a recipient. 364.PP 365.nf 366\fBopen-hook\fP \fIregexp\fP "\fIcommand\fP" 367\fBclose-hook\fP \fIregexp\fP "\fIcommand\fP" 368\fBappend-hook\fP \fIregexp\fP "\fIcommand\fP" 369.fi 370.IP 371These commands provide a way to handle compressed folders. The given 372\fBregexp\fP specifies which folders are taken as compressed (e.g. 373"\fI\\\\.gz$\fP"). The commands tell Mutt how to uncompress a folder 374(\fBopen-hook\fP), compress a folder (\fBclose-hook\fP) or append a 375compressed mail to a compressed folder (\fBappend-hook\fP). The 376\fIcommand\fP string is the 377.BR printf (3) 378like format string, and it should accept two parameters: \fB%f\fP, 379which is replaced with the (compressed) folder name, and \fB%t\fP 380which is replaced with the name of the temporary folder to which to 381write. 382.TP 383\fBpush\fP \fIstring\fP 384This command adds the named \fIstring\fP to the keyboard buffer. 385.PP 386.nf 387\fBset\fP [\fBno\fP|\fBinv\fP|\fB&\fP|\fB?\fP]\fIvariable\fP[=\fIvalue\fP] [ ... ] 388\fBtoggle\fP \fIvariable\fP [ ... ] 389\fBunset\fP \fIvariable\fP [ ... ] 390\fBreset\fP \fIvariable\fP [ ... ] 391.fi 392.IP 393These commands are used to set and manipulate configuration 394variables. 395.IP 396Mutt knows four basic types of variables: boolean, number, string 397and quadoption. Boolean variables can be \fBset\fP (true), 398\fBunset\fP (false), or \fBtoggle\fPd. Number variables can be assigned 399a positive integer value. 400.IP 401String variables consist of any number of printable characters. 402Strings must be enclosed in quotes if they contain spaces or tabs. 403You may also use the \(lqC\(rq escape sequences \fB\\n\fP and 404\fB\\t\fP for newline and tab, respectively. 405.IP 406Quadoption variables are used to control whether or not to be 407prompted for certain actions, or to specify a default action. A 408value of \fByes\fP will cause the action to be carried out automatically 409as if you had answered yes to the question. Similarly, a value of 410\fBno\fP will cause the the action to be carried out as if you had 411answered \(lqno.\(rq A value of \fBask-yes\fP will cause a prompt 412with a default answer of \(lqyes\(rq and \fBask-no\fP will provide a 413default answer of \(lqno.\(rq 414.IP 415The \fBreset\fP command resets all given variables to the compile 416time defaults. If you reset the special variable \fBall\fP, all 417variables will reset to their compile time defaults. 418.TP 419\fBsource\fP \fIfilename\fP 420The given file will be evaluated as a configuration file. 421.PP 422.nf 423\fBspam\fP \fIpattern\fP \fIformat\fP 424\fBnospam\fP \fIpattern\fP 425.fi 426.IP 427These commands define spam-detection patterns from external spam 428filters, so that mutt can sort, limit, and search on 429``spam tags'' or ``spam attributes'', or display them 430in the index. See the Mutt manual for details. 431.TP 432\fBunhook\fP [\fB * \fP | \fIhook-type\fP ] 433This command will remove all hooks of a given type, or all hooks 434when \(lq\fB*\fP\(rq is used as an argument. \fIhook-type\fP 435can be any of the \fB-hook\fP commands documented above. 436.PP 437.nf 438\fBmailto_allow\fP \fIheader-field\fP [ ... ] 439\fBunmailto_allow\fP [ \fB*\fP | \fIheader-field\fP ... ] 440.fi 441.IP 442These commands allow the user to modify the list of allowed header 443fields in a \fImailto:\fP URL that Mutt will include in the 444the generated message. By default the list contains only 445\fBsubject\fP and \fBbody\fP, as specified by RFC2368. 446.SH PATTERNS 447.PP 448In various places with mutt, including some of the above mentioned 449\fBhook\fP commands, you can specify patterns to match messages. 450.SS Constructing Patterns 451.PP 452A simple pattern consists of an operator of the form 453\(lq\fB~\fP\fIcharacter\fP\(rq, possibly followed by a parameter 454against which mutt is supposed to match the object specified by 455this operator. For some \fIcharacter\fPs, the \fB~\fP may be 456replaced by another character to alter the behavior of the match. 457These are described in the list of operators, below. 458.PP 459With some of these operators, the object to be matched consists of 460several e-mail addresses. In these cases, the object is matched if 461at least one of these e-mail addresses matches. You can prepend a 462hat (\(lq\fB^\fP\(rq) character to such a pattern to indicate that 463\fIall\fP addresses must match in order to match the object. 464.PP 465You can construct complex patterns by combining simple patterns with 466logical operators. Logical AND is specified by simply concatenating 467two simple patterns, for instance \(lq~C mutt-dev ~s bug\(rq. 468Logical OR is specified by inserting a vertical bar (\(lq\fB|\fP\(rq) 469between two patterns, for instance \(lq~C mutt-dev | ~s bug\(rq. 470Additionally, you can negate a pattern by prepending a bang 471(\(lq\fB!\fP\(rq) character. For logical grouping, use braces 472(\(lq()\(rq). Example: \(lq!(~t mutt|~c mutt) ~f elkins\(rq. 473.SS Simple Patterns 474.PP 475Mutt understands the following simple patterns: 476.P 477.PD 0 478.TP 12 479~A 480all messages 481.TP 482~b \fIEXPR\fP 483messages which contain \fIEXPR\fP in the message body. 484.TP 485=b \fISTRING\fP 486messages which contain \fISTRING\fP in the message body. If IMAP is enabled, searches for \fISTRING\fP on the server, rather than downloading each message and searching it locally. 487.TP 488~B \fIEXPR\fP 489messages which contain \fIEXPR\fP in the whole message. 490.TP 491~c \fIEXPR\fP 492messages carbon-copied to \fIEXPR\fP 493.TP 494%c \fIGROUP\fP 495messages carbon-copied to any member of \fIGROUP\fP 496.TP 497~C \fIEXPR\fP 498messages either to: or cc: \fIEXPR\fP 499.TP 500%C \fIGROUP\fP 501messages either to: or cc: to any member of \fIGROUP\fP 502.TP 503~d \fIMIN\fP-\fIMAX\fP 504messages with \(lqdate-sent\(rq in a Date range 505.TP 506~D 507deleted messages 508.TP 509~e \fIEXPR\fP 510messages which contain \fIEXPR\fP in the \(lqSender\(rq field 511.TP 512%e \fIGROUP\fP 513messages which contain a member of \fIGROUP\fP in the \(lqSender\(rq field 514.TP 515~E 516expired messages 517.TP 518~f \fIEXPR\fP 519messages originating from \fIEXPR\fP 520.TP 521%f \fIGROUP\fP 522messages originating from any member of \fIGROUP\fP 523.TP 524~F 525flagged messages 526.TP 527~g 528PGP signed messages 529.TP 530~G 531PGP encrypted messages 532.TP 533~h \fIEXPR\fP 534messages which contain \fIEXPR\fP in the message header 535.TP 536~H \fIEXPR\fP 537messages with spam tags matching \fIEXPR\fP 538.TP 539~i \fIEXPR\fP 540messages which match \fIEXPR\fP in the \(lqMessage-ID\(rq field 541.TP 542~k 543messages containing PGP key material 544.TP 545~l 546messages addressed to a known mailing list (defined by either \fBsubscribe\fP or \fBlist\fP) 547.TP 548~L \fIEXPR\fP 549messages either originated or received by \fIEXPR\fP 550.TP 551%L \fIGROUP\fP 552messages either originated or received by any member of \fIGROUP\fP 553.TP 554~m \fIMIN\fP-\fIMAX\fP 555message in the range \fIMIN\fP to \fIMAX\fP 556.TP 557~n \fIMIN\fP-\fIMAX\fP 558messages with a score in the range \fIMIN\fP to \fIMAX\fP 559.TP 560~N 561new messages 562.TP 563~O 564old messages 565.TP 566~p 567messages addressed to you (as defined by \fBalternates\fP) 568.TP 569~P 570messages from you (as defined by \fBalternates\fP) 571.TP 572~Q 573messages which have been replied to 574.TP 575~r \fIMIN\fP-\fIMAX\fP 576messages with \(lqdate-received\(rq in a Date range 577.TP 578~R 579read messages 580.TP 581~s \fIEXPR\fP 582messages having \fIEXPR\fP in the \(lqSubject\(rq field. 583.TP 584~S 585superseded messages 586.TP 587~t \fIEXPR\fP 588messages addressed to \fIEXPR\fP 589.TP 590~T 591tagged messages 592.TP 593~u 594messages addressed to a subscribed mailing list (defined by \fBsubscribe\fP commands) 595.TP 596~U 597unread messages 598.TP 599~v 600message is part of a collapsed thread. 601.TP 602~V 603cryptographically verified messages 604.TP 605~x \fIEXPR\fP 606messages which contain \fIEXPR\fP in the \(lqReferences\(rq or \(lqIn-Reply-To\(rq field 607.TP 608~X \fIMIN\fP-\fIMAX\fP 609messages with MIN - MAX attachments 610.TP 611~y \fIEXPR\fP 612messages which contain \fIEXPR\fP in the \(lqX-Label\(rq field 613.TP 614~z \fIMIN\fP-\fIMAX\fP 615messages with a size in the range \fIMIN\fP to \fIMAX\fP 616.TP 617~= 618duplicated messages (see $duplicate_threads) 619.TP 620~$ 621unreferenced message (requires threaded view) 622.TP 623~(PATTERN) 624messages in threads containing messages matching a certain pattern, e.g. all threads containing messages from you: ~(~P) 625.PD 1 626.DT 627.PP 628In the above, \fIEXPR\fP is a regular expression. 629.PP 630With the \fB~d\fP, \fB~m\fP, \fB~n\fP, \fB~r\fP, \fB~X\fP, and \fB~z\fP operators, you can also 631specify ranges in the forms \fB<\fP\fIMAX\fP, \fB>\fP\fIMIN\fP, 632\fIMIN\fP\fB-\fP, and \fB-\fP\fIMAX\fP. 633.PP 634With the \fB~z\fP operator, the suffixes \(lqK\(rq and \(lqM\(rq are allowed to specify 635kilobyte and megabyte respectively. 636.SS Matching dates 637.PP 638The \fB~d\fP and \fB~r\fP operators are used to match date ranges, 639which are interpreted to be given in your local time zone. 640.PP 641A date is of the form 642\fIDD\fP[\fB/\fP\fIMM\fP[\fB/\fP[\fIcc\fP]\fIYY\fP]], that is, a 643two-digit date, optionally followed by a two-digit month, optionally 644followed by a year specifications. Omitted fields default to the 645current month and year. 646.PP 647Mutt understands either two or four digit year specifications. When 648given a two-digit year, mutt will interpret values less than 70 as 649lying in the 21st century (i.e., \(lq38\(rq means 2038 and not 1938, 650and \(lq00\(rq is interpreted as 2000), and values 651greater than or equal to 70 as lying in the 20th century. 652.PP 653Note that this behavior \fIis\fP Y2K compliant, but that mutt 654\fIdoes\fP have a Y2.07K problem. 655.PP 656If a date range consists of a single date, the operator in question 657will match that precise date. If the date range consists of a dash 658(\(lq\fB-\fP\(rq), followed by a date, this range will match any 659date before and up to the date given. Similarly, a date followed by 660a dash matches the date given and any later point of time. Two 661dates, separated by a dash, match any date which lies in the given 662range of time. 663.PP 664You can also modify any absolute date by giving an error range. An 665error range consists of one of the characters 666.BR + , 667.BR - , 668.BR * , 669followed by a positive number, followed by one of the unit 670characters 671.BR y , 672.BR m , 673.BR w ", or" 674.BR d , 675specifying a unit of years, months, weeks, or days. 676.B + 677increases the maximum date matched by the given interval of time, 678.B - 679decreases the minimum date matched by the given interval of time, and 680.B * 681increases the maximum date and decreases the minimum date matched by 682the given interval of time. It is possible to give multiple error 683margins, which cumulate. Example: 684.B "1/1/2001-1w+2w*3d" 685.PP 686You can also specify offsets relative to the current date. An 687offset is specified as one of the characters 688.BR < , 689.BR > , 690.BR = , 691followed by a positive number, followed by one of the unit 692characters 693.BR y , 694.BR m , 695.BR w ", or" 696.BR d . 697.B > 698matches dates which are older than the specified amount of time, an 699offset which begins with the character 700.B < 701matches dates which are more recent than the specified amount of time, 702and an offset which begins with the character 703.B = 704matches points of time which are precisely the given amount of time 705ago. 706.SH CONFIGURATION VARIABLES