Sha256: b03296d583259ae5080e6965d87e461c3073a2e6db030f84b538a063945caf85
Contents?: true
Size: 904 Bytes
Versions: 199
Compression:
Stored size: 904 Bytes
Contents
require 'tilt/template' require 'rdiscount' module Tilt # Discount Markdown implementation. See: # http://github.com/rtomayko/rdiscount # # RDiscount is a simple text filter. It does not support +scope+ or # +locals+. The +:smart+ and +:filter_html+ options may be set true # to enable those flags on the underlying RDiscount object. class RDiscountTemplate < Template self.default_mime_type = 'text/html' ALIAS = { :escape_html => :filter_html, :smartypants => :smart } FLAGS = [:smart, :filter_html, :smartypants, :escape_html] def flags FLAGS.select { |flag| options[flag] }.map { |flag| ALIAS[flag] || flag } end def prepare @engine = RDiscount.new(data, *flags) @output = nil end def evaluate(scope, locals, &block) @output ||= @engine.to_html end def allows_script? false end end end
Version data entries
199 entries across 160 versions & 28 rubygems