Spec-Zone.ru › Fish 3.3

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

Синопсис

set_color [OPTIONS] VALUE

Описание

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

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

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

Формы с br (как в «bright») — это варианты с полной яркостью 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 включает режим подчеркивания.

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

Примечания

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

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

Spec-Zone.ru

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