VIM:单击另一个文件后语法高亮显示消失了

时间:2019-11-13 14:14:57

标签: vim

我在gvim中突出显示语法有问题。 我的vimrc文件中有以下命令:

autocmd BufNewFile,BufRead *.v,*.vs,*.va set syntax=verilog

但是,如果我在gvim中读取文件-“ a.txt”并且拆分时也打开了“ b.txt”,则当我单击b然后返回到a时,语法高亮显示将消失点击。 有人试图向我解释autocmd并非总是运行。 任何想法

1 个答案:

答案 0 :(得分:1)

BufRead选项仅在将文件读取到 new 缓冲区中时适用,因此,仅在拆分之间切换不会触发auto命令是有意义的。该文件已被读入缓冲区;除非您关闭并重新打开它,否则不会再次读取它。

您需要选项BufEnter,因为它会在输入缓冲区时触发。您的新命令应如下所示:

autocmd BufNewFile,BufRead,BufEnter *.v,*.vs,*.va set syntax=verilog

请注意,使用filetype代替syntax可能更好,因为syntax不会影响缩进规则(如果有的话)。甚至更好的是,使用插件可以自动设置所有内容,而无需在.vimrc中使用显式自动命令。只需从快速的Google那里,this plugin就会弹出一堆。

相关问题