Module: Honcho::Colors

Included in:
Runner
Defined in:
lib/honcho/colors.rb

Constant Summary collapse

COLORS =
[
  [Curses::COLOR_BLUE,    Curses::A_NORMAL],
  [Curses::COLOR_CYAN,    Curses::A_NORMAL],
  [Curses::COLOR_GREEN,   Curses::A_NORMAL],
  [Curses::COLOR_MAGENTA, Curses::A_NORMAL],
  [Curses::COLOR_RED,     Curses::A_NORMAL],
  [Curses::COLOR_YELLOW,  Curses::A_NORMAL],
  [Curses::COLOR_BLUE,    Curses::A_BOLD],
  [Curses::COLOR_CYAN,    Curses::A_BOLD],
  [Curses::COLOR_GREEN,   Curses::A_BOLD],
  [Curses::COLOR_MAGENTA, Curses::A_BOLD],
  [Curses::COLOR_RED,     Curses::A_BOLD],
  [Curses::COLOR_YELLOW,  Curses::A_BOLD]
].freeze

Instance Method Summary collapse

Instance Method Details

#assign_colors_for_ansiObject



30
31
32
33
34
35
36
37
# File 'lib/honcho/colors.rb', line 30

def assign_colors_for_ansi
  colors = COLORS.dup
  apps.keys.each_with_object({}) do |app, hash|
    (curses_color_code, curses_color_quality) = colors.shift
    bold = curses_color_quality == Curses::A_BOLD ? 1 : 0
    hash[app] = "#{bold};3#{curses_color_code}"
  end
end

#assign_colors_for_cursesObject



20
21
22
23
24
25
26
27
28
# File 'lib/honcho/colors.rb', line 20

def assign_colors_for_curses
  COLORS.each_with_index do |(color, _), index|
    Curses.init_pair(index + 1, color, Curses::COLOR_BLACK)
  end
  apps.keys.each_with_index.each_with_object({}) do |(app, index), hash|
    (_, quality) = COLORS[index]
    hash[app] = [index + 1, quality]
  end
end