It gets weirder, though. If I use % within an @lexer::members block instead of within an action block I get invalid StringTemplate % shorthand syntax: '%' and I try to use \% instead then I get invalid StringTemplate % shorthand syntax: '%' invalid StringTemplate % shorthand syntax: '%' Any idea? -- O.L.