X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=notmuch.1;h=86830f4b403fd0fccbbf4928f5c01565abe1d825;hp=2be77f992055896072578dadd8c316f78c3edb66;hb=9ddde6eb14c126e314d90e2e08f213fb81f0457f;hpb=1fd8b7866f189a66e4491b01452f476371759f91 diff --git a/notmuch.1 b/notmuch.1 index 2be77f99..86830f4b 100644 --- a/notmuch.1 +++ b/notmuch.1 @@ -109,14 +109,6 @@ whenever new mail is delivered and you wish to incorporate it into the database. These subsequent runs will be much quicker than the initial run. -Note: -.B notmuch new -runs (other than the first run) will skip any read-only directories, -so you can use that to mark directories that will not receive any new -mail (and make -.B notmuch new -even faster). - Invoking .B notmuch with no command argument will run @@ -134,7 +126,7 @@ syntax. See the section below for more details on the supported syntax. The -.BR search " and "show +.BR search ", " show " and " count commands are used to query the email database. .RS 4 .TP 4 @@ -154,6 +146,12 @@ Supported options for include .RS 4 .TP 4 +.BR \-\-format= ( json | text ) + +Presents the results in either JSON or plain-text (default). +.RE +.RS 4 +.TP 4 .BR \-\-sort= ( newest\-first | oldest\-first ) This option can be used to present results in either chronological order @@ -169,6 +167,8 @@ when sorting by .B newest\-first the threads will be sorted by the newest message in each thread. +.RE +.RS 4 By default, results will be displayed in reverse chronological order, (that is, the newest results will be displayed first). @@ -177,7 +177,7 @@ See the section below for details of the supported syntax for . .RE .TP -.BR show " ..." +.BR show " [options...] ..." Shows all messages matching the search terms. @@ -187,7 +187,27 @@ message in date order). The output is not indented by default, but depth tags are printed so that proper indentation can be performed by a post-processor (such as the emacs interface to notmuch). -The output format is plain-text, with all text-content MIME parts +Supported options for +.B show +include +.RS 4 +.TP 4 +.B \-\-entire\-thread + +By default only those messages that match the search terms will be +displayed. With this option, all messages in the same thread as any +matched message will be displayed. +.RE + +.RS 4 +.TP 4 +.B \-\-format=(json|text) + +.RS 4 +.TP 4 +.B text + +The default plain-text format has text-content MIME parts decoded. Various components in the output, .RB ( message ", " header ", " body ", " attachment ", and MIME " part ), will be delimited by easily-parsed markers. Each marker consists of a @@ -195,6 +215,18 @@ Control-L character (ASCII decimal 12), the name of the marker, and then either an opening or closing brace, ('{' or '}'), to either open or close the component. +.RE +.RS 4 +.TP 4 +.B json + +Format output as Javascript Object Notation (JSON). JSON output always +includes all messages in a matching thread; in effect +.B \-\-format=json +implies +.B \-\-entire\-thread + +.RE A common use of .B notmuch show is to display a single thread of email messages. For this, use a @@ -207,13 +239,24 @@ See the .B "SEARCH SYNTAX" section below for details of the supported syntax for . .RE +.TP +.BR count " ..." + +Count messages matching the search terms. + +The number of matching messages is output to stdout. + +With no search terms, a count of all messages in the database will be +displayed. +.RE +.RE The .B reply command is useful for preparing a template for an email reply. - -.TP -.BR reply " ..." +.RS 4 +.TP 4 +.BR reply " [options...] ..." Constructs a reply template for a set of messages. @@ -223,12 +266,12 @@ takes an existing set of messages and constructs a suitable mail template. The Reply-to header (if any, otherwise From:) is used for the To: address. Vales from the To: and Cc: headers are copied, but not including any of the current user's email addresses (as configured -in primary_mail or other_email in the .notmuch-config file) in the +in primary_mail or other_email in the .notmuch\-config file) in the recipient list It also builds a suitable new subject, including Re: at the front (if not already present), and adding the message IDs of the messages being -replied to to the References list and setting the In-Reply-To: field +replied to to the References list and setting the In\-Reply\-To: field correctly. Finally, the original contents of the emails are quoted by prefixing @@ -236,6 +279,21 @@ each line with '> ' and included in the body. The resulting message template is output to stdout. +Supported options for +.B reply +include +.RS +.TP 4 +.BR \-\-format= ( default | headers\-only ) +.RS +.TP 4 +.BR default +Includes subject and quoted message body. +.TP +.BR headers\-only +Only produces In\-Reply\-To, References, To, Cc, and Bcc headers. +.RE + See the .B "SEARCH SYNTAX" section below for details of the supported syntax for . @@ -248,6 +306,7 @@ once. For example, when a series of patches are sent in a single thread, replying to the entire thread allows for the reply to comment on issue found in multiple patches. .RE +.RE The .B tag @@ -256,18 +315,18 @@ contents. .RS 4 .TP 4 -.BR tag " +|- [...] [--] ..." +.BR tag " +|\- [...] [\-\-] ..." Add/remove tags for all messages matching the search terms. -Tags prefixed by '+' are added while those prefixed by '-' are +Tags prefixed by '+' are added while those prefixed by '\-' are removed. For each message, tag removal is performed before tag addition. The beginning of is recognized by the first -argument that begins with neither '+' nor '-'. Support for -an initial search term beginning with '+' or '-' is provided -by allowing the user to specify a "--" argument to separate +argument that begins with neither '+' nor '\-'. Support for +an initial search term beginning with '+' or '\-' is provided +by allowing the user to specify a "\-\-" argument to separate the tags from the search terms. See the @@ -304,6 +363,32 @@ So if you've previously been using sup for mail, then the .B "notmuch restore" command provides you a way to import all of your tags (or labels as sup calls them). +.RE + +The +.B part +command can used to output a single part of a multi-part MIME message. + +.RS 4 +.TP 4 +.BR part " \-\-part= ..." + +Output a single MIME part of a message. + +A single decoded MIME part, with no encoding or framing, is output to +stdout. The search terms must match only a single message, otherwise +this command will fail. + +The part number should match the part "id" field output by the +"\-\-format=json" option of "notmuch show". If the message specified by +the search terms does not include a part with the specified "id" there +will be no output. + +See the +.B "SEARCH SYNTAX" +section below for details of the supported syntax for . +.RE + .SH SEARCH SYNTAX Several notmuch commands accept a common syntax for search terms. @@ -312,6 +397,9 @@ which will match all messages that contain all of the given terms/phrases in the body, the subject, or any of the sender or recipient headers. +As a special case, a search string consisting of exactly a single +asterisk ("*") will match all messages. + In addition to free text, the following prefixes can be used to force terms to match against specific portions of an email, (where indicate user-supplied values): @@ -324,7 +412,7 @@ terms to match against specific portions of an email, (where attachment: - tag: + tag: (or is:) id: @@ -353,7 +441,7 @@ prefix can be used to search for specific filenames (or extensions) of attachments to email messages. For -.BR tag: , +.BR tag: " and " is: valid tag values include .BR inbox " and " unread by default for new messages added by @@ -363,7 +451,7 @@ as well as any other tag values added manually with For .BR id: , -message ID values are the literal contents of the Message-ID: header +message ID values are the literal contents of the Message\-ID: header of email messages, but without the '<', '>' delimiters. The @@ -392,14 +480,21 @@ particular time range, (based on the Date: header) with a syntax of: .. Each timestamp is a number representing the number of seconds since -1970-01-01 00:00:00 UTC. This is not the most convenient means of +1970\-01\-01 00:00:00 UTC. This is not the most convenient means of expressing date ranges, but until notmuch is fixed to accept a more convenient form, one can use the date program to construct timestamps. For example, with the bash shell the folowing syntax would -specify a date range to return messages from 2009-10-01 until the +specify a date range to return messages from 2009\-10\-01 until the current time: - $(date +%s -d 2009-10-01)..$(date +%s) + $(date +%s \-d 2009\-10\-01)..$(date +%s) +.SH ENVIRONMENT +The following environment variables can be used to control the +behavior of notmuch. +.TP +.B NOTMUCH_CONFIG +Specifies the location of the notmuch configuration file. Notmuch will +use ${HOME}/.notmuch\-config if this variable is not set. .SH SEE ALSO The emacs-based interface to notmuch (available as .B notmuch.el