如何让Vim在Cygwin上显示正确的颜色



我在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终端设置它们。

从http://code.google.com/p/mintty/wiki/Tips

:

<

改变颜色/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颜色,以及真实终端的所有优点。

相关内容

  • 没有找到相关文章

最新更新