2015-08-26 49 views
0

我基本上想要vim在C++頭文件上使用命令,並且只在C++頭文件上使用。我怎樣才能做到這一點?只爲C++頭文件設置vim文件類型腳本

我試圖把~/.vim/ftplugin/hpp.vim中的命令無效,因爲hpp文件被Vim視爲cpp文件。

回答

2

在你~/.vim/ftplugin/cpp.vim

if expand('%:e') ==? 'hpp' 
    " your script here 
endif 

更妙的是:

if expand('%:e') =~? '\v^h%(pp|h|\+\+|xx)?$' 
    " your script here 
endif 
+0

別忘了.hh這是.cc的掛件也用於C++。 vim如何檢測沒有擴展名的文件的語言? –

+1

@FelixBytow編輯,謝謝。擴展名只是確定文件類型的一種方式,查看文件的開頭是另一種方式。還有其他的方法。如果您好奇,請參閱運行時目錄中的文件'filetype.vim'。 –

0

使您的HPP文件的文件類型是公認的HPP您應該添加

autocmd BufEnter *.hpp :setlocal filetype=hpp 

到你的vimrc

然後可以使用~/.vim/ftplugin/hpp.vim把你的具體命令

+0

你的方法可行,但也消除了語法高亮。 – StAlRuth