vim是一款非常便捷接的编辑器,有着编辑器之神的称号。如果可以熟练掌握vim的使用方法会大大提升大家敲代码的速度。vim之所以强大很大的原因之一就是他可以安装各种各样的插件。对于插件的管理常用的有vim-plug和vundle这两款插件。我个人觉着还是vim-plug更好用一些,下面我将提供vim-plug的安装及使用教程。
在Linux中例如Ubuntu之类的很多一部分都会自带VI编辑器。而大家安装VIM的方法我相信大部分应该是sudo apt install vim了吧。apt安装的vim版本太低,很多插件不能用,就比如YouCompleteMe。YCM需要vim8.2及以上版本,而apt安装的大都是vim8.1或vim7。
所以我们需要编译安装VIM。
编译安装VIM
首先要做的就是下载vim的源码:
https://github.com/vim/vim/releases
Vim: Vim 是从 vi 发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。和Emacs并列成为类Unix系统用户最喜欢的编辑器。
这里给出Github和Gitee两种方式,或者直接git clone也没问题。
git clone https://gitee.com/mirrors/vim.git
把vim源码文件夹放到家目录下。
然后就是安装依赖(apt的换源之类的基操这里就不过多赘述)
sudo apt install make
sudo apt install libncurses-dev clang
sudo apt-get install build-essentials
除此之外
还需要确保一些工具的版本不能太低:
python要3.8,而且需要安装python3.8-dev
gcc和g++最少要8
具体怎么更新这些工具我这里也不赘述,csdn有很多教程。
做好这些准备工作之后,切换到vim文件夹下
进行configure配置
./configure \
--with-features=huge \
--prefix=/usr/local/vim \
--with-features=huge \
--enable-rubyinterp \
--enable-fail-if-missing \
--enable-luainterp \
--enable-perlinterp \
--enable-fontset \
--enable-python3interp \
--with-python3-command=python3
配置完成之后,我们进行编译
sudo make -j4
我的虚拟机分配了四个CPU核心所以是-j4,大家按自己的实际来就可以。下一步安装:
sudo make install
然后配置到环境变量:
echo 'export PATH="/usr/local/vim/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
然后就编译安装完成了!
我安装的是GitHub上最新的
安装vim-plug
下载:(国内镜像地址)
curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.njuu.cf/junegunn/vim-plug/master/plug.vim
.vimrc文件中vim-plug相关是有一定格式要求,如下:
call plug#begin() " vim-plug开始(必须)
Plug '插件' " 这里写插件名称,例如 Plug 'scrooloose/nerdtree'
call plug#end() " vim-plug结束(必须)
vim-plug常用命令:
然后我们需要给vim-plug进行换源,这是非常有必要的。否则,PlugInstall时会安装失败。
打开~/.vim/autoload/plug.vim文件
将1174行的
http://github.com
改为:
http://hub.njuu.cf
当然如果vim-plug有所更新的话也不一定是1174行,大家可以直接查找plug.uri等来定位这里。
安装插件
1 NERDTree
这个是大名鼎鼎的目录树插件,这是我的配置
Plug 'scrooloose/nerdtree' " 放在语句 call plug#begin() 和 call plug#end() 之间
autocmd VimEnter * NERDTree " 打开文件后自动打开NERDTree
map <F2> :NERDTreeMirror<CR> " 按键F2:映射其他标签页
map <F3> :NERDTreeToggle<CR> " 按键F3:展开/收缩NERDTree
map f :NERDTreeFind<CR> " 按键f:在NERDTree窗口中,将光标跳转到当前打开的文件上。
nerdtree插件功能非常强大,这些操作和介绍大家可以去看其他大佬的介绍,这里同样不多赘述,也可以去看最权威的官网
2 vim-airline
Plug 'vim-airline/vim-airline'
这个插件是美化状态栏的,也可以自定义配置主题颜色。
3 auto-pairs
这个就是插件的功能简单而实用:自动补全或删除括号
不需要太多配置
Plug 'jiangmiao/auto-pairs
4 YouCompleteMe
最出名的自动补全插件,配置如下
Plug 'Valloric/YouCompleteMe'
let g:ycm_global_ycm_extra_conf='~/.vim/.ycm_extra_conf.py'
" 开启 YCM 基于标签引擎
let g:ycm_collect_identifiers_from_tags_files=1
" 从第2个键入字符就开始罗列匹配项
let g:ycm_min_num_of_chars_for_completion=2
" 语法关键字补全
let g:ycm_seed_identifiers_with_syntax=1
我们安装这个插件第一步要先用通过PlugInstall安装
然后切换到这个目录下cd ~/.vim/plugged/YouCompleteMe
将包补全
git submodule update --init --recursive
执行安装脚本
python3 install.py --rust-completer --cs-completer --verbose
然后就完成了YCM的安装
5 rainbow_parentheses.vim
这个插件是彩虹括号,也就是用不同的颜色区分括号
Plug 'kien/rainbow_parentheses.vim' "这个插件是彩色括号
" 插件rainbow_parentheses的配置 RGB彩色括号
22 let g:rbpt_colorpairs = [
23 \ ['brown', 'RoyalBlue3'],
24 \ ['Darkblue', 'SeaGreen3'],
25 \ ['darkgray', 'DarkOrchid3'],
26 \ ['darkgreen', 'firebrick3'],
27 \ ['darkcyan', 'RoyalBlue3'],
28 \ ['darkred', 'SeaGreen3'],
29 \ ['darkmagenta', 'DarkOrchid3'],
30 \ ['brown', 'firebrick3'],
31 \ ['gray', 'RoyalBlue3'],
32 \ ['black', 'SeaGreen3'],
33 \ ['darkmagenta', 'DarkOrchid3'],
34 \ ['Darkblue', 'firebrick3'],
35 \ ['darkgreen', 'RoyalBlue3'],
36 \ ['darkcyan', 'SeaGreen3'],
37 \ ['darkred', 'DarkOrchid3'],
38 \ ['red', 'firebrick3'],
39 \ ]
40 let g:rbpt_max = 16
41 let g:rbpt_loadcmd_toggle = 0
42 au VimEnter * RainbowParenthesesToggle
43 au Syntax * RainbowParenthesesLoadRound
44 au Syntax * RainbowParenthesesLoadSquare
45 au Syntax * RainbowParenthesesLoadBraces
VIM是一款可玩性自由度非常高的编辑器,我这里只是推荐了我常用的5个插件,在官网(Vim Awesome)上有数不清的插件,大家可以自行探索。