texttable 0.5.0 → 0.6.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
  SHA256:
3
- metadata.gz: 57ee5dc87b68a396f5249bec38787a27a6eea7ace090e43b0f85163a70ee9acc
4
- data.tar.gz: 592653203fb2c5878f684f74abf5b834015cf243108877bff68b57e6977ac946
3
+ metadata.gz: e6d414e056753b18aad741029e85f39f38dba232d97a38e03ba10407a835923b
4
+ data.tar.gz: 69c37ea0dc86881c438956035ddad85f5f17dc3f940e7e0e5ba42f072eae6593
5
5
  SHA512:
6
- metadata.gz: 907a88882658b512b6ff097d1ee59bfdd966784dc1baec8d1649c64ba221c4141c90b1ccda468298caae2ded68405d7cb1433380aa0788b21dba1d8e0d3cd81b
7
- data.tar.gz: 4381488c113a707317d6523fccb615c74e91c150697ad018451743792d61659bc55c38553f9e6037cdec1bcf6710075eade9dc7e16efda1d0c37de96457a004b
6
+ metadata.gz: d524d290960e9c9e573599249898ce0dfffbcfffa2b30f4cb77fc11d50cf1889a4c061fdb8b957b8144e9f9578857e47e1046b564e5d729c4218b9b8b1f63352
7
+ data.tar.gz: c0a06bc70df55c76b11bdb9dde04699cd41b395c7ccae4cf50512d957fa0329517eb49af1486aa43ad93935d25551eb01751220621b57db4309513667052b985
@@ -0,0 +1 @@
1
+ 2.5
data/Gemfile ADDED
@@ -0,0 +1,3 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec
@@ -0,0 +1,31 @@
1
+ class TextTable
2
+ attr_accessor :cols, :rows
3
+
4
+ def initialize
5
+ @cols = Hash.new{|h,k| h[k] = h.size}
6
+ @rows = []
7
+ end
8
+
9
+ def add(hash)
10
+ @rows << (vals = [])
11
+ hash.each {|k, v| vals[@cols[k]] = v}
12
+ end
13
+
14
+ def show
15
+ join = " | "
16
+ both = [cols.keys] + rows
17
+ flip = both.transpose
18
+ wide = flip.map {|row| row.map {|col| col.to_s.size }.max }
19
+ pict = wide.map {|len| "%-#{len}.#{len}s" }.join(join)
20
+ pict = [join, pict, join].join.strip
21
+ line = (pict % ([""] * cols.size)).tr("| ", "+-")
22
+ seen = -1
23
+ puts "", line
24
+ both.each do |vals|
25
+ puts pict % vals
26
+ puts line if (seen += 1) == 0
27
+ end
28
+ puts line, "#{seen} rows displayed", ""
29
+ self
30
+ end
31
+ end
@@ -0,0 +1,13 @@
1
+ # encoding: utf-8
2
+
3
+ Gem::Specification.new do |s|
4
+ s.name = "texttable"
5
+ s.version = "0.6.0"
6
+ s.author = "Steve Shreeve"
7
+ s.email = "steve.shreeve@gmail.com"
8
+ s.summary = "An easy way to print rows and columns as simple tables"
9
+ s.description = "This gem will auto-size based on column widths."
10
+ s.homepage = "https://github.com/shreeve/texttable"
11
+ s.license = "MIT"
12
+ s.files = `git ls-files`.split("\n") - %w[.gitignore]
13
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: texttable
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Steve Shreeve
@@ -16,8 +16,12 @@ executables: []
16
16
  extensions: []
17
17
  extra_rdoc_files: []
18
18
  files:
19
+ - ".ruby-version"
20
+ - Gemfile
19
21
  - LICENSE
20
22
  - README.md
23
+ - lib/texttable.rb
24
+ - texttable.gemspec
21
25
  homepage: https://github.com/shreeve/texttable
22
26
  licenses:
23
27
  - MIT