 full document, only the visible part of a
    document, or even just portions of lines. Some lexers need to match whole
    lines. For example, a lexer for the output of a file &ldquo;diff&rdquo; needs to know if
    the line started with a &lsquo;+&rsquo; or &lsquo;-&rsquo; and then style the entire line
    accordingly. To indicate that your lexer matches by line, create the lexer
    with an extra parameter:</p>

    <pre><code>
    local lex = lexer.new('?', {lex_by_line = true})
    </code></pre>

   