如何删除 vim 中突出显示的文本背景?
How to remove highlighted background of text in vim?
我指的是使 vim 不可读的灰色背景突出显示。
注意 - 我在 Linux 的 Windows 子系统上 运行 vim。此外,这不是搜索突出显示。这是我每次打开 Vim.
时的默认视图
好像跟语法高亮没关系。我创建了一个名为 a.txt 的新文件。在使用 :syn list 时,它说没有为此缓冲区定义语法项,但我在每一行上仍然有灰色背景。
您需要找出哪个语法组导致突出显示。 :syn list
显示所有活动组,但安装 SyntaxAttr.vim - Show syntax highlighting attributes of character under cursor 插件后更容易。当您知道有问题的语法组的名称时,您可以调查它的来源; (最后几行):scriptnames
可能有帮助。
我的默认配色方案 - 'evening' 似乎已被上次 windows 更新修改。解决方法是将颜色方案更改为不同的值 - desert/elflord 等似乎工作正常。注意 - 这不是解决方案,只是一种变通方法,因为您可以看到顶行中仍然有灰色背景突出显示。
对于现在遇到此问题的任何人,以下是我解决此问题的方法。
我首先意识到发生的事情是我的主题由于某种原因没有设置高亮组 Normal。
如果在命令行中,我 运行
:highlight Normal ctermfg=NONE
突出显示看起来很正常。
唯一的问题是我必须在输入缓冲区后 运行 这样做,所以 .vimrc 中的传统高亮显示不起作用。
正在添加
func! FixNormal()
highlight Normal ctermfg=252
endfu
com! Normal call FixNormal()
然后在这个函数上面加入
au! BufEnter * Normal
问题会自行解决。
说明
该代码创建了一个函数,该函数在被调用时会执行与最初运行的命令相同的命令(使用 None 突出显示 Normal)。
当进入缓冲区 (BufEnter) 并且 运行 函数正常时,自动命令 (au!) 会调用该函数。
我指的是使 vim 不可读的灰色背景突出显示。 注意 - 我在 Linux 的 Windows 子系统上 运行 vim。此外,这不是搜索突出显示。这是我每次打开 Vim.
时的默认视图好像跟语法高亮没关系。我创建了一个名为 a.txt 的新文件。在使用 :syn list 时,它说没有为此缓冲区定义语法项,但我在每一行上仍然有灰色背景。
您需要找出哪个语法组导致突出显示。 :syn list
显示所有活动组,但安装 SyntaxAttr.vim - Show syntax highlighting attributes of character under cursor 插件后更容易。当您知道有问题的语法组的名称时,您可以调查它的来源; (最后几行):scriptnames
可能有帮助。
我的默认配色方案 - 'evening' 似乎已被上次 windows 更新修改。解决方法是将颜色方案更改为不同的值 - desert/elflord 等似乎工作正常。注意 - 这不是解决方案,只是一种变通方法,因为您可以看到顶行中仍然有灰色背景突出显示。
对于现在遇到此问题的任何人,以下是我解决此问题的方法。
我首先意识到发生的事情是我的主题由于某种原因没有设置高亮组 Normal。 如果在命令行中,我 运行
:highlight Normal ctermfg=NONE
突出显示看起来很正常。
唯一的问题是我必须在输入缓冲区后 运行 这样做,所以 .vimrc 中的传统高亮显示不起作用。
正在添加
func! FixNormal()
highlight Normal ctermfg=252
endfu
com! Normal call FixNormal()
然后在这个函数上面加入
au! BufEnter * Normal
问题会自行解决。
说明
该代码创建了一个函数,该函数在被调用时会执行与最初运行的命令相同的命令(使用 None 突出显示 Normal)。 当进入缓冲区 (BufEnter) 并且 运行 函数正常时,自动命令 (au!) 会调用该函数。