]> git.notmuchmail.org Git - notmuch/blobdiff - doc/man1/notmuch-insert.rst
Fix orthography
[notmuch] / doc / man1 / notmuch-insert.rst
index 2be1a7b8841c9a7039f15ad15a46ff396bc7ad7c..f79600d6571f02f44951eff7eb20cf74fc2b7173 100644 (file)
@@ -25,6 +25,9 @@ If the new message is a duplicate of an existing message in the database
 (it has same Message-ID), it will be added to the maildir folder and
 notmuch database, but the tags will not be changed.
 
+The **insert** command supports hooks. See **notmuch-hooks(5)** for
+more details on hooks.
+
 Option arguments must appear before any tag operation arguments.
 Supported options for **insert** include
 
@@ -38,16 +41,34 @@ Supported options for **insert** include
         does not exist. Otherwise the folder must already exist for mail
         delivery to succeed.
 
+    ``--keep``
+        Keep the message file if indexing fails, and keep the message
+        indexed if applying tags or maildir flag synchronization
+        fails. Ignore these errors and return exit status 0 to
+        indicate successful mail delivery.
+
+    ``--no-hooks``
+        Prevent hooks from being run.
+
 EXIT STATUS
 ===========
 
-This command returns exit status 0 if the message was successfully added
-to the mail directory, even if the message could not be indexed and
-added to the notmuch database. In the latter case, a warning will be
-printed to standard error but the message file will be left on disk.
+This command returns exit status 0 on successful mail delivery,
+non-zero otherwise. The default is to indicate failed mail delivery on
+any errors, including message file delivery to the filesystem, message
+indexing to Notmuch database, changing tags, and synchronizing tags to
+maildir flags. The ``--keep`` option may be used to settle for
+successful message file delivery.
+
+This command supports the following special exit status code for
+errors most likely to be temporary in nature, e.g. failure to get a
+database write lock.
+
+``75 (EX_TEMPFAIL)``
+    A temporary failure occurred; the user is invited to retry.
 
-If the message could not be written to disk then a non-zero exit status
-is returned.
+The exit status of the **post-insert** hook does not affect the exit
+status of the **insert** command.
 
 SEE ALSO
 ========