GLSL 语法荧光笔 http://www.vim.org/scripts/script.php?script_id=1002效果很好。但它无法识别通常以 #version 330
等行开头的 .frag 或 .vert 着色器文件。 。 (这是在 Ubuntu 12.04.2 LTS 上,一切都是最新的。)
有了这样一行,加载文件后必须手动输入 set syntax=glsl
,
可能是因为/usr/share/vim/vim73/filetype.vim 有
" Generic configuration file (check this last, it's just guessing!)
if
... getline(1)=~'^#'
... setf conf
.
为什么这没有被 ~/.vimrc 的 au BufNewFile,BufRead *.frag,*.vert setf glsl
否决?有没有一种解决方法可以避免在 filetype.vim 中出现错误?
最佳答案
How can I stop vim from loading a syntax file automatically for certain file types?很接近了。这是解决方法,文件 ~/.vim/filetype.vim:
if exists("did_load_filetypes")
finish
endif
augroup filetypedetect
" Override filetypes for certain files
autocmd! BufNewFile,BufRead *.frag setfiletype glsl
autocmd! BufNewFile,BufRead *.vert setfiletype glsl
augroup END
关于vim - ~/.vimrc 如何覆盖 filetype.vim 对语法高亮的错误猜测?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15976882/