vete 0.6.5 → 0.6.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/vete.rb +15 -10
  3. metadata +3 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e3b218ba1e2c6d9d7c66167c0f1e15b07a0dafeacfeacb2810f16636b50f4e42
4
- data.tar.gz: 0a62e8259399064a0f20d1679afccdaf935f0e518caa01ad102b543929a926e4
3
+ metadata.gz: 7e4fc5b306a83552b0d01f0d66ed585ac21327f6d0770778329ee8f5f6a2d45b
4
+ data.tar.gz: d15f798085770e94721d3c388155292c1f18dff1cb5f588aa0ad5a952d94794a
5
5
  SHA512:
6
- metadata.gz: 4e0ff4061b2e7e930bf9dd7195b957874368cd17b07bd7a2b650d9af5c4a3e087a1963d905186445bbf23ddf02d23f0f45815e152026046bdfbc9f443e5d67cf
7
- data.tar.gz: e6b58f1834bc6039c442f85356511a5d4769d080246ec6479ece58e8b39b89cbce9e5491b4f93bf25dc3b77e6391b50b4e329c1fd05aded977b36bdaed7e0b65
6
+ metadata.gz: cc13e483ac0301df8c5a7ceac34577fd965a6645474c3d117f4674072d67bdc34ace32d372ae7fa6acf18f901bafc6ebb3c2242d13b474a2b8284f6fb0dbe670
7
+ data.tar.gz: fa3cecc1dd5af2ec412a3796b48df87473b5d4c8bf40401297caa4c62606be394bbc74b53405713dccdec8373dd626854177121f422d41f6155612f3d0a4b621
data/lib/vete.rb CHANGED
@@ -19,7 +19,7 @@ trap("INT" ) { print clear + go; abort "\n" }
19
19
  trap("WINCH") { print clear or draw if @pid == Process.pid }
20
20
 
21
21
  OptionParser.new.instance_eval do
22
- @version = "0.6.5"
22
+ @version = "0.6.6"
23
23
  @banner = "usage: #{program_name} [options]"
24
24
 
25
25
  on "-b", "--bar <width>" , "Progress bar width, in characters", Integer
@@ -53,7 +53,6 @@ end
53
53
  # define job directories
54
54
  @vete = File.expand_path(".vete")
55
55
  @todo = File.join(@vete, "todo")
56
- @live = File.join(@vete, "live")
57
56
  @done = File.join(@vete, "done")
58
57
  @died = File.join(@vete, "died")
59
58
 
@@ -73,13 +72,13 @@ end
73
72
 
74
73
  def vete_init
75
74
  nuke
76
- list = [@todo, @live, @done, @died]
75
+ list = [@todo, @done, @died]
77
76
  list.each {|path| FileUtils.mkdir_p(path) }
78
77
  end
79
78
 
80
79
  def vete_retry
81
80
  list = Dir.glob(File.join(@died, "*")).sort.each {|path| FileUtils.touch(path) }
82
- move(list, @todo)
81
+ list.empty? ? false : !!move(list, @todo)
83
82
  end
84
83
 
85
84
  def vete_todo(path, data=nil)
@@ -96,13 +95,19 @@ def cursor(on) ; print on ? "\e[?25h": "\e[?25l"; end
96
95
  def go(r=1,c=1) ; "\e[#{r};#{c}H" ; end
97
96
  def go!(...) ; print go(...) ; end
98
97
 
99
- def fg(rgb=nil); rgb ? "\e[38;2;#{hx(rgb)}m" : "\e[39m"; end
100
- def bg(rgb=nil); rgb ? "\e[48;2;#{hx(rgb)}m" : "\e[49m"; end
101
- def hx(str=nil); str =~ /\A#?(?:(\h\h)(\h\h)(\h\h)|(\h)(\h)(\h))\z/ or return
102
- r, g, b = $1 ? [$1, $2, $3] : [$4*2, $5*2, $6*2]
103
- [r.hex, g.hex, b.hex] * ";"
98
+ @hex={}
99
+
100
+ def hex(str=nil)
101
+ @hex[str] ||= begin
102
+ str =~ /\A#?(?:(\h\h)(\h\h)(\h\h)|(\h)(\h)(\h))\z/ or return
103
+ r, g, b = $1 ? [$1, $2, $3] : [$4*2, $5*2, $6*2]
104
+ [r.hex, g.hex, b.hex] * ";"
105
+ end
104
106
  end
105
107
 
108
+ def fg(rgb=nil); rgb ? "\e[38;2;#{hex(rgb)}m" : "\e[39m"; end
109
+ def bg(rgb=nil); rgb ? "\e[48;2;#{hex(rgb)}m" : "\e[49m"; end
110
+
106
111
  def draw(live=0, done=0, died=0, jobs=0, info=nil)
107
112
 
108
113
  # outer box
@@ -122,7 +127,7 @@ def draw(live=0, done=0, died=0, jobs=0, info=nil)
122
127
  info.each do |slot, this|
123
128
  tpct = this.to_f / most
124
129
  cols = ppct * tpct * @wide
125
- print go(slot + 1, @len + 5) + bg("5383ec") + @char * cols
130
+ print go(slot + 1, @len + 5) + bg("5383ec") + @char * cols # fg("fff")
126
131
  end
127
132
 
128
133
  # summary bar
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vete
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.5
4
+ version: 0.6.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Steve Shreeve
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-03-22 00:00:00.000000000 Z
11
+ date: 2023-03-29 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Ruby CLI to spawn processes to get work done
14
14
  email: steve.shreeve@gmail.com
@@ -44,7 +44,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
44
44
  - !ruby/object:Gem::Version
45
45
  version: '0'
46
46
  requirements: []
47
- rubygems_version: 3.4.9
47
+ rubygems_version: 3.4.10
48
48
  signing_key:
49
49
  specification_version: 4
50
50
  summary: Ruby CLI to spawn processes to get work done