progressbar_zobar 0.9.1.1 → 0.9.2.1

Sign up to get free protection for your applications and to get access to all the features.
data/.travis.yml ADDED
@@ -0,0 +1,8 @@
1
+ rvm:
2
+ - 1.8.7
3
+ - 1.9.2
4
+ - 1.9.3
5
+ - rbx-2.0
6
+ - jruby
7
+ - ruby-head
8
+ - ree
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- progressbar (0.9.1)
4
+ progressbar_zobar (0.9.2.1)
5
5
 
6
6
  GEM
7
7
  remote: http://rubygems.org/
@@ -21,7 +21,7 @@ DEPENDENCIES
21
21
  bluecloth (>= 0.3.5)
22
22
  bundler (>= 1.0.0)
23
23
  minitest
24
- progressbar!
24
+ progressbar_zobar!
25
25
  rake
26
26
  simplecov (>= 0.3.5)
27
27
  yard
data/README.rd CHANGED
@@ -76,6 +76,9 @@ The latest version of Ruby/ProgressBar is available at
76
76
  Use :stat_for_file_transfer instead of :stat to display
77
77
  transfered bytes and transfer rate.
78
78
 
79
+ --- ProgressBar#title=
80
+ Change the progress bar's title.
81
+
79
82
  --- ProgressBar#total=
80
83
  Change the progress bar's maximum value.
81
84
 
data/lib/progressbar.rb CHANGED
@@ -29,13 +29,15 @@ class ProgressBar
29
29
  clear
30
30
  show
31
31
  end
32
+
32
33
  attr_reader :title
33
34
  attr_reader :current
34
35
  attr_reader :total
35
36
  attr_accessor :start_time
36
37
  attr_writer :bar_mark
37
38
 
38
- private
39
+ private
40
+
39
41
  def fmt_bar
40
42
  bar_width = do_percentage * @terminal_width / 100
41
43
  sprintf("|%s%s|",
@@ -120,21 +122,23 @@ class ProgressBar
120
122
  end
121
123
  end
122
124
 
123
- def get_width
124
- # FIXME: I don't know how portable it is.
125
- default_width = 80
126
- begin
127
- tiocgwinsz = 0x5413
128
- data = [0, 0, 0, 0].pack("SSSS")
129
- if @out.ioctl(tiocgwinsz, data) >= 0 then
130
- rows, cols, xpixels, ypixels = data.unpack("SSSS")
131
- if cols >= 0 then cols else default_width end
132
- else
133
- default_width
134
- end
135
- rescue Exception
136
- default_width
125
+ DEFAULT_WIDTH = 80
126
+ def get_term_width
127
+ if ENV['COLUMNS'] =~ /^\d+$/
128
+ ENV['COLUMNS'].to_i
129
+ elsif (RUBY_PLATFORM =~ /java/ || (!STDIN.tty? && ENV['TERM'])) && shell_command_exists?('tput')
130
+ `tput cols`.to_i
131
+ elsif STDIN.tty? && shell_command_exists?('stty')
132
+ `stty size`.scan(/\d+/).map { |s| s.to_i }[1]
133
+ else
134
+ DEFAULT_WIDTH
137
135
  end
136
+ rescue
137
+ DEFAULT_WIDTH
138
+ end
139
+
140
+ def shell_command_exists?(command)
141
+ ENV['PATH'].split(File::PATH_SEPARATOR).any?{|d| File.exists? File.join(d, command) }
138
142
  end
139
143
 
140
144
  def show
@@ -144,7 +148,7 @@ class ProgressBar
144
148
  }
145
149
  line = sprintf(@format, *arguments)
146
150
 
147
- width = get_width
151
+ width = get_term_width
148
152
  if line.length == width - 1
149
153
  @out.print(line + eol)
150
154
  @out.flush
@@ -177,10 +181,11 @@ class ProgressBar
177
181
  end
178
182
  end
179
183
 
180
- public
184
+ public
185
+
181
186
  def clear
182
187
  @out.print "\r"
183
- @out.print(" " * (get_width - 1))
188
+ @out.print(" " * (get_term_width - 1))
184
189
  @out.print "\r"
185
190
  end
186
191
 
@@ -228,8 +233,10 @@ class ProgressBar
228
233
  end
229
234
 
230
235
  def title= (value)
231
- @title = value
232
- show
236
+ unless @title == value
237
+ @title = value
238
+ show
239
+ end
233
240
  end
234
241
 
235
242
  def total= (value)
@@ -242,6 +249,7 @@ class ProgressBar
242
249
  def inspect
243
250
  "#<ProgressBar:#{@current}/#{@total}>"
244
251
  end
252
+
245
253
  end
246
254
 
247
255
  class ReversedProgressBar < ProgressBar
data/progressbar.gemspec CHANGED
@@ -2,13 +2,13 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = "progressbar_zobar"
5
- s.version = "0.9.1.1"
5
+ s.version = "0.9.2.1"
6
6
  s.platform = Gem::Platform::RUBY
7
7
  s.authors = ["Satoru Takabayashi", "Jose Peleteiro", 'David P Kleinschmidt']
8
8
  s.email = ["satoru@0xcc.net", "jose@peleteiro.net", 'david@kleinschmidt.name']
9
9
  s.homepage = "http://github.com/zobar/progressbar"
10
- s.summary = "Ruby/ProgressBar is a text progress bar library for Ruby."
11
- s.description = "Ruby/ProgressBar is a text progress bar library for Ruby. It can indicate progress with percentage, a progress bar, and estimated remaining time."
10
+ s.summary = 'Text progress bar library for Ruby, forked from progressbar.'
11
+ s.description = "Fork of progressbar that allows changing the progress bar's title and total while still in progress."
12
12
 
13
13
  s.required_rubygems_version = ">= 1.3.6"
14
14
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: progressbar_zobar
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.1.1
4
+ version: 0.9.2.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -11,11 +11,11 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2011-11-16 00:00:00.000000000Z
14
+ date: 2011-11-28 00:00:00.000000000Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: bundler
18
- requirement: &2153368040 !ruby/object:Gem::Requirement
18
+ requirement: &2153885500 !ruby/object:Gem::Requirement
19
19
  none: false
20
20
  requirements:
21
21
  - - ! '>='
@@ -23,10 +23,10 @@ dependencies:
23
23
  version: 1.0.0
24
24
  type: :development
25
25
  prerelease: false
26
- version_requirements: *2153368040
26
+ version_requirements: *2153885500
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: minitest
29
- requirement: &2153367580 !ruby/object:Gem::Requirement
29
+ requirement: &2153885040 !ruby/object:Gem::Requirement
30
30
  none: false
31
31
  requirements:
32
32
  - - ! '>='
@@ -34,10 +34,10 @@ dependencies:
34
34
  version: '0'
35
35
  type: :development
36
36
  prerelease: false
37
- version_requirements: *2153367580
37
+ version_requirements: *2153885040
38
38
  - !ruby/object:Gem::Dependency
39
39
  name: yard
40
- requirement: &2153367120 !ruby/object:Gem::Requirement
40
+ requirement: &2153884580 !ruby/object:Gem::Requirement
41
41
  none: false
42
42
  requirements:
43
43
  - - ! '>='
@@ -45,10 +45,10 @@ dependencies:
45
45
  version: '0'
46
46
  type: :development
47
47
  prerelease: false
48
- version_requirements: *2153367120
48
+ version_requirements: *2153884580
49
49
  - !ruby/object:Gem::Dependency
50
50
  name: rake
51
- requirement: &2153366660 !ruby/object:Gem::Requirement
51
+ requirement: &2153884120 !ruby/object:Gem::Requirement
52
52
  none: false
53
53
  requirements:
54
54
  - - ! '>='
@@ -56,10 +56,10 @@ dependencies:
56
56
  version: '0'
57
57
  type: :development
58
58
  prerelease: false
59
- version_requirements: *2153366660
59
+ version_requirements: *2153884120
60
60
  - !ruby/object:Gem::Dependency
61
61
  name: simplecov
62
- requirement: &2153366200 !ruby/object:Gem::Requirement
62
+ requirement: &2153883660 !ruby/object:Gem::Requirement
63
63
  none: false
64
64
  requirements:
65
65
  - - ! '>='
@@ -67,10 +67,10 @@ dependencies:
67
67
  version: 0.3.5
68
68
  type: :development
69
69
  prerelease: false
70
- version_requirements: *2153366200
70
+ version_requirements: *2153883660
71
71
  - !ruby/object:Gem::Dependency
72
72
  name: bluecloth
73
- requirement: &2153365740 !ruby/object:Gem::Requirement
73
+ requirement: &2153883200 !ruby/object:Gem::Requirement
74
74
  none: false
75
75
  requirements:
76
76
  - - ! '>='
@@ -78,9 +78,9 @@ dependencies:
78
78
  version: 0.3.5
79
79
  type: :development
80
80
  prerelease: false
81
- version_requirements: *2153365740
82
- description: Ruby/ProgressBar is a text progress bar library for Ruby. It can indicate
83
- progress with percentage, a progress bar, and estimated remaining time.
81
+ version_requirements: *2153883200
82
+ description: Fork of progressbar that allows changing the progress bar's title and
83
+ total while still in progress.
84
84
  email:
85
85
  - satoru@0xcc.net
86
86
  - jose@peleteiro.net
@@ -91,13 +91,13 @@ extra_rdoc_files: []
91
91
  files:
92
92
  - .gitignore
93
93
  - .rvmrc
94
+ - .travis.yml
94
95
  - ChangeLog
95
96
  - Gemfile
96
97
  - Gemfile.lock
97
98
  - LICENSE
98
99
  - README.rd
99
100
  - Rakefile
100
- - VERSION
101
101
  - lib/progressbar.rb
102
102
  - progressbar.gemspec
103
103
  - test/test.rb
@@ -125,5 +125,5 @@ rubyforge_project:
125
125
  rubygems_version: 1.8.10
126
126
  signing_key:
127
127
  specification_version: 3
128
- summary: Ruby/ProgressBar is a text progress bar library for Ruby.
128
+ summary: Text progress bar library for Ruby, forked from progressbar.
129
129
  test_files: []
data/VERSION DELETED
@@ -1 +0,0 @@
1
- 0.9.0