class RedcarpetCompat
Compatibility class; Creates an instance of Redcarpet with the RedCloth API.
Constants
- EXTENSION_MAP
- RENDERER_OPTIONS
Attributes
text[RW]
Public Class Methods
new(text, *exts)
click to toggle source
# File lib/redcarpet.rb, line 61 def initialize(text, *exts) exts_hash, render_hash = *parse_extensions_and_renderer_options(exts) @text = text renderer = Redcarpet::Render::HTML.new(render_hash) @markdown = Redcarpet::Markdown.new(renderer, exts_hash) end
Public Instance Methods
to_html(*_dummy)
click to toggle source
# File lib/redcarpet.rb, line 68 def to_html(*_dummy) @markdown.render(@text) end
Private Instance Methods
list_to_truthy_hash(list)
click to toggle source
Turns a list of symbols into a hash of symbol => true
.
# File lib/redcarpet.rb, line 120 def list_to_truthy_hash(list) list.inject({}) {|h, k| h[k] = true; h } end
parse_extensions_and_renderer_options(exts)
click to toggle source
Returns two hashes, the extensions and renderer options given the extension list
# File lib/redcarpet.rb, line 113 def parse_extensions_and_renderer_options(exts) exts = rename_extensions(exts) exts.partition {|ext| !RENDERER_OPTIONS.include?(ext) }. map {|list| list_to_truthy_hash(list) } end
rename_extensions(exts)
click to toggle source
# File lib/redcarpet.rb, line 101 def rename_extensions(exts) exts.map do |old_name| if new_name = EXTENSION_MAP[old_name] new_name else old_name end end.compact end