cli/show: use decryption policy "auto" by default.
[notmuch] / doc / man1 / notmuch-show.rst
index bad868beab892504286ea2e63b6de356f5e26cbd..64caa7a6f02063961dffbf632637b922f04612b3 100644 (file)
@@ -50,20 +50,19 @@ Supported options for **show** include
             messages is reflected in nested JSON output. By default JSON
             output includes all messages in a matching thread; that is,
             by default,
-
-            ``--format=json`` sets ``--entire-thread`` The caller can
-            disable this behaviour by setting ``--entire-thread=false``
+            ``--format=json`` sets ``--entire-thread``. The caller can
+            disable this behaviour by setting ``--entire-thread=false``.
+            The JSON output is always encoded as UTF-8 and any message
+            content included in the output will be charset-converted to
+            UTF-8.
 
         **sexp**
-            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,
-
-            ``--format=sexp`` sets ``--entire-thread`` The caller can
-            disable this behaviour by setting ``--entire-thread=false``
+            The output is formatted as the Lisp s-expression (sexp)
+            equivalent of the JSON format above. Objects are formatted
+            as property lists whose keys are keywords (symbols preceded
+            by a colon). True is formatted as ``t`` and both false and
+            null are formatted as ``nil``. As for JSON, the s-expression
+            output is always encoded as UTF-8.
 
         **mbox**
             All matching messages are output in the traditional, Unix
@@ -74,24 +73,24 @@ Supported options for **show** include
             '>' character added. This reversible escaping is termed
             "mboxrd" format and described in detail here:
 
-           http://homepage.ntlworld.com/jonathan.deboynepollard/FGA/mail-mbox-formats.html
-
-        **raw** (default for a single part, see --part)
-            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.
+            http://homepage.ntlworld.com/jonathan.deboynepollard/FGA/mail-mbox-formats.html
 
-            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.
+        **raw** (default if --part is given)
+            Write the raw bytes of the given MIME part of a message to
+            standard out. For this format, it is an error to specify a
+            query that matches more than one message.
 
-            For a multipart part, the part headers and body (including
-            all child parts) is output.
+            If the specified part is a leaf part, this outputs the
+            body of the part after performing content transfer
+            decoding (but no charset conversion). This is suitable for
+            saving attachments, for example.
 
-            The raw format must only be used with search terms matching
-            single message.
+            For a multipart or message part, the output includes the
+            part headers as well as the body (including all child
+            parts). No decoding is performed because multipart and
+            message parts cannot have non-trivial content transfer
+            encoding. Consumers of this may need to implement MIME
+            decoding and similar functions.
 
     ``--format-version=N``
         Use the specified structured output format version. This is
@@ -105,6 +104,10 @@ Supported options for **show** include
         and are identified in the 'json', 'sexp' or 'text' output
         formats.
 
+        Note that even a message with no MIME structure or a single
+        body part still has two MIME parts: part 0 is the whole
+        message (headers and body) and part 1 is just the body.
+
     ``--verify``
         Compute and report the validity of any MIME cryptographic
         signatures found in the selected content (ie. "multipart/signed"
@@ -120,6 +123,10 @@ Supported options for **show** include
         multipart/encrypted part will be replaced by the decrypted
         content.
 
+        If a session key is already known for the message, then it
+        will be decrypted automatically unless the user explicitly
+        sets ``--decrypt=false``.
+
         Decryption expects a functioning **gpg-agent(1)** to provide any
         needed credentials. Without one, the decryption will fail.
 
@@ -173,7 +180,15 @@ This command supports the following special exit status codes
 SEE ALSO
 ========
 
-**notmuch(1)**, **notmuch-config(1)**, **notmuch-count(1)**,
-**notmuch-dump(1)**, **notmuch-hooks(5)**, **notmuch-insert(1)**,
-**notmuch-new(1)**, **notmuch-reply(1)**, **notmuch-restore(1)**,
-**notmuch-search(1)**, **notmuch-search-terms(7)**, **notmuch-tag(1)**
+**notmuch(1)**,
+**notmuch-config(1)**,
+**notmuch-count(1)**,
+**notmuch-dump(1)**,
+**notmuch-hooks(5)**,
+**notmuch-insert(1)**,
+**notmuch-new(1)**,
+**notmuch-reply(1)**,
+**notmuch-restore(1)**,
+**notmuch-search(1)**,
+**notmuch-search-terms(7)**,
+**notmuch-tag(1)**