youcompleteme-VIM插件YouCompleteMe如何配置才能对自定义头文件中的函数和类型进行补全

问题描述

VIM插件YouCompleteMe如何配置才能对自定义头文件中的函数和类型进行补全

我最近在折腾YouCompleteMe,对基本的C/C++关键字都能进行补全,但不能对自己项目中的头文件中的标识符进行补全,已经在 .ycm_extra_conf.py中通过’-I’,'自己项目头文件的路径’的方式把自己的头文件路径加入了flags中,但还是不能对自己编写的头文件中的函数和类型进行补全,应该怎么配置???

解决方案

我看了你的答案,没什么有用的内容

解决方案二:

可以看看这篇博文: http://www.cnblogs.com/yongjiuzhizhen/p/4793498.html

解决方案三:

可以看看这篇博文: http://www.cnblogs.com/yongjiuzhizhen/p/4793498.html

解决方案四:

可以看看这篇博文: http://www.cnblogs.com/yongjiuzhizhen/p/4793498.html

解决方案五:

我也是vimer,youcomplete也用了很久了
https://github.com/dudn/vim 这是我的github,简单写了一键源码编译配置vim的脚本
你可以看看我的 .ycm_extra_conf.py 文件
'-isystem',
'/usr/include',
'-isystem',
'/usr/include/c++/4.8.4', //看你的版本是不是4.8.4
这几句很重要
.vimrc中
let g:ycm_global_ycm_extra_conf = '~/.ycm_extra_conf.py'
这句很重要

解决方案六:

let g:ycm_cache_omnifunc = 0
let g:ycm_seed_identifiers_with_syntax = 1
let g:ycm_min_num_of_chars_for_completion= 2
let g:ycm_collect_identifiers_from_tags_files = 1
let g:ycm_collect_identifiers_from_comments_and_strings = 1
去github对比下,估计你一看就懂了

解决方案七:

"但就是不能自己编写的头文件中的内容进行补全"
ycm没提供头文件complete变量,但是提供了头文件complete struct members和class members功能
可以装一些基于tags的补全插件(那些高手都不装插件,都在脑子里,哈哈)

时间: 2024-10-30 14:29:51

youcompleteme-VIM插件YouCompleteMe如何配置才能对自定义头文件中的函数和类型进行补全的相关文章

mybatis 一对多配置关系实现在一个映射文件中进行增删改查?

问题描述 mybatis 一对多配置关系实现在一个映射文件中进行增删改查? 一对多关系表,如何在一个映射文件中实现对两个表的增删改查操作? 解决方案 http://wenku.baidu.com/link?url=Pxf2M0_Xb42weBxGfesIrn2_nCLTCEQZr1ZuOxvq5-nu_w1rBkgltw7Qlz-iBnv7lDfGf8h_J7i9plUEzaQfpI5JviC0NsTnyV95fdyUwvu 解决方案二: 你在xml定义两个表的sql匹配就行.增删改查就对这两个

【原创】如何在vim中使用tab进行python代码补全

Pydiction : Tab-complete your Python code         Pydiction 允许你在 Vim 中实现 TAB 代码补全, 可以补全的内容包括:标准的.自定义的,以及第三方模块和包.外加关键字.BIFs,和字符串.   Pydiction 由 3 个主要文件构成:        python_pydiction.vim -- 该文件为 Vim 的 plugin 文件,实现 Python 文件的 TAB 补全功能.  complete-dict -- 该文

Nginx的伪静态配置中使用rewrite来实现自动补全的实例_nginx

nginx+php 使用的时候经常需要伪静态,一般大家都手动设置.那有没有办法让 nginx 自动补全路径呢? 这两天折腾很久,才实现了这样一个功能: 请求 /a/b/c 若文件不存在,查找 /a/b/index.php,/c 作为 PATH_INFO: 若文件不存在,查找 /a/index.php,/b/c 作为 PATH_INFO: 若文件不存在,查找 /index.php,/a/b/c 作为 PATH_INFO: 若文件不存在,返回 404. 虽然这种损耗性能的行为不适合部署,但在本机调试

教你用NeoBundle管理Vim插件

教你用NeoBundle管理Vim插件 NeoBundle 是一个 Vim 的插件管理器,以 Vundle 为基础(Vundle 是一个基于 Pathogen 的 Vim 插件管理器).在之前的文章中,我非常不推荐使用 Neobundle,原因是它当时还处于高速开发阶段(LCTT:意味着不稳定.变数大),并且当时它的英文文档很少.现在,已经过了一年多了,这两个问题都早已不再是问题. 我们为什么要使用插件管理器?Vim 支持大量插件,但是由于它没有严格定义框架,插件的文件可以胡乱分布在不同目录下,

c语言-C语言中A文件定义的文件指针,如何才能在B文件中也可以写入信息

问题描述 C语言中A文件定义的文件指针,如何才能在B文件中也可以写入信息 image.c和rtp.c都不是主函数,在image.c中定义了一个文件指针,但我想把rtp.c中的信息写入这个文件.简单就是在A文件中定义了一个指针文件,想把B文件中的信息写入指针文件.你可能问我为什么不直在B文件中定义,因为也要写入A文件中信息,像我之前写的运行时会提示rtp.c中的文件指针是未定义的标识符. 应该怎么写才是正确,麻烦知道的人给点指导,谢谢 解决方案 通过extern在rtp.c中声明该文件指针为外部指

Vim 自动补全神器:YouCompleteMe

第一次听说这个插件还是在偶然的情况下看到别人的博客,听说了这个插件的大名.本来打算在实训期间来完成安装的,无奈网实在不给力,也就拖到了回家的时候.在开始准备工作的时候就了解到这个插件不是很容易安装,安装的时候果然名不虚传.(关于这方面的内容,请查看另一篇文章)不过,有付出总有回报,安装之后用上这个插件,真心为这个插件的强大所折服. 那这个插件有何不同?  YouCompleteMe的特别之处 基于语义补全 总所周知,Vim是一款文本编辑器.也就是说,其最基础的工作就是编辑文本,而不管该文本的内容

vim下使用YouCompleteMe实现代码提示、补全以及跳转设置

配置YouCompleteMe 1. 安装vundle vundle是一个管理vim插件的工具,使用vundle安装YouCompleteMe比较方便. 按照作者在https://github.com/gmarik/Vundle.vim#about提供的方法安装好vundle.(主要是下载解压,病略微修改 .vimrc) 2. 使用vundle安装YouCompleteMe 主要根据作者自己的建议整理 https://github.com/Valloric/YouCompleteMe 在.vim

Vim Vundle YouCompleteMe

/************************************************************************************** * Vim Vundle YouCompleteMe * 说明: * 之前在Vim中安装YCM出了问题,装不了,这次花点时间再折腾一下,可以了. * * 2016-8-14 深圳 南山平山村 曾剑锋 **************************************************************

vim插件配置模板

 使用vim的初学者总为各种配置而烦恼.下面是某位的配置,仅为了保存而写了这篇文章.  链接地址:强大的vim配置  在我的资源里边保存了配置.下载下来之后在下载页面解压开,并且放到当前用户根目录下.  资源地址:http://download.csdn.net/detail/alex_my/6462635   功能支持:     1.按F5可以直接编译并执行C.C++.java代码以及执行shell脚本,按"F8"可进行C.C++代码的调试   2.自动插入文件头 ,新建C.C++源