class Tilt::PandocTemplate
pandoc.org/
Pandoc markdown implementation. See:
def allows_script?
def allows_script? false end
def evaluate(scope, locals, &block)
def evaluate(scope, locals, &block) @output ||= @engine.to_html.strip end
def pandoc_options
Remove hash keys with value false
Replace hash keys with value true with symbol for key
Map tilt options to pandoc options
turn options hash into an array
def pandoc_options result = [] from = "markdown" smart_extension = "-smart" options.each do |k,v| case k when :smartypants smart_extension = "+smart" if v when :escape_html from = "markdown-raw_html" if v when :commonmark from = "commonmark" if v when :markdown_strict from = "markdown_strict" if v else case v when true result << k when false # do nothing else result << { k => v } end end end result << { :f => from + smart_extension } result end
def prepare
def prepare @engine = PandocRuby.new(data, *pandoc_options) @output = nil end