如何让 vimrc 颜色填满屏幕?

如何让 vimrc 颜色填满屏幕?

我在 vimrc 中设置了配色方案。当我设置它并将 term 变量设置为 xterm-256color 时,背景颜色只出现在文本上。然后我找到了解决方案,将 term 变量设置为 screen-256color,但这只允许背景填充文件中的文本,而不会填充下面的空白处。有人有解决方案吗?我在下面附上了两个屏幕截图:

xterm-256色

屏幕-256色

答案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 位颜色时不会出现任何问题。

相关内容