https://github.com/Pauan/nulan/commit/b13e6477726cc111af4c23...
The changes are: renamed "action" to "parse", added in a "vertical" option, added in a "tokenize" function.
---
Now, significant whitespace is hardcoded, numbers are always 0-9, and symbols are anything that isn't a number or delimiter.
But everything else is customizable. Everything. Even comments, strings, and space/newline is customizable.
The new "tokenize" function lets you fairly easily add in new tokenizers, which is what string/comment/space/newline does.
The new "vertical" option is pretty cool too. It's currently only used by "|" and it means that this:
foo bar | qux 1 2 3 | corge 4 5 6
{foo bar | {qux 1 2 3 corge 4 5 6}}
{foo bar | {{qux 1 2 3} {corge 4 5 6}}}
{foo bar {| {qux 1 2 3} {corge 4 5 6}}}