Redcarpet宝石不能正常工作? - Rails 4

时间:2015-08-02 18:22:23

标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-4 rubygems

我已经使用CodeRay gem安装并设置了Redcarpet gem用于标记,以进行语法高亮显示。

我的问题是

```ruby

```

在markdown中会提供一个代码块,它已加载但没有正确设置样式,实际上预标签上没有样式。

这是 application_helper.rb

中的代码
 class CodeRayify < Redcarpet::Render::HTML
    def block_code(code, language)
      CodeRay.scan(code, language).div(:line_numbers => :table)
    end
  end

  def markdown(text)
    coderayified = CodeRayify.new(:filter_html => true, :hard_wrap => true)
    options = {
      fenced_code_blocks: true,
      no_intra_emphasis: true,
      autolink: true,
      strikethrough: true,
      lax_spacing: true,
      superscript: true
    }

    markdown_to_html = Redcarpet::Markdown.new(coderayified,options)
    markdown_to_html.render(text).html_safe
  end

然后我所做的就是这个

换句话说,在按下ctrl + K时,stackoverflows执行的这种样式在我的情况下不存在。

1 个答案:

答案 0 :(得分:0)

<pre>代码中没有属性,如果您的意思是说“没有风格&#39;”。我只是重新创建了你的例子,我发现Ruby代码在<pre>块中正确着色:关键字有自己的样式,以及类似的东西。如果您确实有错误,请检查您的宝石版本。我有coderay 1.1.0和redcarpet 3.3.2,一切都很好。