]> git.notmuchmail.org Git - notmuch/blobdiff - doc/man1/notmuch-dump.rst
emacs: Add new option notmuch-search-hide-excluded
[notmuch] / doc / man1 / notmuch-dump.rst
index 3a6d0b34f505265d50e7020ceb0a48c28c0e4f4a..a7ca39d008215aff883a1ba6d58ead49646b642f 100644 (file)
@@ -1,3 +1,5 @@
+.. _notmuch-dump(1):
+
 ============
 notmuch-dump
 ============
 ============
 notmuch-dump
 ============
@@ -19,63 +21,103 @@ recreated from the messages themselves. The output of notmuch dump is
 therefore the only critical thing to backup (and much more friendly to
 incremental backup than the native database files.)
 
 therefore the only critical thing to backup (and much more friendly to
 incremental backup than the native database files.)
 
-See **notmuch-search-terms(7)** for details of the supported syntax
+See :any:`notmuch-search-terms(7)` for details of the supported syntax
 for <search-terms>. With no search terms, a dump of all messages in
 for <search-terms>. With no search terms, a dump of all messages in
-the database will be generated. A "--" argument instructs notmuch that
+the database will be generated. A ``--`` argument instructs notmuch that
 the remaining arguments are search terms.
 
 Supported options for **dump** include
 
 the remaining arguments are search terms.
 
 Supported options for **dump** include
 
-    ``--gzip``
-        Compress the output in a format compatible with **gzip(1)**.
+.. program:: dump
+
+.. option:: --gzip
+
+   Compress the output in a format compatible with :manpage:`gzip(1)`.
+
+.. option:: --format=(sup|batch-tag)
+
+   Notmuch restore supports two plain text dump formats, both with
+   one message-id per line, followed by a list of tags.
+
+   batch-tag
+     The default **batch-tag** dump format is intended to more
+     robust against malformed message-ids and tags containing
+     whitespace or non-\ :manpage:`ascii(7)` characters. Each line
+     has the form::
+
+       +<*encoded-tag*\ > +<*encoded-tag*\ > ... -- id:<*quoted-message-id*\ >
+
+     Tags are hex-encoded by replacing every byte not matching the
+     regex **[A-Za-z0-9@=.,\_+-]** with **%nn** where nn is the two
+     digit hex encoding. The message ID is a valid Xapian query,
+     quoted using Xapian boolean term quoting rules: if the ID
+     contains whitespace or a close paren or starts with a double
+     quote, it must be enclosed in double quotes and double quotes
+     inside the ID must be doubled. The astute reader will notice
+     this is a special case of the batch input format for
+     :any:`notmuch-tag(1)`; note that the single message-id query is
+     mandatory for :any:`notmuch-restore(1)`.
+
+   sup
+     The **sup** dump file format is specifically chosen to be
+     compatible with the format of files produced by
+     :manpage:`sup-dump(1)`. So if you've previously been using sup
+     for mail, then the :any:`notmuch-restore(1)` command provides
+     you a way to import all of your tags (or labels as sup calls
+     them). Each line has the following form::
+
+       <*message-id*\ > **(** <*tag*\ > ... **)**
+
+     with zero or more tags are separated by spaces. Note that
+     (malformed) message-ids may contain arbitrary non-null
+     characters. Note also that tags with spaces will not be
+     correctly restored with this format.
 
 
-    ``--format=(sup|batch-tag)``
-        Notmuch restore supports two plain text dump formats, both with one
-        message-id per line, followed by a list of tags.
+.. option:: --include=(config|properties|tags)
 
 
-        **batch-tag**
+   Control what kind of metadata is included in the output.
 
 
-            The default **batch-tag** dump format is intended to more
-            robust against malformed message-ids and tags containing
-            whitespace or non-\ **ascii(7)** characters. Each line has
-            the form
+   config
+     Output configuration data stored in the database. Each line
+     starts with "#@ ", followed by a space separated key-value
+     pair.  Both key and value are hex encoded if needed.
 
 
-                +<*encoded-tag*\ > +<*encoded-tag*\ > ... --
-                id:<*quoted-message-id*\ >
+   properties
+     Output per-message (key,value) metadata.  Each line starts
+     with "#= ", followed by a message id, and a space separated
+     list of key=value pairs.  Ids, keys and values are hex encoded
+     if needed.  See :any:`notmuch-properties(7)` for more details.
 
 
-            Tags are hex-encoded by replacing every byte not matching
-            the regex **[A-Za-z0-9@=.,\_+-]** with **%nn** where nn is
-            the two digit hex encoding. The message ID is a valid
-            Xapian query, quoted using Xapian boolean term quoting
-            rules: if the ID contains whitespace or a close paren or
-            starts with a double quote, it must be enclosed in double
-            quotes and double quotes inside the ID must be
-            doubled. The astute reader will notice this is a special
-            case of the batch input format for **notmuch-tag(1)**;
-            note that the single message-id query is mandatory for
-            **notmuch-restore(1)**.
+   tags
+     Output per-message boolean metadata, namely tags. See *format* above
+     for description of the output.
 
 
-        **sup**
+   The default is to include all available types of data.  The option
+   can be specified multiple times to select some subset. As of
+   version 3 of the dump format, there is a header line of the
+   following form::
 
 
-            The **sup** dump file format is specifically chosen to be
-            compatible with the format of files produced by
-            sup-dump. So if you've previously been using sup for mail,
-            then the **notmuch restore** command provides you a way to
-            import all of your tags (or labels as sup calls
-            them). Each line has the following form
+     #notmuch-dump <*format*>:<*version*> <*included*>
 
 
-                <*message-id*\ > **(** <*tag*\ > ... **)**
+   where <*included*> is a comma separated list of the above options.
 
 
-            with zero or more tags are separated by spaces. Note that
-            (malformed) message-ids may contain arbitrary non-null
-            characters. Note also that tags with spaces will not be
-            correctly restored with this format.
+.. option:: --output=<filename>
 
 
+   Write output to given file instead of stdout.
 
 SEE ALSO
 ========
 
 
 SEE ALSO
 ========
 
-**notmuch(1)**, **notmuch-config(1)**, **notmuch-count(1)**,
-**notmuch-hooks(5)**, **notmuch-insert(1)**, **notmuch-new(1)**,
-**notmuch-reply(1)**, **notmuch-restore(1)**, **notmuch-search(1)**,
-**notmuch-search-terms(7)**, **notmuch-show(1)**, **notmuch-tag(1)**
+:any:`notmuch(1)`,
+:any:`notmuch-config(1)`,
+:any:`notmuch-count(1)`,
+:any:`notmuch-hooks(5)`,
+:any:`notmuch-insert(1)`,
+:any:`notmuch-new(1)`,
+:any:`notmuch-properties(7)`,
+:any:`notmuch-reply(1)`,
+:any:`notmuch-restore(1)`,
+:any:`notmuch-search(1)`,
+:any:`notmuch-search-terms(7)`,
+:any:`notmuch-show(1)`,
+:any:`notmuch-tag(1)`