我~/.vimrc
包含以下行:Vim的:語法文件沒有自動加載
au BufNewFile,BufRead *.fsh,*.vsh setf glsl
我~/.vim/syntax
目錄包含glsl.vim
如果手動加載(:setf glsl
在VIM)的作品,但在編輯時,它不會自動加載文件與這些擴展名。如何自動爲這些文件獲取語法高亮顯示?像往常一樣,語法高亮功能適用於其他文件。我的Vim版本是在Linux Mint上運行的。
我~/.vimrc
包含以下行:Vim的:語法文件沒有自動加載
au BufNewFile,BufRead *.fsh,*.vsh setf glsl
我~/.vim/syntax
目錄包含glsl.vim
如果手動加載(:setf glsl
在VIM)的作品,但在編輯時,它不會自動加載文件與這些擴展名。如何自動爲這些文件獲取語法高亮顯示?像往常一樣,語法高亮功能適用於其他文件。我的Vim版本是在Linux Mint上運行的。
我不認爲這條線可以在您的~/.vimrc
。由於裝貨單,它可能不得不在~/.vim/filetype.vim
而是。嘗試把這個放入該文件:
augroup filetypedetect
au BufNewFile,BufRead *.fsh,*.vsh setf glsl
augroup END
VIM命令可以在.vimrc中。這是它存在的關鍵。 –
Vim命令*可以*在.vimrc中,但它們也可以在其他地方。文件類型命令應該在filetype.vim中,並且在過去試圖將其強制轉換爲.vimrc時遇到了問題。這是因爲加載順序可能很重要,正如[此問題]所暗示的(https://stackoverflow.com/questions/2889766/best-way-to-organize-filetype-settings-in-vim-and-vimrc)。 –
嘗試將其添加到'/ usr/share/vim/vim73/filetype.vim'。在'〜/ .vim/filetype.vim'中放入'au BufNewFile,BufRead * .fsh,*。vsh setf glsl'後,它就起作用了。 – PeqNP
這可能是一個在黑暗中拍攝,但:你嘗試過使用擴展的形式'設置文件類型= glsl',而不是'SETF glsl'? –
@Nadir Sampaoli:這不是一個「擴展形式」,它是一個不同的命令。請參閱':help:setf'。 – benjifisher
@SurvivalMachine:使用':e foo.fsh'然後使用':verbose set ft?'會發生什麼? ':verbose au BufNewFile * .fsh'如何? – benjifisher