Class | Tilt::RedcarpetTemplate::Redcarpet2 |
In: |
lib/tilt/markdown.rb
|
Parent: | Template |
Future proof mode for Redcarpet 2.x (not yet released)
# File lib/tilt/markdown.rb, line 90 90: def self.engine_initialized? 91: defined? ::Redcarpet::Render and defined? ::Redcarpet::Markdown 92: end
# File lib/tilt/markdown.rb, line 124 124: def evaluate(scope, locals, &block) 125: @output ||= @engine.render(data) 126: end
# File lib/tilt/markdown.rb, line 94 94: def generate_renderer 95: renderer = options.delete(:renderer) || ::Redcarpet::Render::HTML 96: return renderer unless options.delete(:smartypants) 97: return renderer if renderer.is_a?(Class) && renderer <= ::Redcarpet::Render::SmartyPants 98: 99: if renderer == ::Redcarpet::Render::XHTML 100: ::Redcarpet::Render::SmartyHTML.new(:xhtml => true) 101: elsif renderer == ::Redcarpet::Render::HTML 102: ::Redcarpet::Render::SmartyHTML 103: elsif renderer.is_a? Class 104: Class.new(renderer) { include ::Redcarpet::Render::SmartyPants } 105: else 106: renderer.extend ::Redcarpet::Render::SmartyPants 107: end 108: end
# File lib/tilt/markdown.rb, line 110 110: def prepare 111: # try to support the same aliases 112: RDiscountTemplate::ALIAS.each do |opt, aka| 113: next if options.key? opt or not options.key? aka 114: options[opt] = options.delete(aka) 115: end 116: 117: # only raise an exception if someone is trying to enable :escape_html 118: options.delete(:escape_html) unless options[:escape_html] 119: 120: @engine = ::Redcarpet::Markdown.new(generate_renderer, options) 121: @output = nil 122: end