dotfiles/ruby/irbrc

47 lines
1.0 KiB
Plaintext
Executable File

require 'irb/completion'
# interactive editor: use vim from within irb
begin
require 'interactive_editor'
rescue LoadError => err
warn "Couldn't load interactive_editor: #{err}"
end
# awesome print
begin
require 'awesome_print'
rescue LoadError => err
warn "Couldn't load awesome_print: #{err}"
end
# configure irb
IRB.conf[:AUTO_INDENT]=true
# irb history
IRB.conf[:EVAL_HISTORY] = 1000
IRB.conf[:SAVE_HISTORY] = 1000
IRB.conf[:HISTORY_FILE] = File.expand_path("~/.irb_history")
# load .irbrc_rails in rails environments
railsrc_path = File.expand_path('~/.irb-railsrc')
if (ENV['RAILS_ENV'] || defined? Rails) && File.exist?(railsrc_path)
begin
load railsrc_path
rescue Exception
warn "Could not load: #{ railsrc_path } because of #{$!.message}"
end
end
class Object
def interesting_methods
case self.class
when Class
self.public_methods.sort - Object.public_methods
when Module
self.public_methods.sort - Module.public_methods
else
self.public_methods.sort - Object.new.public_methods
end
end
end