Spec-Zone.ru › Ruby 2.6

класс 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

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

can_display_colors?() Показать исходный код
# File lib/bundler/vendor/thor/lib/thor/shell/color.rb, line 99
def can_display_colors?
  stdout.tty?
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