Цвета в консоли PuTTY — Установка и Настройка Цветовых Схем
Эмулятор терминала PuTTY интерпретирует большую часть управляющих последовательностей XTerm-подобных терминалов, понимает ANSI-графику, имеет полноценную поддержку 256 цветов. Пользователь имеет возможность настраивать внешний вид консоли PuTTY, изменяя отображение системных ANSI-цветов.
Поддержка Цветов в PuTTY
Перед настройкой цветовых схем, проверим состояние нескольких параметров конфигурации вашего сеанса PuTTY:
В панели «Окно/Цветовая схема»:
- Параметр «Разрешить терминалу задавать ANSI цвета» — включить.
- Параметр «Разрешить терминалу использовать 256-цветный режим xterm» — включить.
- Параметр «Выделять полужирный текст изменением» — указать «Цвет» или «Шрифт и Цвет».
В панели «Терминал»:
- Параметр «Использовать цвет фона для очистки экрана» — включить.
В панели «Соединение/Данные» (доступно до подключения), в поле «Строка типа терминала» указать:
xterm-256color— для полноценной работы PuTTY с Emacs/Vim, при подключении к Mac OS X, для других современных приложений;- или
xterm-color— некоторые скрипты (в т.ч..bashrcв Ubuntu) до сих пор активируют поддержку цветов только при данном значении переменнойTERM.
(Переменная окружения TERM не влияет на способность PuTTY воспринимать цвета, она лишь сообщает серверным приложениям о типе терминала, о количестве поддерживаемых цветов. Даже при xterm-color (поддержка 16-ти цветов) PuTTY сможет отображать 256 цветов в приложениях, которые об TERM не спрашивают.)
Если всё настроено правильно, вывод скрипта 256colors2.pl должен быть следующим:

Настройка Цветовой Схемы
Режим 256-цветов используют лишь некоторые программы, в обычной же работе с терминалом, применяются только системные ANSI-цвета — 16 цветов («System colors» на первом скриншоте), плюс несколько специальных наименований, определяющих цвет текста по умолчанию, цвет фона, цвет курсора, и т.п.
В раскраске консоли удалённого терминала участвует как клиент (PuTTY), так и терминальный сервер (SSH). Вместе с неким набором символов, которые должны быть окрашены, серверная программа также посылает управляющие последовательности, сообщая название цвета, которым должен быть окрашен тот или иной символ. Клиент в свою очередь определяет, как этот цвет должен выглядеть в окне терминала у пользователя.
К примеру, сервер сообщает — окрасить такой-то элемент в цвет «Green» (зелёный). Но дальше клиент сам решает, каким будет этот зелёный: бирюзово-зелёным, бледно-зелёным, грушево-зелёным, или любым другим цветом.
Скрипт ansi-color-chart.sh демонстрирует текущие установки ANSI-цветов. Так они выглядят в PuTTY по умолчанию:

Вы можете сами определить вид каждого цвета. Настройки находятся в панели «Окно/Цветовая схема». Вы можете выбрать подходящий цвет в палитре цветов, либо указать цвет в формате RGB (красный-зелёный-синий).

Попробуем изменить цвета по следующей схеме:
| Пример: | Цвет для изменения: | Красный: | Зелёный: | Синий: |
|---|---|---|---|---|
| Текст по умолчанию | 255 | 255 | 212 | |
| Полужирный текст по умолчанию | 255 | 255 | 212 | |
| Фон текста по умолчанию | 20 | 20 | 20 | |
| Фон полужирного текста по умолчанию | 20 | 20 | 20 | |
| Текст курсора | 255 | 255 | 255 | |
| Цвет курсора | 255 | 255 | 212 | |
| ANSI Чёрный | 20 | 20 | 20 | |
| ANSI Чёрный полужирный | 38 | 38 | 38 | |
| ANSI Красный | 192 | 109 | 68 | |
| ANSI Красный полужирный | 222 | 124 | 76 | |
| ANSI Зелёный | 175 | 185 | 122 | |
| ANSI Зелёный полужирный | 204 | 216 | 140 | |
| ANSI Жёлтый | 194 | 168 | 108 | |
| ANSI Жёлтый полужирный | 226 | 196 | 126 | |
| ANSI Синий | 68 | 71 | 74 | |
| ANSI Синий полужирный | 90 | 94 | 98 | |
| ANSI Пурпурный | 180 | 190 | 124 | |
| ANSI Пурпурный полужирный | 208 | 220 | 142 | |
| ANSI Циан | 119 | 131 | 133 | |
| ANSI Циан полужирный | 138 | 152 | 155 | |
| ANSI Белый | 255 | 255 | 212 | |
| ANSI Белый полужирный | 255 | 255 | 212 |
И вот как теперь выглядит вывод сценария ansi-color-chart.sh:

(Не забудем сохранить сеанс, иначе все настройки пропадут.)
Установка Цветовой Схемы
К сожалению, в PuTTY отсутствует классическое понимание «Темы/Скины», нет возможности их выбора, загрузки, сохранения.
Но, конечно же, ручная настройка каждого цвета по отдельности — это не единственный способ изменить цвета. Существует формат для хранения и полуавтоматической установки цветов.
Для вас подготовлено 50 цветовых схем для PuTTY.
Цветовые схемы представлены в двух форматах:
Первый формат — для классической версии PuTTY, или PuTTY.ORG.RU (не-portable), в виде
.REGфайла.При импорте такого файла в системный реестр, будет создан новый сеанс с именем «Twilight», с настройками цветов из примера выше.
Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\Sessions\Twilight] "Colour0"="255,255,212" "Colour1"="255,255,212" "Colour2"="20,20,20" "Colour3"="20,20,20" "Colour4"="255,255,255" "Colour5"="255,255,212" "Colour6"="20,20,20" "Colour7"="38,38,38" "Colour8"="192,109,68" "Colour9"="222,124,76" "Colour10"="175,185,122" "Colour11"="204,216,140" "Colour12"="194,168,108" "Colour13"="226,196,126" "Colour14"="68,71,74" "Colour15"="90,94,98" "Colour16"="180,190,124" "Colour17"="208,220,142" "Colour18"="119,131,133" "Colour19"="138,152,155" "Colour20"="255,255,212" "Colour21"="255,255,212"
Изменив перед импортом в коде слово
Twilightна имя уже существующего сеанса, это изменит настройки цветов данного сеанса (имя не должно содержать русских букв, пробелы должны быть заменены кодом%20).Второй формат — для портативной сборки PuTTY.ORG.RU (подойдёт для PuTTYTray, KiTTY Portable, и т.д.), для версии, которая хранит все настройки сеанса в файлах, а не в реестре.
В текстовом редакторе откройте файл сохранённого сеанса, например
/путь/до/PuTTY_Portable/Sessions/имя_вашего_сеанса, найдите группу строк, начинающуюся сColour, и замените на:Colour21\255,255,212\ Colour20\255,255,212\ Colour19\138,152,155\ Colour18\119,131,133\ Colour17\208,220,142\ Colour16\180,190,124\ Colour15\90,94,98\ Colour14\68,71,74\ Colour13\226,196,126\ Colour12\194,168,108\ Colour11\204,216,140\ Colour10\175,185,122\ Colour9\222,124,76\ Colour8\192,109,68\ Colour7\38,38,38\ Colour6\20,20,20\ Colour5\255,255,212\ Colour4\255,255,255\ Colour3\20,20,20\ Colour2\20,20,20\ Colour1\255,255,212\ Colour0\255,255,212\
Также вы можете просто вставить этот код в начало файла сеанса, последующие дублирующие строки
Colorбудут проигнорированы.
Конвертация ANSI-цветов в формат PuTTY
Некоторые из цветовых схем были сделаны и протестированы дизайнерами специально для PuTTY, но большая часть была сконвертирована из конфигов iTerm и uxvrt.
Если у вас есть желание перенести любимую цветовую схему из любого Linux-терминала или текстового редактора, вот примерное соотношение строк конфигурации:
# PuTTY CFG # ANSI Relation # PuTTY GUI Colour0 Foreground Color # Default Foreground Colour1 Bold Color # Default Foreground Colour2 Background Color # Default Background Colour3 Background Color # Default Foreground Colour4 Cursor Color # Cursor Text Colour5 Cursor Text Color # Cursor Color Colour6 ANSI 0 Color # ANSI Black Colour7 ANSI 8 Color # ANSI Black Bold Colour8 ANSI 1 Color # ANSI Red Colour9 ANSI 9 Color # ANSI Red Bold Colour10 ANSI 2 Color # ANSI Green Colour11 ANSI 10 Color # ANSI Green Bold Colour12 ANSI 3 Color # ANSI Yellow Colour13 ANSI 11 Color # ANSI Yellow Bold Colour14 ANSI 4 Color # ANSI Blue Colour15 ANSI 12 Color # ANSI Blue Bold Colour16 ANSI 5 Color # ANSI Magenta Colour17 ANSI 13 Color # ANSI Magenta Bold Colour18 ANSI 6 Color # ANSI Cyan Colour19 ANSI 14 Color # ANSI Cyan Bold Colour20 ANSI 7 Color # ANSI White Colour21 ANSI 15 Color # ANSI White Bold
Мы будем рады добавить новые пользовательские темы в Каталог цветовых схем для PuTTY. Особенно хотелось бы больше удачных тем со светлым фоном.
А также, если вы заметите неюзабельные моменты и другие недочёты в уже выложенных цветовых схема, оставляйте свои предложения по исправлению!