我正在使用vim编辑一些python文件,最近在我将缓冲区保存在vim中后偶尔会出现语法高亮显示消失的情况。我试图重设syntax on
和set filetype=python
,但无济于事。我根本不知道是什么原因导致此问题,所以现在我的诊断信息很少。但是,有人在此之前遇到过这种情况吗,或者事情会在哪里崩溃?
最佳答案
这不是一个解决方案,但是很难在注释中写/读。
我的意思是,当我开始修复自己的.vimrc
时,我在弄乱语法/突出显示,这就是为什么我注意到了它。syntax on
/syntax enable
仅准备文件加载(将大量au
添加到BufNewFile / BufRead
中)。因此,如果某些插件在编写文件时搞砸了语法/突出显示设置,则必须再次加载文件以使所有“魔术”发生,而仅通过设置filetype
是不够的。进行:au BufRead
,您将在启动语法时看到所有添加的自动命令。但是必须先加载文件才能获取所有settigs。
看到这个:> syntax-loading
如果您不想重新加载文件,请尝试syntax enable
,我认为这与syntax on
不同。
或者尝试也做:doautocmd filetypedetect BufRead %
,请参阅> autocmd-execute
我不知道是什么原因引起的,可以吗?如果添加了一些自动命令,还是自己做颜色/语法?
否则,在找到解决方案之前,您可以尝试在autocmd BufWritePost * <with the commands above that works>
的末尾添加.vimrc
,在这种情况下请使用augroup
。
这是一个例子:
augroup myResetSyntax
au!
autocmd BufWritePost * syntax enable | doautocmd filetypedetect BufRead "%"
augroup END
关于vim - 语法突出显示在文件保存期间随机消失,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14779299/