Vim自动补全神器–YouCompleteMe

1. 安装必要组件

sudo apt-get install libncurses5-dev libgnome2-dev libgnomeui-dev \
    libgtk2.0-dev libatk1.0-dev libbonoboui2-dev \
    libcairo2-dev libx11-dev libxpm-dev libxt-dev \
    python-dev ruby-dev mercurial checkinstall


2. 升级Vim 到7.4


手动添加PPA(Personal Package Archives)
sudo add-apt-repository ppa:nmi/vim-snapshots
sudo apt-get update
sudo apt-get install vim


3. 安装llvm & clang
到 http://llvm.org/releases/download.html#3.3 下载编译后的二进制文件
http://llvm.org/releases/3.3/clang+llvm-3.3-amd64-Ubuntu-12.04.2.tar.gz
解压到/


tar -zxf clang3.3-amd64-Ubuntu-12.04.2.tar.gz
cd clang+llvm-3.3-amd64-Ubuntu-12.04.2/
cp -r * /

或者sudo apt-get install clang3.3

如果在命令行输入clang,输出clang: error: no input files,说明安装成功


4. 下载 Vundle
git clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle

Vundle可以让Vim自动从github等地方下载插件,而不用每次去vim.org上手动下载


修改.vimrc

set nocompatible              " be iMproved
set nu
set noswapfile
syntax on
set backspace=2
set tabstop=2
set shiftwidth=2
set completeopt=menu
:colorscheme ron
set cindent
set rtp+=~/.vim/bundle/vundle/
call vundle#rc()
Bundle 'gmarik/vundle'
Bundle 'Valloric/YouCompleteMe'
Bundle 'scrooloose/syntastic'
""""""""""syntastic""""""""""""
let g:syntastic_check_on_open = 1
let g:syntastic_cpp_include_dirs = ['/usr/include/']
let g:syntastic_cpp_remove_include_errors = 1
let g:syntastic_cpp_check_header = 1
let g:syntastic_cpp_compiler = 'clang++'
"set error or warning signs
let g:syntastic_error_symbol = 'x'
let g:syntastic_warning_symbol = '!'
"whether to show balloons
let g:syntastic_enable_balloons = 1

""""""""""""YCM""""""""""""""""""""
let g:ycm_global_ycm_extra_conf = '~/.vim/bundle/YouCompleteMe/cpp/ycm/.ycm_extra_conf.py'
let g:ycm_collect_identifiers_from_tags_files = 1
let g:ycm_seed_identifiers_with_syntax = 1
let g:ycm_confirm_extra_conf = 0

然后打开vim
在命令模式下输入
:BundleInstall,就会发现vim自动开始下载插件了
NOTE:
YouCompleteMe插件要下载很久,请稍安勿躁:-)

5. 编译ycm_core & ycm_support_libs

cd ~
mkdir ~/ycm_build
cd ~/ycm_build
cmake -G "Unix Makefiles"  ~/.vim/bundle/YouCompleteMe/cd ~
mkdir ~/ycm_build
cd ~/ycm_build
cmake -G "Unix Makefiles"  ~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp -DEXTERNAL_LIBCLANG_PATH=/lib/libclang.so
make ycm_core
make ycm_support_libs


这里要注意的是-DEXTERNAL_LIBCLANG_PATH这个参数,用于指定libclang.so的位置

6. 配置.ycm_extra_conf.py
~/.vim/bundle/YouCompleteMe/cpp/ycm/.ycm_extra_conf.py
在这个文件的flags尾部添加:
'-isystem',
'/usr/include',
'-isystem',
'/usr/include/c++/'



vim插件:显示树形目录插件NERDTree安装

wget http://www.vim.org/scripts/download_script.php?src_id=17123 -O nerdtree.zip 
unzip nerdtree.zip

mkdir -p ~/.vim/{plugin,doc}

cp plugin/NERD_tree.vim ~/.vim/plugin/
cp doc/NERD_tree.txt ~/.vim/doc/

 vim ~/.vimrc

然后添加

" NERDTree
map <F10> :NERDTreeToggle<CR>


taglist插件:

1.sudo apt-get install ctags
2.   taglist插件是以vim脚本的形式存在,因此只需要将其下载下来放到相应的目录即可。taglist基于ctags才能发挥作用,因此在使用taglist之前,确保已经安装了ctags。具体安装方法如下:
下载地址(两个可选择任意一个):
Official site  http://vim-taglist.sourceforge.net/
VIM online  http://www.vim.org/scripts/script.php?script_id=273
下载解压后,将插件脚本文件(.vim)和帮助文件(.txt)分别放入vim常用目录:
$HOME/.vim/ 或
$HOME/vimfiles/ 或
$VIM/vimfiles/
下的
plugin/taglist.vim
doc/taglist.txt
中。 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
YouCompleteMe 是一个非常强大的 Vim 插件,它可以为 Vim 提供智能的代码自动补全功能。下面是实现自动补全的一些步骤: 1. 安装 Vundle 或其他插件管理器:首先,你需要安装一个插件管理器,比如 Vundle。在你的 `.vimrc` 文件中添加插件管理器的相关配置。 2. 安装 YouCompleteMe 插件:使用插件管理器来安装 YouCompleteMe 插件。在 Vundle 中,你可以通过添加 `Plugin 'Valloric/YouCompleteMe'` 到你的 `.vimrc` 文件中,并执行 `:PluginInstall` 命令来安装插件。 3. 安装依赖库:YouCompleteMe 需要依赖一些第三方库进行代码补全。执行 `cd ~/.vim/bundle/YouCompleteMe` 进入插件目录,然后执行 `./install.py --clang-completer` 命令来安装必要的依赖库。 4. 配置 YouCompleteMe:在你的 `.vimrc` 文件中添加以下配置来启用 YouCompleteMe 插件: ```vim let g:ycm_global_ycm_extra_conf = '~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py' let g:ycm_server_python_interpreter = '/usr/bin/python3' let g:ycm_key_invoke_completion = '<C-Space>' ``` 第一行配置了 YCM 的基本配置文件的位置,第二行配置了 Python 解释器的路径,第三行配置了触发自动补全的按键。 5. 重启 Vim:重启 VimYouCompleteMe 插件会自动加载。 现在,你应该能够在 Vim 中体验到自动补全功能了。通过按下 `<C-Space>` 键来触发代码自动补全YouCompleteMe 会根据上下文提供合适的补全选项。 希望这些步骤能帮助你成功实现 Vim自动补全功能!如果有任何问题,请随时向我提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值