Class: Pirka::Highlighter::Middleware::LineNum
- Inherits:
-
Object
- Object
- Pirka::Highlighter::Middleware::LineNum
- Defined in:
- lib/pirka/highlighter.rb
Instance Method Summary collapse
-
#initialize(highlighter, params = {}) ⇒ LineNum
constructor
A new instance of LineNum.
- #markup(element, lang) ⇒ Object
Constructor Details
#initialize(highlighter, params = {}) ⇒ LineNum
Returns a new instance of LineNum.
54 55 56 57 58 |
# File 'lib/pirka/highlighter.rb', line 54 def initialize(highlighter, params = {}) @highlighter = highlighter @selector = params["selector"] raise _("selector param not specified") unless @selector end |
Instance Method Details
#markup(element, lang) ⇒ Object
60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
# File 'lib/pirka/highlighter.rb', line 60 def markup(element, lang) nums = element.search(@selector) nums.each(&:unlink) @highlighter.markup element, lang return if nums.empty? element.inner_html = element.inner_html.lines.collect.with_index {|line, index| num = nums[index].to_xml if line.length > 1 line[0..0] << num << line[1..-1] else num << line end }.join end |