X-Git-Url: https://git.cworth.org/git?p=notmuch-wiki;a=blobdiff_plain;f=faq.mdwn;h=9d47f1bad6c8e242c31bfce7b248b21889e18f77;hp=71c9ff80e6a06fc9b367031b12c4cb678fb06a27;hb=HEAD;hpb=b6429fa5333e6c8f474af784d6fd9f005c623d65 diff --git a/faq.mdwn b/faq.mdwn index 71c9ff8..a498e5b 100644 --- a/faq.mdwn +++ b/faq.mdwn @@ -1,6 +1,8 @@ [[!img notmuch-logo.png alt="Notmuch logo" class="left"]] # Frequently Asked Questions +See also [[Less Frequently Asked Questions|lfaq]]. + [[!toc levels=2]] ## How come this query matches mails in folder:2013? `notmuch search --output=files folder:inbox` @@ -12,6 +14,30 @@ with the same message (i.e. the files have identical Message-ID). A `folder:` search will match the folder of any of the files. The `--output=files` option outputs all the files of all matching messages. +## How come my query does not list all the emails on the file system? + +You may have emails that have some of the [exclude +tags](https://notmuchmail.org/doc/latest/man1/notmuch-search.html#cmdoption-search-exclude) + +Notmuch can be configured to exclude some tags while searching. You +can list excluded tags with + + $ notmuch config get search.exclude_tags + deleted + +To verify this is the reason of the discrepancy, add the excluded tags +explicitly to your query. If the problematic query is + + $ notmuch search --output=files -- folder:inbox + +Try + + $ notmuch search --output=files -- folder:inbox tag:deleted + +You can also temporarily turn of the excluded tags feature with `--exclude`. + + $ notmuch search --output=files --exclude=false -- folder:inbox + ## Shouldn't notmuch support inline PGP? [Why it might not be a good idea](https://dkg.fifthhorseman.net/notes/inline-pgp-harmful/) @@ -59,8 +85,8 @@ Next, use that to query the messages: ## How do I search for punctuation, specific special characters, or regexp? -Please see the [[notmuch-search-terms manual -page|manpages/notmuch-search-terms-7]] first. +Please see the [notmuch-search-terms manual +page](https://notmuchmail.org/doc/latest/man7/notmuch-search-terms.html) first. The main thing to understand is that Xapian, and therefore Notmuch, searches are closer to natural language searches than regular expression @@ -106,42 +132,26 @@ This is required in order to run the `pre-new` and `post-new` hooks. No. Tagging is message based. It is possible, however, to make tags propagate to all messages in a thread -using a little bit of scripting in the [[post-new -hook|manpages/notmuch-hooks-5]]. For example, to add the muted tag to all +using a little bit of scripting in the [post-new +hook](https://notmuchmail.org/doc/latest/man5/notmuch-hooks.html). For example, to add the muted tag to all messages in threads that have at least one message with the muted tag: THREAD_TAGS="muted" for tag in "$THREAD_TAGS"; do - notmuch tag +$tag $(notmuch search --output=threads tag:$tag) + notmuch tag +$tag thread:{tag:$tag} done -You can add other tags to `THREAD_TAGS` as needed. Note that this is one way -only; you need to explicitly remove the tag from all the messages in a thread to -stop it from propagating again. +You can add other tags to `THREAD_TAGS` as needed. Note that this is +one way only; you need to explicitly remove the tag from all the +messages in a thread to stop it from propagating again. See +[notmuch-search-terms](https://notmuchmail.org/doc/latest/man7/notmuch-search-terms.html) +for discussion of `thread:{}` queries. ## How can I extract a git patchset for an email thread? -See [notmuch-extract-patch](https://github.com/aaptel/notmuch-extract-patch). - -## T150-tagging.sh is failing with Xapian 1.4.6 - -This is (probably) a bug in this point release of Xapian, should be -fixed in 1.4.7. Try reverting Xapian commit -`093999529acc2f86900d91fed0c7f7af301ab94a`, e.g. with the following -patch. - - - index 80e578b85..a47f14a68 100644 - --- a/xapian-core/backends/glass/glass_postlist.cc - +++ b/xapian-core/backends/glass/glass_postlist.cc - @@ -759,7 +759,7 @@ GlassPostList::open_nearby_postlist(const std::string & term_, - (void)need_pos; - if (term_.empty()) - RETURN(NULL); - - if (!this_db.get() || this_db->postlist_table.is_modified()) - + if (!this_db.get() || this_db->postlist_table.is_writable()) - RETURN(NULL); - RETURN(new GlassPostList(this_db, term_, cursor->clone())); - } +See +[notmuch-extract-patch](https://github.com/aaptel/notmuch-extract-patch). See +also notmuch-extract-patch in +[mailscripts](https://git.spwhitton.name/mailscripts/).