lexical syntax ~[\"]* -> FreeText [\ ] -> FreeText [\ \t\n] -> LAYOUT "//" ~[\n]* [\n] -> LAYOUT lexical restrictions FreeText -/- [\ ] context-free restrictions LAYOUT? -/- [\ \t\12\n\r] context-free syntax "\"" FreeText "\"" -> QuotedText {cons("QuotedText")} problem: leading layout within the quotes (e.g. " bla") is considered layout, whereas trailing layout (e.g. "bla ") is preserved. I want the leading layout to be preserved in the resulting string as well...