vim似乎找不到.clang_complete

在尝试使用
vim中的
clang complete设置C的自动完成时,到目前为止,当我在.c文件中时,当我按下ctrl x,u时,我会自动完成.但是它只显示一些符号.

所包含标题中的所有功能都不会出现在自动完成弹出框中.似乎只显示typedef?

项目结构非常简单:

$tree -ap
.
├── [-rwxrw-r--]  .clang_complete
├── [-rwxrw-r--]  makefile
└── [drwxrw-r--]  src
    └── [-rwxrw-r--]  FlightControl.c

1 directory, 3 files

我尝试在项目文件夹中创建.clang_complete文件,其中包含以下内容:

-I/.../Libraries/xpSDK/CHeaders/XPLM

我仔细检查了XPLM标头的路径,这是正确的.

任何想法都错了吗?

最佳答案 在完成期间,libclang会尝试通过忽略错误来为用户提供最长的匹配列表.我猜你没有定义XPLM_API宏.由于它用于声明头文件中的每个函数,因此您不会在完成列表中看到任何函数.看看XPLMDefs.h中的定义我认为libclang得到的平台没有定义!错误(甚至可能是几次).

如果你定义你的平台完成它应该工作,我这样做是通过将-DLIN添加到.clang_complete文件并完成现在工作.

所以它似乎不是vim或clang_complete的问题,尽管在这种情况下发出警告会很好.

点赞