class Screengif::StatusPrinter
Public Class Methods
new(stream)
click to toggle source
inspired by stackoverflow.com/a/6679572/9621
# File lib/screengif/util.rb, line 7 def initialize(stream) @previous_size = 0 @stream = stream || $stdout end
Public Instance Methods
done()
click to toggle source
# File lib/screengif/util.rb, line 23 def done() @previous_size = 0 @stream.print "\n" end
printText(text)
click to toggle source
# File lib/screengif/util.rb, line 12 def printText(text) if @previous_size > 0 @stream.print "\033[#{@previous_size}D" @stream.print(" " * @previous_size) @stream.print "\033[#{@previous_size}D" end @stream.print text @stream.flush @previous_size = text.gsub(/\e\[\d+m/,"").size end