Подсветка синтаксиса man-страниц в Linux или как задать цвет в редакторе less

Большое количество времени каждый системный администратор linux-системы проводит в консоли, изучая man-страницы и редактируя конфигурационные файлы. Чтобы чуть-чуть облегчить себе жизнь, системный администратор может достаточно легко подсветить синтаксис man-страниц. Это придаст более эстетический вид консоли и облегчит восприятие информации.

По умолчанию в редакторе less, для легкого восприятия информации, разработчики применили разные стили вывода текста: полужирный, подчеркнутый, выделенный (присваивается служебной информации) и мерцающий. Все они выводятся на экран одним цветом — белым. Правильнее, с точки зрения быстроты восприятия текста, использовать для каждого стиля свой цвет.

Все цветовые изменения вносятся в конфигурационный файл используемой оболочки bash или shell:

  • для оболочки bash: ~/.bashrc
  • для оболочки shell: ~/.$SHELLrc

Большинство дистрибутивов Linux использует оболочку bash, конфигурационный файл которой имеет путь /home/имя_пользователя/.bashrc. Можно использовать укороченный путь к конфигу ~/.bashrc. Данные о цветовом отображении рекомендуется вносить в конец файла.

  • Чтобы задать цвет всем элементам текста, использующим полужирный стиль, нужно в конце конфигурационного файла добавить:

    export LESS_TERMCAP_md=$'выбранный_цвет'
    export LESS_TERMCAP_me=$'\033[0m'

  • Цвет для подчеркнутого стиля:
    export LESS_TERMCAP_us=$'выбранный_цвет'
    export LESS_TERMCAP_ue=$'\033[0m'
  • Цвет для служебной информации:
    export LESS_TERMCAP_so=$'выбранный_цвет'
    export LESS_TERMCAP_se=$'\033[0m'
  • Цвет для мерцающего стиля:
    export LESS_TERMCAP_mb=$'выбранный_цвет'
    export LESS_TERMCAP_me=$'\033[0m'
Цвета могут принимать значения:
Светло-серый\033[0;37m
Серый\033[1;30m
Черный\033[0;30m
Красный\033[0;31m
Светло-красный\033[1;31m
Зеленый\033[0;32m
Светло-зеленый\033[1;32m
Коричневый\033[0;33m
Желтый\033[1;33m
Синий\033[0;34m
Светло-синий\033[1;34m
Сиреневый\033[0;35m
Светло-сиреневый\033[1;35m
Голубой\033[0;36m
Светло-голубой\033[1;36m
Белый\033[0m

Изменение цвета сводится к простой последовательности действий:

  1. Открываем для редактирования конфигурационный файл (в примере используется оболочка bash):
    # nano ~/.bashrc
  2. К концу файла добавляем строку:
    export LESS_TERMCAP_md=$'\033[0;31m'
    export LESS_TERMCAP_me=$'\033[0m'
  3. Сохраняя, закрываем конфигурационный файл и делаем релогин.

Готовые цветовые схемы


Далее приведены готовые цветовые схемы, для добавления которых нужно просто исполнить приведенный код рядом код.

  1. Самая распространенная в Internet`е цветовая схема:
    Подсветка синтаксиса man-страниц в Linux или как задать цвет в редакторе less
    export LESS_TERMCAP_mb=$'\033[01;31m'
    export LESS_TERMCAP_md=$'\033[01;31m'
    export LESS_TERMCAP_me=$'\033[0m'
    export LESS_TERMCAP_se=$'\033[0m'
    export LESS_TERMCAP_so=$'\033[01;44;33m'
    export LESS_TERMCAP_ue=$'\033[0m'
    export LESS_TERMCAP_us=$'\033[01;32m'
  2. Зелено-голубая цветовая схема:
    Подсветка синтаксиса man-страниц в Linux или как задать цвет в редакторе less
    export LESS_TERMCAP_mb=$'\033[01;36m'
    export LESS_TERMCAP_md=$'\033[01;32m'
    export LESS_TERMCAP_me=$'\033[0m'
    export LESS_TERMCAP_mu=$'\033[01;37m'
    export LESS_TERMCAP_se=$'\033[0m'
    export LESS_TERMCAP_so=$'\033[01;44;33m'
    export LESS_TERMCAP_ue=$'\033[0m'
    export LESS_TERMCAP_us=$'\033[01;36m'
  3. Сине-сереневая цветовая схема:
    Подсветка синтаксиса man-страниц в Linux или как задать цвет в редакторе less
    export LESS_TERMCAP_mb=$'\033[01;31m'
    export LESS_TERMCAP_md=$'\033[01;38;5;74m'
    export LESS_TERMCAP_me=$'\033[0m'
    export LESS_TERMCAP_se=$'\033[0m'
    export LESS_TERMCAP_so=$'\033[38;5;246m'
    export LESS_TERMCAP_ue=$'\033[0m'
    export LESS_TERMCAP_us=$'\033[04;38;5;146m'
  4. Зелено-сереневая цветовая схема:
    Подсветка синтаксиса man-страниц в Linux или как задать цвет в редакторе less
    export LESS_TERMCAP_md=$'\033[1;32m'
    export LESS_TERMCAP_me=$'\033[0m'
    export LESS_TERMCAP_us=$'\033[0;35m'
    export LESS_TERMCAP_ue=$'\033[0m'
    export LESS_TERMCAP_mb=$'\033[1;33m'
    export LESS_TERMCAP_so=$'\033[1;33m'
    export LESS_TERMCAP_se=$'\033[0m'

Зарубин Иван Эксперт по Linux и Windows

Парашютист со стажем. Много читаю и слушаю подкасты. Люблю посиделки у костра, песни под гитару и приближающиеся дедлайны. Люблю путешествовать.

Вдохновлен

Комментарии (7)

  • #

    Очень полезная для меня статья. Большое спасибо.

  • worthful
    #

    Спасибо! Мне тоже помогло. Только не понял, что означает “44” в export LESS_TERMCAP_so=$‘3[01;44;33m’

  • #

    Пусть будет))

  • sql7
    #

    $source ~/.bashrc
    позволяет чтоб настройки из изменненного .bashrc вступили в силу в уе открытой консоли

  • aleks
    #

    спасибо. читать маны стало веселее )
    понравилась Зелено-голубая цветовая схема

  • DJester
    #

    Да, зелено-голубая самое то. Зелено-красная уж больно вырвиглазная ))

  • Alex
    #

    worthful: Спасибо! Мне тоже помогло. Только не понял, что означает “44” в export LESS_TERMCAP_so=$‘3[01;44;33m’

    Это цвет фона.

    \033[30 чёрный цвет знаков
    \033[31 красный цвет знаков
    \033[32 зелёный цвет знаков
    \033[33 желтый цвет знаков
    \033[34 синий цвет знаков
    \033[35 фиолетовый цвет знаков
    \033[36 цвет морской волны знаков
    \033[37 серый цвет знаков

    \033[40 чёрный цвет фона
    \033[41 красный цвет фона
    \033[42 зелёный цвет фона
    \033[43 желтый цвет фона
    \033[44 синий цвет фона
    \033[45 фиолетовый цвет фона
    \033[46 цвет морской волны фона
    \033[47 серый цвет фона