class Gm::Notepad::BufferWrapper
To provide a means for colorizing the output and defering output
Public Class Methods
for_interactive(buffer:)
click to toggle source
# File lib/gm/notepad/buffer_wrapper.rb, line 9 def self.for_interactive(buffer:) new(buffer: buffer, color: Container[:config].interactive_color, append_new_line_on_close: true) end
for_output(buffer:)
click to toggle source
# File lib/gm/notepad/buffer_wrapper.rb, line 13 def self.for_output(buffer:) new(buffer: buffer, color: Container[:config].output_color, append_new_line_on_close: false) end
new(*args)
click to toggle source
Calls superclass method
# File lib/gm/notepad/buffer_wrapper.rb, line 24 def initialize(*args) super if color buffer.extend(Term::ANSIColor) end end
Public Instance Methods
close!()
click to toggle source
# File lib/gm/notepad/buffer_wrapper.rb, line 39 def close! self.lines.each do |line| puts(line) end buffer.print("\n") if append_new_line_on_close end
puts(text)
click to toggle source
# File lib/gm/notepad/buffer_wrapper.rb, line 31 def puts(text) if color buffer.puts("#{buffer.public_send(color)}#{text}#{buffer.reset}") else buffer.puts("#{text}") end end