mirror of
https://github.com/GothenburgBitFactory/timewarrior.git
synced 2025-07-07 20:06:39 +02:00
33 lines
643 B
Text
33 lines
643 B
Text
# Timewarrior grammar definition.
|
|
|
|
# Conventions:
|
|
# - Literals are always double-quoted.
|
|
# - "*", "+" and "?" suffixes have POSIX semantics.
|
|
# - "є" means empty set.
|
|
# - Lower-level primitives are barewords.
|
|
# - Literal modifiers:
|
|
# - :a Accept abbreviations
|
|
# - :i Accept caseless match
|
|
# - Blank line between rules.
|
|
|
|
# Left associative:
|
|
# A -> A <op> B
|
|
# B
|
|
#
|
|
# Right associative:
|
|
# A -> B <op> A
|
|
# B
|
|
|
|
cli: "start" :ai
|
|
"stop" :ai
|
|
"track" :ai
|
|
help # Non-terminal, cannot contain є.
|
|
є
|
|
|
|
help: "help" :ai topic
|
|
"help" :ai
|
|
|
|
topic: "usage" :ai
|
|
/dates?/ :ai
|
|
/times?/ :ai
|
|
|