Sha256: 044be036f90e846d5d6207417e79d2a3dadb42ae62ddb6591eabf45f3dfc393e
Contents?: true
Size: 1.25 KB
Versions: 2
Compression:
Stored size: 1.25 KB
Contents
class ProgressBar module LengthCalculator def initialize(options) @length_override = ENV['RUBY_PROGRESS_BAR_LENGTH'] || options[:length] super() end private def length @current_length || reset_length end def length_changed? @current_length != calculate_length end def calculate_length @length_override || terminal_width || 80 end def reset_length @current_length = calculate_length end # This code was copied and modified from Rake, available under MIT-LICENSE # Copyright (c) 2003, 2004 Jim Weirich def terminal_width return 80 unless unix? result = dynamic_width (result < 20) ? 80 : result rescue 80 end begin require 'io/console' def dynamic_width rows, columns = IO.console.winsize columns end rescue LoadError def dynamic_width dynamic_width_stty.nonzero? || dynamic_width_tput end def dynamic_width_stty %x{stty size 2>/dev/null}.split[1].to_i end def dynamic_width_tput %x{tput cols 2>/dev/null}.to_i end end def unix? RUBY_PLATFORM =~ /(aix|darwin|linux|(net|free|open)bsd|cygwin|solaris|irix|hpux)/i end end end
Version data entries
2 entries across 2 versions & 2 rubygems
Version | Path |
---|---|
sunrise-cms-0.5.0.rc1 | vendor/bundle/ruby/1.9.1/gems/ruby-progressbar-1.0.2/lib/progress_bar/length_calculator.rb |
ruby-progressbar-1.0.2 | lib/progress_bar/length_calculator.rb |