Spec-Zone.ru › Fish 3.5

set_color - установка цвета терминала

Краткое описание

set_color [OPTIONS] VALUE

Описание

set_color используется для управления цветом и стилем текста в терминале. ЗНАЧЕНИЕ описывает этот стиль. ЗНАЧЕНИЕ может быть зарезервированным именем цвета, таким как красный, или значением цвета RGB, заданным как 3 или 6 шестнадцатеричных цифр («F27» или «FF2277»). Специальное ключевое слово normal сбрасывает форматирование текста до значений по умолчанию терминала.

Допустимые цвета включают:

  • чёрный, красный, зелёный, жёлтый, синий, пурпурный, голубой, белый
  • светло-чёрный, светло-красный, светло-зелёный, светло-жёлтый, светло-синий, светло-пурпурный, светло-голубой, светло-белый

Формы с светло- (как в «яркий») — это варианты с полной яркостью 8 стандартных цветов с высокой яркостью на многих терминалах. светло-чёрный имеет более высокую яркость, чем чёрный — ближе к серому.

Можно использовать значение RGB с тремя или шестью шестнадцатеричными цифрами, например, A0FF33 или f2f. Fish выберет ближайший поддерживаемый цвет. Значение с тремя цифрами эквивалентно указанию каждой цифры дважды; например, set_color 2BC эквивалентно set_color 22BBCC. Шестнадцатеричные значения RGB могут быть в нижнем или верхнем регистре. В зависимости от возможностей вашего терминала (и уровня поддержки set_color для него) фактический цвет может быть приближен к ближайшему совпадающему зарезервированному имени цвета, или set_color может не повлиять на цвет.

Второй цвет может быть задан в качестве желаемого запасного цвета. Например, set_color 124212 brblue укажет set_color использовать светло-синий, если терминал не способен отобразить точный оттенок серого, который требуется. Это очень полезно, когда 8- или 16-цветный терминал в противном случае не мог бы использовать цвет.

Доступны следующие параметры:

-b или --background ЦВЕТ

Устанавливает цвет фона.

-c или --print-colors

Выводит список 16 именованных цветов.

-o или --bold

Устанавливает режим жирный шрифт.

-d или --dim

Устанавливает режим слабый шрифт.

-i или --italics

Устанавливает режим курсив.

-r или --reverse

Устанавливает режим переворота.

-u или --underline

Устанавливает режим подчеркивания.

-h или --help

Отображает справку по использованию этой команды.

Использование ключевого слова normal сбросит передний и задний цвета, а также всё форматирование до значений по умолчанию.

Примечания

  1. Использование ключевого слова normal сбросит цвета фона и переднего плана до значений по умолчанию для терминала.
  2. Указание цвета фона влияет только на последующие символы. Fish не предоставляет возможности установить цвет фона для всего окна терминала. Настройка цвета фона окна (и других атрибутов, таких как его непрозрачность) должна выполняться с помощью механизмов, предоставляемых терминалом. Поиск параметра конфигурации.
  3. Некоторые терминалы используют последовательность escape --bold для переключения на набор более ярких цветов, а не для увеличения веса текста.
  4. set_color работает, печатая последовательности символов в стандартный вывод. Если используется в подстановке команд или в конвейере, эти символы также будут захвачены. Это может быть или не быть желательным. Проверка кода возврата isatty stdout перед использованием set_color может быть полезна, чтобы принять решение о том, не стоит ли подкрашивать выходные данные в скрипте.

Примеры

set_color red; echo "Roses are red"
set_color blue; echo "Violets are blue"
set_color 62A; echo "Eggplants are dark purple"
set_color normal; echo "Normal is nice" # Resets the background too

Обнаружение возможностей терминала

Fish использует некоторые эвристики для определения поддерживаемых терминалом цветов, чтобы избежать отправки последовательностей, которые он не поймёт.

В частности, он будет:

  • Включать 256 цветов, если TERM содержит «xterm», за исключением известных исключений (например, MacOS 10.6 Terminal.app)
  • Включать 24-битный («полноцветный») даже если запись $TERM сообщает только о 256 цветах. Это включает современные xterm, VTE-терминалы, такие как Gnome Terminal, Konsole и iTerm2.
  • Обнаруживать поддержку курсива, слабый шрифт, переворот и других режимов.

Если terminfo сообщает о поддержке 256 цветов для терминала, поддержка 256 цветов всегда будет включена.

Для принудительного включения или выключения поддержки полноцветности установите fish_term24bit` на «1» для включения и 0 для выключения — set -g fish_term24bit 1.

Для отладки проблем с палитрой цветов tput colors может быть полезно для просмотра количества цветов в terminfo для терминала. Fish, запущенный как fish -d2, будет включать диагностические сообщения, которые указывают используемый режим поддержки цвета.

Команда set_color использует базу данных terminfo, чтобы найти способ изменения цветов терминала в используемом терминале. Некоторые системы имеют старые и неполные базы данных terminfo и не имеют информации о цвете для терминалов, которые его поддерживают. Fish предполагает, что все терминалы могут использовать последовательности escape [ANSI X3.64](https://en.wikipedia.org/wiki/ANSI_escape_code), если определение terminfo указывает, что цвет ниже 16 не поддерживается.

© 2022 fish-shell developers
Licensed under the GNU General Public License, version 2.
https://fishshell.com/docs/3.5/cmds/set_color.html

Spec-Zone.ru

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