我需要在系统中哪里查看才能给手册页着色?
使用 less 查看手册页,因此我尝试将以下几行添加到我的 .bashrc 中来更改颜色:(顺便说一下,这种方法效果很好。)
#
# L E S S C O L O R S F O R M A N P A G E S
#
# CHANGE FIRST NUMBER PAIR FOR COMMAND AND FLAG COLOR
# currently 0;33 a.k.a. brown, which is dark yellow for me
export LESS_TERMCAP_md=$'\E[0;33;5;74m' # begin bold
# CHANGE FIRST NUMBER PAIR FOR PARAMETER COLOR
# currently 0;36 a.k.a. cyan
export LESS_TERMCAP_us=$'\E[0;36;5;146m' # begin underline
# don't change anything here
export LESS_TERMCAP_mb=$'\E[1;31m' # begin blinking
export LESS_TERMCAP_me=$'\E[0m' # end mode
export LESS_TERMCAP_se=$'\E[0m' # end standout-mode
export LESS_TERMCAP_so=$'\E[38;5;246m' # begin standout-mode - info box
export LESS_TERMCAP_ue=$'\E[0m' # end underline
#########################################
# Colorcodes:
# Black 0;30 Dark Gray 1;30
# Red 0;31 Light Red 1;31
# Green 0;32 Light Green 1;32
# Brown 0;33 Yellow 1;33
# Blue 0;34 Light Blue 1;34
# Purple 0;35 Light Purple 1;35
# Cyan 0;36 Light Cyan 1;36
# Light Gray 0;37 White 1;37
#########################################
令我感到惭愧的是,我不得不承认我没有弄清楚第二对数字的含义,即5;74
和5;146
。
有人可以进一步澄清这一点吗?
答案1
export LESS_TERMCAP_md=$'\E[0;33;5;74m' # begin bold
export LESS_TERMCAP_us=$'\E[0;36;5;146m' # begin underline
在这两种情况下,所有颜色和属性都被重置(0),前景色切换为黄色/棕色(33)或青色(36),然后打开闪烁(5),然后还会发生其他一些事情(74 或 146),这些事情可能是未定义且不是所需的。
export LESS_TERMCAP_so=$'\E[38;5;246m'
这个不同,因为 38 需要额外的数字参数。它代表扩展的前景色(同样,48 也代表背景色),如果后面跟着 5 作为下一个参数(这次与闪烁无关),则第三个数字指定颜色的索引(从 0 到 255:16 个标准传统颜色,后面跟着一个 6x6x6 RGB 立方体,后面跟着 24 个灰度颜色),参见例如这里。
某些终端仿真器还支持直接任意 RGB 颜色,在这种情况下,38 后面应该跟 2,然后跟 0-255 范围内的三个十进制数,分别表示 R、G、B,例如 #BADA55 是
\E[38;2;186;218;85m
答案2
“\e[...m” 是 SGR CSI 代码。维基百科页面“ANSI 转义代码”“CSI 代码”部分描述它们。
答案3
在...的帮助下http://invisible-island.net/xterm/ctlseqs/ctlseqs.html通过维基百科链接我得出结论,这5
意味着5 Blink: Slow less than 150 per minute
。
最后的数字听起来像这样:
If 88- or 256-color support is compiled, the following apply.
P s = 3 8 ; 5 ; P s → Set foreground color to the second P s .
P s = 4 8 ; 5 ; P s → Set background color to the second P s .
而且看起来数字的数量并不重要,重要的是它们的时间顺序。