有什么方法可以在VIM(gvim)中启用智能感知。我希望将它用于STL。 最佳答案 请原谅我先纠正你,但IntelliSense是MicrosoftVisualStudio中高级代码完成的名称,而不是代码完成的总称。要回答您的问题,您可能需要使用YouCompleteMe.使用vim插件管理器进行设置并不难,但不要忘记运行编译YCM已编译组件的shell脚本。彻底阅读文档,大多数初始问题都是可以避免的。 关于c++-如何在VIM(gvim)中启用智能感知,我们在StackOverflow
我正在使用YouCompleteMe处理一些C++头文件。头文件不包括查找它正在使用的所有类所需的所有其他头文件。在不修改头文件的情况下,我可以修改我的.ycm_extra_conf.py文件让clang知道它需要的额外头文件吗?举个例子,假设我有三个文件“A.h”、“B.h”和“C.cc”。抄送#include"A.h"#include"B.h"啊啊classA{};B.hclassB:A{};B包含文件无法自行编译,但C.cc可以正确编译,因为它包含的内容顺序正确。但是,如果我自己打开B.h,它会提示A没有被定义。我知道C.cc编译正确,那么在打开B.h时我如何告诉YCM在与C.c
我正在构建vim的YouCompleteMe插件,遵循这个document.当我运行make时,出现以下错误。LinkingCXXsharedlibrary/home/sagar/.vim/bundle/YouCompleteMe/python/ycm_core.so/usr/bin/ld:/usr/local/lib/libpython2.7.a(abstract.o):relocationR_X86_64_32Sagainst`_Py_NotImplementedStruct'cannotbeusedwhenmakingasharedobject;recompilewith-fPI
我刚刚通过vundle为Vim安装了YouCompleteMe。它可以工作,但它只显示当前文件中包含的单词。我想用它来开发c++程序,例如,如何配置它以显示/usr/include中c++头文件的自动完成功能?非常感谢。 最佳答案 您需要导航到~/.vim/bundles/YouCompleteMe并使用--clang-completer运行安装脚本,./install也是如此.sh--clang-completer。完成后,您应该支持类似C的语言。您可能还需要在~/.vimrc。 关于
YouCompleteMe(YCM)和jedi-vim是两个提供自动完成功能的vim插件,它们都在Python下使用了jedi。然而,两者都很好,因为除了文档之外,jedi-vim还提供了一些有用的功能,例如“转到定义”和“查看文档字符串”,而YouCompleteMe可以与其他语言一起使用。由于两者都提供Python自动完成功能,是否需要任何特殊配置来防止两个插件发生冲突?或者jedi-vim的自动完成器会简单地覆盖Python中的YCM? 最佳答案 最明显的冲突是不知道您是使用YCM还是Jedi进行自动补全。在这种情况下,最简单
在使用vim插件YouCompleteMe完成C++代码时,我偶然发现了一个问题。使用嵌套模板类会阻止完成正常工作。考虑以下示例来重现该行为:#includetemplateclassfoo{public:voidInit();private:structbar{intfoobar;};barone_bar;std::vector::bar>some_bars;};templatevoidfoo::Init(){one_bar.foobar=0;//completionasexpectedsome_bars.at(0).foobar=0;//nocompletionneitherfor
在使用vim插件YouCompleteMe完成C++代码时,我偶然发现了一个问题。使用嵌套模板类会阻止完成正常工作。考虑以下示例来重现该行为:#includetemplateclassfoo{public:voidInit();private:structbar{intfoobar;};barone_bar;std::vector::bar>some_bars;};templatevoidfoo::Init(){one_bar.foobar=0;//completionasexpectedsome_bars.at(0).foobar=0;//nocompletionneitherfor