doro 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d02765588dd4c833d4f9bc66fae716c149dba520
4
- data.tar.gz: 049a0aabbe96cf5f94c546c4b10364b6b4857102
3
+ metadata.gz: 3667c3eb9700f16c394fa7146658d84898eca76d
4
+ data.tar.gz: 3df19758ab2f9269019b72762dba1c49f3d322c3
5
5
  SHA512:
6
- metadata.gz: 0f06fac5f5bd7d38d899591191e178b42974128611b0016ded2ee0b12c0d1a5e2cc6b77e863a504e2911444e34ef24ae2e9cc00cd5d93e7cc5031def0de99c29
7
- data.tar.gz: dd850abc9e3efa1d99d6484fdf67babd3564ff4487a94dd151ef170015d9391c821cd720bda13dfa9e12c97030f327640753b7d02302b0c7a0a24688ecbf76ea
6
+ metadata.gz: 34ce48b740896a1dcab654472651540de65fc406e52c1382e29c0c3f9547e85119565440aeec0085d369e79901eb2d8b01b3fbb82076a71a33ae6752c75cfb5f
7
+ data.tar.gz: d96845e0a919626da1b9c7f74c1c611ac22e6251a8ec4fe2b30f72959d55d3ced45ec93967c7198a9e3d44f1ba72cdb1cede979b64699f7371eccabe8b7d5bd1
@@ -1,11 +1,10 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- doro (0.0.1)
4
+ doro (0.2.0)
5
5
  gli (= 2.13.4)
6
- notifier
7
- ruby-progressbar
8
- terminal-notifier
6
+ notifier (~> 0.5)
7
+ terminal-notifier (~> 1.6)
9
8
 
10
9
  GEM
11
10
  remote: https://rubygems.org/
@@ -47,7 +46,6 @@ GEM
47
46
  diff-lcs (>= 1.2.0, < 2.0)
48
47
  rspec-support (~> 3.4.0)
49
48
  rspec-support (3.4.1)
50
- ruby-progressbar (1.7.5)
51
49
  terminal-notifier (1.6.3)
52
50
  thor (0.19.1)
53
51
 
@@ -55,10 +53,10 @@ PLATFORMS
55
53
  ruby
56
54
 
57
55
  DEPENDENCIES
58
- aruba
56
+ aruba (~> 0.13)
59
57
  doro!
60
- rake
61
- rdoc
58
+ rake (~> 10.5)
59
+ rdoc (~> 4.2)
62
60
 
63
61
  BUNDLED WITH
64
62
  1.11.2
data/README.md CHANGED
@@ -29,10 +29,7 @@ For detailed information.
29
29
  ## Todo
30
30
 
31
31
  - [ ] number flag on list
32
- - [ ] time flag on break
33
- - [ ] long switch on break
34
32
  - [ ] remove dependencies
35
- - [ ] colorize
36
33
 
37
34
  ### Notifications
38
35
 
data/bin/doro CHANGED
@@ -3,7 +3,6 @@ require 'gli'
3
3
  require 'fileutils'
4
4
  require 'csv'
5
5
  require 'date'
6
- require 'ruby-progressbar'
7
6
  require 'notifier'
8
7
 
9
8
  require 'doro'
@@ -50,14 +49,7 @@ command :start do |c|
50
49
  start_time = Time.now
51
50
  seconds = 0
52
51
 
53
- puts ''
54
- bar = ProgressBar.create(
55
- :title => task_name,
56
- :format => '%a [%B] %t',
57
- :progress_mark => '=',
58
- :remainder_mark => ' ',
59
- :total => 1500
60
- )
52
+ ProgressBar.new(task_name, 1500).start
61
53
 
62
54
  Signal.trap("INT") { interrupt = true }
63
55
 
@@ -107,13 +99,7 @@ command :break do |c|
107
99
  minutes = options[:t]
108
100
  options[:long]? minutes = 15 : nil
109
101
 
110
- bar = ProgressBar.create(
111
- :title => 'Break',
112
- :format => '%a %bᗧ%i %t',
113
- :progress_mark => ' ',
114
- :remainder_mark => '・',
115
- :total => minutes * 60
116
- )
102
+ ProgressBar.new('Break', minutes * 60).start
117
103
 
118
104
  Signal.trap("INT") { interrupt = true }
119
105
 
Binary file
@@ -5,7 +5,7 @@ spec = Gem::Specification.new do |s|
5
5
  s.version = Doro::VERSION
6
6
  s.author = 'Marcus Orochena'
7
7
  s.email = 'marcus@orochena.net'
8
- s.homepage = 'http://www.orochena.net'
8
+ s.homepage = 'https://github.com/morochena/doro'
9
9
  s.platform = Gem::Platform::RUBY
10
10
  s.summary = 'A minimalist pomodoro cli application'
11
11
  s.files = `git ls-files`.split("
@@ -18,7 +18,6 @@ spec = Gem::Specification.new do |s|
18
18
  s.add_development_dependency('rdoc', '~> 4.2')
19
19
  s.add_development_dependency('aruba', '~> 0.13')
20
20
 
21
- s.add_dependency('ruby-progressbar', '~> 1.7')
22
21
  s.add_dependency('notifier', '~> 0.5')
23
22
  s.add_dependency('terminal-notifier', '~> 1.6')
24
23
 
@@ -1,5 +1,6 @@
1
1
  require 'doro/version.rb'
2
2
  require 'doro/entries.rb'
3
+ require 'doro/progressbar.rb'
3
4
 
4
5
  # Add requires for other files you add to your project here, so
5
6
  # you just need to require this one file in your bin file
@@ -0,0 +1,75 @@
1
+ require 'io/console'
2
+ require 'time'
3
+
4
+ class ProgressBar
5
+ def initialize(title, max_progress)
6
+ @progress = 0
7
+ @max_progress = max_progress
8
+ @title = title
9
+ @start_time = Time.now
10
+ end
11
+
12
+ def start
13
+ while (@progress <= @max_progress)
14
+ render_progress
15
+ sleep 1
16
+ @progress += 1
17
+ end
18
+ end
19
+
20
+ private
21
+
22
+ def render_progress
23
+ print @title
24
+ print " ["
25
+ print "=" * progress_bar_ticks
26
+ print " " * remaining_bar_ticks rescue 0
27
+ print "] "
28
+ print "\e[32m#{display_time}\e[0m"
29
+ print "\r"
30
+ end
31
+
32
+ # Methods for determing time
33
+
34
+ def display_time
35
+ Time.at((Time.now - @start_time)).utc.strftime("%M:%S")
36
+ end
37
+
38
+ # Methods for determing progress bar length
39
+ def progress_bar_ticks
40
+ (percent * (terminal_length - other_items_length)).to_i
41
+ end
42
+
43
+ def remaining_bar_ticks
44
+ terminal_length - progress_bar_ticks - other_items_length
45
+ end
46
+
47
+ def percent
48
+ (@progress.to_f / @max_progress)
49
+ end
50
+
51
+ def other_items_length
52
+ @title.size + 10
53
+ end
54
+
55
+
56
+ # Methods for determining terminal length
57
+ def terminal_length
58
+ return 80 unless unix?
59
+
60
+ result = dynamic_width
61
+ result < 20? 80 : result
62
+
63
+ rescue
64
+ 80
65
+ end
66
+
67
+ def dynamic_width
68
+ _rows, columns = IO.console.winsize
69
+ columns
70
+ end
71
+
72
+ def unix?
73
+ RUBY_PLATFORM =~ /(aix|darwin|linux|(net|free|open)bsd|cygwin|solaris|irix|hpux)/i
74
+ end
75
+ end
@@ -1,3 +1,3 @@
1
1
  module Doro
2
- VERSION = '0.1.0'
2
+ VERSION = '0.2.0'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: doro
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marcus Orochena
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-02-25 00:00:00.000000000 Z
11
+ date: 2016-02-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -52,20 +52,6 @@ dependencies:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0.13'
55
- - !ruby/object:Gem::Dependency
56
- name: ruby-progressbar
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - "~>"
60
- - !ruby/object:Gem::Version
61
- version: '1.7'
62
- type: :runtime
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - "~>"
67
- - !ruby/object:Gem::Version
68
- version: '1.7'
69
55
  - !ruby/object:Gem::Dependency
70
56
  name: notifier
71
57
  requirement: !ruby/object:Gem::Requirement
@@ -178,6 +164,7 @@ files:
178
164
  - doc/js/search_index.js
179
165
  - doc/js/searcher.js
180
166
  - doc/table_of_contents.html
167
+ - doro-0.1.0.gem
181
168
  - doro.gemspec
182
169
  - doro.rdoc
183
170
  - features/doro.feature
@@ -185,11 +172,12 @@ files:
185
172
  - features/support/env.rb
186
173
  - lib/doro.rb
187
174
  - lib/doro/entries.rb
175
+ - lib/doro/progressbar.rb
188
176
  - lib/doro/version.rb
189
177
  - results.html
190
178
  - test/default_test.rb
191
179
  - test/test_helper.rb
192
- homepage: http://www.orochena.net
180
+ homepage: https://github.com/morochena/doro
193
181
  licenses: []
194
182
  metadata: {}
195
183
  post_install_message: