我想开发C/C++程序,所以我通过Vundle安装了YouCompleteMe for Vim,但不能正常运行,实际上它只显示当前文件中包含的单词。希望得到帮助! 我的步骤如下:
- 下载 Vundle.vim
git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim
- #修改.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
最佳答案
使用快捷键 Ctrl-X + Ctrl-O 检查 omni 补全(功能)。
会触发omni功能,
和/或从以下链接下载 .ycm_extra_conf.py >> https://github.com/rasendubi/dotfiles/blob/d534c5fb6bf39f0d9c8668b564ab68b6e3a3eb78/.vim/.ycm_extra_conf.py
并将其放在.vim 中,然后将以下内容添加到.vimrc
let g:ycm_global_ycm_extra_conf = '~/.vim/.ycm_extra_conf.py'
关于c++ - YouCompleteMe 无法自动完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30066100/