<h1>NOTMUCH-SHOW(1)</h1>
<h2>NAME</h2>
-
<pre>
- notmuch-show - Show messages matching the given search terms.
+ notmuch-show - show messages matching the given search terms
</pre>
<h2>SYNOPSIS</h2>
-
<pre>
- <b>notmuch</b> <b>show</b> [<u>options</u>...] <<u>search-term</u>>...
+ <b>notmuch</b> <b>show</b> [<u>options</u>...] <<u>search-term</u>>...
</pre>
<h2>DESCRIPTION</h2>
-
<pre>
Shows all messages matching the search terms.
-</pre>
-<pre>
- See <b>notmuch-search-terms</b>(7) for details of the supported syntax for
- <search-terms>.
-</pre>
+ See <a href='../notmuch-search-terms-7/'>notmuch-search-terms</a>(7) for details of the supported syntax for
+ <search-terms>.
-<pre>
The messages will be grouped and sorted based on the threading (all
replies to a particular message will appear immediately after that mes-
sage 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).
-</pre>
-<pre>
Supported options for <b>show</b> include
-</pre>
-<pre>
- <b>--entire-thread</b>
-</pre>
+ <b>--entire-thread=(true|false)</b>
-<pre>
- 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.
-</pre>
+ If true, <b>notmuch</b> <b>show</b> outputs all messages in the thread of any
+ message matching the search terms; if false, it outputs only
+ the matching messages. For <b>--format=json</b> and <b>--format=sexp</b> this
+ defaults to true. For other formats, this defaults to false.
-<pre>
- <b>--format=(text|json|mbox|raw)</b>
-</pre>
+ <b>--format=(text|json|sexp|mbox|raw)</b>
-<pre>
<b>text</b> (default for messages)
-</pre>
-<pre>
- The default plain-text format has all text-content MIME
- parts decoded. Various components in the output, (<b>message</b>,
+ The default plain-text format has all text-content MIME
+ parts decoded. Various components in the output, (<b>message</b>,
<b>header</b>, <b>body</b>, <b>attachment</b>, and MIME <b>part</b>), will be delimited
- by easily-parsed markers. Each marker consists of a Con-
- trol-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. For a mul-
+ by easily-parsed markers. Each marker consists of a Con-
+ trol-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. For a mul-
tipart MIME message, these parts will be nested.
-</pre>
-<pre>
<b>json</b>
-</pre>
-<pre>
- The output is formatted with Javascript Object Notation
+ The output is formatted with Javascript Object Notation
(JSON). This format is more robust than the text format for
- automated processing. The nested structure of multipart
- MIME messages is reflected in nested JSON output. JSON out-
- put always includes all messages in a matching thread; in
- effect <b>--format=json</b> implies <b>--entire-thread</b>
-</pre>
+ automated processing. The nested structure of multipart
+ MIME messages is reflected in nested JSON output. By
+ default JSON output includes all messages in a matching
+ thread; that is, by default,
+
+ <b>--format=json</b> sets <b>--entire-thread</b> The caller can disable
+ this behaviour by setting <b>--entire-thread=false</b>
+
+ <b>sexp</b>
+
+ The output is formatted as an S-Expression (sexp). This
+ format is more robust than the text format for automated
+ processing. The nested structure of multipart MIME messages
+ is reflected in nested S-Expression output. By default, S-
+ Expression output includes all messages in a matching
+ thread; that is, by default,
+
+ <b>--format=sexp</b> sets <b>--entire-thread</b> The caller can disable
+ this behaviour by setting <b>--entire-thread=false</b>
-<pre>
<b>mbox</b>
-</pre>
-<pre>
All matching messages are output in the traditional, Unix
mbox format with each message being prefixed by a line
- beginning with "From " and a blank line separating each
- message. Lines in the message content beginning with "From
- " (preceded by zero or more '>' characters) have an addi-
- tional '>' character added. This reversible escaping is
- termed "mboxrd" format and described in detail here:
-</pre>
+ beginning with "From " and a blank line separating each
+ message. Lines in the message content beginning with "From
+ " (preceded by zero or more '>' characters) have an addi-
+ tional '>' character added. This reversible escaping is
+ termed "mboxrd" format and described in detail here:
-<pre>
http://homepage.ntlworld.com/jonathan.deboynepollard/FGA/mail-mbox-formats.html
-</pre>
-<pre>
<b>raw</b> (default for a single part, see --part)
-</pre>
-<pre>
For a message or an attached message part, the original,
raw content of the email message is output. Consumers of
this format should expect to implement MIME decoding and
similar functions.
-</pre>
-<pre>
For a single part (--part) the raw part content is output
after performing any necessary MIME decoding. Note that
messages with a simple body still have two parts: part 0 is
the whole message and part 1 is the body.
-</pre>
-<pre>
For a multipart part, the part headers and body (including
all child parts) is output.
-</pre>
-<pre>
The raw format must only be used with search terms matching
single message.
-</pre>
-<pre>
+ <b>--format-version=N</b>
+
+ Use the specified structured output format version. This is
+ intended for programs that invoke <a href='../notmuch-1/'>notmuch</a>(1) internally. If
+ omitted, the latest supported version will be used.
+
<b>--part=N</b>
-</pre>
-<pre>
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 struc-
- ture, and are identified in the 'json' or 'text' output for-
- mats.
-</pre>
+ ture, and are identified in the 'json', 'sexp' or 'text' output
+ formats.
-<pre>
<b>--verify</b>
-</pre>
-<pre>
Compute and report the validity of any MIME cryptographic sig-
- natures found in the selected content (ie. "multipart/signed"
+ natures found in the selected content (ie. "multipart/signed"
parts). Status of the signature will be reported (currently on-
- ly supported with --format=json), and the multipart/signed part
- will be replaced by the signed data.
-</pre>
+ ly supported with --format=json and --format=sexp), and the
+ multipart/signed part will be replaced by the signed data.
-<pre>
<b>--decrypt</b>
-</pre>
-<pre>
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 de-
- crypted content. Implies --verify.
-</pre>
+ (ie. "multipart/encrypted" parts). Status of the decryption
+ will be reported (currently only supported with --format=json
+ and --format=sexp) and the multipart/encrypted part will be re-
+ placed by the decrypted content. Implies --verify.
-<pre>
<b>--exclude=(true|false)</b>
-</pre>
-<pre>
Specify whether to omit threads only matching search.tag_ex-
clude from the search results (the default) or not. In either
case the excluded message will be marked with the exclude flag
(except when output=mbox when there is nowhere to put the
flag).
-</pre>
-<pre>
If --entire-thread is specified then complete threads are re-
turned regardless (with the excluded flag being set when appro-
priate) but threads that only match in an excluded message are
not returned when <b>--exclude=true.</b>
-</pre>
-<pre>
The default is <b>--exclude=true.</b>
-</pre>
-<pre>
+ <b>--body=(true|false)</b>
+
+ If true (the default) <b>notmuch</b> <b>show</b> includes the bodies of the
+ messages in the output; if false, bodies are omitted.
+ <b>--body=false</b> is only implemented for the json and sexp formats
+ and it is incompatible with <b>--part</b> ><b>&</b>gt; <b>0.</b>
+
+ This is useful if the caller only needs the headers as body-
+ less output is much faster and substantially smaller.
+
A common use of <b>notmuch</b> <b>show</b> is to display a single thread of email
- messages. For this, use a search term of "thread:<thread-id>" as can be
+ messages. For this, use a search term of "thread:<thread-id>" as can be
seen in the first column of output from the <b>notmuch</b> <b>search</b> command.
</pre>
-<h2>SEE ALSO</h2>
+<h2>EXIT STATUS</h2>
+<pre>
+ This command supports the following special exit status codes
+ <b>20</b> The requested format version is too old.
+
+ <b>21</b> The requested format version is too new.
+</pre>
+
+<h2>SEE ALSO</h2>
<pre>
- <b>notmuch</b>(1), <b>notmuch-config</b>(1), <b>notmuch-count</b>(1), <b>notmuch-dump</b>(1), <b>not-</b>
- <b>much-hooks</b>(5), <b>notmuch-new</b>(1), <b>notmuch-reply</b>(1), <b>notmuch-restore</b>(1),
- <b>notmuch-search</b>(1), <b>notmuch-search-terms</b>(7), <b>notmuch-tag</b>(1)
+ <a href='../notmuch-1/'>notmuch</a>(1), <a href='../notmuch-config-1/'>notmuch-config</a>(1), <a href='../notmuch-count-1/'>notmuch-count</a>(1), <a href='../notmuch-dump-1/'>notmuch-dump</a>(1), <a href='../notmuch-hooks-5/'>not-</a>
+ <a href='../notmuch-hooks-5/'>much-hooks</a>(5), <a href='../notmuch-new-1/'>notmuch-new</a>(1), <a href='../notmuch-reply-1/'>notmuch-reply</a>(1), <a href='../notmuch-restore-1/'>notmuch-restore</a>(1),
+ <a href='../notmuch-search-1/'>notmuch-search</a>(1), <a href='../notmuch-search-terms-7/'>notmuch-search-terms</a>(7), <a href='../notmuch-tag-1/'>notmuch-tag</a>(1)
</pre>
-<h2>Notmuch 0.13.2</h2>
+<h2>Notmuch 0.15</h2>