lib/mado/markdown.rb in mado-0.1.1 vs lib/mado/markdown.rb in mado-0.2.0

- old
+ new

@@ -1,29 +1,40 @@ -require "redcarpet" -require "rouge" -require "rouge/plugins/redcarpet" - module Mado class Markdown class HTML < Redcarpet::Render::HTML include Rouge::Plugins::Redcarpet end - def self.convert_markdown(path) - renderer_options = { - filter_html: true, - with_toc_data: true - } - convert_options = { - autolink: true, - fenced_code_blocks: true, - lax_spacing: true, - no_intra_emphasis: true, - strikethrough: true, - superscript: true, - tables: true - } - renderer = HTML.new(renderer_options) - Redcarpet::Markdown.new(renderer, convert_options).render(open(path).read) + class << self + def convert_markdown(path) + renderer_options = { + filter_html: true, + with_toc_data: true + } + convert_options = { + autolink: true, + fenced_code_blocks: true, + lax_spacing: true, + no_intra_emphasis: true, + strikethrough: true, + superscript: true, + tables: true + } + pipeline_context = { + asset_root: "" + } + pipeline = ::HTML::Pipeline.new [ + ::HTML::Pipeline::EmojiFilter, + TaskList::Filter + ] + + renderer = HTML.new(renderer_options) + html = Redcarpet::Markdown.new(renderer, convert_options).render(open(path).read) + pipeline.call(html, pipeline_context)[:output].to_s + end + + def emoji_path(file_path) + File.join(Emoji.images_path, "emoji", file_path) + end end end end