class SublimeDSL::Tools::Console
Tools
for console interaction.
Attributes
in_progress[R]
set_ruby_verbosity[RW]
verbosity[R]
Public Class Methods
new()
click to toggle source
# File lib/sublime_dsl/tools/console.rb, line 14 def initialize @verbosity = 1 @set_ruby_verbosity = true @in_progress = false end
Public Instance Methods
error(text)
click to toggle source
# File lib/sublime_dsl/tools/console.rb, line 20 def error(text) end_progress $stderr.puts text end
info(text, force = false)
click to toggle source
# File lib/sublime_dsl/tools/console.rb, line 36 def info(text, force = false) return unless $stdout.tty? && (verbosity > 0 || force) end_progress puts text end
progress(index, count, file, force = false)
click to toggle source
# File lib/sublime_dsl/tools/console.rb, line 46 def progress(index, count, file, force = false) return unless $stdout.tty? && (verbosity == 2 || force) @in_progress = true c = count.to_s prefix = "file %#{c.length}d/#{c}: " % index line = "#{prefix}#{file}" padding = width - line.length - 1 if padding < 0 file = file[(-padding) .. -1] file[0..2] = "..." line = "#{prefix}#{file}" else line << ' ' * padding end print "#{line}\r" $stdout.flush end
verbosity=(value)
click to toggle source
# File lib/sublime_dsl/tools/console.rb, line 25 def verbosity=(value) if set_ruby_verbosity case value when 0 then $VERBOSE = nil when 1 then $VERBOSE = false when 2 then $VERBOSE = true end end @verbosity = value end
width()
click to toggle source
# File lib/sublime_dsl/tools/console.rb, line 42 def width (ENV['COLUMNS'] || 80).to_i end
Private Instance Methods
end_progress()
click to toggle source
# File lib/sublime_dsl/tools/console.rb, line 66 def end_progress puts() if in_progress @in_progress = false end