X-Git-Url: https://git.cworth.org/git?p=notmuch-wiki;a=blobdiff_plain;f=faq.mdwn;h=9a038190873eced3223c00eeca9102b11a7af5d1;hp=2e7fa10a03424e80f43493122931f9c295e8c0b9;hb=19816397065f725b205fe1e6ed44b56ce5cdf7f1;hpb=ac34b9b44bcc8693030be54b09885f51433c6bdd diff --git a/faq.mdwn b/faq.mdwn index 2e7fa10..9a03819 100644 --- a/faq.mdwn +++ b/faq.mdwn @@ -12,6 +12,19 @@ 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 this query does not list all the emails on the file system? `notmuch search --output=files -- folder:inbox` + +You may have emails that only have some of the excluded tags. + +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. + + $ notmuch search --output=files -- folder:inbox tag:deleted + ## Shouldn't notmuch support inline PGP? [Why it might not be a good idea](https://dkg.fifthhorseman.net/notes/inline-pgp-harmful/) @@ -27,7 +40,7 @@ See [[excluding]]. See help for `message-citation-line-format` for details. -## What are sexp queries +## What are sexp queries? For the syntax of sexp queries, see [the manual page](https://notmuchmail.org/doc/latest/man7/notmuch-sexp-queries.html). @@ -59,8 +72,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 @@ -69,6 +82,17 @@ searches. Punctuation is mostly ignored. The boolean prefix searches (see Boolean and Probabilistic Prefixes in the man page), such as tag: or path: searches, need an exact match. +For [specific +fields](https://notmuchmail.org/doc/latest/man7/notmuch-search-terms.html#search-prefixes) +it is possible to use regex searches (although these are often +noticeably slower than native Xapian queries). The limited set of +fields is a quirk of implementation which requires a Xapian "value +slot" in the database schema. Adding regex support for more fields to +would require of adding more value slots to the schema. The +performance impact of that needs to be experimentally evaluated, and +assuming it is not too bad, some database upgrade code would need to +be written. + ## How do I search for folders or paths with spaces? The spaces in the names must be escaped. For example if you use bash or zsh, @@ -95,23 +119,28 @@ 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). +See +[notmuch-extract-patch](https://github.com/aaptel/notmuch-extract-patch). See +also notmuch-extract-patch in +[mailscripts]](https://git.spwhitton.name/mailscripts/). ## T150-tagging.sh is failing with Xapian 1.4.6