ix-cli 0.0.22 → 0.0.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/bin/ix-json-to-table +75 -2
  3. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e6201f592feb8666f1617290e1475d0c2c2763f3d9e9fffdc6fe22b764c54602
4
- data.tar.gz: 351cd99558c3e85c47599dea7bb938d6c19c07b1a39eedcd079549772ba53b26
3
+ metadata.gz: 94b8eb446a54c5056c89bd165ab2ad95d8a467505411bb04e754fb9e21b9f8fa
4
+ data.tar.gz: a5f13c650d9a71f445004095caa015525890d04fd99a4779ad62192da9d61a85
5
5
  SHA512:
6
- metadata.gz: 59aaabd4241f214b5f95152b69075cf78cb6b6f7c57c3a2a44960cd245d3343f240078c341a11143716e401b33fccdcc4640b708190b3be419410fcf641a6548
7
- data.tar.gz: ea63c41c3955f956af5df4122a1e93d0853ce6e4eff83aa90050addbad2f67497163f0872c45b1805ff20ffe9daf3b9aac23bec2e519f32c1e03b37f6624c4f9
6
+ metadata.gz: 50abf08438d6c0ffe45edff3d63bca4cc67e732d854239c942bff4f8c4bef421e0194a15e79b1164da522693e19a685ed610edf65e72b187d7eae065e135168e
7
+ data.tar.gz: 6f9e372f9346c9e6f64fea0d8db771f770e102b38fc20e565b9055a62b0e470e1d3e5685eabad03fd0610dcc3802db48dc87419c6eb285ad5081c96009dc6eb1
data/bin/ix-json-to-table CHANGED
@@ -8,6 +8,7 @@ options = {}
8
8
  options[:orient] = 'top'
9
9
  options[:transpose] = false
10
10
  options[:adjust] = false
11
+ options[:skin] = 'round'
11
12
 
12
13
  OptionParser.new do |opts|
13
14
 
@@ -29,6 +30,14 @@ OptionParser.new do |opts|
29
30
  options[:adjust] = value
30
31
  end
31
32
 
33
+ opts.on('-i', '--skin [NAME]', 'Change the skin, can be: [round, square, none, ascii, double].') do |value|
34
+ options[:skin] = value
35
+ end
36
+
37
+ opts.on('-c', '--count', 'Count, weather if you want a total count of items to be added at the end.') do |value|
38
+ options[:count] = value
39
+ end
40
+
32
41
  end.parse!
33
42
 
34
43
  required_options = [:orient]
@@ -49,7 +58,9 @@ def print_table(data, options)
49
58
  end
50
59
  end
51
60
 
52
- config = {
61
+ skin = {}
62
+
63
+ skin['round'] = {
53
64
  :top_left => '╭',
54
65
  :top_right => '╮',
55
66
  :bottom_left => '╰',
@@ -63,6 +74,64 @@ def print_table(data, options)
63
74
  :right => '┤'
64
75
  }
65
76
 
77
+ skin['none'] = {
78
+ :top_left => ' ',
79
+ :top_right => ' ',
80
+ :bottom_left => ' ',
81
+ :bottom_right => ' ',
82
+ :vertical => ' ',
83
+ :horizontal => ' ',
84
+ :cross => ' ',
85
+ :top => ' ',
86
+ :bottom => ' ',
87
+ :left => ' ',
88
+ :right => ' '
89
+ }
90
+
91
+ skin['ascii'] = {
92
+ :top_left => '+',
93
+ :top_right => '+',
94
+ :bottom_left => '+',
95
+ :bottom_right => '+',
96
+ :vertical => '|',
97
+ :horizontal => '-',
98
+ :cross => '+',
99
+ :top => '+',
100
+ :bottom => '+',
101
+ :left => '+',
102
+ :right => '+'
103
+ }
104
+
105
+ skin['square'] = {
106
+ :top_left => '┌',
107
+ :top_right => '┐',
108
+ :bottom_left => '└',
109
+ :bottom_right => '┘',
110
+ :vertical => '│',
111
+ :horizontal => '─',
112
+ :cross => '┼',
113
+ :top => '┬',
114
+ :bottom => '┴',
115
+ :left => '├',
116
+ :right => '┤'
117
+ }
118
+
119
+ skin['double'] = {
120
+ :top_left => '╔',
121
+ :top_right => '╗',
122
+ :bottom_left => '╚',
123
+ :bottom_right => '╝',
124
+ :vertical => '║',
125
+ :horizontal => '═',
126
+ :cross => '╬',
127
+ :top => '╦',
128
+ :bottom => '╩',
129
+ :left => '╠',
130
+ :right => '╣'
131
+ }
132
+
133
+ config = skin[options[:skin]]
134
+
66
135
  cm = columns.keys.sort.map do |key|
67
136
  s = ''
68
137
  value = columns[key]
@@ -101,9 +170,13 @@ def print_table(data, options)
101
170
  puts middle_ruler
102
171
  puts headers
103
172
  end
173
+
104
174
  puts bottom_ruler
105
175
 
106
- puts "Total: #{data.size} rows"
176
+ if options[:count]
177
+ puts "Total: #{data.size} rows"
178
+ end
179
+
107
180
  end
108
181
 
109
182
  def transpose(hash)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ix-cli
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.22
4
+ version: 0.0.24
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kazuyoshi Tlacaelel