| 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