This module contains the logic for searching in a notebook.
Supported operators:
Order of precedence: AND, OR, NOT so "foo AND NOT bar OR baz" means AND(foo, OR(NOT(bar), baz))
Supported keywords:
For the Content field we need to request the actual page contents, all other fields we get from the index and are more efficient to query.
For link keywords only a '*' at the right side is allowed For the name keyword a '*' is allowed on both sides For content '*' can occur on both sides, but does not match whitespace
| Class | PageSelection |
This class is just a container of path objects |
| Class | Query |
No summary |
| Class | QueryGroup |
Wrapper for a sub group of a query. Just a list of QueryTerms with an associated operator (either AND or OR). |
| Class | QueryTerm |
Wrapper for a single term in a query. Consists of a keyword, a string and a flag for inverse (NOT operator). |
| Class | SearchSelection |
No summary |
| Constant | KEYWORDS |
Undocumented |
| Constant | OPERATOR_AND |
Undocumented |
| Constant | OPERATOR_NOT |
Undocumented |
| Constant | OPERATOR_OR |
Undocumented |
| Variable | keyword_re |
Undocumented |
| Variable | logger |
Undocumented |
| Variable | operators |
Undocumented |
| Variable | operators_re |
Undocumented |
| Variable | tag_re |
Undocumented |