Подсветка синтаксиса кода в моем приложении Rails 4.0.4 с использованием Redcarpet & Pygments.rb?

Цель

Я пытаюсь отобразить документацию по уценке с фрагментами кода, и я хотел бы выделить синтаксис, например, на Github или BitBucket.

Моя среда

  • Рельсы 4.0.4
  • Руби 2.1.1

В моем гемфайле

gem 'haml-rails'
gem 'redcarpet' # markdown
gem 'rdiscount'
gem 'pygments.rb', '~> 0.5.4'

Инициализатор

Я пробовал это, но мои фрагменты кода не выделяются:

module Haml::Filters

  remove_filter("Markdown") #remove the existing Markdown filter

  module Markdown

    include Haml::Filters::Base

    class HTMLwithPygments < Redcarpet::Render::HTML
      def block_code(code, language)
        Pygments.highlight(code, lexer: language)
      end
    end


    def render(text)
      #Redcarpet::Markdown.new(Redcarpet::Render::HTML.new(prettify: true), fenced_code_blocks: true).render(text)
      Redcarpet::Markdown.new(HTMLwithPygments, fenced_code_blocks: true).render(text)
    end

  end
end

протестировано с помощью этого простого YAML

 hello:
    world: "hey"

сгенерированный код выглядит правильно (?)

<div class="highlight">
   <pre>  
    <span class="l-Scalar-Plain">hello</span><span class="p-Indicator">:</span>
    <span class="l-Scalar-Plain">world</span><span class="p-Indicator">:</span> 
    <span class="s">"hey"</span>
    </pre>
</div>

но он просто серый, не выделен

Нужно ли мне устанавливать какие-либо файлы CSS для правильного отображения этих классов??

Любое предложение?


person zabumba    schedule 25.05.2014    source источник
comment
посмотрите, поможет ли вам этот сообщение в блоге.   -  person Wally Ali    schedule 25.05.2014
comment
На самом деле я сделал свою домашнюю работу и попробовал большую часть учебного ресурса, но, учитывая, что я использую Rails .4.0.4, может возникнуть небольшая заминка.   -  person zabumba    schedule 25.05.2014


Ответы (1)


Как я это исправил:

bash
$ pygmentize -S default -f html > style.css 

и добавил этот файл в мою папку css.

person zabumba    schedule 25.05.2014