doc: field processor support now always included, adjust manual pages

The features that require field processor support, are now just
documented w/o mentioning **Xapian Field Processors**' is needed
for those.

Replaced "compact" and "field_processor" with "retry_lock" in
build_with config option, as it is currently the only one that
is optionally excluded. The former 2 are now documented as
features always included.

Dropped one 'we' "passive" in notmuch-search-terms.rst. It was the
only one, and inconsistent with rest of the documentation in that
file.

Dropped message about conditional open-ended ranges support, as
those are now always supported.
This commit is contained in:
Tomi Ollila 2020-06-02 23:21:59 +03:00 committed by David Bremner
parent ca37d8950b
commit 507d2f07a6
2 changed files with 18 additions and 41 deletions

View file

@ -198,8 +198,9 @@ The available configuration items are described below.
**built_with.<name>** **built_with.<name>**
Compile time feature <name>. Current possibilities include Compile time feature <name>. Current possibilities include
"compact" (see **notmuch-compact(1)**) and "field_processor" (see "retry_lock" (configure option, included by default).
**notmuch-search-terms(7)**). (since notmuch 0.30, "compact" and "field_processor" are
always included.)
**query.<name>** **[STORED IN DATABASE]** **query.<name>** **[STORED IN DATABASE]**
Expansion for named query called <name>. See Expansion for named query called <name>. See

View file

@ -37,9 +37,8 @@ In addition to free text, the following prefixes can be used to force
terms to match against specific portions of an email, (where <brackets> terms to match against specific portions of an email, (where <brackets>
indicate user-supplied values). indicate user-supplied values).
If notmuch is built with **Xapian Field Processors** (see below) some Some of the prefixes with <regex> forms can be also used to restrict
of the prefixes with <regex> forms can be also used to restrict the the results to those whose value matches a regular expression (see
results to those whose value matches a regular expression (see
**regex(7)**) delimited with //, for example:: **regex(7)**) delimited with //, for example::
notmuch search 'from:"/bob@.*[.]example[.]com/"' notmuch search 'from:"/bob@.*[.]example[.]com/"'
@ -87,8 +86,7 @@ thread:<thread-id>
of output from **notmuch search** of output from **notmuch search**
thread:{<notmuch query>} thread:{<notmuch query>}
If notmuch is built with **Xapian Field Processors** (see below), Threads may be searched for indirectly by providing an arbitrary
threads may be searched for indirectly by providing an arbitrary
notmuch query in **{}**. For example, the following returns notmuch query in **{}**. For example, the following returns
threads containing a message from mallory and one (not necessarily threads containing a message from mallory and one (not necessarily
the same message) with Subject containing the word "crypto". the same message) with Subject containing the word "crypto".
@ -158,9 +156,7 @@ lastmod:<initial-revision>..<final-revision>
query:<name> query:<name>
The **query:** prefix allows queries to refer to previously saved The **query:** prefix allows queries to refer to previously saved
queries added with **notmuch-config(1)**. Named queries are only queries added with **notmuch-config(1)**.
available if notmuch is built with **Xapian Field Processors**
(see below).
property:<key>=<value> property:<key>=<value>
The **property:** prefix searches for messages with a particular The **property:** prefix searches for messages with a particular
@ -353,23 +349,21 @@ since 1970-01-01 00:00:00 UTC. For example:
date:@<initial-timestamp>..@<final-timestamp> date:@<initial-timestamp>..@<final-timestamp>
date:<expr>..! can be used as a shorthand for date:<expr>..<expr>. The Currently, spaces in range expressions are not supported. You can
expansion takes place before interpretation, and thus, for example,
date:monday..! matches from the beginning of Monday until the end of
Monday.
With **Xapian Field Processor** support (see below), non-range
date queries such as date:yesterday will work, but otherwise
will give unexpected results; if in doubt use date:yesterday..!
Currently, we do not support spaces in range expressions. You can
replace the spaces with '\_', or (in most cases) '-', or (in some cases) replace the spaces with '\_', or (in most cases) '-', or (in some cases)
leave the spaces out altogether. Examples in this man page use spaces leave the spaces out altogether. Examples in this man page use spaces
for clarity. for clarity.
Open-ended ranges are supported (since Xapian 1.2.1), i.e. it's possible Open-ended ranges are supported. I.e. it's possible to specify
to specify date:..<until> or date:<since>.. to not limit the start or date:..<until> or date:<since>.. to not limit the start or
end time, respectively. Pre-1.2.1 Xapian does not report an error on end time, respectively.
open ended ranges, but it does not work as expected either.
Single expression
-----------------
date:<expr> works as a shorthand for date:<expr>..<expr>.
For example, date:monday matches from the beginning of Monday until
the end of Monday.
Relative date and time Relative date and time
---------------------- ----------------------
@ -446,24 +440,6 @@ Time zones
Some time zone codes, e.g. UTC, EET. Some time zone codes, e.g. UTC, EET.
XAPIAN FIELD PROCESSORS
=======================
Certain optional features of the notmuch query processor rely on the
presence of the Xapian field processor API. You can determine if your
notmuch was built against a sufficiently recent version of Xapian by running
::
% notmuch config get built_with.field_processor
Currently the following features require field processor support:
- non-range date queries, e.g. "date:today"
- named queries e.g. "query:my_special_query"
- regular expression searches, e.g. "subject:/^\\[SPAM\\]/"
- thread subqueries, e.g. "thread:{from:bob}"
SEE ALSO SEE ALSO
======== ========