<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>
Supported options for <b>show</b> include
- <b>--entire-thread</b>
+ <b>--entire-thread=(true|false)</b>
- 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.
+ 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.
- <b>--format=(text|json|mbox|raw)</b>
+ <b>--format=(text|json|sexp|mbox|raw)</b>
<b>text</b> (default for messages)
- 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.
<b>json</b>
- 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>
+ 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>
<b>mbox</b>
The raw format must only be used with search terms matching
single message.
+ <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>
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.
+ ture, and are identified in the 'json', 'sexp' or 'text' output
+ formats.
<b>--verify</b>
Compute and report the validity of any MIME cryptographic sig-
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.
+ ly supported with --format=json and --format=sexp), and the
+ multipart/signed part will be replaced by the signed data.
<b>--decrypt</b>
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.
+ will be reported (currently only supported with --format=json
+ and --format=sexp) and on successful decryption the multi-
+ part/encrypted part will be replaced by the decrypted content.
+
+ Decryption expects a functioning <b>gpg-agent</b>(1) to provide any
+ needed credentials. Without one, the decryption will fail.
+
+ Implies --verify.
<b>--exclude=(true|false)</b>
The default is <b>--exclude=true.</b>
+ <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.
+
+ <b>--include-html</b>
+
+ Include "text/html" parts as part of the output (currently only
+ supported with --format=json and --format=sexp). By default,
+ unless <b>--part=N</b> is used to select a specific part or <b>--include-</b>
+ <b>html</b> is used to include all "text/html" parts, no part with
+ content type "text/html" is included in the output.
+
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
seen in the first column of output from the <b>notmuch</b> <b>search</b> command.
</pre>
+<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>
<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)
+ <a href='../notmuch-hooks-5/'>much-hooks</a>(5), <a href='../notmuch-insert-1/'>notmuch-insert</a>(1), <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/'>not-</a>
+ <a href='../notmuch-tag-1/'>much-tag</a>(1)
</pre>
-<h2>Notmuch 0.13.2</h2>
+<h2>Notmuch 0.17</h2>