diff options
| author | David Bremner <david@tethera.net> | 2021-08-24 08:17:33 -0700 |
|---|---|---|
| committer | David Bremner <david@tethera.net> | 2021-09-04 17:07:19 -0700 |
| commit | afe85e65786df1df9abf261393b4b4e6e2e86009 (patch) | |
| tree | e37ac7c90c67277ef674592585d40d10b6de3d4c /doc | |
| parent | 4083fd8bec7a34cf9c6a722b7dd511e0d31712f6 (diff) | |
lib/parse-sexp: expand queries
The code here is just gluing together _notmuch_query_expand with the
existing sexp parser infrastructure.
Diffstat (limited to 'doc')
| -rw-r--r-- | doc/man7/notmuch-sexp-queries.rst | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/doc/man7/notmuch-sexp-queries.rst b/doc/man7/notmuch-sexp-queries.rst index 7eaffe56..fee43cb5 100644 --- a/doc/man7/notmuch-sexp-queries.rst +++ b/doc/man7/notmuch-sexp-queries.rst @@ -144,6 +144,11 @@ MODIFIERS *Modifiers* refer to any prefixes (first elements of compound queries) that are neither operators nor fields. +``(matching`` |q1| |q2| ... |qn| ``)`` ``(of`` |q1| |q2| ... |qn| ``)`` + Match all messages have the same values of the current field as + those matching all of |q1| ... |qn|. Supported in most term [#not-path]_ or + phrase fields. Most commonly used in the ``thread`` field. + ``(regex`` *atom* ``)`` ``(rx`` *atom* ``)`` Interpret *atom* as a POSIX.2 regular expression (see :manpage:`regex(7)`). This applies in term fields and a subset [#not-phrase]_ of @@ -176,6 +181,9 @@ EXAMPLES Match the *phrase* "quick" followed by "fox" in phrase fields (or outside a field). Match the literal string in a term field. +``(folder (of (id 1234@invalid)))`` + Match any message in the same folder as the one with Message-Id "1234@invalid" + ``(id 1234@invalid blah@test)`` Matches Message-Id "1234@invalid" *or* Message-Id "blah@test" @@ -193,6 +201,14 @@ EXAMPLES Match messages whose subject contains "quick brown fox", but also "brown fox quicksand". +``(thread (of (id 1234@invalid)))`` + Match any message in the same thread as the one with Message-Id "1234@invalid" + +``(thread (matching (from bob@example.com) (to bob@example.com)))`` + Match any (messages in) a thread containing a message from + "bob@example.com" and a (possibly distinct) message to "bob at + example.com") + ``(to (or bob@example.com mallory@example.org))`` ``(or (to bob@example.com) (to mallory@example.org))`` Match in the "To" or "Cc" headers, "bob@example.com", "mallory@example.org", and also "bob@example.com.au" since it @@ -216,6 +232,10 @@ NOTES .. [#not-body] Due the the way ``body`` is implemented in notmuch, this modifier is not supported in the ``body`` field. +.. [#not-path] Due to the way recursive ``path`` queries are implemented + in notmuch, this modifier is not supported in the + ``path`` field. + .. |q1| replace:: :math:`q_1` .. |q2| replace:: :math:`q_2` .. |qn| replace:: :math:`q_n` |
