当前位置: 首页>>技术教程>>正文


如何在VIM(gvim)中启用智能感知

, , ,

问题描述

有什么办法可以在VIM(gvim)中启用智能感知。我希望将其用于STL。

最佳方法

请原谅我先纠正您,但是IntelliSense是Microsoft Visual Studio中高级代码完成的名称,而不是代码完成的总称。

要回答您的问题,您可能需要使用YouCompleteMe。使用vim插件管理器进行安装不是很困难,但是不要忘记运行用于编译YCM编译组件的shell脚本。仔细阅读文档,可以避免大多数最初的问题。

次佳方法

设置ctags数据库以与omnicppcomplete一起使用

为stdlibc ++和STL创建标签

$ ctags -R --c++-kinds=+p --fields=+iaS --extra=+q -f ~/.vim/tags/stdlibcpp /usr/include/c++/4.2.4/

$ ctags -R --c++-kinds=+p --fields=+iaS --extra=+q -f ~/.vim/tags/boost /usr/include/boost/

$ apt-file list libc6-dev | grep -o '/usr/include/.*h'> ~/.vim/tags/libc6-filelist
$ ctags --c++-kinds=+p --fields=+iaS --extra=+q -I__wur -I__THROW -I__nonnull+ -f ~/.vim/tags/libc6 -L ~/.vim/tags/libc6-filelist

以下是三个您会发现有用的链接:

Vim Intellisense

C++ code completion

OmniCppComplete : C/C++ omni-completion with ctags database

第三种方法

coc似乎很有前途,将Intellisense与vim(8.0及更高版本)和neovim集成在一起

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/9756.html,未经允许,请勿转载。