Vim垂直分割高光不关闭

时间:2016-12-08 21:21:59

标签: vim

我无法使Vim垂直分割高光永久消失。

当我在Vim命令行:hi VertSplit ctermbg=None中使用此命令时,垂直分割高亮消失(如屏幕'B'中所示),但是当我在.vimrc.after中使用相同的命令时(我正在使用janus)对于vim,如屏幕'A'中所示)Screenshot of my Vim VerticalSplit state该命令不起作用。我已尝试使用'let','set'等命令执行该命令的许多变体,但没有结果,垂直分割保持不变。

有人可以帮忙,让我知道我做错了什么或我想做什么?我想从我的Vim中删除VerticalSplit高亮。

1 个答案:

答案 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 的意思是 将所有配置保存在一个文件中。所以这个编辑当然是 提供实现这一目标的选项。