Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- VAR = line:line* { return line; } // Return array of arrays with elements :D
- start = ws "{{" ws
- end = ws "}}" ws
- ws "whitespace"
- = s:[ \t\r]*
- n "newline"
- = n:"\n"*
- line
- = start:element body:element* n { return [start].concat(body); }
- // DRY, element coudl be a var or a line of text
- element
- = element: (
- text
- / var
- )
- { return element; }
- text
- = ws words:word+ ws { return words.join(""); }
- var
- = ws start var_name:word filter:filter? end ws { return {"name": var_name, "filter": filter }; }
- filter = ws "|" ws filter:word { return filter; }
- word
- = ws char:[A-z_]+ end:ws {return char.join("") + end; }
Add Comment
Please, Sign In to add comment