Class: PseudoHiki::MarkDownFormat::VerbatimNodeFormatter

Inherits:
PseudoHiki::MarkDownFormat show all
Defined in:
lib/pseudohiki/markdownformat.rb

Constant Summary

Constants inherited from PseudoHiki::MarkDownFormat

Formatters, GFM_STRIPPED_CHARS, GFM_STRIPPED_CHARS_PAT

Instance Method Summary collapse

Methods inherited from PseudoHiki::MarkDownFormat

#collect_headings, convert_into_gfm_id_format, create, #create_self_element, default_options, #enclose_in, format, #format, #get_plain, #heading_to_gfm_id, #initialize, #list_mark, #prepare_id_conv_table, #push_visited_results, #remove_trailing_newlines_in_html_element, #tap_element_in_visit, #visited_result

Constructor Details

This class inherits a constructor from PseudoHiki::MarkDownFormat

Instance Method Details

#gfm_verbatim(element) ⇒ Object



282
283
284
285
286
287
# File 'lib/pseudohiki/markdownformat.rb', line 282

def gfm_verbatim(element)
  element.tap do |lines|
    lines.unshift "```#{$/}"
    lines.push "```#{$/ * 2}"
  end
end

#md_verbatim(element) ⇒ Object



289
290
291
# File 'lib/pseudohiki/markdownformat.rb', line 289

def md_verbatim(element)
  element.join.gsub(/^/o, "    ").sub(/    \Z/o, "").concat $/
end

#visit(tree, memo) ⇒ Object



276
277
278
279
280
# File 'lib/pseudohiki/markdownformat.rb', line 276

def visit(tree, memo)
  element = super(tree, memo)
  return gfm_verbatim(element) if @options.gfm_style
  md_verbatim(element)
end