module MarkdownTranslator

Public Instance Methods

insert_empty_line_before_list!(content) click to toggle source
# File lib/minireq/site/markdown_translator.rb, line 28
def insert_empty_line_before_list!(content)
  items = content.scan /(^([^\*\+\-\d\n\s].+?)$\s([\*\+\-\d].+?)$)/
  items.each do |i|
    regx = Regexp.new("^" + Regexp.escape(i[0]))
    content.gsub!(regx, i[1] + "\n\n" + i[2])
  end
end
repair_code_blocks!(content) click to toggle source
# File lib/minireq/site/markdown_translator.rb, line 10
def repair_code_blocks!(content)
  blocks = content.scan /(```([a-z]*)\n([\s\S]*?)\n```)/m
  blocks.each do |b|
    kramdown_block = "~~~ #{b[1]}\n#{b[2]}\n~~~"
    content.gsub!(b[0], kramdown_block)
  end
end
repair_list_items!(content) click to toggle source
# File lib/minireq/site/markdown_translator.rb, line 18
def repair_list_items!(content)
  items = content.scan /^((((\s\s)+)([\+\-\*]|\d+.))([\s\S]*?))$/
  items.each do |i|
    count_spaces = (i[2].size / 2) * 3
    kramdown_item = " "*count_spaces << i[4] << i[5]
    regx = Regexp.new("^" + Regexp.escape(i[0]))
    content.gsub!(regx, kramdown_item)
  end
end
to_kramdown!(content) click to toggle source
# File lib/minireq/site/markdown_translator.rb, line 4
def to_kramdown!(content)
  insert_empty_line_before_list!(content)
  repair_code_blocks!(content)
  repair_list_items!(content)
end