1

我正在使用 OmniCppComplete vim 插件,自动完成没有显示任何与 Eigen 库(c++ 库)相关的内容。

我首先从我的 Eigen 文件的根目录开始递归地创建了一个带有 ctags 的标签文件,并将该文件链接到我的 .vimrc 中。还尝试了其他几个位置(例如直接在 Eigen 的 src 文件夹中)。这个方法应该可以工作,因为我设法用其他库做到了。

我正在使用 Exuberant Ctags 5.8、vim 8.1 以及现在可用的最新 Eigen 和 OmniCppComplete 版本。

用于生成标签的代码(来自 ~/.vim/tags 文件夹):

ctags -R --sort=yes --c++-kinds=+p --fields=+iaS --extra=+q --language-force=C++ -f eigen ~/Documents/Librairies/Eigen/

.vimrc 中的链接:

set tags+=~/.vim/tags/eigen

我应该能够使用 OmniCppComplete 自动完成特征函数。当我输入 myVector.con(myVector 是一个 VectorXd 对象)时,我应该会看到 例如,conservativeResize() 出现,因为它用于调整 VectorXd 的大小。

我不能完全确定,但这可能是因为 Eigen 中有 c++ 和 fortran 文件,所以通过使用 --language-force=C++,它会给 fortran 文件带来问题,但如果我不使用它,那么它可能会忽略源文件(没有扩展名)。

有人知道发生了什么吗?(如果我没有提供足够的信息,我会提供更多)

4

0 回答 0