class Pirka::Highlighter::Middleware::TextLineNum

Public Class Methods

new(highlighter, params = {}) click to toggle source
# File lib/pirka/highlighter.rb, line 77
def initialize(highlighter, params = {})
  @highlighter = highlighter
  @width = params["width"]
end

Public Instance Methods

markup(element, lang) click to toggle source
# 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