Centos7安装vim8.0 + YouCompleteMe + 支持python3.6

安装python3.6:https://blog.csdn.net/wanormi/article/details/82900782

升级vim以及gcc

升级gcc

sudo yum install centos-release-scl -y
sudo yum install devtoolset-3-toolchain -y
sudo yum install gcc-c++
sudo scl enable devtoolset-3 bash

升级vim

yum install ncurses-devel
wget https://github.com/vim/vim/archive/master.zip
unzip master.zip
cd vim-master
cd src/
./configure --with-features=huge --with-python-config-dir=/usr/local/lib/python3.6/config-3.6m-x86_64-linux-gnu --enable-python3interp
sudo make
sudo make install
export PATH=/usr/local/bin:$PATH

注意 这里的--with-python-config-dir= 等号后的路径不一定相同,总之需要找到 config(或config-3.6m-x86_64-linux-gnu) 这个文件夹。

 

 ./configure 后面的配置选项

  • --with-features=huge:支持最大特性
  • --enable-rubyinterp:打开对ruby编写的插件的支持
  • --enable-pythoninterp:打开对python编写的插件的支持
  • --enable-python3interp:打开对python3编写的插件的支持
  • --enable-luainterp:打开对lua编写的插件的支持
  • --enable-perlinterp:打开对perl编写的插件的支持
  • --enable-multibyte:打开多字节支持,可以在Vim中输入中文
  • --enable-cscope:打开对cscope的支持
  • --with-python-config-dir=/usr/lib/python2.7/config-x86_64-linux-gnu/ 指定python 路径
  • --with-python-config-dir=/usr/lib/python3.5/config-3.5m-x86_64-linux-gnu/ 指定python3路径
  • --prefix=/usr/local/vim:指定将要安装到的路径(自行创建)

注意:--enable-pythoninterp 和 --enable-python3interp只能选其一,不能同时支持

####关于vim的安装路径
默认新的vim是安在/usr/bin/local/中的,但是PATH中会首先找到/usr/bin/中旧的vim,所以不介意的话把旧的vim删了也可以,也可以输入下面的命令来使命令行中的vim指令指向 /usr/local/bin/vim 的程序

alias vim='/usr/local/bin/vim'

下载编译ycm

git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim 

git clone https://github.com/Valloric/YouCompleteMe.git ~/.vim/bundle/YouCompleteMe

cd ~/.vim/bundle/YouCompleteMe

git submodule update --init --recursive

在 ~/ 下创建文件 .vimrc,输入一下内容

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

使用vim打开,后输入 :PluginInstall
完成后在 'Plugin 'gmarik/Vundle.vim’的下一行输入 'Plugin ‘Valloric/YouCompleteMe’,保持后退出

cd ~/.vim/bundle/YouCompleteMe
./install.py --clang-completer

如果出现:

ERROR: Unable to find executable 'cmake'. CMake is required to build ycmd

   解决:下载安装cmake

wget https://cmake.org/files/v3.6/cmake-3.6.2.tar.gz

tar xvf cmake-3.6.2.tar.gz && cd cmake-3.6.2/

./bootstrap
gmake
gmake install

如果出现需要python动态库的错误信息,请看:https://blog.csdn.net/wanormi/article/details/82900782

由于我也希望ycm能进行nodejs和golang的补全,所以可以在./install.py 后添加如下后缀

./install.py  --clang-completer  --gocode-completer --tern-completer

在对yum进行编译时如果你的主机内存不够的话编译会中断

查阅资料发现需要添加一个 swap file,教程网址戳此

下面是指令,复制粘贴就行

su

dd if=/dev/zero of=/swapfile1 bs=1024 count=524288

mkswap /swapfile1

swapon /swapfile1

vi /etc/fstab

# edit /etc/fstab file, add the following line

/swapfile1 none swap sw 0 0

# save and quit

free -m

swapon -s

 

之后打开在~/中的文件,进行找到此为止进行添加

...

'-isystem',
'/usr/include',
'-isystem',
'/usr/include/c++/',
'-isystem',
'/usr/include/i386-linux-gnu/c++'

...

完毕后打开.vimrc进行配置

let g:ycm_global_ycm_extra_conf='~/.vim/bundle/YouCompleteMe/third_party/ycmd/examples/.ycm_extra_conf.py'  "设置全局配置文件的路径
let g:ycm_seed_identifiers_with_syntax=1    " 语法关键字补全
let g:ycm_confirm_extra_conf=0  " 打开vim时不再询问是否加载ycm_extra_conf.py配置
let g:ycm_key_invoke_completion = '' " ctrl + a 触发补全
set completeopt=longest,menu    "让Vim的补全菜单行为与一般IDE一致(参考VimTip1228)

附:vim配置信息

你可能感兴趣的:(Linux)