我正在尝试为我的c ++项目使用google.vim(and on vim.org)缩进样式,但我似乎无法加载它。我使用vundle安装了google.vim
并打开了一个cpp文件,发现我的tabstops,shiftwidths等没有改变。如果设置全局ts和sw参数,它们是否会被覆盖?在vim中编辑文件时如何强制某个缩进?当我编辑cpp文件时,我希望我的vimrc文件中的所有内容都被google.vim文件覆盖。
在vim中运行:filetype
命令会显示以下信息:
detection:ON plugin:ON indent:ON
最重要的是,我不明白如何告诉vim使用位于〜/ .vim / vundle / google.vim / indent / google.vim下的google.vim文件。根据我的阅读,vim会检测当前文件的文件类型,并使用相应的.vim文件进行语法和缩进。那么我是否必须将我的google.vim文件重命名为cpp.vim?
在大多数情况下,我喜欢使用3的tabstop和3的shiftwidth,所以我在.vimrc文件中设置它们。但是,当我编辑cpp文件时,我希望将所有设置从全局设置更改为google.vim文件设置。
答案 0 :(得分:3)
您必须将文件从google.vim
重命名为cpp.vim
,如the description of the plugin on vim.org所示。
一般解释:
将filetype plugin indent on
添加到~/.vimrc
允许Vim检测您编辑的文件的文件类型(通常基于文件扩展名)和源文件类型特定的插件和缩进脚本。
这个想法很简单:您使用{{LANGUAGE}}
文件类型编辑文件,Vim会尝试在ftplugin/{{LANGUAGE}}.vim
中找到它找到的indent/{{LANGUAGE}}.vim
和runtimepath
。
由于您文件的文件类型为cpp
,因此Vim会幸福地忽略您的google.vim
缩进脚本,因此您必须将其重命名为cpp.vim
才能生效。
或者您可以重命名所有C ++文件foobar.google
并教Vim识别*.google
文件,但是......听起来不对; - )