class SyntaxSuggest::DisplayCodeWithLineNumbers
Outputs code with highlighted lines
Whatever is passed to this class will be rendered even if it is “marked invisible” any filtering of output should be done before calling this class.
DisplayCodeWithLineNumbers.new( lines: lines, highlight_lines: [lines[2], lines[3]] ).call # => 1 2 def cat > 3 Dir.chdir > 4 end 5 end 6
Constants
- TERMINAL_END
- TERMINAL_HIGHLIGHT
Public Class Methods
new(lines:, highlight_lines: [], terminal: false)
click to toggle source
# File syntax_suggest/display_code_with_line_numbers.rb, line 25 def initialize(lines:, highlight_lines: [], terminal: false) @lines = Array(lines).sort @terminal = terminal @highlight_line_hash = Array(highlight_lines).each_with_object({}) { |line, h| h[line] = true } @digit_count = @lines.last&.line_number.to_s.length end
Public Instance Methods
call()
click to toggle source
# File syntax_suggest/display_code_with_line_numbers.rb, line 32 def call @lines.map do |line| format_line(line) end.join end