答案1
从您的屏幕截图来看,您似乎正在使用 cmd.exe 应用程序并使用 Win10 中 Windows Subsystem for Linux (WSL) 功能中的 vim。根据您当前使用的版本,您可能完全支持或不完全支持所需的颜色空间(包含任何字符的行之外)。
直到最近,cmd.exe 才支持 16 种颜色。因此,在 vimrc 中设置 t_Co=256(或等效值)意味着您的 256 色配色方案应近似为 16 色调色板中最接近的颜色。2016 年 9 月,WSL for Win10 的开发人员宣布支持 24 位真彩色,而不再仅限于 256 种颜色。您可以阅读有关它的信息这里。但是,控制台属性中没有可公开访问的设置来更改配色方案。
另外,Win10 开发人员已决定用 PowerShell 替换 cmd.exe 作为默认命令行应用程序,尽管微软后来在一篇博客文章中澄清说 cmd.exe 将继续包含在操作系统中,并且没有弃用它的计划。Powershell 的默认配色方案仅支持 16 位颜色。有一个功能请求,要求为 powershell 启用更多颜色支持,您可以在 Powershell 的 github 问题页面中阅读有关它的信息。
一个解决方案是使用 Vim 的原生 Windows 版本(可在 chocolatey 存储库以及官方 github 页面和一些其他来源中获得),并使用 gvim,它在渲染 24 位颜色时不会出现任何问题。