org_tp 0.0.8 → 0.0.9

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5739280d770002d46e6eaf8ce1926db5b2cce7dc
4
- data.tar.gz: 56097cb749aff8e5661932544774829abc1c328b
3
+ metadata.gz: e57f2468252f682a1338ee3683762c47bc6885c8
4
+ data.tar.gz: faa6355e08d36b09c233cdd9feb9d24fcac2a8c4
5
5
  SHA512:
6
- metadata.gz: a56e75a5c191b9d6a8221999dc9a90c2d891cd8a381c2a8e9f8ef2d2762e7031ab4b93c22e8e1b72d1a3f6f3d736af2c9a6ebc9068465d6e04c96ed916258c6d
7
- data.tar.gz: 9d27789a067b83ca23da8676fd9b283da5757981adb8e35fe4f8c18aa690f2527b7e72fe2edae26247b44f3a31d330cb87da065cad3771ea95792267225a9ed0
6
+ metadata.gz: cf37326c8506fbb181552144cd87ec26eebf62078cf668fcc584a88c1b9aa098c12ef37a462e32a851102ab75d248a6e5858c5449779b6f5e9fe1ccd6617a940
7
+ data.tar.gz: 7992e2f0d622b37f9142a8bc7a4451e1b895b19d9402782d4c55f126a78c84852172ec832930a32dbc3095e48e2cc6756acfc5d030209f9c90085c78745e2f2a
data/README.org CHANGED
@@ -162,7 +162,7 @@ tp [{id: 1, name: 'alice'}, {id: 2, name: 'bob'}], intersection: '|', cover: fal
162
162
  ** Global Options
163
163
 
164
164
  #+BEGIN_SRC ruby
165
- tp OrgTp::Generator.default_options
165
+ tp OrgTp.default_options
166
166
  # >> |-------------------+-------|
167
167
  # >> | header | |
168
168
  # >> | vertical | | |
@@ -178,7 +178,7 @@ tp 1
178
178
  # >> | 1 |
179
179
  # >> |---|
180
180
 
181
- OrgTp::Generator.default_options[:intersection_both] = '+'
181
+ OrgTp.default_options[:intersection_both] = '+'
182
182
 
183
183
  tp 1
184
184
  # >> +---+
@@ -192,8 +192,11 @@ tp 1
192
192
  require 'tapp'
193
193
  require 'org_tp'
194
194
 
195
- 1.tapp(:tp) + 2
196
- # >> |---|
197
- # >> | 1 |
198
- # >> |---|
195
+ "Hello".reverse.tapp.reverse.tapp
196
+ # >> |-------|
197
+ # >> | olleH |
198
+ # >> |-------|
199
+ # >> |-------|
200
+ # >> | Hello |
201
+ # >> |-------|
199
202
  #+END_SRC
@@ -3,9 +3,9 @@ require 'org_tp'
3
3
 
4
4
  tp 1, intersection_both: '+'
5
5
 
6
- tp OrgTp::Generator.default_options
7
- OrgTp::Generator.default_options.update(intersection_both: '+')
8
- tp OrgTp::Generator.default_options
6
+ tp OrgTp.default_options
7
+ OrgTp.default_options.update(intersection_both: '+')
8
+ tp OrgTp.default_options
9
9
 
10
10
  # >> +---+
11
11
  # >> | 1 |
@@ -2,8 +2,10 @@ $LOAD_PATH << '../lib'
2
2
  require 'tapp'
3
3
  require 'org_tp'
4
4
 
5
- 1.tapp(:tp) + 2 # => 3
6
- # !> `*' interpreted as argument prefix
7
- # >> |---|
8
- # >> | 1 |
9
- # >> |---|
5
+ "Hello".reverse.tapp.reverse.tapp
6
+ # >> |-------|
7
+ # >> | olleH |
8
+ # >> |-------|
9
+ # >> |-------|
10
+ # >> | Hello |
11
+ # >> |-------|
@@ -15,7 +15,7 @@ array.to_t(intersection: '|', cover: false) # => "| id | name |\n|----|-------|
15
15
  puts
16
16
 
17
17
  # set global options
18
- OrgTp::Generator.default_options.update(intersection: '|', cover: false)
18
+ OrgTp.default_options.update(intersection: '|', cover: false)
19
19
  tp array
20
20
  # >> | id | name |
21
21
  # >> |----|-------|
@@ -18,10 +18,12 @@ Kernel.class_eval do
18
18
  private
19
19
 
20
20
  def tp(object, **options)
21
- if object.respond_to?(:to_t)
22
- object.to_t(options).display
23
- else
24
- OrgTp.generate([{object.class.name => object}], {header: false}.merge(options)).display
21
+ object.tap do
22
+ if object.respond_to?(:to_t)
23
+ object.to_t(options).display
24
+ else
25
+ OrgTp.generate([{object.class.name => object}], {header: false}.merge(options)).display
26
+ end
25
27
  end
26
28
  end
27
29
  end
@@ -4,13 +4,8 @@ require 'active_support/core_ext/class/attribute' # for class_attribute
4
4
  require 'kconv'
5
5
 
6
6
  module OrgTp
7
- def self.generate(*args, &block)
8
- Generator.new(*args, &block).generate
9
- end
10
-
11
- class Generator
12
- class_attribute :default_options
13
- self.default_options = {
7
+ mattr_accessor :default_options do
8
+ {
14
9
  header: nil,
15
10
  cover: true,
16
11
  vertical: '|',
@@ -20,9 +15,20 @@ module OrgTp
20
15
  padding: ' ',
21
16
  in_code: Kconv::UTF8,
22
17
  }
18
+ end
19
+
20
+ def self.generate(*args, &block)
21
+ Generator.new(*args, &block).generate
22
+ end
23
+
24
+ class Generator
25
+ def self.default_options
26
+ warn "[DEPRECATED] `OrgTp::Generator.default_options' is deprecated. Use `OrgTp.default_options' instead."
27
+ OrgTp.default_options
28
+ end
23
29
 
24
30
  def initialize(rows, **options)
25
- @options = default_options.merge(options)
31
+ @options = OrgTp.default_options.merge(options)
26
32
  @rows = rows
27
33
  @column_names = nil
28
34
  end
@@ -141,17 +147,17 @@ module OrgTp
141
147
 
142
148
  # Array of Hash
143
149
  {
144
- _case: -> e { e.kind_of?(Array) && e.all? { |e| e.kind_of?(Hash) } }, # !> shadowing outer local variable - e
150
+ _case: -> e { e.kind_of?(Array) && e.all? { |e| e.kind_of?(Hash) } },
145
151
  header: true,
146
152
  process: -> e { e },
147
153
  },
148
154
 
149
155
  # Array excluding Hash
150
156
  {
151
- _case: -> e { e.kind_of?(Array) && e.none? { |e| e.kind_of?(Hash) } }, # !> shadowing outer local variable - e
157
+ _case: -> e { e.kind_of?(Array) && e.none? { |e| e.kind_of?(Hash) } },
152
158
  header: false,
153
159
  process: -> e {
154
- e.collect do |e| # !> shadowing outer local variable - e
160
+ e.collect do |e|
155
161
  {'(array_element)' => e}
156
162
  end
157
163
  },
@@ -159,10 +165,10 @@ module OrgTp
159
165
 
160
166
  # Array containing Hash and others
161
167
  {
162
- _case: -> e { e.kind_of?(Array) && e.any? { |e| !e.kind_of?(Hash) } }, # !> shadowing outer local variable - e
168
+ _case: -> e { e.kind_of?(Array) && e.any? { |e| !e.kind_of?(Hash) } },
163
169
  header: true,
164
170
  process: -> e {
165
- e.collect do |e| # !> shadowing outer local variable - e
171
+ e.collect do |e|
166
172
  if e.kind_of? Hash
167
173
  e
168
174
  else
@@ -1,3 +1,3 @@
1
1
  module OrgTp
2
- VERSION = '0.0.8'
2
+ VERSION = '0.0.9'
3
3
  end
data/lib/org_tp.rb CHANGED
@@ -31,4 +31,8 @@ if defined?(Tapp)
31
31
 
32
32
  register :tp, Tp
33
33
  end
34
+
35
+ Tapp.configure do |config|
36
+ config.default_printer = :tp
37
+ end
34
38
  end
@@ -0,0 +1,20 @@
1
+ require_relative 'spec_helper'
2
+
3
+ describe OrgTp do
4
+ require 'tempfile'
5
+ require 'active_support/testing/stream'
6
+ include ActiveSupport::Testing::Stream
7
+
8
+ it do
9
+ capture(:stdout) { tp 1 }.should == <<~EOT
10
+ |---|
11
+ | 1 |
12
+ |---|
13
+ EOT
14
+ end
15
+
16
+ it 'result is like p method' do
17
+ v = Object.new
18
+ quietly { tp v }.should == v
19
+ end
20
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: org_tp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.8
4
+ version: 0.0.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - akicho8
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-09-02 00:00:00.000000000 Z
11
+ date: 2017-09-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -118,6 +118,7 @@ files:
118
118
  - lib/org_tp/version.rb
119
119
  - org_tp.gemspec
120
120
  - spec/active_record_spec.rb
121
+ - spec/core_ext_spec.rb
121
122
  - spec/org_tp_spec.rb
122
123
  - spec/spec_helper.rb
123
124
  homepage: https://github.com/akicho8/org_tp
@@ -150,5 +151,6 @@ specification_version: 4
150
151
  summary: OrgTp shows text table like emacs org-table for easy reading.
151
152
  test_files:
152
153
  - spec/active_record_spec.rb
154
+ - spec/core_ext_spec.rb
153
155
  - spec/org_tp_spec.rb
154
156
  - spec/spec_helper.rb