我刚刚安装了colour-man-pages zsh 插件。
它运行良好,但我在底部消息上有一个难看的颜色输出:
在不覆盖所有内容的情况下个性化插件颜色的正确方法是什么?似乎颜色是在插件激活过程中直接设置的。
或者它可能是我的系统的错误,可以用另一种方式修复?事实上,这种默认的不可读的颜色输出看起来很奇怪。
我在 Ubuntu 18.10 和 gnome-terminal 下运行。
手册页 ( groff
)的格式不允许明确使用颜色,但使用了一些文本装饰,如粗体或下划线,而这些文本又可以由查看者重新解释以显示颜色。而这正是联插件是干什么的,所以我建议删除此插件,而是直接在设置颜色.zshrc
通过LESS_TERMCAP
变量(我假设你正在使用less
你man
的寻呼机等做这个插件)。
这是带有描述的变量列表:
export LESS_TERMCAP_mb=$'\e[6m' # begin blinking
export LESS_TERMCAP_md=$'\e[34m' # begin bold
export LESS_TERMCAP_us=$'\e[4;32m' # begin underline
export LESS_TERMCAP_so=$'\e[1;33;41m' # begin standout-mode - info box
export LESS_TERMCAP_me=$'\e[m' # end mode
export LESS_TERMCAP_ue=$'\e[m' # end underline
export LESS_TERMCAP_se=$'\e[m' # end standout-mode
Run Code Online (Sandbox Code Playgroud)
可以使用此脚本找到颜色代码列表:
#!/bin/bash
echo "PALETTE OF 8 COLORS (bold, high intensity, normal, faint)"
for i in {30..37}; do printf "\e[1;${i}m1;%-2s \e[m" "$i"; done; echo
for i in {90..97}; do printf "\e[${i}m%+4s \e[m" "$i"; done; echo
for i in {30..37}; do printf "\e[${i}m%+4s \e[m" "$i"; done; echo
for i in {30..37}; do printf "\e[2;${i}m2;%-2s \e[m" "$i"; done;
echo -e "\n\n\nPALETTE OF 256 COLORS (only normal)"
j=8
for i in {0..255}; do
[[ $i = 16 ]] && j=6
[[ $i = 232 ]] && j=8
printf "\e[38;5;${i}m38;5;%-4s\e[m" "${i}"
(( i>15 && i<232 )) && printf "\e[52C\e[1;38;5;${i}m1;38;5;%-4s\e[52C\e[m\e[2;38;5;${i}m2;38;5;%-4s\e[m\e[126D" "${i}" "${i}"
[[ $(( $(( $i - 15 )) % $j )) = 0 ]] && echo
[[ $(( $(( $i - 15 )) % $(( $j * 6 )) )) = 0 ]] && echo
done
exit 0
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1374 次 |
最近记录: |