Module: ConsoleColor::Railtie::IRBSetup

Defined in:
lib/console_color/railtie.rb

Instance Method Summary collapse

Instance Method Details

#setupObject



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/console_color/railtie.rb', line 4

def setup(*)
  super

  app_name = if Rails.application.class.respond_to?(:module_parent_name)
    Rails.application.class.module_parent_name
  else
    Rails.application.class.parent_name
  end
  environment = ENV.fetch('CONSOLE_COLOR_ENV', Rails.env)
  color = ConsoleColor::COLORS[environment]

  prompt = "\001#{color}\002#{app_name.downcase}:#{environment}"

  IRB.conf[:PROMPT][:RAILS_APP] = {
    PROMPT_I: "#{prompt}>\e[0m ",
    PROMPT_N: "#{prompt}>\e[0m ",
    PROMPT_S: "#{prompt}%l\e[0m ",
    PROMPT_C: "#{prompt}*\e[0m ",
    RETURN: "=> %s\n",
    AUTO_INDENT: true
  }

  IRB.conf[:PROMPT_MODE] = :RAILS_APP
end