visionmedia-terminal-table 1.1.0 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,4 +1,16 @@
1
1
 
2
+ === 1.2.0 / 2009-08-06
3
+
4
+ * Added colspan support to table
5
+
6
+ === 1.1.0 / 2009-08-06
7
+
8
+ * Added colspan support to table
9
+
10
+ === 1.1.0 / 2009-07-13
11
+
12
+ * Added Table#==
13
+
2
14
  === 1.0.5 / 2009-03-14
3
15
 
4
16
  * Allowing nil to be passed to table for headings
@@ -11,4 +23,4 @@
11
23
 
12
24
  === 1.0.0 / 2009-01-13
13
25
 
14
- * Initial release
26
+ * Initial release
@@ -9,98 +9,116 @@ Simple, feature rich ASCII table generator.
9
9
  * Simple
10
10
  * Optional headings
11
11
  * Alignment of columns, headings, or cells
12
+ * Supports column span
12
13
  * Easy modification of table strings (+, -, |)
13
14
 
14
15
  == Examples:
15
16
 
16
- require 'rubygems'
17
- require 'terminal-table/import'
17
+ require 'rubygems'
18
+ require 'terminal-table/import'
18
19
 
19
- puts table(['a', 'b'], [1, 2], [3, 4])
20
+ puts table(['a', 'b'], [1, 2], [3, 4])
20
21
 
21
- t = table ['a', 'b']
22
- t << [1, 2]
23
- t << [3, 4]
24
- puts t
22
+ t = table ['a', 'b']
23
+ t << [1, 2]
24
+ t << [3, 4]
25
+ puts t
25
26
 
26
- user_table = table do |t|
27
- t.headings = 'First Name', 'Last Name', 'Email'
28
- t << ['TJ', 'Holowaychuk', 'tj@vision-media.ca']
29
- t << ['Bob', 'Someone', 'bob@vision-media.ca']
30
- t << ['Joe', 'Whatever', 'joe@vision-media.ca']
31
- end
32
- puts user_table
27
+ user_table = table do |t|
28
+ t.headings = 'First Name', 'Last Name', 'Email'
29
+ t << ['TJ', 'Holowaychuk', 'tj@vision-media.ca']
30
+ t << ['Bob', 'Someone', 'bob@vision-media.ca']
31
+ t << ['Joe', 'Whatever', 'joe@vision-media.ca']
32
+ end
33
+ puts user_table
33
34
 
34
- user_table = table do
35
- self.headings = 'First Name', 'Last Name', 'Email'
36
- add_row ['TJ', 'Holowaychuk', { :value => 'tj@vision-media.ca', :align => :right }]
37
- add_row ['Bob', 'Someone', 'bob@vision-media.ca']
38
- add_row ['Joe', 'Whatever', 'joe@vision-media.ca']
39
- align_column 1, :center
40
- end
41
- puts user_table
35
+ user_table = table do
36
+ self.headings = 'First Name', 'Last Name', 'Email'
37
+ add_row ['TJ', 'Holowaychuk', { :value => 'tj@vision-media.ca', :align => :right }]
38
+ add_row ['Bob', 'Someone', 'bob@vision-media.ca']
39
+ add_row ['Joe', 'Whatever', 'joe@vision-media.ca']
40
+ align_column 1, :center
41
+ end
42
+ puts user_table
43
+
44
+ puts
45
+ user_table = table do
46
+ self.headings = ['First Name', 'Last Name', {:value => 'Phones', :colspan => 2, :alignment => :center}]
47
+ add_row ['Bob', 'Someone', '123', '456']
48
+ add_row ['TJ', 'Holowaychuk', {:value => "No phones", :colspan => 2, :alignment => :center}]
49
+ add_row ['Joe', 'Whatever', '4324', '343242']
50
+ end
51
+ puts user_table
42
52
 
43
- rows = []
44
- rows << ['Lines', 100]
45
- rows << ['Comments', 20]
46
- rows << ['Ruby', 70]
47
- rows << ['JavaScript', 30]
48
- puts table([nil, 'Lines'], *rows)
53
+ rows = []
54
+ rows << ['Lines', 100]
55
+ rows << ['Comments', 20]
56
+ rows << ['Ruby', 70]
57
+ rows << ['JavaScript', 30]
58
+ puts table([nil, 'Lines'], *rows)
49
59
 
50
- rows = []
51
- rows << ['Lines', 100]
52
- rows << ['Comments', 20]
53
- rows << ['Ruby', 70]
54
- rows << ['JavaScript', 30]
55
- puts table(nil, *rows)
60
+ rows = []
61
+ rows << ['Lines', 100]
62
+ rows << ['Comments', 20]
63
+ rows << ['Ruby', 70]
64
+ rows << ['JavaScript', 30]
65
+ puts table(nil, *rows)
56
66
 
57
67
  == Results:
58
68
 
59
- +---+---+
60
- | a | b |
61
- +---+---+
62
- | 1 | 2 |
63
- | 3 | 4 |
64
- +---+---+
69
+ +---+---+
70
+ | a | b |
71
+ +---+---+
72
+ | 1 | 2 |
73
+ | 3 | 4 |
74
+ +---+---+
65
75
 
66
- +---+---+
67
- | a | b |
68
- +---+---+
69
- | 1 | 2 |
70
- | 3 | 4 |
71
- +---+---+
76
+ +---+---+
77
+ | a | b |
78
+ +---+---+
79
+ | 1 | 2 |
80
+ | 3 | 4 |
81
+ +---+---+
72
82
 
73
- +------------+-------------+---------------------+
74
- | First Name | Last Name | Email |
75
- +------------+-------------+---------------------+
76
- | TJ | Holowaychuk | tj@vision-media.ca |
77
- | Bob | Someone | bob@vision-media.ca |
78
- | Joe | Whatever | joe@vision-media.ca |
79
- +------------+-------------+---------------------+
83
+ +------------+-------------+---------------------+
84
+ | First Name | Last Name | Email |
85
+ +------------+-------------+---------------------+
86
+ | TJ | Holowaychuk | tj@vision-media.ca |
87
+ | Bob | Someone | bob@vision-media.ca |
88
+ | Joe | Whatever | joe@vision-media.ca |
89
+ +------------+-------------+---------------------+
80
90
 
81
- +------------+-----------------------------+---------------------+
82
- | First Name | Last Name | Email |
83
- +------------+-----------------------------+---------------------+
84
- | TJ | Holowaychuk | tj@vision-media.ca |
85
- | Bob | Someone | bob@vision-media.ca |
86
- | Joe | Whatever | joe@vision-media.ca |
87
- +------------+-----------------------------+---------------------+
88
-
89
- +------------+-------+
90
- | | Lines |
91
- +------------+-------+
92
- | Lines | 100 |
93
- | Comments | 20 |
94
- | Ruby | 70 |
95
- | JavaScript | 30 |
96
- +------------+-------+
97
-
98
- +------------+-----+
99
- | Lines | 100 |
100
- | Comments | 20 |
101
- | Ruby | 70 |
102
- | JavaScript | 30 |
103
- +------------+-----+
91
+ +------------+-----------------------------+---------------------+
92
+ | First Name | Last Name | Email |
93
+ +------------+-----------------------------+---------------------+
94
+ | TJ | Holowaychuk | tj@vision-media.ca |
95
+ | Bob | Someone | bob@vision-media.ca |
96
+ | Joe | Whatever | joe@vision-media.ca |
97
+ +------------+-----------------------------+---------------------+
98
+
99
+ +------------+-------------+-----------+--------+
100
+ | First Name | Last Name | Phones |
101
+ +------------+-------------+-----------+--------+
102
+ | Bob | Someone | 123 | 456 |
103
+ | TJ | Holowaychuk | No phones |
104
+ | Joe | Whatever | 4324 | 343242 |
105
+ +------------+-------------+-----------+--------+
106
+
107
+ +------------+-------+
108
+ | | Lines |
109
+ +------------+-------+
110
+ | Lines | 100 |
111
+ | Comments | 20 |
112
+ | Ruby | 70 |
113
+ | JavaScript | 30 |
114
+ +------------+-------+
115
+
116
+ +------------+-----+
117
+ | Lines | 100 |
118
+ | Comments | 20 |
119
+ | Ruby | 70 |
120
+ | JavaScript | 30 |
121
+ +------------+-----+
104
122
 
105
123
  == License:
106
124
 
@@ -30,6 +30,15 @@ user_table = table do
30
30
  end
31
31
  puts user_table
32
32
 
33
+ puts
34
+ user_table = table do
35
+ self.headings = ['First Name', 'Last Name', {:value => 'Phones', :colspan => 2, :alignment => :center}]
36
+ add_row ['Bob', 'Someone', '123', '456']
37
+ add_row ['TJ', 'Holowaychuk', {:value => "No phones", :colspan => 2, :alignment => :center}]
38
+ add_row ['Joe', 'Whatever', '4324', '343242']
39
+ end
40
+ puts user_table
41
+
33
42
  rows = []
34
43
  rows << ['Lines', 100]
35
44
  rows << ['Comments', 20]
@@ -3,10 +3,20 @@ module Terminal
3
3
  class Table
4
4
  class Cell
5
5
 
6
- attr_accessor :value, :alignment
6
+ attr_accessor :value, :alignment, :colspan
7
7
 
8
- def initialize width, value = nil, alignment = :left
9
- @width, @alignment, @value = width, alignment, value
8
+ def initialize width, params
9
+ @width = width
10
+ @alignment = :left
11
+ @colspan = 1
12
+
13
+ if params.is_a? Hash
14
+ @value = params[:value]
15
+ @alignment = params[:alignment] unless params[:alignment].nil?
16
+ @colspan = params[:colspan] unless params[:colspan].nil?
17
+ else
18
+ @value = params
19
+ end
10
20
  end
11
21
 
12
22
  def render
@@ -15,9 +25,8 @@ module Terminal
15
25
  alias :to_s :render
16
26
 
17
27
  def length
18
- value.to_s.length + 2
28
+ @value.to_s.length + 2
19
29
  end
20
-
21
30
  end
22
31
  end
23
32
  end
@@ -2,7 +2,7 @@
2
2
  module Terminal
3
3
  class Table
4
4
  class Heading < Cell
5
- def initialize width, value = nil, alignment = :center
5
+ def initialize width, params
6
6
  super
7
7
  end
8
8
  end
@@ -58,14 +58,32 @@ module Terminal
58
58
  def render
59
59
  buffer = seperator << "\n"
60
60
  if has_headings?
61
- buffer << Y + headings.map_with_index do |heading, i|
62
- Heading.new(length_of_column(i), *heading).render
61
+ buffer << Y + headings.map_with_index do |heading, i|
62
+ width = 0
63
+ if heading.is_a?(Hash) and !heading[:colspan].nil?
64
+ i.upto(i + heading[:colspan] - 1) do |col|
65
+ width += length_of_column(col)
66
+ end
67
+ width += (heading[:colspan] - 1) * (Y.length + 2)
68
+ else
69
+ width = length_of_column(i)
70
+ end
71
+ Heading.new( width, heading).render
63
72
  end.join(Y) + Y
64
73
  buffer << "\n#{seperator}\n"
65
74
  end
66
75
  buffer << rows.map do |row|
67
76
  Y + row.map_with_index do |cell, i|
68
- Cell.new(length_of_column(i), *cell).render
77
+ width = 0
78
+ if cell.is_a?(Hash) and !cell[:colspan].nil?
79
+ i.upto(i + cell[:colspan] - 1) do |col|
80
+ width += length_of_column(col)
81
+ end
82
+ width += (cell[:colspan] - 1) * (Y.length + 2)
83
+ else
84
+ width = length_of_column(i)
85
+ end
86
+ Cell.new(width, cell).render
69
87
  end.join(Y) + Y
70
88
  end.join("\n")
71
89
  buffer << "\n#{seperator}\n"
@@ -121,14 +139,19 @@ module Terminal
121
139
  # Return the largest cell found within column +n+.
122
140
 
123
141
  def largest_cell_in_column n
124
- column_with_headings(n).sort_by { |cell| Cell.new(0, *cell).length }.last
142
+ column_with_headings(n).sort_by { |cell| Cell.new(0, cell).length }.last
125
143
  end
126
144
 
127
145
  ##
128
146
  # Return length of column +n+.
129
147
 
130
148
  def length_of_column n
131
- largest_cell_in_column(n).to_s.length
149
+ largest_cell = largest_cell_in_column(n)
150
+ if largest_cell.is_a? Hash
151
+ largest_cell[:value].length# - 2
152
+ else
153
+ largest_cell.to_s.length
154
+ end
132
155
  end
133
156
 
134
157
  ##
@@ -144,7 +167,7 @@ module Terminal
144
167
 
145
168
  def align_column n, alignment
146
169
  column(n).each_with_index do |col, i|
147
- @rows[i][n] = [col, alignment] unless col.is_a? Array
170
+ @rows[i][n] = {:value => col, :alignment => alignment} unless col.is_a? Hash
148
171
  end
149
172
  end
150
173
 
@@ -1,6 +1,6 @@
1
1
 
2
2
  module Terminal
3
3
  class Table
4
- VERSION = '1.1.0'
4
+ VERSION = '1.2.0'
5
5
  end
6
6
  end
@@ -11,7 +11,7 @@ describe Terminal::Table do
11
11
  end
12
12
 
13
13
  it "should override alignment" do
14
- cell = Cell.new 0, 'foo', :center
14
+ cell = Cell.new 0, {:value => 'foo', :alignment => :center}
15
15
  cell.value.should == 'foo'
16
16
  cell.alignment.should == :center
17
17
  end
@@ -5,66 +5,66 @@ module Terminal
5
5
  before :each do
6
6
  @table = Table.new
7
7
  end
8
-
8
+
9
9
  it "should select columns" do
10
10
  @table << ['foo', 'bar']
11
11
  @table << ['big foo', 'big foo bar']
12
12
  @table.column(1).should == ['bar', 'big foo bar']
13
13
  end
14
-
14
+
15
15
  it "should count columns" do
16
16
  @table << [1, 2, 3]
17
17
  @table.number_of_columns.should == 3
18
18
  end
19
-
19
+
20
20
  it "should iterate columns" do
21
21
  @table << [1, 2, 3]
22
22
  @table << [4, 5, 6]
23
23
  @table.columns.should == [[1, 4], [2, 5], [3, 6]]
24
24
  end
25
-
25
+
26
26
  it "should select columns" do
27
27
  @table.headings = ['one', 'two']
28
28
  @table << ['foo', 'bar']
29
29
  @table << ['big foo', 'big foo bar']
30
30
  @table.column(1).should == ['bar', 'big foo bar']
31
31
  end
32
-
32
+
33
33
  it "should select columns when using hashes" do
34
34
  @table.headings = ['one', 'two']
35
35
  @table.rows = [[{ :value => 'a', :align => :left }, 1], ['b', 2], ['c', 3]]
36
36
  @table.column(0).should == [{ :value => 'a', :align => :left }, 'b', 'c']
37
37
  end
38
-
38
+
39
39
  it "should select largest cell in a column" do
40
40
  @table << ['foo', 'bar']
41
41
  @table << ['big foo', 'big foo bar']
42
42
  @table.largest_cell_in_column(1).should == 'big foo bar'
43
43
  end
44
-
44
+
45
45
  it "should find column length" do
46
46
  @table << ['foo', 'bar', 'a']
47
47
  @table << ['big foo', 'big foo bar']
48
48
  @table.length_of_column(1).should == 11
49
49
  end
50
-
50
+
51
51
  it "should find column length with headings" do
52
52
  @table.headings = ['one', 'super long heading']
53
53
  @table << ['foo', 'bar', 'a']
54
54
  @table << ['big foo', 'big foo bar']
55
55
  @table.length_of_column(1).should == 18
56
56
  end
57
-
57
+
58
58
  it "should render seperators" do
59
59
  @table.headings = ['Char', 'Num']
60
60
  @table << ['a', 1]
61
61
  @table.seperator.should == '+------+-----+'
62
62
  end
63
-
63
+
64
64
  it "should bitch and complain when you have no rows" do
65
65
  lambda { @table.render }.should raise_error(Terminal::Table::Error)
66
66
  end
67
-
67
+
68
68
  it "should render properly" do
69
69
  @table.headings = ['Char', 'Num']
70
70
  @table << ['a', 1]
@@ -80,7 +80,7 @@ module Terminal
80
80
  +------+-----+
81
81
  EOF
82
82
  end
83
-
83
+
84
84
  it "should render properly without headings" do
85
85
  @table << ['a', 1]
86
86
  @table << ['b', 2]
@@ -93,7 +93,7 @@ module Terminal
93
93
  +---+---+
94
94
  EOF
95
95
  end
96
-
96
+
97
97
  it "should render properly using block syntax" do
98
98
  table = Terminal::Table.new do |t|
99
99
  t << ['a', 1]
@@ -108,7 +108,7 @@ module Terminal
108
108
  +---+---+
109
109
  EOF
110
110
  end
111
-
111
+
112
112
  it "should render properly using instance_eval block syntax" do
113
113
  table = Terminal::Table.new do
114
114
  add_row ['a', 1]
@@ -123,7 +123,7 @@ module Terminal
123
123
  +---+---+
124
124
  EOF
125
125
  end
126
-
126
+
127
127
  it "should allows a hash of options for creation" do
128
128
  headings = ['Char', 'Num']
129
129
  rows = [['a', 1], ['b', 2], ['c', 3]]
@@ -137,7 +137,7 @@ module Terminal
137
137
  +------+-----+
138
138
  EOF
139
139
  end
140
-
140
+
141
141
  it "should flex for large cells" do
142
142
  @table.headings = ['Just some characters', 'Num']
143
143
  @table.rows = [['a', 1], ['b', 2], ['c', 3]]
@@ -151,10 +151,10 @@ module Terminal
151
151
  +----------------------+-----+
152
152
  EOF
153
153
  end
154
-
154
+
155
155
  it "should allow alignment of headings and cells" do
156
- @table.headings = ['Characters', ['Nums', :right ]]
157
- @table << [['a', :center ], 1]
156
+ @table.headings = ['Characters', {:value => 'Nums', :alignment => :right} ]
157
+ @table << [{:value => 'a', :alignment => :center}, 1]
158
158
  @table << ['b', 222222222222222]
159
159
  @table << ['c', 3]
160
160
  @table.render.should == <<-EOF.deindent
@@ -166,12 +166,12 @@ module Terminal
166
166
  | c | 3 |
167
167
  +------------+-----------------+
168
168
  EOF
169
-
169
+
170
170
  end
171
-
171
+
172
172
  it "should align columns, but allow specifics to remain" do
173
173
  @table.headings = ['Just some characters', 'Num']
174
- @table.rows = [[['a', :left], 1], ['b', 2], ['c', 3]]
174
+ @table.rows = [[{:value => 'a', :alignment => :left}, 1], ['b', 2], ['c', 3]]
175
175
  @table.align_column 0, :center
176
176
  @table.align_column 1, :right
177
177
  @table.render.should == <<-EOF.deindent
@@ -184,7 +184,7 @@ module Terminal
184
184
  +----------------------+-----+
185
185
  EOF
186
186
  end
187
-
187
+
188
188
  describe "#==" do
189
189
  it "should be equal to itself" do
190
190
  t = Table.new
@@ -194,7 +194,7 @@ module Terminal
194
194
  it "should be equal with two empty tables" do
195
195
  table_one = Table.new
196
196
  table_two = Table.new
197
-
197
+
198
198
  table_one.should == table_two
199
199
  table_two.should == table_one
200
200
  end
@@ -204,7 +204,7 @@ module Terminal
204
204
  table_two = Table.new
205
205
 
206
206
  table_one.headings << "a"
207
-
207
+
208
208
  table_one.should_not == table_two
209
209
  table_two.should_not == table_one
210
210
  end
@@ -214,7 +214,7 @@ module Terminal
214
214
  table_two = Table.new
215
215
 
216
216
  table_one.rows << "a"
217
-
217
+
218
218
  table_one.should_not == table_two
219
219
  table_two.should_not == table_one
220
220
  end
@@ -233,5 +233,64 @@ module Terminal
233
233
  table_one.should_not == table_two
234
234
  end
235
235
  end
236
+
237
+ it "should handle colspan inside heading" do
238
+ @table.headings = ['one', { :value => 'two', :alignment => :center, :colspan => 2}]
239
+ @table.rows = [['a', 1, 2], ['b', 3, 4], ['c', 3, 4]]
240
+ @table.render.should == <<-EOF.deindent
241
+ +-----+-----+---+
242
+ | one | two |
243
+ +-----+-----+---+
244
+ | a | 1 | 2 |
245
+ | b | 3 | 4 |
246
+ | c | 3 | 4 |
247
+ +-----+-----+---+
248
+ EOF
249
+ end
250
+
251
+ it "should handle colspan inside cells" do
252
+ @table.headings = ['one', 'two', 'three']
253
+ @table.rows = [['a', 1, 2], ['b', 3, 4], ['c', {:value => "joined", :colspan => 2,:alignment => :center}]]
254
+ @table.render.should == <<-EOF.deindent
255
+ +-----+--------+-------+
256
+ | one | two | three |
257
+ +-----+--------+-------+
258
+ | a | 1 | 2 |
259
+ | b | 3 | 4 |
260
+ | c | joined |
261
+ +-----+--------+-------+
262
+ EOF
263
+ end
264
+
265
+
266
+ it "should handle colspan 1" do
267
+ @table.headings = ['name', { :value => 'values', :colspan => 1}]
268
+ @table.rows = [['a', 1], ['b', 4], ['c', 7]]
269
+ @table.render.should == <<-EOF.deindent
270
+ +------+--------+
271
+ | name | values |
272
+ +------+--------+
273
+ | a | 1 |
274
+ | b | 4 |
275
+ | c | 7 |
276
+ +------+--------+
277
+ EOF
278
+ end
279
+
280
+ it "should handle big colspan" do
281
+ @table.headings = ['name', { :value => 'values', :alignment => :right, :colspan => 3}]
282
+ @table.headings = ['name', { :value => 'values', :colspan => 3}]
283
+ @table.rows = [['a', 1, 2, 3], ['b', 4, 5, 6], ['c', 7, 8, 9]]
284
+
285
+ @table.render.should == <<-EOF.deindent
286
+ +------+--------+---+---+
287
+ | name | values |
288
+ +------+--------+---+---+
289
+ | a | 1 | 2 | 3 |
290
+ | b | 4 | 5 | 6 |
291
+ | c | 7 | 8 | 9 |
292
+ +------+--------+---+---+
293
+ EOF
294
+ end
236
295
  end
237
296
  end
@@ -2,11 +2,11 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = %q{terminal-table}
5
- s.version = "1.1.0"
5
+ s.version = "1.2.0"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
8
8
  s.authors = ["TJ Holowaychuk"]
9
- s.date = %q{2009-07-13}
9
+ s.date = %q{2009-08-06}
10
10
  s.description = %q{Simple,}
11
11
  s.email = %q{tj@vision-media.ca}
12
12
  s.extra_rdoc_files = ["lib/terminal-table/cell.rb", "lib/terminal-table/core_ext.rb", "lib/terminal-table/heading.rb", "lib/terminal-table/import.rb", "lib/terminal-table/table.rb", "lib/terminal-table/table_helper.rb", "lib/terminal-table/version.rb", "lib/terminal-table.rb", "README.rdoc", "tasks/docs.rake", "tasks/gemspec.rake", "tasks/spec.rake"]
@@ -15,7 +15,7 @@ Gem::Specification.new do |s|
15
15
  s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Terminal-table", "--main", "README.rdoc"]
16
16
  s.require_paths = ["lib"]
17
17
  s.rubyforge_project = %q{terminal-table}
18
- s.rubygems_version = %q{1.3.4}
18
+ s.rubygems_version = %q{1.3.5}
19
19
  s.summary = %q{Simple,}
20
20
 
21
21
  if s.respond_to? :specification_version then
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: visionmedia-terminal-table
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - TJ Holowaychuk
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-07-13 00:00:00 -07:00
12
+ date: 2009-08-06 00:00:00 -07:00
13
13
  default_executable:
14
14
  dependencies: []
15
15
 
@@ -60,6 +60,7 @@ files:
60
60
  - Todo.rdoc
61
61
  has_rdoc: false
62
62
  homepage: http://github.com/visionmedia/terminal-table
63
+ licenses:
63
64
  post_install_message:
64
65
  rdoc_options:
65
66
  - --line-numbers
@@ -85,7 +86,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
85
86
  requirements: []
86
87
 
87
88
  rubyforge_project: terminal-table
88
- rubygems_version: 1.2.0
89
+ rubygems_version: 1.3.5
89
90
  signing_key:
90
91
  specification_version: 3
91
92
  summary: Simple,