summaryrefslogtreecommitdiffstats
path: root/src/shell.pest
blob: 49a84b455af5186d2d20cad2edb137702aa6a0e1 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
char = @{ !("|" | ";" | WHITESPACE) ~ ANY }
word = @{ char+ }

exe      = { word+ }
pipeline = { exe ~ ("|" ~ exe)* }
commands = { pipeline ~ (";" ~ pipeline)* }

line = { SOI ~ commands ~ EOI }

WHITESPACE = _{ (" " | "\t" | "\n") }
COMMENT    = _{ "#" ~ ANY* }