Поддержка цветового оформления

Большинство программ в пакете QHB могут выводить в консоль цветной текст. В этом приложении описывается, как это настраивается.


Когда используется цветовое оформление

Для использования цветного текста следует установить переменную среды PG_COLOR в одно из следующих значений:

  1. always — цвет используется всегда.

  2. auto — цвет используется, если стандартный поток вывода сообщений об ошибках связан с устройством терминала.

  3. В ином случае цвет не используется.


Конфигурация цветового оформления

Фактически используемые цвета конфигурируются с помощью переменной среды PG_COLORS (обратите внимание на множественное число — colors). Значение переменной представляет собой список пар ключ=значение, разделенных двоеточиями. Ключи указывают, для чего будет применяться цвет, а значения задают цвет в формате SGR (Select Graphic Rendition), который интерпретируется терминалом.

В настоящее время применяются следующие ключи:

error
выделяет текст «ошибки» в соответствующих сообщениях

warning
выделяет текст «предупреждения» в соответствующих сообщениях

note
выделяет текст «детализации» и «подсказки» в соответствующих сообщениях

locus выделяет в сообщениях информацию о расположении (например, имя программы и имя файла)

Значение по умолчанию: error=01;31:warning=01;35:note=01;36:locus=01 (01;31 = красный цвет, жирный шрифт, 01;35 = пурпурный цвет, жирный шрифт, 01;36 = голубой цвет, жирный шрифт 01 = цвет по умолчанию, жирный шрифт).

Подсказка
Этот формат указания цветов также применяется и в других программных продуктах, например в GCC, GNU coreutils и GNU grep.