-
Notifications
You must be signed in to change notification settings - Fork 0
/
.irbrc_rails
66 lines (57 loc) · 1.13 KB
/
.irbrc_rails
1
2
3
4
5
6
7
8
9
10
11
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
# vi: ft=ruby
# hirb: some nice stuff for Rails
begin
require 'hirb'
HIRB_LOADED = true
rescue LoadError
HIRB_LOADED = false
end
require 'logger'
def loud_logger
enable_hirb
set_logger_to Logger.new(STDOUT)
end
def quiet_logger
disable_hirb
set_logger_to nil
end
def set_logger_to(logger)
begin
ActiveRecord::Base.logger = logger
ActiveRecord::Base.clear_reloadable_connections!
rescue
puts "Error setting ActiveRecord logger"
end
end
def enable_hirb
if HIRB_LOADED
if ActiveRecord
Hirb::Formatter.dynamic_config['ActiveRecord::Base']
end
Hirb.enable
else
puts "hirb is not loaded"
end
end
def disable_hirb
if HIRB_LOADED
Hirb.disable
else
puts "hirb is not loaded"
end
end
def efind(email)
User.find_by_email email
end
# set a nice prompt
rails_root = File.basename(Dir.pwd)
IRB.conf[:PROMPT] ||= {}
IRB.conf[:PROMPT][:RAILS] = {
:PROMPT_I => "#{rails_root}> ",
:PROMPT_S => "#{rails_root}* ",
:PROMPT_C => "#{rails_root}? ",
:RETURN => "=> %s\n"
}
IRB.conf[:PROMPT_MODE] = :RAILS
# turn on the loud logging by default
IRB.conf[:IRB_RC] = Proc.new { loud_logger }