包含标准头后,Vim代码完成不起作用

mas*_*oud 7 c++ vim autocomplete

我必须在文本模式debian linux中开发我的项目.我正在使用Vim,我在其上安装了clang_completion插件.我.clang_completion在我的项目的根目录中创建了文件:

-I.
-I/usr/include
-I/usr/include/c++/4.6
Run Code Online (Sandbox Code Playgroud)

当我写下面的程序时,完成工作正常.

//#include <stdio.h>
int main()
{
  struct A
  {
    int x, y;
  };

  A a;
  a. // After putting dot, the suggestion popup appears

  return 0;
}
Run Code Online (Sandbox Code Playgroud)

但是,删除第一行的注释后,它不起作用!我怎样才能克服这个问题?

Vin*_*Pii 0

clang_complete过去已经成功使用过该插件(现在我只使用 cscope 和 ctags,我认为这已经足够了)。

包含外部标头在我的配置中工作得很好,但是,正如clang 完整插件页面指定的那样,放置包含路径(或您可能想要传递给 clang 编译器的任何其他标志)的文件必须命名,.clang_complete而不是.clang_completion.

另外,我过去常常将选项放在一行上,就像我要将文件的纯内容.clang_complete作为命令行选项传递一样(不知道用 分隔行是否\有效)。

希望这可以帮助。