Ubuntu16.04安裝vim8
在Ubuntu16.04下編譯安裝vim8,並配置vim-plug插件管理器,以及安裝YouCompleteMe等插件。
安裝依賴
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 \
python3-dev ruby-dev liblua5.1 lua5.1-dev libperl-dev git
需要注意的是在Ubuntu16.04中Lua應該為liblua5.1-dev,而在其它版本中應為lua5.1-dev
刪除已有vim相關包(可選)
如果是多人使用的機器,最好還是不要輕易apt刪除vim,其他人可能受到影響。如果是只有自己一個用戶,可以隨性:
dpkg -l | grep vim
sudo apt remove vim vim-common vim-runtime vim-tiny
下載最新vim並編譯安裝
這里安裝到個人路徑;考慮到遠程xshell使用,沒有gui,則編譯時需要--disable-gui
以及--without-x
git clone https://github.com/vim/vim.git
#!/bin/bash
./configure --with-features=huge \
--enable-multibyte \
--enable-rubyinterp=yes \
--enable-pythoninterp=yes \
--with-python-config-dir=/usr/lib/python2.7/config \
--enable-perlinterp=yes \
--enable-luainterp=yes \
--enable-cscope \
--disable-gui \
--without-x \
--prefix=/home/zz/soft/vim8
make -j$(nproc) VIMRUNTIMEDIR=/home/zz/soft/vim8/share/vim/vim81
sudo make install
配置vim
不配置vim的話會比較難用,增加一些插件和個人習慣性的定制能提升編碼效率。
在下載安裝vim插件這件事兒上,Vundle很慢,基於異步的vim-plug則非常快。上手吧:vim ~/.vimrc
, 輸入vim指令:set paste
,將如下內容粘貼到.vimrc中:
" Specify a directory for plugins
" - For Neovim: ~/.local/share/nvim/plugged
" - Avoid using standard Vim directory names like 'plugin'
call plug#begin('~/.vim/plugged')
" Make sure you use single quotes
" Shorthand notation; fetches https://github.com/junegunn/vim-easy-align
Plug 'junegunn/vim-easy-align'
" Any valid git URL is allowed
Plug 'https://github.com/junegunn/vim-github-dashboard.git'
" Multiple Plug commands can be written in a single line using | separators
Plug 'SirVer/ultisnips' | Plug 'honza/vim-snippets'
" On-demand loading
Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' }
Plug 'tpope/vim-fireplace', { 'for': 'clojure' }
" Using a non-master branch
Plug 'rdnetto/YCM-Generator', { 'branch': 'stable' }
" Using a tagged release; wildcard allowed (requires git 1.9.2 or above)
Plug 'fatih/vim-go', { 'tag': '*' }
" Plugin options
Plug 'nsf/gocode', { 'tag': 'v.20150303', 'rtp': 'vim' }
" Plugin outside ~/.vim/plugged with post-update hook
Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' }
Plug 'Valloric/YouCompleteMe', { 'do': './install.py' }
" Unmanaged plugin (manually installed and updated)
Plug '~/my-prototype-plugin'
" Initialize plugin system
call plug#end()
"" 個人定制的一些配置,不喜歡、不習慣可以自行修改
set nu
set tags=./.tags;.tags
set cursorline
set showmatch
set hlsearch
set incsearch
hi CursorLine cterm=NONE ctermbg=black ctermfg=green guibg=NONE guifg=NONE
關閉vim,再次vim ~/.vimrc
,敲入:PlugInstall
,開始下載插件:可以看到各個插件是同時在下載的,速度很快。
其中YouCompleteMe因為有很多submodule,很容易下載失敗,所以手動處理一下:
cd ~/.vim/plugged/YouCompleteMe
git submodule update --init --recursive
python install.py