# output as HTML div (using inline CSS styles)<\/span>
<\/span>CodeRay<\/span>.<\/span>scan<\/span>(<\/span>\'<\/span>puts "Hello, world!"<\/span>\'<\/span><\/span>,<\/span> <\/span>:ruby<\/span>)<\/span>.<\/span>div<\/span>
<\/span>
<\/span># ...with line numbers<\/span>
<\/span>CodeRay<\/span>.<\/span>scan<\/span>(<\/span>"<\/span>5.times do<\/span>\\n<\/span> puts \'Hello, world!\'<\/span>\\n<\/span>end<\/span>"<\/span><\/span>,<\/span> <\/span>:ruby<\/span>)<\/span>.<\/span>div<\/span>(<\/span>:line_numbers<\/span> <\/span>=<\/span>><\/span> <\/span>:table<\/span>)<\/span>
<\/span>
<\/span># output as standalone HTML page (using CSS classes)<\/span>
<\/span>CodeRay<\/span>.<\/span>scan<\/span>(<\/span>\'<\/span>puts "Hello, world!"<\/span>\'<\/span><\/span>,<\/span> <\/span>:ruby<\/span>)<\/span>.<\/span>page<\/span>
<\/span>
<\/span># keep scanned tokens for later use<\/span>
<\/span>tokens<\/span> <\/span>=<\/span> <\/span>CodeRay<\/span>.<\/span>scan<\/span>(<\/span>\'<\/span>{ "just": "an", "example": 42 }<\/span>\'<\/span><\/span>,<\/span> <\/span>:json<\/span>)<\/span>
<\/span>
<\/span># produce a token statistic<\/span>
<\/span>tokens<\/span>.<\/span>statistic<\/span>
<\/span>
<\/span># count LoC (lines of code)<\/span>
<\/span>CodeRay<\/span>.<\/span>scan<\/span>(<\/span>"<\/span># comment<\/span>\\n<\/span>puts \'Hello, world!\'<\/span>"<\/span><\/span>,<\/span> <\/span>:ruby<\/span>)<\/span>.<\/span>loc<\/span> <\/span># => 1<\/span>
<\/span>
<\/span># produce a HTML div, but with CSS classes<\/span>
<\/span>tokens<\/span>.<\/span>div<\/span>(<\/span>:css<\/span> <\/span>=<\/span>><\/span> <\/span>:class<\/span>)<\/span>
<\/span>
<\/span># highlight a file (to HTML div); guess the file type base on the extension<\/span>
<\/span>CodeRay<\/span>.<\/span>highlight_file<\/span>(<\/span>__FILE__<\/span>)<\/span>
<\/span>
<\/span># re-using scanner and encoder with Duo<\/span>
<\/span>CodeRay<\/span>::<\/span>Duo<\/span>[<\/span>:ruby<\/span>,<\/span> <\/span>:div<\/span>]<\/span>.<\/span>encode<\/span>(<\/span>\'<\/span>puts "Hello, world!"<\/span>\'<\/span><\/span>)<\/span><\/pre><\/td>\n<\/tr><\/table>\n\n");