Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/128.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为c++;仅标题 我基本上想有 vim < /Cord>使用C++头文件的命令,只在C++头文件上使用。我该怎么做_C++_Vim - Fatal编程技术网

为c++;仅标题 我基本上想有 vim < /Cord>使用C++头文件的命令,只在C++头文件上使用。我该怎么做

为c++;仅标题 我基本上想有 vim < /Cord>使用C++头文件的命令,只在C++头文件上使用。我该怎么做,c++,vim,C++,Vim,我已尝试将命令放入~/.vim/ftplugin/hpp.vim中,但没有效果,因为vim将hpp文件视为cpp文件。您应该添加 autocmd BufEnter *.hpp :setlocal filetype=hpp 给你的vimrc 以便将hpp文件的文件类型识别为hpp 然后,您可以使用~/.vim/ftplugin/hpp.vim将特定命令放入~/.vim/ftplugin/cpp.vim中: if expand('%:e') ==? 'hpp' " your script

我已尝试将命令放入
~/.vim/ftplugin/hpp.vim
中,但没有效果,因为vim将hpp文件视为cpp文件。

您应该添加

autocmd BufEnter *.hpp :setlocal filetype=hpp
给你的vimrc

以便将hpp文件的文件类型识别为hpp


然后,您可以使用
~/.vim/ftplugin/hpp.vim
将特定命令放入
~/.vim/ftplugin/cpp.vim
中:

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

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

别忘了,H.这是C.X.的吊坠,也用于C++。vim如何在没有扩展名的文件上检测语言?@FelixBytow编辑,谢谢。扩展名只是确定文件类型的一种方法,查看文件开头是另一种方法。还有其他方法。如果您感兴趣,请参阅运行时目录中的文件
filetype.vim
。您的方法可以工作,但也可以删除语法突出显示。