Spec-Zone.ru › Ruby 2.7

класс Bundler::Thor::Shell::Color

Родитель:
Bundler::Thor::Shell::Basic

Наследуется от Bundler::Thor::Shell::Basic и добавляет поведение set_color. Проверьте Bundler::Thor::Shell::Basic, чтобы увидеть все доступные методы.

Константы

BLACK

Set цвет переднего плана терминала в ANSI-цвет чёрный.

BLUE

Set цвет переднего плана терминала в ANSI-цвет синий.

BOLD

Начало ANSI-последовательности жирным шрифтом.

CLEAR

Вставьте в String, чтобы очистить все предыдущие ANSI-последовательности.

CYAN

Set цвет переднего плана терминала в ANSI-цвет голубой.

GREEN

Set цвет переднего плана терминала в ANSI-цвет зелёный.

MAGENTA

Set цвет переднего плана терминала в ANSI-цвет пурпурный.

ON_BLACK

Set цвет фона терминала в ANSI-цвет чёрный.

ON_BLUE

Set цвет фона терминала в ANSI-цвет синий.

ON_CYAN

Set цвет фона терминала в ANSI-цвет голубой.

ON_GREEN

Set цвет фона терминала в ANSI-цвет зелёный.

ON_MAGENTA

Set цвет фона терминала в ANSI-цвет пурпурный.

ON_RED

Set цвет фона терминала в ANSI-цвет красный.

ON_WHITE

Set цвет фона терминала в ANSI-цвет белый.

ON_YELLOW

Set цвет фона терминала в ANSI-цвет жёлтый.

RED

Set цвет переднего плана терминала в ANSI-цвет красный.

WHITE

Set цвет переднего плана терминала в ANSI-цвет белый.

YELLOW

Set цвет переднего плана терминала в ANSI-цвет жёлтый.

Публичные методы экземпляров

set_color(string, *colors) Показать исходный код
# File lib/bundler/vendor/thor/lib/thor/shell/color.rb, line 79
def set_color(string, *colors)
  if colors.compact.empty? || !can_display_colors?
    string
  elsif colors.all? { |color| color.is_a?(Symbol) || color.is_a?(String) }
    ansi_colors = colors.map { |color| lookup_color(color) }
    "#{ansi_colors.join}#{string}#{CLEAR}"
  else
    # The old API was `set_color(color, bold=boolean)`. We
    # continue to support the old API because you should never
    # break old APIs unnecessarily :P
    foreground, bold = colors
    foreground = self.class.const_get(foreground.to_s.upcase) if foreground.is_a?(Symbol)

    bold       = bold ? BOLD : ""
    "#{bold}#{foreground}#{string}#{CLEAR}"
  end
end

Set цвет, используя строку или одну из определённых констант. Если третий параметр установлен в true, то к строке также добавляется жирный шрифт. Это основано на реализации Highline и автоматически добавляет CLEAR в конец возвращаемой String.

Передавайте параметры для цвета переднего плана, фона и жирного шрифта как символы.

Пример:

set_color "Hi!", :red, :on_white, :bold

Доступные цвета:

:bold
:black
:red
:green
:yellow
:blue
:magenta
:cyan
:white
:on_black
:on_red
:on_green
:on_yellow
:on_blue
:on_magenta
:on_cyan
:on_white

Защищённые методы экземпляров

are_colors_disabled?() Показать исходный код
# File lib/bundler/vendor/thor/lib/thor/shell/color.rb, line 103
def are_colors_disabled?
  !ENV['NO_COLOR'].nil?
end
can_display_colors?() Показать исходный код
# File lib/bundler/vendor/thor/lib/thor/shell/color.rb, line 99
def can_display_colors?
  stdout.tty? && !are_colors_disabled?
end

Ruby Core © 1993–2017 Yukihiro Matsumoto
Licensed under the Ruby License.
Ruby Standard Library © contributors
Licensed under their own licenses.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API