]> git.notmuchmail.org Git - notmuch/blobdiff - notmuch.1
new: Wrap adding and removing messages in atomic sections.
[notmuch] / notmuch.1
index 41f7c7e450826a703e8d14585d09d1a17849dbe7..5a8c83dc6b534ba58889708897cbbe23353adba7 100644 (file)
--- a/notmuch.1
+++ b/notmuch.1
@@ -150,6 +150,53 @@ include
 
 Presents the results in either JSON or plain-text (default).
 .RE
+
+.RS 4
+.TP 4
+.B \-\-output=(summary|threads|messages|files|tags)
+
+.RS 4
+.TP 4
+.B summary
+
+Output a summary of each thread with any message matching the search
+terms. The summary includes the thread ID, date, the number of
+messages in the thread (both the number matched and the total number),
+the authors of the thread and the subject.
+.RE
+.RS 4
+.TP 4
+.B threads
+
+Output the thread IDs of all threads with any message matching the
+search terms, either one per line (\-\-format=text) or as a JSON array
+(\-\-format=json).
+.RE
+.RS 4
+.TP 4
+.B messages
+
+Output the message IDs of all messages matching the search terms,
+either one per line (\-\-format=text) or as a JSON array
+(\-\-format=json).
+.RE
+.RS 4
+.TP 4
+.B files
+
+Output the filenames of all messages matching the search terms, either
+one per line (\-\-format=text) or as a JSON array (\-\-format=json).
+.RE
+.RS 4
+.TP 4
+.B tags
+
+Output all tags that appear on any message matching the search terms,
+either one per line (\-\-format=text) or as a JSON array
+(\-\-format=json).
+.RE
+.RE
+
 .RS 4
 .TP 4
 .BR \-\-sort= ( newest\-first | oldest\-first )
@@ -201,11 +248,11 @@ matched message will be displayed.
 
 .RS 4
 .TP 4
-.B \-\-format=(text|json|mbox)
+.B \-\-format=(text|json|mbox|raw)
 
 .RS 4
 .TP 4
-.B text
+.BR text " (default for messages)"
 
 The default plain-text format has all text-content MIME parts
 decoded. Various components in the output,
@@ -213,8 +260,8 @@ decoded. Various components in the output,
 will be delimited by easily-parsed markers. Each marker consists of a
 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.
-
+or close the component. For a multipart MIME message, these parts will
+be nested.
 .RE
 .RS 4
 .TP 4
@@ -222,8 +269,9 @@ or close the component.
 
 The output is formatted with Javascript Object Notation (JSON). This
 format is more robust than the text format for automated
-processing. JSON output always includes all messages in a matching
-thread; in effect
+processing. The nested structure of multipart MIME messages is
+reflected in nested JSON output. JSON output always includes all
+messages in a matching thread; in effect
 .B \-\-format=json
 implies
 .B \-\-entire\-thread
@@ -239,9 +287,62 @@ a blank line separating each message. Lines in the message content
 beginning with "From " (preceded by zero or more '>' characters) have
 an additional '>' character added. This reversible escaping
 is termed "mboxrd" format and described in detail here:
+
+.nf
+.nh
 http://homepage.ntlworld.com/jonathan.deboynepollard/FGA/mail-mbox-formats.html
+.hy
+.fi
+.
+.RE
+.RS 4
+.TP 4
+.BR raw " (default for a single part, see \-\-part)"
+
+For a message, the original, raw content of the email message is
+output. Consumers of this format should expect to implement MIME
+decoding and similar functions.
 
+For a single part (\-\-part) the raw part content is output after
+performing any necessary MIME decoding.
+
+The raw format must only be used with search terms matching single
+message.
+.RE
+.RE
+
+.RS 4
+.TP 4
+.B \-\-part=N
+
+Output the single decoded MIME part N of a single message.  The search
+terms must match only a single message.  Message parts are numbered in
+a depth-first walk of the message MIME structure, and are identified
+in the 'json' or 'text' output formats.
+.RE
+
+.RS 4
+.TP 4
+.B \-\-verify
+
+Compute and report the validity of any MIME cryptographic signatures
+found in the selected content (ie. "multipart/signed" parts). Status
+of the signature will be reported (currently only supported with
+--format=json), and the multipart/signed part will be replaced by the
+signed data.
+.RE
+
+.RS 4
+.TP 4
+.B \-\-decrypt
+
+Decrypt any MIME encrypted parts found in the selected content
+(ie. "multipart/encrypted" parts). Status of the decryption will be
+reported (currently only supported with --format=json) and the
+multipart/encrypted part will be replaced by the decrypted
+content.
 .RE
+
 A common use of
 .B notmuch show
 is to display a single thread of email messages. For this, use a
@@ -254,7 +355,8 @@ See the
 .B "SEARCH SYNTAX"
 section below for details of the supported syntax for <search-terms>.
 .RE
-.TP
+.RS 4
+.TP 4
 .BR count " <search-term>..."
 
 Count messages matching the search terms.
@@ -382,7 +484,7 @@ sup calls them).
 
 The
 .B part
-command can used to output a single part of a multi-part MIME message.
+command can used to output a single part of a multipart MIME message.
 
 .RS 4
 .TP 4
@@ -406,15 +508,13 @@ section below for details of the supported syntax for <search-terms>.
 
 The
 .B config
-command can be used to get settings from the notmuch configuration
-file.
+command can be used to get or set settings int the notmuch
+configuration file.
 
 .RS 4
 .TP 4
 .BR "config get " <section> . <item>
 
-Get settings from the notmuch configuration file.
-
 The value of the specified configuration item is printed to stdout. If
 the item has multiple values, each value is separated by a newline
 character.
@@ -432,6 +532,18 @@ Available configuration items include at least
        new.tags
 .RE
 
+.RS 4
+.TP 4
+.BR "config set " <section> . "<item> [values ...]"
+
+The specified configuration item is set to the given value.  To
+specify a multiple-value item, provide each value as a separate
+command-line argument.
+
+If no values are provided, the specified configuration item will be
+removed from the configuration file.
+.RE
+
 .SH SEARCH SYNTAX
 Several notmuch commands accept a common syntax for search terms.
 
@@ -461,6 +573,8 @@ terms to match against specific portions of an email, (where
 
        thread:<thread-id>
 
+       folder:<directory-path>
+
 The
 .B from:
 prefix is used to match the name or address of the sender of an email
@@ -504,6 +618,13 @@ internally by notmuch (and do not appear in email messages). These
 thread ID values can be seen in the first column of output from
 .B "notmuch search"
 
+The
+.B folder:
+prefix can be used to search for email message files that are
+contained within particular directories within the mail store. Only
+the directory components below the top-level mail database path are
+available to be searched.
+
 In addition to individual terms, multiple terms can be
 combined with Boolean operators (
 .BR and ", " or ", " not
@@ -520,13 +641,13 @@ expression).
 Finally, results can be restricted to only messages within a
 particular time range, (based on the Date: header) with a syntax of:
 
-       <intial-timestamp>..<final-timestamp>
+       <initial-timestamp>..<final-timestamp>
 
 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
 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
+timestamps. For example, with the bash shell the following syntax would
 specify a date range to return messages from 2009\-10\-01 until the
 current time: