2015-05-06 41 views
5

我想开发C/C++程序,所以我通过Vundle安装了Vim的YouCompleteMe,但它无法正常工作,实际上,它只显示当前文件中包含的文字。帮帮我! 我的步骤如下:YouCompleteMe无法自动完成

  • 下载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并铛+ LLVM
 

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

  • 准备铛和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 
+0

你运行'运行./install.sh --clang,completer'? – FDinoff

+0

是的,我刚跑过,但问题仍然是... –

+0

':YcmDebugInfo'的输出是什么? – FDinoff

回答

4

请与快捷键Ctrl-X + Ctrl-O键的全完成(功能)。

这将引发全功能,

和/或从下面的链接下载.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'

+0

谢谢,现在工作正常! –

+0

如果它解决了您的问题,请标记为已解决... :) – bagustris