lzslywl
2015-11-28 11:50
采纳率: 100%
浏览 10.2k

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

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

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

9条回答 默认 最新

  • lzslywl 2015-11-29 00:59
    已采纳

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

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • 智商是硬伤 2015-11-28 12:39
    评论
    解决 无用
    打赏 举报
  • 智商是硬伤 2015-11-28 12:39
    评论
    解决 无用
    打赏 举报
  • 智商是硬伤 2015-11-28 12:40
    评论
    解决 无用
    打赏 举报
  • dudn 2015-11-29 01:36

    我也是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'
    这句很重要

    评论
    解决 无用
    打赏 举报
  • dudn 2015-11-29 01:50

    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对比下,估计你一看就懂了

    评论
    解决 无用
    打赏 举报
  • dudn 2015-11-29 15:49

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

    评论
    解决 无用
    打赏 举报
  • darren_long 2016-11-01 02:50

    let g:ycm_key_invoke_completion = '' " (默认是 )是这个意思么,那个c-a不懂怎么敲

    评论
    解决 无用
    打赏 举报
  • qt-耗盆兄 2016-12-13 17:50

    我遇到了这个问题,搜索百度搜狗谷歌都没有找到,也包括官网文档也看了。都没有具体解决这个诡异的问你,,,其实很简单就可以解决了。
    比如:
    '-I'
    '.'
    这个就是当前所有的文件显示。好了仔细分析,如果去掉这个上面2行就会没任何的东西菜单显示。
    根据实际情况解决就简单了哈哈哈
    测试:
    '-I'
    './note/dms/'
    注意有个点,是当前配置文件所在的目录,(我是把.ycm_extra_conf.py放到~/根目录的),然后新建立一个文档,dms下的头文件就全部显示出来了。是不是很简单就解决了这个问题。 不要说出去了,很丢人的。自己默默的反省把。

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题