gpr 0.0.6 → 0.1.0
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.
- checksums.yaml +4 -4
- data/gpr.gemspec +1 -3
- data/lib/gpr/cli.rb +2 -5
- data/lib/gpr/version.rb +1 -1
- metadata +5 -41
- data/lib/graph_drawer.rb +0 -16
- data/lib/graph_drawer/data.rb +0 -39
- data/lib/graph_drawer/graph.rb +0 -98
- data/lib/table_builder.rb +0 -23
- data/lib/table_builder/column.rb +0 -18
- data/lib/table_builder/column_validator.rb +0 -9
- data/lib/table_builder/row.rb +0 -13
- data/lib/table_builder/table.rb +0 -83
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 09a37952ff672aa804dd9ed53da451b70f8de187
|
4
|
+
data.tar.gz: 2e78a77ee446ae0790f8919039edc87bc7040a99
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4c90b35c596c6def17b6e917eb7b09ff0beaafdb539ce7b331772132260a0f6d15ff584671ee7ddea5de497ed733a35e36de1d2f9a70f52add6095f09558b685
|
7
|
+
data.tar.gz: 1739611ba31101e707b1c07ba8ced63b8fc8b55ea5d9e39e29e62ad55337b34ad6cf96483358e496ae5c3c20221f7e7f9d3a78a665682d8aa8b48d55127eba26
|
data/gpr.gemspec
CHANGED
@@ -18,12 +18,10 @@ Gem::Specification.new do |spec|
|
|
18
18
|
|
19
19
|
spec.add_dependency 'thor'
|
20
20
|
spec.add_dependency 'rroonga'
|
21
|
-
spec.add_dependency 'curses'
|
22
21
|
spec.add_dependency 'safe_colorize'
|
23
22
|
spec.add_dependency 'ifilter'
|
23
|
+
spec.add_dependency 'utils_drawer'
|
24
24
|
|
25
25
|
spec.add_development_dependency 'bundler', '~> 1.6'
|
26
26
|
spec.add_development_dependency 'rake'
|
27
|
-
spec.add_development_dependency 'pry'
|
28
|
-
spec.add_development_dependency 'awesome_print'
|
29
27
|
end
|
data/lib/gpr/cli.rb
CHANGED
@@ -2,15 +2,12 @@ require 'thor'
|
|
2
2
|
require 'groonga'
|
3
3
|
require 'safe_colorize'
|
4
4
|
require 'ifilter'
|
5
|
-
|
6
|
-
require 'table_builder'
|
7
|
-
require 'graph_drawer'
|
5
|
+
require 'utils_drawer'
|
8
6
|
|
9
7
|
module Gpr
|
10
8
|
class CLI < Thor
|
11
9
|
using SafeColorize
|
12
|
-
include
|
13
|
-
include GraphDrawer
|
10
|
+
include UtilsDrawer
|
14
11
|
|
15
12
|
desc 'get', 'Get a repository'
|
16
13
|
def get(param)
|
data/lib/gpr/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gpr
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 0.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- kaihar4
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-10-
|
11
|
+
date: 2014-10-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|
@@ -39,7 +39,7 @@ dependencies:
|
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
|
-
name:
|
42
|
+
name: safe_colorize
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - ">="
|
@@ -53,7 +53,7 @@ dependencies:
|
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
56
|
+
name: ifilter
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - ">="
|
@@ -67,7 +67,7 @@ dependencies:
|
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '0'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
70
|
+
name: utils_drawer
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
73
|
- - ">="
|
@@ -108,34 +108,6 @@ dependencies:
|
|
108
108
|
- - ">="
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: '0'
|
111
|
-
- !ruby/object:Gem::Dependency
|
112
|
-
name: pry
|
113
|
-
requirement: !ruby/object:Gem::Requirement
|
114
|
-
requirements:
|
115
|
-
- - ">="
|
116
|
-
- !ruby/object:Gem::Version
|
117
|
-
version: '0'
|
118
|
-
type: :development
|
119
|
-
prerelease: false
|
120
|
-
version_requirements: !ruby/object:Gem::Requirement
|
121
|
-
requirements:
|
122
|
-
- - ">="
|
123
|
-
- !ruby/object:Gem::Version
|
124
|
-
version: '0'
|
125
|
-
- !ruby/object:Gem::Dependency
|
126
|
-
name: awesome_print
|
127
|
-
requirement: !ruby/object:Gem::Requirement
|
128
|
-
requirements:
|
129
|
-
- - ">="
|
130
|
-
- !ruby/object:Gem::Version
|
131
|
-
version: '0'
|
132
|
-
type: :development
|
133
|
-
prerelease: false
|
134
|
-
version_requirements: !ruby/object:Gem::Requirement
|
135
|
-
requirements:
|
136
|
-
- - ">="
|
137
|
-
- !ruby/object:Gem::Version
|
138
|
-
version: '0'
|
139
111
|
description: Gitkeeper.
|
140
112
|
email:
|
141
113
|
- kaihar4@gmail.com
|
@@ -156,14 +128,6 @@ files:
|
|
156
128
|
- lib/gpr/cli.rb
|
157
129
|
- lib/gpr/git_helper.rb
|
158
130
|
- lib/gpr/version.rb
|
159
|
-
- lib/graph_drawer.rb
|
160
|
-
- lib/graph_drawer/data.rb
|
161
|
-
- lib/graph_drawer/graph.rb
|
162
|
-
- lib/table_builder.rb
|
163
|
-
- lib/table_builder/column.rb
|
164
|
-
- lib/table_builder/column_validator.rb
|
165
|
-
- lib/table_builder/row.rb
|
166
|
-
- lib/table_builder/table.rb
|
167
131
|
- zsh/gpr.zsh
|
168
132
|
homepage: https://github.com/kaihar4/gpr
|
169
133
|
licenses:
|
data/lib/graph_drawer.rb
DELETED
@@ -1,16 +0,0 @@
|
|
1
|
-
require 'graph_drawer/graph.rb'
|
2
|
-
require 'graph_drawer/data.rb'
|
3
|
-
|
4
|
-
module GraphDrawer
|
5
|
-
def graph
|
6
|
-
@graph = Graph.new
|
7
|
-
yield
|
8
|
-
@graph.datas_init
|
9
|
-
@graph.to_s
|
10
|
-
end
|
11
|
-
|
12
|
-
def data(item, value)
|
13
|
-
@data = Data.new(item, value)
|
14
|
-
@graph.add(@data)
|
15
|
-
end
|
16
|
-
end
|
data/lib/graph_drawer/data.rb
DELETED
@@ -1,39 +0,0 @@
|
|
1
|
-
require 'safe_colorize'
|
2
|
-
|
3
|
-
module GraphDrawer
|
4
|
-
class Data
|
5
|
-
using SafeColorize
|
6
|
-
|
7
|
-
attr_accessor :item
|
8
|
-
attr_accessor :value
|
9
|
-
attr_accessor :level
|
10
|
-
|
11
|
-
def initialize(item, value)
|
12
|
-
@item = item
|
13
|
-
@value = value
|
14
|
-
@level = nil
|
15
|
-
end
|
16
|
-
|
17
|
-
def to_s
|
18
|
-
color =
|
19
|
-
case @level
|
20
|
-
when 1
|
21
|
-
:green
|
22
|
-
when 2
|
23
|
-
:cyan
|
24
|
-
when 3
|
25
|
-
:blue
|
26
|
-
end
|
27
|
-
|
28
|
-
if @value.zero?
|
29
|
-
draw_str = "#{@item}|"
|
30
|
-
else
|
31
|
-
bar = ' ' * (@value - @value.to_s.size)
|
32
|
-
data_label = @value.to_s.color(:black)
|
33
|
-
draw_str = "#{@item}|#{(bar + data_label).bg_color(color)}"
|
34
|
-
end
|
35
|
-
|
36
|
-
draw_str
|
37
|
-
end
|
38
|
-
end
|
39
|
-
end
|
data/lib/graph_drawer/graph.rb
DELETED
@@ -1,98 +0,0 @@
|
|
1
|
-
module GraphDrawer
|
2
|
-
class Graph
|
3
|
-
def initialize
|
4
|
-
@datas = []
|
5
|
-
@max_item_size = 0
|
6
|
-
@max_value_size = 0
|
7
|
-
end
|
8
|
-
|
9
|
-
def add(data)
|
10
|
-
@datas << data
|
11
|
-
@max_item_size = data.item.size if @max_item_size < data.item.size
|
12
|
-
@max_value_size = data.value if @max_value_size < data.value
|
13
|
-
end
|
14
|
-
|
15
|
-
def datas_init
|
16
|
-
@datas.each do |data|
|
17
|
-
# Adjust the data item size
|
18
|
-
data.item = adjust_item_size(data)
|
19
|
-
|
20
|
-
# Set the data level
|
21
|
-
data.level = calc_data_level(data)
|
22
|
-
end
|
23
|
-
end
|
24
|
-
|
25
|
-
def to_s
|
26
|
-
puts separate
|
27
|
-
|
28
|
-
ommit_flag = false
|
29
|
-
omitted = false
|
30
|
-
|
31
|
-
@datas.each.with_index do |data, index|
|
32
|
-
ommit_flag = false if ommit_flag == true && !data.value.zero?
|
33
|
-
|
34
|
-
# First and Last
|
35
|
-
if index.zero? || index == @datas.size - 1
|
36
|
-
puts data.to_s
|
37
|
-
|
38
|
-
# Omission
|
39
|
-
elsif ommit_flag == true && omitted == false && @datas[index + 1].value.zero?
|
40
|
-
puts draw_omission
|
41
|
-
|
42
|
-
omitted = true
|
43
|
-
|
44
|
-
# Omitted already
|
45
|
-
elsif ommit_flag == true && omitted == true && @datas[index + 1].value.zero?
|
46
|
-
next
|
47
|
-
|
48
|
-
else
|
49
|
-
puts data.to_s
|
50
|
-
|
51
|
-
omitted = false
|
52
|
-
end
|
53
|
-
|
54
|
-
ommit_flag = true if ommit_flag == false && data.value.zero?
|
55
|
-
end
|
56
|
-
|
57
|
-
puts separate
|
58
|
-
end
|
59
|
-
|
60
|
-
private
|
61
|
-
|
62
|
-
def adjust_item_size(data)
|
63
|
-
missing_size = @max_item_size - data.item.size
|
64
|
-
|
65
|
-
# Nothing to do
|
66
|
-
return data.item if missing_size.zero?
|
67
|
-
|
68
|
-
if missing_size.even?
|
69
|
-
' ' * (missing_size / 2) + data.item + ' ' * (missing_size / 2)
|
70
|
-
else
|
71
|
-
' ' * (missing_size / 2) + data.item + ' ' * (missing_size / 2 + 1)
|
72
|
-
end
|
73
|
-
end
|
74
|
-
|
75
|
-
def calc_data_level(data)
|
76
|
-
basis = (@max_value_size / 3).round
|
77
|
-
if data.value <= basis * 1
|
78
|
-
1
|
79
|
-
elsif data.value <= basis * 2
|
80
|
-
2
|
81
|
-
else
|
82
|
-
3
|
83
|
-
end
|
84
|
-
end
|
85
|
-
|
86
|
-
def separate
|
87
|
-
'=' * (@max_item_size + 1 + (@max_value_size * 2))
|
88
|
-
end
|
89
|
-
|
90
|
-
def draw_omission
|
91
|
-
if @max_item_size.even?
|
92
|
-
' ' * (@max_item_size / 2) + '|' + ' ' * (@max_item_size / 2 - 1) + '|'
|
93
|
-
else
|
94
|
-
' ' * (@max_item_size / 2) + '|' + ' ' * (@max_item_size / 2) + '|'
|
95
|
-
end
|
96
|
-
end
|
97
|
-
end
|
98
|
-
end
|
data/lib/table_builder.rb
DELETED
@@ -1,23 +0,0 @@
|
|
1
|
-
require 'table_builder/table'
|
2
|
-
require 'table_builder/row'
|
3
|
-
require 'table_builder/column_validator'
|
4
|
-
require 'table_builder/column'
|
5
|
-
|
6
|
-
module TableBuilder
|
7
|
-
def table(min_column_size = 10)
|
8
|
-
@table = Table.new(min_column_size)
|
9
|
-
yield
|
10
|
-
@table.to_s
|
11
|
-
end
|
12
|
-
|
13
|
-
def row
|
14
|
-
@row = Row.new
|
15
|
-
yield
|
16
|
-
@table.add(@row)
|
17
|
-
end
|
18
|
-
|
19
|
-
def column(text, size = nil)
|
20
|
-
@column = Column.new(text, size)
|
21
|
-
@row.add(@column)
|
22
|
-
end
|
23
|
-
end
|
data/lib/table_builder/column.rb
DELETED
@@ -1,18 +0,0 @@
|
|
1
|
-
require 'safe_colorize'
|
2
|
-
|
3
|
-
module TableBuilder
|
4
|
-
class Column
|
5
|
-
using SafeColorize
|
6
|
-
prepend ColumnValidator
|
7
|
-
|
8
|
-
attr_accessor :text
|
9
|
-
|
10
|
-
def initialize(text, size)
|
11
|
-
# Ignore ANSI escape sequences
|
12
|
-
pure_text = text.to_pure
|
13
|
-
|
14
|
-
text += ' ' * (size - pure_text.size) if !size.nil? && size > pure_text.size
|
15
|
-
@text = text
|
16
|
-
end
|
17
|
-
end
|
18
|
-
end
|
data/lib/table_builder/row.rb
DELETED
data/lib/table_builder/table.rb
DELETED
@@ -1,83 +0,0 @@
|
|
1
|
-
require 'safe_colorize'
|
2
|
-
|
3
|
-
module TableBuilder
|
4
|
-
class Table
|
5
|
-
using SafeColorize
|
6
|
-
|
7
|
-
def initialize(min_column_size)
|
8
|
-
@rows = []
|
9
|
-
@header_column_sizes = []
|
10
|
-
@min_column_size = min_column_size
|
11
|
-
end
|
12
|
-
|
13
|
-
def add(row)
|
14
|
-
# Means the header
|
15
|
-
if @rows.size.zero?
|
16
|
-
set_header_column_size(row)
|
17
|
-
|
18
|
-
else
|
19
|
-
if row.columns.size != @header_column_sizes.size
|
20
|
-
fail "Bud number of columns (#{row.columns.size} for #{@header_column_sizes.size})"
|
21
|
-
end
|
22
|
-
end
|
23
|
-
|
24
|
-
@rows << row
|
25
|
-
end
|
26
|
-
|
27
|
-
def to_s
|
28
|
-
puts separate
|
29
|
-
|
30
|
-
@rows.each.with_index do |row, index|
|
31
|
-
puts format_line(row)
|
32
|
-
puts separate if index != @rows.size - 1
|
33
|
-
end
|
34
|
-
|
35
|
-
puts separate
|
36
|
-
end
|
37
|
-
|
38
|
-
private
|
39
|
-
|
40
|
-
def set_header_column_size(row)
|
41
|
-
row.columns.each.with_index do |column, index|
|
42
|
-
# Ignore ANSI escape sequences
|
43
|
-
pure_text = column.text.to_pure
|
44
|
-
|
45
|
-
if pure_text.size > @min_column_size
|
46
|
-
@header_column_sizes[index] = pure_text.size
|
47
|
-
else
|
48
|
-
@header_column_sizes[index] = @min_column_size
|
49
|
-
end
|
50
|
-
end
|
51
|
-
end
|
52
|
-
|
53
|
-
def format_line(row)
|
54
|
-
line = '| '
|
55
|
-
|
56
|
-
row.columns.each.with_index do |column, index|
|
57
|
-
# Ignore ANSI escape sequences
|
58
|
-
pure_text = column.text.to_pure
|
59
|
-
|
60
|
-
if pure_text.size < @header_column_sizes[index]
|
61
|
-
line << column.text + ' ' * (@header_column_sizes[index] - pure_text.size)
|
62
|
-
|
63
|
-
elsif pure_text.size > @header_column_sizes[index]
|
64
|
-
line << column.text[0, @header_column_sizes[index] - 3] + '...'
|
65
|
-
|
66
|
-
else
|
67
|
-
line << column.text
|
68
|
-
end
|
69
|
-
|
70
|
-
line << ' | ' if index != row.columns.size - 1
|
71
|
-
end
|
72
|
-
|
73
|
-
line << ' |'
|
74
|
-
end
|
75
|
-
|
76
|
-
def separate
|
77
|
-
left = middle = right = '+'
|
78
|
-
bar = '-'
|
79
|
-
|
80
|
-
left + @header_column_sizes.map { |size| bar * (size + 2) }.join(middle) + right
|
81
|
-
end
|
82
|
-
end
|
83
|
-
end
|