Sha256: 0ddbf9e751aae6bdce1e28f2fe45f59bb374b22ab18463dfa612207567b1d222
Contents?: true
Size: 1.96 KB
Versions: 2
Compression:
Stored size: 1.96 KB
Contents
module Tigefa module Converters class Markdown class MarukuParser def initialize(config) require 'maruku' @config = config @errors = [] load_divs_library if @config['maruku']['use_divs'] load_blahtext_library if @config['maruku']['use_tex'] enable_fenced_code_blocks if @config['maruku']['fenced_code_blocks'] rescue LoadError STDERR.puts 'You are missing a library required for Markdown. Please run:' STDERR.puts ' $ [sudo] gem install maruku' raise FatalException.new("Missing dependency: maruku") end def load_divs_library require 'maruku/ext/div' STDERR.puts 'Maruku: Using extended syntax for div elements.' end def load_blahtext_library require 'maruku/ext/math' STDERR.puts "Maruku: Using LaTeX extension. Images in `#{@config['maruku']['png_dir']}`." # Switch off MathML output MaRuKu::Globals[:html_math_output_mathml] = false MaRuKu::Globals[:html_math_engine] = 'none' # Turn on math to PNG support with blahtex # Resulting PNGs stored in `images/latex` MaRuKu::Globals[:html_math_output_png] = true MaRuKu::Globals[:html_png_engine] = @config['maruku']['png_engine'] MaRuKu::Globals[:html_png_dir] = @config['maruku']['png_dir'] MaRuKu::Globals[:html_png_url] = @config['maruku']['png_url'] end def enable_fenced_code_blocks MaRuKu::Globals[:fenced_code_blocks] = true end def print_errors_and_fail print @errors.join raise MaRuKu::Exception, "MaRuKu encountered problem(s) while converting your markup." end def convert(content) converted = Maruku.new(content, :error_stream => @errors).to_html.strip print_errors_and_fail unless @errors.empty? converted end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
tigefa-1.1.2 | lib/tigefa/converters/markdown/maruku_parser.rb |
tigefa-1.1.1 | lib/tigefa/converters/markdown/maruku_parser.rb |