multi-line strings containing printf formatters are colorized properly

It's also more efficient since the lexer is not used anymore.