Коли я дивлюся на сторінку чоловіка на своїй "консолі" (не в xterm
), я бачу деяке забарвлення, але я не розумію цього у своїх xterm
(наприклад konsole
), чи є якийсь спосіб я це ввімкнути? сподіваємось, досить просте рішення?
Коли я дивлюся на сторінку чоловіка на своїй "консолі" (не в xterm
), я бачу деяке забарвлення, але я не розумію цього у своїх xterm
(наприклад konsole
), чи є якийсь спосіб я це ввімкнути? сподіваємось, досить просте рішення?
Відповіді:
Вам потрібно скористатися termcap(5)
функцією. Сторінка man у деяких 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_*
змінні? як це працює.
export GROFF_NO_SGR=1
.
Ви можете вирішити цю проблему, наприклад, використовуючи інший пейджер most
. man
буде фактично використовувати програму, вказану в PAGER
змінній оточення. На сторінці man (1) man:
ПІДПРИЄМНИК, ПАГЕР
Якщо встановлено $ MANPAGER або $ PAGER (у налаштуваннях використовується $ MANPAGER), його значення використовується як назва програми, що використовується для відображення сторінки вручну. За замовчуванням використовується пейджер -s.
Значення може бути простим ім'ям команди або командою з аргументами і може використовувати котирування оболонки (зворотні косої риси, одинарні лапки або подвійні лапки).
Він може не використовувати труби для з'єднання декількох команд; якщо вам це потрібно, використовуйте обгортковий скрипт, який може приймати файл для відображення або як аргумент, або на стандартному введенні.
Якщо most
він встановлений у вашій системі, спробуйте це перед запуском man
:
export PAGER=most
most
слід встановити, щоб це працювало.
most
має дивні клавіші ... які не можна налаштувати.
За замовчуванням підкреслює біль у мене. Ця настройка значно покращує man
читання моєї сторінки:
Додайте у свій {~ .bashrc 'таке:
# Have less display colours
# from: https://wiki.archlinux.org/index.php/Color_output_in_console#man
export LESS_TERMCAP_mb=$'\e[1;31m' # begin bold
export LESS_TERMCAP_md=$'\e[1;33m' # begin blink
export LESS_TERMCAP_so=$'\e[01;44;37m' # begin reverse video
export LESS_TERMCAP_us=$'\e[01;37m' # begin underline
export LESS_TERMCAP_me=$'\e[0m' # reset bold/blink
export LESS_TERMCAP_se=$'\e[0m' # reset reverse video
export LESS_TERMCAP_ue=$'\e[0m' # reset underline
export GROFF_NO_SGR=1 # for konsole and gnome-terminal
Для виграшу комбінуйте з export MANPAGER='less -s -M +Gg'
(джерело), щоб відобразити свій відсоток у документі.
export GROFF_NO_SGR=1
роботи над деякими термінальними емуляторами.
export MANPAGER='less -s -M +Gg'
додає дисплей .
Зберігайте "найбільш" наполегливо
Відкритий термінал ( Ctrl+ Alt+ T)
Встановіть "більшість".
sudo apt-get install most
редагувати .bashrc, введіть:
nano ~/.bashrc
Додайте ці рядки:
# color man-pages persistently
export PAGER='most'
Зберегти
( Ctrl+ O) -> Enter-> ( Ctrl+ X)
Оновити
source ~/.bashrc
Тест
man ln
Це також працює в xterm.
Взято з http://nion.modprobe.de/blog/archives/569-colored-manpages.html
Витяг:
$ mkdir ~/.terminfo/ && cd ~/.terminfo
Тепер отримайте terminfo
опис (збережіть наступне як mostlike.txt):
# Reconstructed via infocmp from file: /usr/share/terminfo/x/xterm-pcolor
mostlike|manpages with color looking like most,
am, hs, km, mir, msgr, xenl,
cols#80, it#8, lines#24, wsl#40,
acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
bel=^G, bold=\E[1m\E[31m, clear=\E[H\E[2J, cr=^M,
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M,
dsl=\E]0;\007, ed=\E[J, el=\E[K, enacs=\E)0, fsl=^G,
home=\E[H, ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=^J,
is2=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>, kbs=^H,
kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
kdch1=\E[3~, kf1=\E[11~, kf10=\E[21~, kf11=\E[23~,
kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~,
kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~,
kf2=\E[12~, kf20=\E[34~, kf3=\E[13~, kf4=\E[14~,
kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
kfnd=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~,
kslt=\E[4~, rc=\E8, rev=\E[7m\E[34m, ri=\EM, rmacs=^O,
rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmkx=\E[?1l\E>,
rmso=\E[m, rmul=\E[m,
rs2=\E7\E[r\E8\E[m\E[?7h\E[?1;3;4;6l\E[4l\E>, sc=\E7,
sgr0=\E[m, smacs=^N, smcup=\E7\E[?47h, smir=\E[4h,
smkx=\E[?1h\E=, smso=\E[1;30m\E[47m, smul=\E[32m,
tbc=\E[3g, tsl=\E]0;, u6=\E[%i%d;%dR, u7=\E[6n,
u8=\E[?1;2c, u9=\E[c,
Тепер компілюйте його за допомогою tic
(компілятор вступу-опису terminfo):
$ tic mostlike.txt
(Ви можете видалити mostlike.txt
файл після компіляції.)
А потім просто визначте псевдонім у *rc
файлі улюбленої оболонки.
$ alias man="TERMINFO=~/.terminfo/ LESS=C TERM=mostlike PAGER=less man"
Якщо ви хочете змінити файл terminfo, скористайтеся, infocmp mostlike
щоб отримати його вміст пізніше.
mostlike.txt
Інтернеті.
Беручи відповідь dirtybit в , я хотів би змінити колір виділених результатів пошуку. Це називається "режим очікування", ось приклад файлу "xterm-yellow.ti":
xterm-yellow|yellow standout mode,
# exit standout mode
rmso=\e[m,
# begin standout mode
smso=\e[5;30;43m,
# similar terminal
use=xterm,
Складіть і встановіть файл:
tic xterm-yellow.ti
Додайте рядок до "~ / .profile" або подібного:
TERM=xterm-yellow
echo -e "\e[04mhello world\e[0m"
і консоль, і термінал X11 і побачивши різницю. Отже, вищезгаданий хак зловживає терміном cap, щоб ЛЕГО менше про те, які коди потрібно видавати для жирного / підкреслення і змушує його створювати кольорові коди втечі.