Parent

Files

Class/Module Index [+]

Quicksearch

Jekyll::Converters::Markdown::RedcarpetParser

Public Class Methods

new(config) click to toggle source
# File lib/jekyll/converters/markdown/redcarpet_parser.rb, line 57
def initialize(config)
  Deprecator.gracefully_require("redcarpet")
  @config = config
  @redcarpet_extensions = {}
  @config['redcarpet']['extensions'].each { |e| @redcarpet_extensions[e.to_sym] = true }

  @renderer ||= class_with_proper_highlighter(@config['highlighter'])
end

Public Instance Methods

class_with_proper_highlighter(highlighter) click to toggle source
# File lib/jekyll/converters/markdown/redcarpet_parser.rb, line 66
def class_with_proper_highlighter(highlighter)
  case highlighter
  when "pygments"
    Class.new(Redcarpet::Render::HTML) do
      include WithPygments
    end
  when "rouge"
    Class.new(Redcarpet::Render::HTML) do
      Jekyll::Deprecator.gracefully_require(]
        rouge
        rouge/plugins/redcarpet
      ])

      if Rouge.version < '1.3.0'
        abort "Please install Rouge 1.3.0 or greater and try running Jekyll again."
      end

      include Rouge::Plugins::Redcarpet
      include CommonMethods
      include WithRouge
    end
  else
    Class.new(Redcarpet::Render::HTML) do
      include WithoutHighlighting
    end
  end
end
convert(content) click to toggle source
# File lib/jekyll/converters/markdown/redcarpet_parser.rb, line 94
def convert(content)
  @redcarpet_extensions[:fenced_code_blocks] = !@redcarpet_extensions[:no_fenced_code_blocks]
  @renderer.send :include, Redcarpet::Render::SmartyPants if @redcarpet_extensions[:smart]
  markdown = Redcarpet::Markdown.new(@renderer.new(@redcarpet_extensions), @redcarpet_extensions)
  markdown.render(content)
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.