Vim和Tmux开启True-Color支持
作者:互联网
为什么需要开启True-Color支持
当为Vim编辑器安装一些主题时,有的主题是需要启用True-Color支持才能正常显示使用!
验证终端的色彩支持
真彩色的支持是需要终端的支持的,常用的终端(如:iterm2)都已经支持,Xshell6(Build0181)之后版本也支持;
方式1:在终端里执行 24-bit-color.sh 脚本,如果支持真彩色,则显示如下:
否则则类似下图:
方式2:在终端里执行以下脚本
awk 'BEGIN{
s="/\\/\\/\\/\\/\\"; s=s s s s s s s s;
for (colnum = 0; colnum<77; colnum++) {
r = 255-(colnum*255/76);
g = (colnum*510/76);
b = (colnum*255/76);
if (g>255) g = 510-g;
printf "\033[48;2;%d;%d;%dm", r,g,b;
printf "\033[38;2;%d;%d;%dm", 255-r,255-g,255-b;
printf "%s\033[0m", substr(s,colnum+1,1);
}
printf "\n";
}'
如果检查终端不支持真彩色,那只能更换一个支持的终端客户端软件,继续后续的教程!
如何开启True-Color支持
想要真正的多色彩支持,需要:
- 模拟终端 支持
- Vim 支持
- Tmux 支持
配置终端支持
echo $TERM #查看当前终端类型,term/linx...
tput colors #查看当前终端色彩,8,256...
终端支持256:/etc/profile.d/bn-xterm-color.sh
if [[ -e /usr/share/terminfo/x/xterm-256color || -e /lib/terminfo/x/xterm-256color ]]; then
export TERM='xterm-256color'
else
export TERM='xterm-color'
fi
配置Tmux支持
tmux > 2.2 后开始支持真彩色。在 .tmux.conf 中添加如下内容:
set -g default-terminal screen-256color
set-option -ga terminal-overrides ",*256col*:Tc" # 这句是关键
重新开启 tmux 即可。注意要先退出所有正在运行的 tmux 后再重开 tmux。
配置Vim支持
vim >= 7.4.1770 及 neovim >= 0.2.2 都支持真彩色,但需要少许配置。在 .vimrc 中加入:
set t_Co=256 #vim支持256:
if has("termguicolors")
" fix bug for vim
set t_8f=^[[38;2;%lu;%lu;%lum
set t_8b=^[[48;2;%lu;%lu;%lum
" enable true color
set termguicolors
endif
其中 termguicolors 用来开启真彩色,前面两行用来解决 vim 的 BUG (neovim 不需要),其中 ^[ 是代表 ESC 键,需要在 vim 中按 Ctrl-v ESC 来输入。
标签:set,Tmux,Color,xterm,真彩色,支持,Vim,终端,vim 来源: https://www.cnblogs.com/Beavan/p/16563136.html