spirit_hands 2.0.8-java

Sign up to get free protection for your applications and to get access to all the features.
Files changed (41) hide show
  1. checksums.yaml +7 -0
  2. checksums.yaml.gz.sig +0 -0
  3. data/.gitignore +17 -0
  4. data/.pryrc +1 -0
  5. data/.ruby-gemset +1 -0
  6. data/CHANGELOG.md +147 -0
  7. data/CONTRIBUTING.md +18 -0
  8. data/CONTRIBUTORS.md +10 -0
  9. data/Gemfile +3 -0
  10. data/LICENSE.md +22 -0
  11. data/README.md +138 -0
  12. data/Rakefile +127 -0
  13. data/gem-public_cert.pem +32 -0
  14. data/lib/spirit_hands/hirb/fixes/enabled.rb +36 -0
  15. data/lib/spirit_hands/hirb/fixes/pager.rb +144 -0
  16. data/lib/spirit_hands/hirb/fixes/util.rb +19 -0
  17. data/lib/spirit_hands/hirb/fixes/view.rb +10 -0
  18. data/lib/spirit_hands/hirb/fixes.rb +5 -0
  19. data/lib/spirit_hands/hirb.rb +2 -0
  20. data/lib/spirit_hands/mattr_accessor_with_default.rb +44 -0
  21. data/lib/spirit_hands/melody.rb +24 -0
  22. data/lib/spirit_hands/options/color.rb +10 -0
  23. data/lib/spirit_hands/options/hirb.rb +34 -0
  24. data/lib/spirit_hands/options/less/colorize.rb +41 -0
  25. data/lib/spirit_hands/options/less/show_raw_unicode.rb +36 -0
  26. data/lib/spirit_hands/options/less.rb +2 -0
  27. data/lib/spirit_hands/options.rb +59 -0
  28. data/lib/spirit_hands/print.rb +75 -0
  29. data/lib/spirit_hands/prompt/base/render.rb +231 -0
  30. data/lib/spirit_hands/prompt/base.rb +24 -0
  31. data/lib/spirit_hands/prompt/main.rb +18 -0
  32. data/lib/spirit_hands/prompt/multiline.rb +17 -0
  33. data/lib/spirit_hands/prompt.rb +12 -0
  34. data/lib/spirit_hands/railtie.rb +7 -0
  35. data/lib/spirit_hands/terminal.rb +16 -0
  36. data/lib/spirit_hands/version.rb +3 -0
  37. data/lib/spirit_hands.rb +21 -0
  38. data/spirit_hands.gemspec +42 -0
  39. data.tar.gz.sig +0 -0
  40. metadata +239 -0
  41. metadata.gz.sig +0 -0
@@ -0,0 +1,231 @@
1
+ module SpiritHands
2
+ module Prompt
3
+ # <....>
4
+ # <..../>
5
+ # </....>
6
+ #
7
+ class Render
8
+ # <tag> ... </tag>, tag -> inner part of escape codes
9
+ MATCHED_TAG_CODES = {
10
+ 'b' => 1,
11
+ 'bold' => 1,
12
+ 'bright' => 1,
13
+ 'strong' => 1,
14
+
15
+ 'dark' => 2,
16
+ 'faint' => 2,
17
+
18
+ 'i' => 3,
19
+ 'italic' => 3,
20
+ 'em' => 3,
21
+
22
+ 'u' => 4,
23
+ 'underline' => 4,
24
+
25
+ 'blink' => 5, # evil
26
+ 'flash' => 5,
27
+
28
+ 'rapid-blink' => 6, # sinister
29
+ 'rapid-flash' => 6,
30
+
31
+ 'reverse' => 7,
32
+ 'negative' => 7,
33
+ 'inverse' => 7,
34
+
35
+ 'concealed' => 8,
36
+
37
+ 'strike' => 9,
38
+ 'strikethrough' => 9,
39
+
40
+ 'black' => 30,
41
+ 'red' => 31,
42
+ 'green' => 32,
43
+ 'yellow' => 33,
44
+ 'blue' => 34,
45
+ 'magenta' => 35,
46
+ 'cyan' => 36,
47
+ 'white' => 37,
48
+
49
+ 'bgblack' => 40,
50
+ 'bgred' => 41,
51
+ 'bggreen' => 42,
52
+ 'bgyellow' => 43,
53
+ 'bgblue' => 44,
54
+ 'bgmagenta' => 45,
55
+ 'bgcyan' => 46,
56
+ 'bgwhite' => 47,
57
+ }
58
+
59
+ # <.../>
60
+ SINGLE_TAGS = {
61
+ # <cmd/>: command number
62
+ 'cmd' => ->(state) { state.pry.input_array.size },
63
+
64
+ # <tgt/>: target string
65
+ 'tgt' => ->(state) {
66
+ unless (str = Pry.view_clip(state.object)) == 'main'
67
+ state.level = 0 if state.level < 0
68
+ "(#{'../' * state.level}#{str})"
69
+ else
70
+ ''
71
+ end
72
+ },
73
+
74
+ # <app/>: state.app (Object) converted to String
75
+ 'app' => ->(state) {
76
+ app = state.app
77
+ if app.class.respond_to?(:parent_name) && \
78
+ app.class.parent_name.respond_to?(:underscore)
79
+ app.class.parent_name.underscore
80
+ elsif app
81
+ app.to_s
82
+ else
83
+ ::SpiritHands.app
84
+ end
85
+ },
86
+
87
+ # <sep/>: SpiritHands.prompt_separator
88
+ 'sep' => ->(_state) {
89
+ ::SpiritHands.prompt_separator
90
+ }
91
+ }
92
+
93
+ # Array<String>
94
+ attr_reader :errors
95
+
96
+ def errors?
97
+ errors.any?
98
+ end
99
+
100
+ # :state SpiritHands::Prompt::State
101
+ # :prompt String
102
+ # :color true or false/nil
103
+ def initialize(state, prompt, color)
104
+ @state = state
105
+ @prompt = prompt
106
+ @color = color
107
+ end
108
+
109
+ def to_s
110
+ @errors = []
111
+ @tag_stack = []
112
+ @result = ''
113
+ @color_applied = false
114
+ @in_tag = false
115
+
116
+ @prompt.each_char do |c|
117
+ if @in_tag
118
+ tag_char(c)
119
+ else
120
+ nontag_char(c)
121
+ end
122
+ end
123
+
124
+ # @tag_stack.any? --> error/s
125
+ @tag_stack.each { |t| errors << "<#{t}>: Missing </#{t}>" }
126
+
127
+ (errors?) ? '' : @result
128
+ end
129
+
130
+ private
131
+
132
+ def tag_char(c)
133
+ case c
134
+ when '/'
135
+ # close: </
136
+ # single <.+/
137
+ @tag_type = (@tag.nil? || @tag.empty?) ? :close : :single
138
+ when '>' # close tag
139
+ @tag.downcase!
140
+ send @tag_type # :start, :close or :single
141
+ @in_tag = false
142
+ else # append to existing tag
143
+ @tag += c
144
+ end
145
+ end
146
+
147
+ def nontag_char(c)
148
+ if @escape
149
+ nontag_escaped_char(c)
150
+ else
151
+ nontag_unescaped_char(c)
152
+ end
153
+ end
154
+
155
+ def nontag_escaped_char(c)
156
+ @escape = false
157
+ @result += (@state.multiline) ? ' ' : c
158
+ end
159
+
160
+ def nontag_unescaped_char(c)
161
+ case c
162
+ when '\\' # escape next char
163
+ @escape = true
164
+ when '<' # start tag
165
+ @in_tag = true
166
+ @tag_type = :start
167
+ @tag = ''
168
+ else # normal char
169
+ @result += (@state.multiline) ? ' ' : c
170
+ end
171
+ end
172
+
173
+ # <...>
174
+ def start
175
+ code = MATCHED_TAG_CODES[@tag]
176
+ if !code
177
+ errors << "Unknown <#{@tag}>"
178
+ return
179
+ end
180
+ @result += esc(code)
181
+ @tag_stack << @tag
182
+ end
183
+
184
+ # </...>
185
+ def close
186
+ code = MATCHED_TAG_CODES[@tag]
187
+ if !code
188
+ errors << "Unknown </#{@tag}>"
189
+ return
190
+ end
191
+ idx = @tag_stack.rindex @tag
192
+ if idx.nil?
193
+ errors << "</#{@tag}>: missing start <#{@tag}>"
194
+ return
195
+ end
196
+ # remove the now closed tag from the stack
197
+ @tag_stack.delete_at idx
198
+ # reset and reapply all codes on the @tag_stack
199
+ @result += reset
200
+ @tag_stack.each { |tag| @result += esc(MATCHED_TAG_CODES[tag]) }
201
+ end
202
+
203
+ # <.../>
204
+ def single
205
+ f = SINGLE_TAGS[@tag]
206
+ if !f
207
+ errors << "Unknown </#{@tag}>"
208
+ return
209
+ end
210
+ result = f.(@state).to_s
211
+
212
+ # blank out all but sep for multiline prompt, vs. main (normal)
213
+ if @state.multiline && @tag != 'sep'
214
+ result = ' ' * result.length
215
+ end
216
+ @result += result
217
+ end
218
+
219
+ def reset
220
+ esc(0)
221
+ end
222
+
223
+ # convert a code to an actual character
224
+ def esc(code)
225
+ return '' if !@color
226
+ @color_applied = true
227
+ "\001\e[#{code}m\002".freeze
228
+ end
229
+ end # Render
230
+ end # Prompt
231
+ end # SpiritHands
@@ -0,0 +1,24 @@
1
+ module SpiritHands
2
+ module Prompt
3
+ autoload :Render, 'spirit_hands/prompt/base/render'
4
+
5
+ class << self
6
+ private
7
+
8
+
9
+ def render(state, prompt, color = true)
10
+ r = Render.new(state, prompt, color)
11
+ res = r.to_s
12
+ STDERR.puts "\n" + (r.errors * "\n") + "\n" if r.errors?
13
+ res
14
+ end
15
+ end # self
16
+
17
+ # :object Object
18
+ # :level Fixnum
19
+ # :pry Pry
20
+ # :app String or Rails::Application
21
+ # :multiline false: normal prompt, true: multiline prompt
22
+ State = Struct.new(:object, :level, :pry, :app, :multiline)
23
+ end # Prompt
24
+ end # SpiritHands
@@ -0,0 +1,18 @@
1
+ require 'spirit_hands/prompt/base'
2
+
3
+ module SpiritHands
4
+ module Prompt
5
+ class << self
6
+ private
7
+
8
+ # Normal, main pry prompt
9
+ def main
10
+ ->(object, level, pry) do
11
+ s = State.new(object, level, pry, ::SpiritHands.app, false)
12
+ color = ::SpiritHands.color && ::SpiritHands.colored_prompt
13
+ render(s, ::SpiritHands.prompt, color)
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,17 @@
1
+ require 'spirit_hands/prompt/base'
2
+
3
+ module SpiritHands
4
+ module Prompt
5
+ class << self
6
+ private
7
+
8
+ # Wait pry prompt in multiline input
9
+ def multiline
10
+ ->(object, level, pry) {
11
+ s = State.new(object, level, pry, ::SpiritHands.app, true)
12
+ render(s, ::SpiritHands.prompt, ::SpiritHands.color && ::SpiritHands.colored_prompt)
13
+ }
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,12 @@
1
+ require 'spirit_hands/prompt/main'
2
+ require 'spirit_hands/prompt/multiline'
3
+
4
+ module SpiritHands
5
+ module Prompt
6
+ class << self
7
+ def install!
8
+ ::Pry.config.prompt = [ main, multiline ].freeze
9
+ end
10
+ end # self
11
+ end # Prompt
12
+ end # SpiritHands
@@ -0,0 +1,7 @@
1
+ class Railtie < Rails::Railtie
2
+ initializer 'spirit_hands.initialize' do |app|
3
+ silence_warnings do
4
+ ::SpiritHands.melody!(app)
5
+ end
6
+ end
7
+ end # Railtie
@@ -0,0 +1,16 @@
1
+ module SpiritHands
2
+ module Terminal
3
+ class << self
4
+ LOCALE_ENV_VARS = %w[LANG LC_ALL LC_TYPE LC_CTYPE].freeze.tap { |x| x.each(&:freeze) }
5
+ ENV_UNICODE_REGEX = /.*utf.*8/i.freeze
6
+ NON_UNICODE_TERMINALS = %w[linux xterm xterm-color GLterm].freeze
7
+
8
+ def unicode?
9
+ return false if defined? RbReadline
10
+ return false if NON_UNICODE_TERMINALS.include? ENV['TERM']
11
+ return true if ::Gem.win_platform?
12
+ LOCALE_ENV_VARS.any? { |v| ENV[v] =~ ENV_UNICODE_REGEX }
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,3 @@
1
+ module SpiritHands
2
+ VERSION = '2.0.8'
3
+ end
@@ -0,0 +1,21 @@
1
+ # Do this to use SpiritHands outside Rails
2
+ #
3
+ # # .pryrc
4
+ # require 'spirit_hands'
5
+ # # ...
6
+ #
7
+ #
8
+ module SpiritHands
9
+ autoload :VERSION, 'spirit_hands/version'
10
+ autoload :Print, 'spirit_hands/print'
11
+ autoload :Prompt, 'spirit_hands/prompt'
12
+ autoload :Terminal, 'spirit_hands/terminal'
13
+ end
14
+
15
+ require 'spirit_hands/options'
16
+ require 'spirit_hands/melody'
17
+ if defined? ::Rails
18
+ require 'spirit_hands/railtie'
19
+ else
20
+ SpiritHands.melody!
21
+ end
@@ -0,0 +1,42 @@
1
+ # -*- encoding: utf-8 -*-
2
+
3
+ $:.unshift File.expand_path('../lib', __FILE__)
4
+ module ::SpiritHands
5
+ autoload :VERSION, 'spirit_hands/version'
6
+ end
7
+
8
+ Gem::Specification.new do |gem|
9
+ gem.name = 'spirit_hands'
10
+ gem.version = SpiritHands::VERSION
11
+ gem.author = 'Barry Allard'
12
+ gem.email = 'barry.allard@gmail.com'
13
+ gem.license = 'MIT'
14
+ gem.homepage = 'https://github.com/steakknife/spirit_hands'
15
+ gem.summary = 'Exercise those fingers. Pry-based enhancements for the default Rails console.'
16
+ gem.description = "Spending hours in the rails console? Spruce it up and show off those hard-working hands! spirit_hands replaces IRB with Pry, improves output through awesome_print, and has some other goodies up its sleeves."
17
+
18
+ gem.executables = `git ls-files -z -- bin/*`.split("\0")
19
+ .select { |f| File.executable?(f) }
20
+ .map{ |f| File.basename(f) }
21
+ gem.files = `git ls-files -z`.split("\0")
22
+ gem.test_files = `git ls-files -z -- {test,spec,features}/*`.split("\0")
23
+
24
+ # Dependencies
25
+ gem.required_ruby_version = '>= 2.0'
26
+ gem.add_runtime_dependency 'pry', '~> 0.10'
27
+ gem.add_runtime_dependency 'pry-rails', '~> 0.3'
28
+ gem.add_runtime_dependency 'pry-doc', '~> 0.8'
29
+ gem.add_runtime_dependency 'pry-remote', '~> 0.1'
30
+ if RUBY_PLATFORM == 'java'
31
+ gem.platform = 'java'
32
+ gem.add_runtime_dependency 'pry-nav', '~> 0.2.4'
33
+ else
34
+ gem.add_runtime_dependency 'pry-git', '~> 0.2'
35
+ gem.add_runtime_dependency 'pry-byebug', '~> 3.2'
36
+ end
37
+ gem.add_runtime_dependency 'hirb', '~> 0.7'
38
+ gem.add_runtime_dependency 'hirb-unicode-steakknife', '~> 0.0'
39
+ gem.add_runtime_dependency 'pry-coolline', '~> 0.2'
40
+ gem.add_runtime_dependency 'awesome_print', '~> 1.6'
41
+ end
42
+ .tap {|gem| pk = File.expand_path(File.join('~/.keys', 'gem-private_key.pem')); gem.signing_key = pk if File.exist? pk; gem.cert_chain = ['gem-public_cert.pem']} # pressed firmly by waxseal
data.tar.gz.sig ADDED
Binary file
metadata ADDED
@@ -0,0 +1,239 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: spirit_hands
3
+ version: !ruby/object:Gem::Version
4
+ version: 2.0.8
5
+ platform: java
6
+ authors:
7
+ - Barry Allard
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain:
11
+ - |
12
+ -----BEGIN CERTIFICATE-----
13
+ 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
42
+ 8m+dgfPonsYSqnDDfLuAmtKhLAA=
43
+ -----END CERTIFICATE-----
44
+ date: 2016-01-10 00:00:00.000000000 Z
45
+ dependencies:
46
+ - !ruby/object:Gem::Dependency
47
+ requirement: !ruby/object:Gem::Requirement
48
+ requirements:
49
+ - - "~>"
50
+ - !ruby/object:Gem::Version
51
+ version: '0.10'
52
+ name: pry
53
+ prerelease: false
54
+ type: :runtime
55
+ version_requirements: !ruby/object:Gem::Requirement
56
+ requirements:
57
+ - - "~>"
58
+ - !ruby/object:Gem::Version
59
+ version: '0.10'
60
+ - !ruby/object:Gem::Dependency
61
+ requirement: !ruby/object:Gem::Requirement
62
+ requirements:
63
+ - - "~>"
64
+ - !ruby/object:Gem::Version
65
+ version: '0.3'
66
+ name: pry-rails
67
+ prerelease: false
68
+ type: :runtime
69
+ version_requirements: !ruby/object:Gem::Requirement
70
+ requirements:
71
+ - - "~>"
72
+ - !ruby/object:Gem::Version
73
+ version: '0.3'
74
+ - !ruby/object:Gem::Dependency
75
+ requirement: !ruby/object:Gem::Requirement
76
+ requirements:
77
+ - - "~>"
78
+ - !ruby/object:Gem::Version
79
+ version: '0.8'
80
+ name: pry-doc
81
+ prerelease: false
82
+ type: :runtime
83
+ version_requirements: !ruby/object:Gem::Requirement
84
+ requirements:
85
+ - - "~>"
86
+ - !ruby/object:Gem::Version
87
+ version: '0.8'
88
+ - !ruby/object:Gem::Dependency
89
+ requirement: !ruby/object:Gem::Requirement
90
+ requirements:
91
+ - - "~>"
92
+ - !ruby/object:Gem::Version
93
+ version: '0.1'
94
+ name: pry-remote
95
+ prerelease: false
96
+ type: :runtime
97
+ version_requirements: !ruby/object:Gem::Requirement
98
+ requirements:
99
+ - - "~>"
100
+ - !ruby/object:Gem::Version
101
+ version: '0.1'
102
+ - !ruby/object:Gem::Dependency
103
+ requirement: !ruby/object:Gem::Requirement
104
+ requirements:
105
+ - - "~>"
106
+ - !ruby/object:Gem::Version
107
+ version: 0.2.4
108
+ name: pry-nav
109
+ prerelease: false
110
+ type: :runtime
111
+ version_requirements: !ruby/object:Gem::Requirement
112
+ requirements:
113
+ - - "~>"
114
+ - !ruby/object:Gem::Version
115
+ version: 0.2.4
116
+ - !ruby/object:Gem::Dependency
117
+ requirement: !ruby/object:Gem::Requirement
118
+ requirements:
119
+ - - "~>"
120
+ - !ruby/object:Gem::Version
121
+ version: '0.7'
122
+ name: hirb
123
+ prerelease: false
124
+ type: :runtime
125
+ version_requirements: !ruby/object:Gem::Requirement
126
+ requirements:
127
+ - - "~>"
128
+ - !ruby/object:Gem::Version
129
+ version: '0.7'
130
+ - !ruby/object:Gem::Dependency
131
+ requirement: !ruby/object:Gem::Requirement
132
+ requirements:
133
+ - - "~>"
134
+ - !ruby/object:Gem::Version
135
+ version: '0.0'
136
+ name: hirb-unicode-steakknife
137
+ prerelease: false
138
+ type: :runtime
139
+ version_requirements: !ruby/object:Gem::Requirement
140
+ requirements:
141
+ - - "~>"
142
+ - !ruby/object:Gem::Version
143
+ version: '0.0'
144
+ - !ruby/object:Gem::Dependency
145
+ requirement: !ruby/object:Gem::Requirement
146
+ requirements:
147
+ - - "~>"
148
+ - !ruby/object:Gem::Version
149
+ version: '0.2'
150
+ name: pry-coolline
151
+ prerelease: false
152
+ type: :runtime
153
+ version_requirements: !ruby/object:Gem::Requirement
154
+ requirements:
155
+ - - "~>"
156
+ - !ruby/object:Gem::Version
157
+ version: '0.2'
158
+ - !ruby/object:Gem::Dependency
159
+ requirement: !ruby/object:Gem::Requirement
160
+ requirements:
161
+ - - "~>"
162
+ - !ruby/object:Gem::Version
163
+ version: '1.6'
164
+ name: awesome_print
165
+ prerelease: false
166
+ type: :runtime
167
+ version_requirements: !ruby/object:Gem::Requirement
168
+ requirements:
169
+ - - "~>"
170
+ - !ruby/object:Gem::Version
171
+ version: '1.6'
172
+ description: Spending hours in the rails console? Spruce it up and show off those hard-working hands! spirit_hands replaces IRB with Pry, improves output through awesome_print, and has some other goodies up its sleeves.
173
+ email: barry.allard@gmail.com
174
+ executables: []
175
+ extensions: []
176
+ extra_rdoc_files: []
177
+ files:
178
+ - ".gitignore"
179
+ - ".pryrc"
180
+ - ".ruby-gemset"
181
+ - CHANGELOG.md
182
+ - CONTRIBUTING.md
183
+ - CONTRIBUTORS.md
184
+ - Gemfile
185
+ - LICENSE.md
186
+ - README.md
187
+ - Rakefile
188
+ - gem-public_cert.pem
189
+ - lib/spirit_hands.rb
190
+ - lib/spirit_hands/hirb.rb
191
+ - lib/spirit_hands/hirb/fixes.rb
192
+ - lib/spirit_hands/hirb/fixes/enabled.rb
193
+ - lib/spirit_hands/hirb/fixes/pager.rb
194
+ - lib/spirit_hands/hirb/fixes/util.rb
195
+ - lib/spirit_hands/hirb/fixes/view.rb
196
+ - lib/spirit_hands/mattr_accessor_with_default.rb
197
+ - lib/spirit_hands/melody.rb
198
+ - lib/spirit_hands/options.rb
199
+ - lib/spirit_hands/options/color.rb
200
+ - lib/spirit_hands/options/hirb.rb
201
+ - lib/spirit_hands/options/less.rb
202
+ - lib/spirit_hands/options/less/colorize.rb
203
+ - lib/spirit_hands/options/less/show_raw_unicode.rb
204
+ - lib/spirit_hands/print.rb
205
+ - lib/spirit_hands/prompt.rb
206
+ - lib/spirit_hands/prompt/base.rb
207
+ - lib/spirit_hands/prompt/base/render.rb
208
+ - lib/spirit_hands/prompt/main.rb
209
+ - lib/spirit_hands/prompt/multiline.rb
210
+ - lib/spirit_hands/railtie.rb
211
+ - lib/spirit_hands/terminal.rb
212
+ - lib/spirit_hands/version.rb
213
+ - spirit_hands.gemspec
214
+ homepage: https://github.com/steakknife/spirit_hands
215
+ licenses:
216
+ - MIT
217
+ metadata: {}
218
+ post_install_message:
219
+ rdoc_options: []
220
+ require_paths:
221
+ - lib
222
+ required_ruby_version: !ruby/object:Gem::Requirement
223
+ requirements:
224
+ - - ">="
225
+ - !ruby/object:Gem::Version
226
+ version: '2.0'
227
+ required_rubygems_version: !ruby/object:Gem::Requirement
228
+ requirements:
229
+ - - ">="
230
+ - !ruby/object:Gem::Version
231
+ version: '0'
232
+ requirements: []
233
+ rubyforge_project:
234
+ rubygems_version: 2.4.8
235
+ signing_key:
236
+ specification_version: 4
237
+ summary: Exercise those fingers. Pry-based enhancements for the default Rails console.
238
+ test_files: []
239
+ has_rdoc:
metadata.gz.sig ADDED
Binary file