渐渐的喜欢上了用Vim来code,可是原始Vim编辑器的使用体验并不如win下的notepad++,更别说IDE了,起初单纯是因为它并不自带补全功能和缩进太长的问题,于是就萌生了把它变成一个具有IDE相近功能的编辑器,Vim的别的插件还没体验过,那就先从改变打码方式来吧~百度以后发现每个功能的实现都有文章,但是没有完整设置的文章,于是决定整合一下设置方法,以便自己记忆。
0x01 自动缩进与语法高亮
配置文件位置一般是 /etc/vimrc
设置语法高亮
syntax on
如果不行就再加上
export TERM=xter-color
设置自动缩进
set tabstop=4 " 设置(软)制表符宽度为4
set softtabstop=4 "
set shiftwidth=4 " 设置缩进空格为4
set autoindent " 设置自动缩进
set cindent " 设置C/C++式的缩进方案
设置默认行显示
set number " 设置行显示
0x02 自动补全括号
inoremap ( ()<ESC>i
inoremap [ []<ESC>i
inoremap { {<CR>}<ESC>i
inoremap ' ''<ESC>i
inoremap " ""<ESC>i
0x03 自动补全
这里就有很多解决方案了,但是还是选了其中一个貌似比较多人用的来写了
YouCompleteMe
首先查看自己的Vim编辑器是否支持py交易,呸!是否支持python(无需在乎python2或者3,因为官方的解释是python2、python3均可)
vim --version
前提是安装了cmake
没有的自行
sudo apt-get install cmake
install vundle plugin
Vundle是一款使用git来管理插件的软件
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
依照官方文档,修改~/.vimrc配置
set nocompatible " be iMproved, required
filetype off " required
" set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
" alternatively, pass a path where Vundle should install plugins
"call vundle#begin('~/some/path/here')
" let Vundle manage Vundle, required
Plugin 'VundleVim/Vundle.vim'
set nocompatible " be iMproved, required
filetype off " required
" set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
" alternatively, pass a path where Vundle should install plugins
"call vundle#begin('~/some/path/here')
" let Vundle manage Vundle, required
Plugin 'VundleVim/Vundle.vim'
然后再次打开VIM运行:PluginInstall
就可以享受Vundle管理插件的快感了
install YouCompleteMe
在 ~/.vimrc
的最后一行添加
Bundle 'Valloric/YouCompleteMe'
依旧打开VIM 运行:BundleInstall
最后
cd ~/.vim/bundle/YouCompleteMe
./install.py
假如你需要对C语言进行补全,则需在安装时使用 --clang-completer
C# 补全再添加--omnisharp-completer
phpcomplete
由于经常食用php这种美食,但是YouCompleteMe并不支持php的补全
于是应该再找找php的补全方案
方案一:autocmd FileType php set omnifunc=phpcomplete
(使用:ctrl+x
然后ctrl+o
便会有你心仪的函数出现哟!)
方案二:phpcomplete.vim
既然已经安装了Vundle相信管理插件不是件难事了
丢个应该添加的部分Bundle 'shawncplus/phpcomplete.vim'
参考文献:
https://github.com/Valloric/YouCompleteMe#ubuntu-linux-x64
https://github.com/VundleVim/Vundle.vim#about
https://github.com/shawncplus/phpcomplete.vim
此处评论已关闭