Class: Pirka::Highlighter::Middleware::TextLineNum

Inherits:
Object
  • Object
show all
Defined in:
lib/pirka/highlighter.rb

Instance Method Summary collapse

Constructor Details

#initialize(highlighter, params = {}) ⇒ TextLineNum

Returns a new instance of TextLineNum.



77
78
79
80
# File 'lib/pirka/highlighter.rb', line 77

def initialize(highlighter, params = {})
  @highlighter = highlighter
  @width = params["width"]
end

Instance Method Details

#markup(element, lang) ⇒ Object



82
83
84
85
86
87
88
89
90
91
92
93
94
# File 'lib/pirka/highlighter.rb', line 82

def markup(element, lang)
  lines = []
  nums = []
  element.content.each_line do |line|
    nums << line[0, @width]
    lines << line[@width..-1]
  end
  element.inner_html = lines.join
  @highlighter.markup element, lang
  element.inner_html = element.inner_html.lines.collect.with_index {|line, index|
    nums[index] << line
  }.join
end