pry 0.9.4pre2 → 0.9.4pre3
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +3 -0
- data/Rakefile +1 -1
- data/lib/pry.rb +27 -3
- data/lib/pry/default_commands/input.rb +1 -0
- data/lib/pry/default_commands/introspection.rb +5 -1
- data/lib/pry/default_commands/ls.rb +13 -13
- data/lib/pry/helpers/command_helpers.rb +17 -4
- data/lib/pry/pry_class.rb +10 -13
- data/lib/pry/pry_instance.rb +2 -2
- data/lib/pry/version.rb +1 -1
- data/test/test_completion.rb +0 -1
- data/test/test_pry.rb +6 -6
- metadata +181 -189
data/CHANGELOG
CHANGED
@@ -31,6 +31,9 @@
|
|
31
31
|
* got rid of Pry#null_input? since all that was needed was eval_string.empty?
|
32
32
|
* cd command now supports complex syntax: cd ../@y/y/../z
|
33
33
|
* JRuby is no longer a 2nd class citizen, almost full JRuby support, passing 100% tests
|
34
|
+
* added Pry::NAV_PROMPT (great new navigation prompt, per robgleeson) and Pry::SIMPLE_PRINT for simple (IRB-style) print output (just using inspect)
|
35
|
+
* _pry_ now passed as 3rd parameter to :before_session hook
|
36
|
+
* ls colors now configurable via Pry.config.ls.local_var_color = :bright_red etc
|
34
37
|
|
35
38
|
*/7/2011 version 0.9.3
|
36
39
|
* cat --ex (cats 5 lines above and below line in file where exception was raised)
|
data/Rakefile
CHANGED
@@ -92,7 +92,7 @@ end
|
|
92
92
|
end
|
93
93
|
|
94
94
|
desc "build all platform gems at once"
|
95
|
-
task :gems => [:clean, :rmgems, "ruby:gem", "mswin32:gem", "mingw32:gem"]
|
95
|
+
task :gems => [:clean, :rmgems, "ruby:gem", "mswin32:gem", "mingw32:gem", "jruby:gem"]
|
96
96
|
|
97
97
|
desc "remove all platform gems"
|
98
98
|
task :rmgems => ["ruby:clobber_package"]
|
data/lib/pry.rb
CHANGED
@@ -6,13 +6,13 @@ require 'pry/helpers/base_helpers'
|
|
6
6
|
class Pry
|
7
7
|
# The default hooks - display messages when beginning and ending Pry sessions.
|
8
8
|
DEFAULT_HOOKS = {
|
9
|
-
:before_session => proc do |out, target|
|
9
|
+
:before_session => proc do |out, target, _pry_|
|
10
10
|
# ensure we're actually in a method
|
11
11
|
file = target.eval('__FILE__')
|
12
12
|
|
13
13
|
# /unknown/ for rbx
|
14
14
|
if file !~ /(\(.*\))|<.*>/ && file !~ /__unknown__/ && file != "" && file != "-e"
|
15
|
-
|
15
|
+
_pry_.process_line("whereami 5", "", target)
|
16
16
|
end
|
17
17
|
end
|
18
18
|
}
|
@@ -35,6 +35,16 @@ class Pry
|
|
35
35
|
Helpers::BaseHelpers.stagger_output("=> #{Helpers::BaseHelpers.colorize_code(stringified)}", output)
|
36
36
|
end
|
37
37
|
|
38
|
+
# may be convenient when working with enormous objects and
|
39
|
+
# pretty_print is too slow
|
40
|
+
SIMPLE_PRINT = proc do |output, value|
|
41
|
+
begin
|
42
|
+
output.puts "=> #{value.inspect}"
|
43
|
+
rescue RescuableException
|
44
|
+
output.puts "=> unknown"
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
38
48
|
# Will only show the first line of the backtrace
|
39
49
|
DEFAULT_EXCEPTION_HANDLER = proc do |output, exception|
|
40
50
|
output.puts "#{exception.class}: #{exception.message}"
|
@@ -84,7 +94,21 @@ class Pry
|
|
84
94
|
SHELL_PROMPT = [
|
85
95
|
proc { |target_self, _, _| "pry #{Pry.view_clip(target_self)}:#{Dir.pwd} $ " },
|
86
96
|
proc { |target_self, _, _| "pry #{Pry.view_clip(target_self)}:#{Dir.pwd} * " }
|
87
|
-
|
97
|
+
]
|
98
|
+
|
99
|
+
# A prompt that includes the full object path as well as
|
100
|
+
# input/output (_in_ and _out_) information. Good for navigation.
|
101
|
+
NAV_PROMPT = [
|
102
|
+
proc do |_, level, pry|
|
103
|
+
tree = pry.binding_stack.map { |b| Pry.view_clip(b.eval("self")) }.join " / "
|
104
|
+
"[#{pry.input_array.size}] (pry) #{tree}: #{level}> "
|
105
|
+
end,
|
106
|
+
proc do |_, level, pry|
|
107
|
+
tree = pry.binding_stack.map { |b| Pry.view_clip(b.eval("self")) }.join " / "
|
108
|
+
"[#{pry.input_array.size}] (pry) #{tree}: #{level}* "
|
109
|
+
end,
|
110
|
+
]
|
111
|
+
|
88
112
|
|
89
113
|
# As a REPL, we often want to catch any unexpected exceptions that may have
|
90
114
|
# been raised; however we don't want to go overboard and prevent the user
|
@@ -89,6 +89,7 @@ e.g amend-line puts 'hello again' # no line number modifies immediately preced
|
|
89
89
|
|
90
90
|
_pry_.input = StringIO.new(Array(text_array[range]).join)
|
91
91
|
else
|
92
|
+
next output.puts "Error: no input to play command" if !args.first
|
92
93
|
code = target.eval(args.first)
|
93
94
|
|
94
95
|
range = opts.l? ? one_index_range_or_number(opts[:l]) : (0..-1)
|
@@ -151,7 +151,11 @@ class Pry
|
|
151
151
|
line = eval_string.lines.count + 1
|
152
152
|
should_reload_locally = opts[:n] ? false : true
|
153
153
|
else
|
154
|
-
|
154
|
+
# break up into file:line
|
155
|
+
/(:(\d+))?$/ =~ File.expand_path(args.first)
|
156
|
+
|
157
|
+
# $` is pre-match
|
158
|
+
file_name, line = [$`, $2]
|
155
159
|
line = line ? line.to_i : opts[:l].to_i
|
156
160
|
end
|
157
161
|
|
@@ -22,18 +22,18 @@ class Pry
|
|
22
22
|
|
23
23
|
def ls_color_map
|
24
24
|
{
|
25
|
-
"local variables" =>
|
26
|
-
"instance variables" =>
|
27
|
-
"class variables" =>
|
28
|
-
"global variables" =>
|
29
|
-
"just singleton methods" =>
|
30
|
-
"public methods" =>
|
31
|
-
"private methods" =>
|
32
|
-
"protected methods" =>
|
33
|
-
"public instance methods" =>
|
34
|
-
"private instance methods" =>
|
35
|
-
"protected instance methods" =>
|
36
|
-
"constants" =>
|
25
|
+
"local variables" => Pry.config.ls.local_var_color,
|
26
|
+
"instance variables" => Pry.config.ls.instance_var_color,
|
27
|
+
"class variables" => Pry.config.ls.class_var_color,
|
28
|
+
"global variables" => Pry.config.ls.global_var_color,
|
29
|
+
"just singleton methods" => Pry.config.ls.method_color,
|
30
|
+
"public methods" => Pry.config.ls.method_color,
|
31
|
+
"private methods" => Pry.config.ls.method_color,
|
32
|
+
"protected methods" => Pry.config.ls.method_color,
|
33
|
+
"public instance methods" => Pry.config.ls.instance_method_color,
|
34
|
+
"private instance methods" => Pry.config.ls.instance_method_color,
|
35
|
+
"protected instance methods" => Pry.config.ls.instance_method_color,
|
36
|
+
"constants" => Pry.config.ls.constant_color
|
37
37
|
}
|
38
38
|
end
|
39
39
|
end
|
@@ -198,7 +198,7 @@ Shows local and instance variables by default.
|
|
198
198
|
if !v.first.empty?
|
199
199
|
text << "#{k}:\n--\n"
|
200
200
|
filtered_list = v.first.grep options[:grep]
|
201
|
-
text << text().
|
201
|
+
text << text().send(ls_color_map[k], (filtered_list.join(" ")))
|
202
202
|
text << "\n\n"
|
203
203
|
end
|
204
204
|
end
|
@@ -129,7 +129,13 @@ class Pry
|
|
129
129
|
when :ruby
|
130
130
|
if meth.source_location.first == Pry.eval_path
|
131
131
|
start_line = meth.source_location.last
|
132
|
-
|
132
|
+
|
133
|
+
# FIXME this line below needs to be refactored, WAY too
|
134
|
+
# much of a hack. We pass nothing to prompt because if
|
135
|
+
# prompt uses #inspect (or #pretty_inspect) on the context
|
136
|
+
# it can hang the session if the object being inspected on
|
137
|
+
# is enormous see: https://github.com/pry/pry/issues/245
|
138
|
+
p = Pry.new(:input => StringIO.new(Pry.line_buffer[start_line..-1].join), :prompt => proc {""}, :hooks => {}).r(target)
|
133
139
|
code = strip_leading_whitespace(p)
|
134
140
|
else
|
135
141
|
if rbx_core?(meth)
|
@@ -358,9 +364,13 @@ class Pry
|
|
358
364
|
end
|
359
365
|
|
360
366
|
if jruby?
|
361
|
-
|
362
|
-
|
363
|
-
|
367
|
+
begin
|
368
|
+
require 'spoon'
|
369
|
+
pid = Spoon.spawnp(*editor_invocation.split)
|
370
|
+
Process.waitpid(pid)
|
371
|
+
rescue FFI::NotFoundError
|
372
|
+
run ".#{editor_invocation}"
|
373
|
+
end
|
364
374
|
else
|
365
375
|
run ".#{editor_invocation}"
|
366
376
|
end
|
@@ -369,6 +379,9 @@ class Pry
|
|
369
379
|
def start_line_syntax_for_editor(file_name, line_number)
|
370
380
|
file_name = file_name.gsub(/\//, '\\') if RUBY_PLATFORM =~ /mswin|mingw/
|
371
381
|
|
382
|
+
# special case 0th line
|
383
|
+
return file_name if line_number <= 0
|
384
|
+
|
372
385
|
case Pry.config.editor
|
373
386
|
when /^[gm]?vi/, /^emacs/, /^nano/, /^pico/, /^gedit/, /^kate/
|
374
387
|
"+#{line_number} #{file_name}"
|
data/lib/pry/pry_class.rb
CHANGED
@@ -95,17 +95,6 @@ class Pry
|
|
95
95
|
new(options).repl(target)
|
96
96
|
end
|
97
97
|
|
98
|
-
# A custom version of `Kernel#pretty_inspect`.
|
99
|
-
# This method should not need to be accessed directly.
|
100
|
-
# @param obj The object to view.
|
101
|
-
# @return [String] The string representation of `obj`.
|
102
|
-
def self.view(obj)
|
103
|
-
obj.pretty_inspect
|
104
|
-
|
105
|
-
rescue NoMethodError
|
106
|
-
"unknown"
|
107
|
-
end
|
108
|
-
|
109
98
|
# A version of `Pry.view` that clips the output to `max_size` chars.
|
110
99
|
# In case of > `max_size` chars the `#<Object...> notation is used.
|
111
100
|
# @param obj The object to view.
|
@@ -116,7 +105,7 @@ class Pry
|
|
116
105
|
obj.name.to_s
|
117
106
|
elsif obj.inspect.length <= max_length
|
118
107
|
obj.inspect
|
119
|
-
else
|
108
|
+
else
|
120
109
|
"#<#{obj.class}:%#x>" % (obj.object_id << 1)
|
121
110
|
end
|
122
111
|
|
@@ -199,7 +188,6 @@ class Pry
|
|
199
188
|
|
200
189
|
config.plugins ||= OpenStruct.new
|
201
190
|
config.plugins.enabled = true
|
202
|
-
config.plugins.strict_loading = true
|
203
191
|
|
204
192
|
config.requires ||= []
|
205
193
|
config.should_load_requires = true
|
@@ -212,6 +200,15 @@ class Pry
|
|
212
200
|
config.control_d_handler = DEFAULT_CONTROL_D_HANDLER
|
213
201
|
|
214
202
|
config.memory_size = 100
|
203
|
+
|
204
|
+
Pry.config.ls ||= OpenStruct.new
|
205
|
+
Pry.config.ls.local_var_color = :bright_red
|
206
|
+
Pry.config.ls.instance_var_color = :bright_blue
|
207
|
+
Pry.config.ls.class_var_color = :blue
|
208
|
+
Pry.config.ls.global_var_color = :bright_magenta
|
209
|
+
Pry.config.ls.method_color = :green
|
210
|
+
Pry.config.ls.instance_method_color = :bright_green
|
211
|
+
Pry.config.ls.constant_color = :yellow
|
215
212
|
end
|
216
213
|
|
217
214
|
# Set all the configurable options back to their default values
|
data/lib/pry/pry_instance.rb
CHANGED
@@ -137,7 +137,7 @@ class Pry
|
|
137
137
|
# Initialize the repl session.
|
138
138
|
# @param [Binding] target The target binding for the session.
|
139
139
|
def repl_prologue(target)
|
140
|
-
exec_hook :before_session, output, target
|
140
|
+
exec_hook :before_session, output, target, self
|
141
141
|
initialize_special_locals(target)
|
142
142
|
|
143
143
|
@input_array << nil # add empty input so inp and out match
|
@@ -150,7 +150,7 @@ class Pry
|
|
150
150
|
# @param [Binding] target The target binding for the session.
|
151
151
|
# @return [Object] The return value of the repl session (if one exists).
|
152
152
|
def repl_epilogue(target, break_data)
|
153
|
-
exec_hook :after_session, output, target
|
153
|
+
exec_hook :after_session, output, target, self
|
154
154
|
|
155
155
|
Pry.active_sessions -= 1
|
156
156
|
binding_stack.pop
|
data/lib/pry/version.rb
CHANGED
data/test/test_completion.rb
CHANGED
@@ -19,7 +19,6 @@ describe Pry::InputCompleter do
|
|
19
19
|
if !jruby?
|
20
20
|
it "should not crash if there's a Module that has a symbolic name." do
|
21
21
|
completer = Pry::InputCompleter.build_completion_proc(Pry.binding_for(Object.new))
|
22
|
-
binding.pry
|
23
22
|
lambda{ completer.call "a.to_s." }.should.not.raise Exception
|
24
23
|
end
|
25
24
|
end
|
data/test/test_pry.rb
CHANGED
@@ -1199,8 +1199,8 @@ describe Pry do
|
|
1199
1199
|
it 'should set the hooks default, and the default should be overridable' do
|
1200
1200
|
Pry.input = InputTester.new("exit-all")
|
1201
1201
|
Pry.hooks = {
|
1202
|
-
:before_session => proc { |out,_| out.puts "HELLO" },
|
1203
|
-
:after_session => proc { |out,_| out.puts "BYE" }
|
1202
|
+
:before_session => proc { |out,_,_| out.puts "HELLO" },
|
1203
|
+
:after_session => proc { |out,_,_| out.puts "BYE" }
|
1204
1204
|
}
|
1205
1205
|
|
1206
1206
|
str_output = StringIO.new
|
@@ -1213,8 +1213,8 @@ describe Pry do
|
|
1213
1213
|
str_output = StringIO.new
|
1214
1214
|
Pry.new(:output => str_output,
|
1215
1215
|
:hooks => {
|
1216
|
-
:before_session => proc { |out,_| out.puts "MORNING" },
|
1217
|
-
:after_session => proc { |out,_| out.puts "EVENING" }
|
1216
|
+
:before_session => proc { |out,_,_| out.puts "MORNING" },
|
1217
|
+
:after_session => proc { |out,_,_| out.puts "EVENING" }
|
1218
1218
|
}
|
1219
1219
|
).repl
|
1220
1220
|
|
@@ -1226,7 +1226,7 @@ describe Pry do
|
|
1226
1226
|
str_output = StringIO.new
|
1227
1227
|
Pry.new(:output => str_output,
|
1228
1228
|
:hooks => {
|
1229
|
-
:before_session => proc { |out,_| out.puts "OPEN" }
|
1229
|
+
:before_session => proc { |out,_,_| out.puts "OPEN" }
|
1230
1230
|
}
|
1231
1231
|
).repl
|
1232
1232
|
|
@@ -1236,7 +1236,7 @@ describe Pry do
|
|
1236
1236
|
str_output = StringIO.new
|
1237
1237
|
Pry.new(:output => str_output,
|
1238
1238
|
:hooks => {
|
1239
|
-
:after_session => proc { |out,_| out.puts "CLOSE" }
|
1239
|
+
:after_session => proc { |out,_,_| out.puts "CLOSE" }
|
1240
1240
|
}
|
1241
1241
|
).repl
|
1242
1242
|
|
metadata
CHANGED
@@ -1,210 +1,202 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: pry
|
3
|
-
version: !ruby/object:Gem::Version
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.9.4pre3
|
4
5
|
prerelease: 5
|
5
|
-
version: 0.9.4pre2
|
6
6
|
platform: ruby
|
7
|
-
authors:
|
8
|
-
|
7
|
+
authors:
|
8
|
+
- John Mair (banisterfiend)
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
type: :development
|
81
|
-
version_requirements: *id006
|
12
|
+
date: 2011-09-08 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: ruby_parser
|
16
|
+
requirement: &70236024147800 !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: 2.0.5
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: *70236024147800
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: coderay
|
27
|
+
requirement: &70236024146820 !ruby/object:Gem::Requirement
|
28
|
+
none: false
|
29
|
+
requirements:
|
30
|
+
- - ! '>='
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: 0.9.8
|
33
|
+
type: :runtime
|
34
|
+
prerelease: false
|
35
|
+
version_requirements: *70236024146820
|
36
|
+
- !ruby/object:Gem::Dependency
|
37
|
+
name: slop
|
38
|
+
requirement: &70236024146240 !ruby/object:Gem::Requirement
|
39
|
+
none: false
|
40
|
+
requirements:
|
41
|
+
- - ~>
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: 2.1.0
|
44
|
+
type: :runtime
|
45
|
+
prerelease: false
|
46
|
+
version_requirements: *70236024146240
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: method_source
|
49
|
+
requirement: &70236024145140 !ruby/object:Gem::Requirement
|
50
|
+
none: false
|
51
|
+
requirements:
|
52
|
+
- - ! '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: 0.6.5
|
55
|
+
type: :runtime
|
56
|
+
prerelease: false
|
57
|
+
version_requirements: *70236024145140
|
58
|
+
- !ruby/object:Gem::Dependency
|
59
|
+
name: bacon
|
60
|
+
requirement: &70236024159860 !ruby/object:Gem::Requirement
|
61
|
+
none: false
|
62
|
+
requirements:
|
63
|
+
- - ! '>='
|
64
|
+
- !ruby/object:Gem::Version
|
65
|
+
version: 1.1.0
|
66
|
+
type: :development
|
67
|
+
prerelease: false
|
68
|
+
version_requirements: *70236024159860
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: open4
|
71
|
+
requirement: &70236024157520 !ruby/object:Gem::Requirement
|
72
|
+
none: false
|
73
|
+
requirements:
|
74
|
+
- - ~>
|
75
|
+
- !ruby/object:Gem::Version
|
76
|
+
version: 1.0.1
|
77
|
+
type: :development
|
78
|
+
prerelease: false
|
79
|
+
version_requirements: *70236024157520
|
82
80
|
description: An IRB alternative and runtime developer console
|
83
81
|
email: jrmair@gmail.com
|
84
|
-
executables:
|
85
|
-
|
82
|
+
executables:
|
83
|
+
- pry
|
86
84
|
extensions: []
|
87
|
-
|
88
85
|
extra_rdoc_files: []
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
- wiki/Home.md
|
164
|
-
has_rdoc: true
|
86
|
+
files:
|
87
|
+
- .document
|
88
|
+
- .gemtest
|
89
|
+
- .gitignore
|
90
|
+
- .yardopts
|
91
|
+
- CHANGELOG
|
92
|
+
- CONTRIBUTORS
|
93
|
+
- LICENSE
|
94
|
+
- README.markdown
|
95
|
+
- Rakefile
|
96
|
+
- TODO
|
97
|
+
- bin/pry
|
98
|
+
- examples/example_basic.rb
|
99
|
+
- examples/example_command_override.rb
|
100
|
+
- examples/example_commands.rb
|
101
|
+
- examples/example_hooks.rb
|
102
|
+
- examples/example_image_edit.rb
|
103
|
+
- examples/example_input.rb
|
104
|
+
- examples/example_input2.rb
|
105
|
+
- examples/example_output.rb
|
106
|
+
- examples/example_print.rb
|
107
|
+
- examples/example_prompt.rb
|
108
|
+
- examples/helper.rb
|
109
|
+
- lib/pry.rb
|
110
|
+
- lib/pry/command_context.rb
|
111
|
+
- lib/pry/command_processor.rb
|
112
|
+
- lib/pry/command_set.rb
|
113
|
+
- lib/pry/commands.rb
|
114
|
+
- lib/pry/completion.rb
|
115
|
+
- lib/pry/config.rb
|
116
|
+
- lib/pry/core_extensions.rb
|
117
|
+
- lib/pry/custom_completions.rb
|
118
|
+
- lib/pry/default_commands/basic.rb
|
119
|
+
- lib/pry/default_commands/context.rb
|
120
|
+
- lib/pry/default_commands/documentation.rb
|
121
|
+
- lib/pry/default_commands/easter_eggs.rb
|
122
|
+
- lib/pry/default_commands/gems.rb
|
123
|
+
- lib/pry/default_commands/input.rb
|
124
|
+
- lib/pry/default_commands/introspection.rb
|
125
|
+
- lib/pry/default_commands/ls.rb
|
126
|
+
- lib/pry/default_commands/shell.rb
|
127
|
+
- lib/pry/extended_commands/experimental.rb
|
128
|
+
- lib/pry/extended_commands/user_command_api.rb
|
129
|
+
- lib/pry/helpers.rb
|
130
|
+
- lib/pry/helpers/base_helpers.rb
|
131
|
+
- lib/pry/helpers/command_helpers.rb
|
132
|
+
- lib/pry/helpers/text.rb
|
133
|
+
- lib/pry/history.rb
|
134
|
+
- lib/pry/history_array.rb
|
135
|
+
- lib/pry/plugins.rb
|
136
|
+
- lib/pry/pry_class.rb
|
137
|
+
- lib/pry/pry_instance.rb
|
138
|
+
- lib/pry/version.rb
|
139
|
+
- pry.gemspec
|
140
|
+
- test/helper.rb
|
141
|
+
- test/test_command_helpers.rb
|
142
|
+
- test/test_command_processor.rb
|
143
|
+
- test/test_command_set.rb
|
144
|
+
- test/test_completion.rb
|
145
|
+
- test/test_default_commands.rb
|
146
|
+
- test/test_default_commands/test_context.rb
|
147
|
+
- test/test_default_commands/test_documentation.rb
|
148
|
+
- test/test_default_commands/test_gems.rb
|
149
|
+
- test/test_default_commands/test_input.rb
|
150
|
+
- test/test_default_commands/test_introspection.rb
|
151
|
+
- test/test_default_commands/test_shell.rb
|
152
|
+
- test/test_history_array.rb
|
153
|
+
- test/test_pry.rb
|
154
|
+
- test/test_pry_history.rb
|
155
|
+
- test/test_pry_output.rb
|
156
|
+
- test/test_special_locals.rb
|
157
|
+
- test/testrc
|
158
|
+
- wiki/Customizing-pry.md
|
159
|
+
- wiki/Home.md
|
165
160
|
homepage: http://pry.github.com
|
166
161
|
licenses: []
|
167
|
-
|
168
162
|
post_install_message:
|
169
163
|
rdoc_options: []
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
164
|
+
require_paths:
|
165
|
+
- lib
|
166
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
174
167
|
none: false
|
175
|
-
requirements:
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
168
|
+
requirements:
|
169
|
+
- - ! '>='
|
170
|
+
- !ruby/object:Gem::Version
|
171
|
+
version: '0'
|
172
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
180
173
|
none: false
|
181
|
-
requirements:
|
182
|
-
|
183
|
-
|
184
|
-
|
174
|
+
requirements:
|
175
|
+
- - ! '>'
|
176
|
+
- !ruby/object:Gem::Version
|
177
|
+
version: 1.3.1
|
185
178
|
requirements: []
|
186
|
-
|
187
179
|
rubyforge_project:
|
188
|
-
rubygems_version: 1.
|
180
|
+
rubygems_version: 1.8.6
|
189
181
|
signing_key:
|
190
182
|
specification_version: 3
|
191
183
|
summary: An IRB alternative and runtime developer console
|
192
|
-
test_files:
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
|
202
|
-
|
203
|
-
|
204
|
-
|
205
|
-
|
206
|
-
|
207
|
-
|
208
|
-
|
209
|
-
|
210
|
-
|
184
|
+
test_files:
|
185
|
+
- test/helper.rb
|
186
|
+
- test/test_command_helpers.rb
|
187
|
+
- test/test_command_processor.rb
|
188
|
+
- test/test_command_set.rb
|
189
|
+
- test/test_completion.rb
|
190
|
+
- test/test_default_commands.rb
|
191
|
+
- test/test_default_commands/test_context.rb
|
192
|
+
- test/test_default_commands/test_documentation.rb
|
193
|
+
- test/test_default_commands/test_gems.rb
|
194
|
+
- test/test_default_commands/test_input.rb
|
195
|
+
- test/test_default_commands/test_introspection.rb
|
196
|
+
- test/test_default_commands/test_shell.rb
|
197
|
+
- test/test_history_array.rb
|
198
|
+
- test/test_pry.rb
|
199
|
+
- test/test_pry_history.rb
|
200
|
+
- test/test_pry_output.rb
|
201
|
+
- test/test_special_locals.rb
|
202
|
+
- test/testrc
|