2014-01-21 00:21:29 +01:00
|
|
|
class Pry::Config::Default
|
|
|
|
include Pry::Config::Behavior
|
2017-06-23 06:12:11 +01:00
|
|
|
include Pry::Config::Memoization
|
2014-01-21 00:21:29 +01:00
|
|
|
|
2017-06-23 06:12:11 +01:00
|
|
|
def_memoized({
|
2014-05-06 18:56:57 +09:00
|
|
|
input: proc {
|
|
|
|
lazy_readline
|
|
|
|
},
|
|
|
|
output: proc {
|
2015-03-01 13:22:26 +02:00
|
|
|
$stdout.tap { |out| out.sync = true }
|
2014-05-06 18:56:57 +09:00
|
|
|
},
|
|
|
|
commands: proc {
|
|
|
|
Pry::Commands
|
|
|
|
},
|
|
|
|
prompt_name: proc {
|
|
|
|
Pry::DEFAULT_PROMPT_NAME
|
|
|
|
},
|
|
|
|
prompt: proc {
|
|
|
|
Pry::DEFAULT_PROMPT
|
|
|
|
},
|
|
|
|
prompt_safe_objects: proc {
|
|
|
|
Pry::DEFAULT_PROMPT_SAFE_OBJECTS
|
|
|
|
},
|
|
|
|
print: proc {
|
|
|
|
Pry::DEFAULT_PRINT
|
|
|
|
},
|
|
|
|
quiet: proc {
|
|
|
|
false
|
|
|
|
},
|
|
|
|
exception_handler: proc {
|
|
|
|
Pry::DEFAULT_EXCEPTION_HANDLER
|
|
|
|
},
|
|
|
|
exception_whitelist: proc {
|
|
|
|
Pry::DEFAULT_EXCEPTION_WHITELIST
|
|
|
|
},
|
|
|
|
hooks: proc {
|
|
|
|
Pry::DEFAULT_HOOKS
|
|
|
|
},
|
|
|
|
pager: proc {
|
|
|
|
true
|
|
|
|
},
|
|
|
|
system: proc {
|
|
|
|
Pry::DEFAULT_SYSTEM
|
|
|
|
},
|
|
|
|
color: proc {
|
|
|
|
Pry::Helpers::BaseHelpers.use_ansi_codes?
|
|
|
|
},
|
|
|
|
default_window_size: proc {
|
|
|
|
5
|
|
|
|
},
|
|
|
|
editor: proc {
|
|
|
|
Pry.default_editor_for_platform
|
|
|
|
}, # TODO: Pry::Platform.editor
|
|
|
|
should_load_rc: proc {
|
|
|
|
true
|
|
|
|
},
|
|
|
|
should_load_local_rc: proc {
|
|
|
|
true
|
|
|
|
},
|
|
|
|
should_trap_interrupts: proc {
|
2017-11-02 01:02:41 +01:00
|
|
|
Pry::Platform.jruby?
|
|
|
|
},
|
2014-05-06 18:56:57 +09:00
|
|
|
disable_auto_reload: proc {
|
|
|
|
false
|
|
|
|
},
|
|
|
|
command_prefix: proc {
|
|
|
|
""
|
|
|
|
},
|
|
|
|
auto_indent: proc {
|
|
|
|
Pry::Helpers::BaseHelpers.use_ansi_codes?
|
|
|
|
},
|
|
|
|
correct_indent: proc {
|
|
|
|
true
|
|
|
|
},
|
|
|
|
collision_warning: proc {
|
|
|
|
false
|
|
|
|
},
|
|
|
|
output_prefix: proc {
|
|
|
|
"=> "
|
|
|
|
},
|
|
|
|
requires: proc {
|
|
|
|
[]
|
|
|
|
},
|
|
|
|
should_load_requires: proc {
|
|
|
|
true
|
|
|
|
},
|
|
|
|
should_load_plugins: proc {
|
|
|
|
true
|
|
|
|
},
|
|
|
|
windows_console_warning: proc {
|
|
|
|
true
|
|
|
|
},
|
|
|
|
control_d_handler: proc {
|
|
|
|
Pry::DEFAULT_CONTROL_D_HANDLER
|
|
|
|
},
|
|
|
|
memory_size: proc {
|
|
|
|
100
|
|
|
|
},
|
|
|
|
extra_sticky_locals: proc {
|
|
|
|
{}
|
|
|
|
},
|
|
|
|
command_completions: proc {
|
|
|
|
proc { commands.keys }
|
|
|
|
},
|
|
|
|
file_completions: proc {
|
|
|
|
proc { Dir["."] }
|
|
|
|
},
|
|
|
|
ls: proc {
|
|
|
|
Pry::Config.from_hash(Pry::Command::Ls::DEFAULT_OPTIONS)
|
|
|
|
},
|
|
|
|
completer: proc {
|
2014-03-17 08:41:42 +01:00
|
|
|
require "pry/input_completer"
|
2014-04-01 05:55:21 +02:00
|
|
|
Pry::InputCompleter
|
2015-03-11 13:53:21 -07:00
|
|
|
},
|
2016-01-01 17:20:50 +00:00
|
|
|
gist: proc {
|
|
|
|
Pry::Config.from_hash({inspecter: proc(&:pretty_inspect)}, nil)
|
|
|
|
},
|
|
|
|
history: proc {
|
|
|
|
Pry::Config.from_hash({should_save: true, should_load: true}, nil).tap do |history|
|
|
|
|
history.file = File.expand_path("~/.pry_history") rescue nil
|
|
|
|
if history.file.nil?
|
|
|
|
self.should_load_rc = false
|
|
|
|
history.should_save = false
|
|
|
|
history.should_load = false
|
|
|
|
end
|
|
|
|
end
|
|
|
|
},
|
2015-03-11 13:53:21 -07:00
|
|
|
exec_string: proc {
|
|
|
|
""
|
2014-03-17 08:41:42 +01:00
|
|
|
}
|
2015-12-28 11:45:30 +00:00
|
|
|
})
|
2013-12-17 18:27:42 +01:00
|
|
|
|
2014-01-20 13:40:55 +01:00
|
|
|
def initialize
|
2013-12-17 18:27:42 +01:00
|
|
|
super(nil)
|
|
|
|
end
|
|
|
|
|
2015-12-28 11:26:11 +00:00
|
|
|
private
|
2014-02-02 17:01:32 -08:00
|
|
|
def lazy_readline
|
|
|
|
require 'readline'
|
|
|
|
Readline
|
|
|
|
rescue LoadError
|
|
|
|
warn "Sorry, you can't use Pry without Readline or a compatible library."
|
|
|
|
warn "Possible solutions:"
|
|
|
|
warn " * Rebuild Ruby with Readline support using `--with-readline`"
|
|
|
|
warn " * Use the rb-readline gem, which is a pure-Ruby port of Readline"
|
2014-02-03 13:54:39 +01:00
|
|
|
warn " * Use the pry-coolline gem, a pure-ruby alternative to Readline"
|
2014-02-02 17:01:32 -08:00
|
|
|
raise
|
|
|
|
end
|
2013-12-17 18:27:42 +01:00
|
|
|
end
|