为了给我的手册页上色,我把这个代码来自 archlinux.org进入.bashrc:
man() {
env LESS_TERMCAP_mb=$'\E[01;31m' \
LESS_TERMCAP_md=$'\E[01;38;5;74m' \
LESS_TERMCAP_me=$'\E[0m' \
LESS_TERMCAP_se=$'\E[0m' \
LESS_TERMCAP_so=$'\E[38;5;246m' \
LESS_TERMCAP_ue=$'\E[0m' \
LESS_TERMCAP_us=$'\E[04;38;5;146m' \
man "$@"
}
它工作得很好,除了当我用 搜索时/
,匹配项的颜色会变得更加模糊——与突出显示相反。我花了一些时间试图弄清楚这一点,但我无法真正理解它,所以如果我做任何事情,那只是反复试验。最好还是请教一下专家。那么我怎样才能让搜索匹配变成黄底黑字呢?
答案1
中的搜索图案less
根据突出模式设置进行着色,因此为了在黄色上显示黑色,您需要输入
export LESS_TERMCAP_so=$'\E[30;43m'
其中30
表示黑色前景和43
黄色背景。
答案2
请参阅man termcap
参考资料 获取您要导出的变量的完整定义。例如,此摘录涵盖了开始和结束突出模式:用于突出显示搜索的值:
se 结束突出模式
...
所以开始突出模式
您可以在突出模式下在黑色背景上设置黄色,如下所示:
export LESS_TERMCAP_so=$'\E[01;33;03;40m'
值得注意的是,您不需要在每个 shell 中导出这些变量,您可以将此函数移至您的~/.profile
或~/.bash_profile
在您登录时加载它们,它们将持续存在。