module DeepCover::Tools::NumberLines
Public Instance Methods
number_lines(lines, lineno: 1, bad_linenos: [])
click to toggle source
# File lib/deep_cover/tools/number_lines.rb, line 5 def number_lines(lines, lineno: 1, bad_linenos: []) max_lineno = lineno + lines.size - 1 nb_lineno_digits = max_lineno.to_s.size lines.map.with_index do |line, i| cur_lineno = lineno + i cur_lineno_s = cur_lineno.to_s.rjust(nb_lineno_digits) if bad_linenos.include?(cur_lineno) cur_lineno_s = "*#{cur_lineno_s}" unless bad_linenos.empty? prefix = Term::ANSIColor.red("#{cur_lineno_s} | ") else cur_lineno_s = " #{cur_lineno_s}" unless bad_linenos.empty? prefix = Term::ANSIColor.white("#{cur_lineno_s} | ") end "#{prefix}#{line}" end end