Class: Magneto::RedcarpetFilter
- Defined in:
- lib/magneto/filters/redcarpet.rb
Instance Method Summary collapse
Methods inherited from Filter
inherited, #initialize, subclasses
Constructor Details
This class inherits a constructor from Magneto::Filter
Instance Method Details
#apply(content, ivars) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/magneto/filters/redcarpet.rb', line 9 def apply(content, ivars) begin require 'redcarpet' rescue LoadError => ex $stderr.puts "#{File.basename($PROGRAM_NAME)}: #{ex.to_s}" $stderr.puts "You're missing a library required to use Redcarpet. Try running:" $stderr.puts ' $ [sudo] gem install redcarpet' raise 'Missing dependency: redcarpet' end args = ivars[:redcarpet].symbolize_keys rescue {} renderer_class = Kernel.const_get(args[:renderer_name]) rescue args[:renderer_class] || Redcarpet::Render::HTML args.delete(:renderer_name) args.delete(:renderer_class) = args[:renderer_options].symbolize_keys rescue {} args.delete(:renderer_options) Redcarpet::Markdown.new(renderer_class.new(), args).render(content) end |
#name ⇒ Object
5 6 7 |
# File 'lib/magneto/filters/redcarpet.rb', line 5 def name 'redcarpet' end |