我在Cygwin上使用Vim。我想用沙漠的配色。在gVim中,它看起来像这样:
https://i.stack.imgur.com/FNaVa.png但是在我的MinTTY终端中,它看起来像这样:
https://i.stack.imgur.com/dYPkF.png有办法解决吗?
我的TERM变量设置为xterm-256color。此外,我还将t_Co=256添加到我的.vimrc文件中。但这没有用。
注:我已经找到解决办法了。我可以使用CSApprox/guicolorscheme插件修复它。然而,有没有办法解决它不使用插件?
尝试从vim
的沙漠配色方案定义中获取颜色的RGB 0xRRGGBB
值,并使用下面的技术将它们插入MinTTY。然后,您可以重写配色方案(可能首先在新名称下制作副本之后)以使用新定义的颜色(在0-15范围内)。您可以将echo
命令放入.bashrc
中,以便为打开的每个MinTTY终端设置它们。
:
<改变颜色/strong>
默认的前景,背景和光标颜色可以在选项对话框中更改,也可以在配置文件或命令行中指定foregroundcolor, backgroundcolor和cursorcolor设置。
但是,也可以在终端内使用xterm控制序列对此进行更改,例如:echo -ne 'e]10;#000000a' # Black foreground
echo -ne 'e]11;#C0C0C0a' # Light gray background
echo -ne 'e]12;#00FF00a' # Green cursor
在mintty中,RGB颜色值也可以使用逗号分隔的十进制符号来指定,例如255,0,0代替红色的#FF0000。但目前不支持X11颜色名称。
16种ANSI颜色可以在配置文件中设置,也可以在命令行中使用Blue或BoldMagenta等设置。这些都记录在手册的配置部分。它们也可以使用xterm控制序列进行更改。下面是它们的默认值:
echo -ne 'e]4;0;#000000a' # black
echo -ne 'e]4;1;#BF0000a' # red
echo -ne 'e]4;2;#00BF00a' # green
echo -ne 'e]4;3;#BFBF00a' # yellow
echo -ne 'e]4;4;#0000BFa' # blue
echo -ne 'e]4;5;#BF00BFa' # magenta
echo -ne 'e]4;6;#00BFBFa' # cyan
echo -ne 'e]4;7;#BFBFBFa' # white (light grey really)
echo -ne 'e]4;8;#404040a' # bold black (i.e. dark grey)
echo -ne 'e]4;9;#FF4040a' # bold red
echo -ne 'e]4;10;#40FF40a' # bold green
echo -ne 'e]4;11;#FFFF40a' # bold yellow
echo -ne 'e]4;12;#6060FFa' # bold blue
echo -ne 'e]4;13;#FF40FFa' # bold magenta
echo -ne 'e]4;14;#40FFFFa' # bold cyan
echo -ne 'e]4;15;#FFFFFFa' # bold white
如果您正在使用cygwin,那么为什么要使用功能不足的mintty?使用xterm,您可以从256种颜色中选择每种vim颜色,以及真实终端的所有优点。