Class: Kramdown::Parser::JayKramdown

Inherits:
GFM
  • Object
show all
Defined in:
lib/jay_flavored_markdown/markdown_converter.rb

Constant Summary collapse

JAY_LIST_START_UL =
/^(#{OPT_SPACE}[*])([\t| ].*?\n)/
JAY_LIST_START_OL =
/^(#{OPT_SPACE}(?:\d+\.|[+-]))([\t| ].*?\n)/

Instance Method Summary collapse

Constructor Details

#initialize(source, options) ⇒ JayKramdown

Returns a new instance of JayKramdown.



401
402
403
404
405
406
407
# File 'lib/jay_flavored_markdown/markdown_converter.rb', line 401

def initialize(source, options)
  super
  @span_parsers.unshift(:label_tags)
  @span_parsers.unshift(:ref_tags)
  @span_parsers.unshift(:action_item_tags)
  @span_parsers.unshift(:issue_link_tags)
end

Instance Method Details

#new_block_el(*args) ⇒ Object

Override element type: Original Kramdown parser recognizes ‘+’ and ‘-’ as UL. However, Jay takes them as OL.



418
419
420
421
422
423
424
425
# File 'lib/jay_flavored_markdown/markdown_converter.rb', line 418

def new_block_el(*args)
  if args[0] == :ul && @src.check(JAY_LIST_START_OL)
    args[0] = :ol
    super(*args)
  else
    super(*args)
  end
end

#parseObject



409
410
411
412
413
# File 'lib/jay_flavored_markdown/markdown_converter.rb', line 409

def parse
  super
  @root.make_parent_link
  @root = NumberingVisitor.new.traverse(@root)
end