Class: Tilt::Redcarpet2Template
- Defined in:
- lib/tilt/redcarpet.rb
Overview
Future proof mode for Redcarpet 2.x (not yet released)
Instance Attribute Summary
Attributes inherited from Template
#compiled_path, #data, #file, #line, #options
Instance Method Summary collapse
- #allows_script? ⇒ Boolean
- #evaluate(scope, locals, &block) ⇒ Object
- #generate_renderer ⇒ Object
- #prepare ⇒ Object
Methods inherited from Template
#basename, default_mime_type, default_mime_type=, #eval_file, #initialize, metadata, #metadata, #name, #render
Constructor Details
This class inherits a constructor from Tilt::Template
Instance Method Details
#allows_script? ⇒ Boolean
72 73 74 |
# File 'lib/tilt/redcarpet.rb', line 72 def allows_script? false end |
#evaluate(scope, locals, &block) ⇒ Object
68 69 70 |
# File 'lib/tilt/redcarpet.rb', line 68 def evaluate(scope, locals, &block) @output ||= @engine.render(data) end |
#generate_renderer ⇒ Object
38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/tilt/redcarpet.rb', line 38 def generate_renderer renderer = .delete(:renderer) || ::Redcarpet::Render::HTML.new() return renderer unless .delete(:smartypants) return renderer if renderer.is_a?(Class) && renderer <= ::Redcarpet::Render::SmartyPants if renderer == ::Redcarpet::Render::XHTML ::Redcarpet::Render::SmartyHTML.new(:xhtml => true) elsif renderer == ::Redcarpet::Render::HTML ::Redcarpet::Render::SmartyHTML elsif renderer.is_a? Class Class.new(renderer) { include ::Redcarpet::Render::SmartyPants } else renderer.extend ::Redcarpet::Render::SmartyPants end end |
#prepare ⇒ Object
54 55 56 57 58 59 60 61 62 63 64 65 66 |
# File 'lib/tilt/redcarpet.rb', line 54 def prepare # try to support the same aliases Redcarpet1Template::ALIAS.each do |opt, aka| next if .key? opt or not .key? aka [opt] = .delete(aka) end # only raise an exception if someone is trying to enable :escape_html .delete(:escape_html) unless [:escape_html] @engine = ::Redcarpet::Markdown.new(generate_renderer, ) @output = nil end |