aboutsummaryrefslogtreecommitdiffstats
path: root/example/query.md
blob: 2e91a2343639cae333d129616876d23e3b4df1b4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Queries are passed to the command line, using the keywords OR
and NOT. Grouping is done using [ and ] (these are not reserved by
the shell). Two tildes (`~~`) at the beginning of a string denote
a glob match on tags. A tilde and a dash (`~-`) denote a glob match
on titles.

The grammar is implemented as a recursive descent parser.

```
e1 ::= e2 ("OR" e2)*;
e2 ::= e3*;
e3 ::= "NOT"? e4;
e4 ::= TAG | "[" e1 "]";
```