我无法使Vim垂直分割高光永久消失。
当我在Vim命令行:hi VertSplit ctermbg=None
中使用此命令时,垂直分割高亮消失(如屏幕'B'中所示),但是当我在.vimrc.after中使用相同的命令时(我正在使用janus)对于vim,如屏幕'A'中所示)该命令不起作用。我已尝试使用'let','set'等命令执行该命令的许多变体,但没有结果,垂直分割保持不变。
有人可以帮忙,让我知道我做错了什么或我想做什么?我想从我的Vim中删除VerticalSplit高亮。
答案 0 :(得分:2)
您的 .vimrc 是按顺序执行的,所以可能是这个命令
被执行但随后被另一个人改写
你的命令或插件。然后解决方案是移动
发生这些其他变化后的命令。这可能也可能不起作用
取决于您的设置(请查看:h startup
以获取所发生情况的列表
在启动时和以什么顺序)。
我认为最好的解决方案是使用自动命令。这些意志 在事件之后执行命令,例如启动完成或 colorscheme改变了。将其添加到 .vimrc :
autocmd! ColorScheme * hi VertSplit ctermbg=none
现在,每当更改colorscheme时,此命令都会触发
任何文件(*
)。这也将触发您的初始colorscheme
在 .vimrc 中设置。
重要!如果你的 .vimrc 中设置的colorscheme已经完成
你的autocmd
行,那么当然不会触发任何东西(它不会被激活)
正在捕捉事件)。在这种情况下,您有两个选择:第一个是
显然将colorscheme设置为autocmd
之后。第二
选项是通过将行更改为:
autocmd! VimEnter,ColorScheme * hi VertSplit ctermbg=none
现在这将在Vim的启动过程之后触发(毕竟 .vimrc 的东西已经完成并加载了)以及每当你改变你的东西时 色彩方案。这样,您就不需要更改colorscheme文件。 无论如何你永远不应该这样做。 .vimrc 的意思是 将所有配置保存在一个文件中。所以这个编辑当然是 提供实现这一目标的选项。