我试图在ruby应用程序中显示语法突出显示的C代码。Coderay似乎是事实上的解决方案,因为我没有做任何其他特别的样式。
下面的代码在div中突出显示了代码,但没有前导空格。(空白是存在于数据库时,与Sequel Pro查看)
代码保存在一个普通的Text列中:
class Project
include DataMapper::Resource
property :id, Serial
property :name, String, :required => true
property code, Text
end
并且视图通过:
在haml中呈现~ CodeRay.scan(@project.code, :c).div(:css => :class).html_safe
编辑
见下面的解决方案,这是因为html5模板重置css
我是个笨蛋,所有的示例代码都是正确的,这是html5样板css删除空白。具体来说:
pre { padding: 15px; white-space: pre; white-space: pre-wrap; white-space: pre-line; word-wrap: break-word; }
去掉空格:pre-line;修复它