I changed the lexeme for error to [\s\S] and used priorities, this finally seems to work as intended. (for some reason it didn't work until I replaced ',' with comma, comma ~[','] and gave it also a priority).
Now this project seems more achievable, thank you. :start ::= Script Script ::= Number comma Number action => do_printNr | Any Any ::= anyToken | anyToken Any anyToken ~ [\s\S] comma ~ [','] :lexeme ~ comma priority => 10 :lexeme ~ <anyToken> priority => -10 :lexeme ~ Number priority => 10 Number ~ digits digits ~ [\d]+ -- You received this message because you are subscribed to the Google Groups "marpa parser" group. To unsubscribe from this group and stop receiving emails from it, send an email to marpa-parser+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.