X-Git-Url: https://git.notmuchmail.org/git?p=notmuch-wiki;a=blobdiff_plain;f=faq.mdwn;h=9d47f1bad6c8e242c31bfce7b248b21889e18f77;hp=1cc224e8ed5d3c1602366c0a8e2a80a8db4f80a8;hb=368db1ac64367558b53a83fa72d1c3214b73980b;hpb=9361fd7119813de5424ad16de8edde0363452d1b diff --git a/faq.mdwn b/faq.mdwn index 1cc224e..9d47f1b 100644 --- a/faq.mdwn +++ b/faq.mdwn @@ -45,7 +45,7 @@ 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, +page|manpages/notmuch-search-terms-7]] first. The main thing to understand is that Xapian, and therefore Notmuch, searches are closer to natural language searches than regular expression @@ -53,3 +53,69 @@ 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. + +## 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, +you can search for messages with tag `foo` in folder `INBOX/folder with spaces` +with this query: + + $ notmuch search tag:foo 'folder:"INBOX/folder with spaces"' + +## How do I search for the `List-Id:` header? + +See `index.header.` in `notmuch-config(1)` for details. TLD;R: + + notmuch config set index.header.List List-Id + +## Can I use notmuch with grsec? + +Sure! It works out of the box. If you have TPE enabled (trusted path execution), +make sure the user is executing the script belongs to the +`kernel.grsecurity.tpe_gid` (in debian this is grsec-tpe). +This is required in order to run the `pre-new` and `post-new` hooks. + +## Can I tag threads? + +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 +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) + 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. + + +## 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())); + } +