Вам нужно использовать эту termcap(5)
функцию. В справочной странице по некоторым Unices говорится, что этот инструмент устарел и используется terminfo
, но по-прежнему доступен для других (и terminfo
более сложен).
Что еще более важно, less
использует termcap
.
Настройка цвета для less
Я делаю следующее, чтобы less
и man
(который использует less
) будет иметь цвет:
$ cat ~/.LESS_TERMCAP
export LESS_TERMCAP_mb=$(tput bold; tput setaf 2) # green
export LESS_TERMCAP_md=$(tput bold; tput setaf 6) # cyan
export LESS_TERMCAP_me=$(tput sgr0)
export LESS_TERMCAP_so=$(tput bold; tput setaf 3; tput setab 4) # yellow on blue
export LESS_TERMCAP_se=$(tput rmso; tput sgr0)
export LESS_TERMCAP_us=$(tput smul; tput bold; tput setaf 7) # white
export LESS_TERMCAP_ue=$(tput rmul; tput sgr0)
export LESS_TERMCAP_mr=$(tput rev)
export LESS_TERMCAP_mh=$(tput dim)
export LESS_TERMCAP_ZN=$(tput ssubm)
export LESS_TERMCAP_ZV=$(tput rsubm)
export LESS_TERMCAP_ZO=$(tput ssupm)
export LESS_TERMCAP_ZW=$(tput rsupm)
export GROFF_NO_SGR=1 # For Konsole and Gnome-terminal
И тогда по моему ~/.bashrc
, я делаю это:
# Get color support for 'less'
export LESS="--RAW-CONTROL-CHARS"
# Use colors for less, man, etc.
[[ -f ~/.LESS_TERMCAP ]] && . ~/.LESS_TERMCAP
ПРИМЕЧАНИЕ. См. Документацию по LESS_TERMCAP_*
переменным? за то, как это работает.
Конечный результат
Стефан Ласевский
источник
echo -e "\e[04mhello world\e[0m"
консоль и терминал X11 и увидев разницу. Таким образом, этот хак злоупотребляет termcap, чтобы лгать LESS о том, какие коды он должен испускать для жирного шрифта / подчеркивания, и вынуждает его вместо этого создавать цветовые escape-коды.export GROFF_NO_SGR=1
.Вы можете решить эту проблему, например, используя другой пейджер
most
.man
фактически будет использовать программу, указанную вPAGER
переменной окружения. Со страницы man (1) man:Если
most
в вашей системе установлено, попробуйте это перед запускомman
:источник
most
должен быть установлен, чтобы это работало.most
имеет странные сочетания клавиш ... которые не настраиваются.Подчеркивание по умолчанию больно мои глаза. Эта настройка значительно улучшает
man
чтение моей страницы:Добавьте следующее в ваш `~ .bashrc ':
Для выигрыша объедините с
export MANPAGER='less -s -M +Gg'
(источник), чтобы отобразить ваш процент в документе.источник
export GROFF_NO_SGR=1
работы на некоторых эмуляторах терминала.export MANPAGER='less -s -M +Gg'
добавлений дисплея .Если вы используете Oh My Zsh , вы можете добавить
colored-man-pages
вplugins
массив в вашем.zshrc
файле.источник
Сохраняйте «большинство» постоянно
Открытый терминал ( Ctrl+ Alt+ T)
Установите «большинство».
отредактируйте .bashrc, введите:
Добавьте эти строки:
Сохранить
( Ctrl+ O) -> Enter-> ( Ctrl+ X)
обновление
Контрольная работа
Это также работает в Xterm.
источник
Взято из http://nion.modprobe.de/blog/archives/569-colored-manpages.html
Выдержка:
Теперь получите
terminfo
описание (сохраните следующее как mostlike.txt):Теперь скомпилируйте его, используя
tic
(компилятор entry-description terminfo):(Вы можете удалить
mostlike.txt
файл после компиляции.)А затем просто определите псевдоним в
*rc
файле вашей любимой оболочки.Если вы хотите изменить файл terminfo, используйте его,
infocmp mostlike
чтобы получить его содержимое позже.источник
mostlike.txt
онлайн.Принимая ответ dirtybit , я хотел изменить цвет выделенных результатов поиска. Это называется «режим ожидания», вот пример файла «xterm-yellow.ti»:
Скомпилируйте и установите файл:
Добавьте строку в «~ / .profile» или аналогичную:
источник