我在此处(即文档)以及此处和此处rouge
遵循了使用gem的最小示例。
一切正常,除了代码中的换行符没有出现。
明确地说,像这样的代码
def plus_two(x)
x + 2
end
颜色正确突出显示,但在一行中呈现,就像这样
def plus_two(x) x + 2 end
如何使用换行符渲染它(就像在代码文件中一样)
改变
require 'rouge'
source = "def plus_two(x)\n x + 2\nend"
formatter = Rouge::Formatters::HTML.new
lexer = Rouge::Lexers::R.new
@code = formatter.format(lexer.lex(source))
至
require 'rouge'
source = "def plus_two(x)\n x + 2\nend"
formatter = Rouge::Formatters::HTML.new
formatter = Rouge::Formatters::HTMLLinewise.new(formatter, class: 'line-%i')
lexer = Rouge::Lexers::R.new
@code = formatter.format(lexer.lex(source))
更多格式选项在这里