YouCompleteMe无法自动完成

wen*_* li 5 c++ linux git vim autocomplete

我想开发C/C++程序,所以我通过Vundle为Vim安装了YouCompleteMe.但它无法正常工作,实际上,它只显示当前file.hope中包含的单词来帮助!我的步骤如下:

  • 下载Vundle.vim
    git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim
  • #modify .vimrc

    set nocompatible
    filetype off
    set rtp+=~/.vim/bundle/Vundle.vim
    call vundle#begin()
    Plugin 'gmarik/Vundle.vim'
    Plugin 'Valloric/YouCompleteMe'
    call vundle#end()
    filetype plugin indent on

  • 启动vim并运行:
`:PluginInstall`
  • 下载cmake和clang + llvm

    http://llvm.org/releases/download.html#3.6.0
    http://www.cmake.org/download/

  • 准备clang和cmake

    Extract "clang+llvm-3.6.0-x86_64-linux-gnu-ubuntu-14.04.tar.xz" into ycm_temp
    Rename "clang+llvm-3.6.0-x86_64-linux-gnu" to "llvm_root_dir"
    Extract cmake-3.2.2-Linux-x86_64.tar.gz and Link bin/cmake to /usr/bin/cmake

  • 使

    cd ~
    mkdir ycm_build
    cd ycm_build
    cmake -G "Unix Makefiles" -DPATH_TO_LLVM_ROOT=~/ycm_temp/llvm_root_dir . ~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp
    make ycm_support_libs

  • 修改.vimrc

    let g:ycm_seed_identifiers_with_syntax=1
    let g:ycm_global_ycm_extra_conf = '/home/li/.vim/bundle/YouCompleteMe/.ycm_extra_conf.py'
    let g:ycm_confirm_extra_conf=0
    let g:ycm_collect_identifiers_from_tag_files = 1
    set completeopt=longest,menu

现在,没有错误或警告被抛出,但它无法自动完成C/C++头文件!

  • 注意
OS:ubuntu 14.04
vim:7.4
Python:2.7.6

bag*_*ris 5

使用快捷键 Ctrl-X + Ctrl-O 检查全向补全(功能)。

它会触发omni功能,

和/或从以下链接下载 .ycm_extra_conf.py >> https://github.com/rasendubi/dotfiles/blob/d534c5fb6bf39f0d9c8668b564ab68b6e3a3eb78/.vim/.ycm_extra_conf.py

并将其放在 .vim 中,然后将以下内容添加到 .vimrc

让 g:ycm_global_ycm_extra_conf = '~/.vim/.ycm_extra_conf.py'