Поиск по сайту:

Как отобразить справочные страницы в цвете в Linux


Если вам нужна цветовая подсветка на ваших man страницах, похожая на подсветку синтаксиса в редакторе, вы можете добиться этого двумя простыми способами. Мы покажем вам оба!

Цветовое выделение

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

Наличие этой функции на страницах man Linux было бы чрезвычайно полезным. Несмотря на предпочтение краткости, некоторые страницы man большие, объемные и трудные для чтения. Все, что облегчает визуальную навигацию по ним, — это хорошо.

Мы собираемся описать два способа, которыми вы можете получить цветной эффект на страницах man. Один предполагает использование другого пейджера для их отображения, а другой требует передачи набора параметров в less во время выполнения. Самый простой способ сделать это — создать функцию оболочки.

Самый пейджер

Самая большая пейджер — это просмотрщик файлов, например more и less, с улучшенной обработкой очень больших файлов. Он также автоматически раскрашивает страницы man.

Чтобы установить most в Ubuntu, используйте эту команду:

sudo apt-get install most

Чтобы установить most в Fedora, введите:

sudo dnf install most

Чтобы установить most на Manjaro, введите:

sudo pacman -Syu most

Установить большинство в качестве пейджера по умолчанию

Чтобы заставить Linux использовать most в качестве пейджера по умолчанию, мы должны экспортировать значение переменной среды PAGER.

Набираем следующее:

export PAGER=“most”

Однако это работает только до тех пор, пока вы не закроете окно терминала. Чтобы сделать это изменение постоянным, мы должны добавить его в файл «.bashrc» (мы сделаем его последней строкой в файле):

gedit .bashrc

Добавляем строку, сохраняем наши изменения, а затем закрываем редактор.

Чтобы содержимое измененного файла «.bashrc» стало активным, мы закрываем и снова открываем окно терминала.

Чтобы окно терминала оставалось открытым, мы будем использовать команду source, которую можно сократить до точки (.). Это заставит оболочку прочитать содержимое измененного файла «.bashrc».

Набираем следующее:

. .bashrc

Цветные справочные страницы

Давайте откроем страницу man и посмотрим, как она выглядит:

man grep

Страница man открывается как обычно, но теперь текст выделен разными цветами.

Прокрутите вниз, и вы увидите, как раскрашены различные элементы страницы.

Использование most очень похоже на использование less, но есть некоторые отличия. Нажмите H в  наиболее , чтобы просмотреть список сочетаний клавиш и их функций.

Использование цвета с меньшими затратами

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

В этом методе используются цветовые коды Американского национального института стандартов (ANSI) для управления экранными эффектами, связанными со старыми и в основном несуществующими настройками termcap.

Когда-то они использовались для указания того, как компьютерные терминалы разных производителей и моделей должны интерпретировать команды дисплея. Пакеты программного обеспечения также имели свои собственные настройки termcap, и less тоже.

Вот определения параметров less termcap:

  • LESS_TERMCAP_md: включить эффект жирного шрифта (удвоить яркость).
  • LESS_TERMCAP_me: отключить эффект полужирного шрифта.
  • LESS_TERMCAP_us: включить эффект подчеркивания.
  • LESS_TERMCAP_ue: отключить эффект подчеркивания.
  • LESS_TERMCAP_so: запуск эффекта выделения (аналогично перевернутому тексту).
  • LESS_TERMCAP_se: отключить эффект выделения (аналогично обратному тексту).

Опять же, мы настроим их для управления сочетаниями цветов с помощью цветовых кодов Американского национального института стандартов (ANSI).

Формат цветового кода легко читается, как только вы его понимаете:

  • «\e» в начале определяет последовательность как управляющий код или escape-последовательность.
  • Буква «m» в конце команды последовательности указывает на конец команды. Это также приводит к срабатыванию управляющего кода.
  • Числа между «[» и «m» определяют, какие цвета будут использоваться. Цвета идентифицируются по номеру. Некоторые числа представляют собой цвета фона, а некоторые — цвета переднего плана (текста).

Вот коды, которые мы будем использовать для запуска последовательности цветов, и как их отключить:

  • '\e[01;31m': черный фон, красный текст.
  • ‘\e[01;32m: черный фон, зеленый текст.
  • ‘\e[45;93m: Пурпурный фон, ярко-желтый текст.
  • ’‘\e[0 м’: отключить все эффекты.

Мы поместим все это в функцию оболочки, которую назовем man. Он установит эти значения для нас, а затем вызовет настоящую программу man.

Если у вас уже есть некоторые функции оболочки, определенные в другом файле, вы можете добавить эту функцию в этот файл. В противном случае скопируйте следующий текст в конец файла «.bashrc»:

man() {
    LESS_TERMCAP_md=$'\e[01;31m' \
    LESS_TERMCAP_me=$'\e[0m' \
    LESS_TERMCAP_us=$'\e[01;32m' \
    LESS_TERMCAP_ue=$'\e[0m' \
    LESS_TERMCAP_so=$'\e[45;93m' \
    LESS_TERMCAP_se=$'\e[0m' \

    command man "$@"
}
gedit .bashrc

Вставьте функцию в конец файла «.bashrc».

Сохраните изменения и закройте редактор. Теперь нам нужно прочитать файл «.bashrc», чтобы активировать функцию оболочки, поэтому мы набираем:

. .bashrc

Теперь, когда мы запускаем страницу man, она будет окрашена в less:

man chmod

Страница руководства открывается с выделением цветом.

Оглядываясь назад, желтый на пурпурном, возможно, был не лучшей идеей. К счастью, вы можете настроить цветовые коды по своему вкусу.

Это не просто красиво

Легко пролистать длинную страницу man и пропустить важную часть информации, например опцию или параметр, потому что она затерялась в море текста.

Теперь имена параметров и опций будут выделены, и вам будет намного легче их заметить.