opensourcegames/code/grammar_listing.lark
2020-04-16 20:21:14 +02:00

17 lines
649 B
Plaintext

start: header entry*
header: "# " name " (" number ")\n" _E
entry: "## " name " (" number ")\n" _E property+ _E
property: "- " _key ": " _value "\n"
_key: /(?! ).+?(?=:)(?<! )/ // key: everything until next ":", not beginning or ending with a space
_value: /.+(?<! )/ // everything until the end of the line, not ending with a space
name: /.+?(?= \()/ // developer name: everything until " ("
number: /[0-9]+/
COMMENT: /^\[comment\]: #.*$\n/m // [comment]: # xxx
_E: /^$\n/m // empty new line
%ignore COMMENT