不知不觉也用了接近两年的Vim了,也该写写Vim的一些东西了
Vim的目的
通用_的_高效 文本编辑器
首先,通用体现在能支持多种语言的编辑甚至编译运行。
它的键位的确是精心设计过的,用惯了会非常高效。
但Vim始终只是一个文本编辑器,要它提供大型IDE类似的功能是做不到的(当然能在配置后胜过一些中小型IDE)。
安装Vim
Ubuntu直接apt-get install vim-gtk python lua build-essential clang clang-dev
即可。
Win下由于种种原因,官方版本并非最好选择。建议安装https://tuxproject.de/projects/vim/ 的版本,解压后运行install.exe,按d即可。
之后强烈建议http://sourceforge.net/projects/luabinaries/files/5.3/Windows%20Libraries/Dynamic/ 这里下载对应的lua-5.3_Win32/64_dllw4_lib.zip ,把其中的lua5.3.dll放到vim.exe同目录下。
之后在https://www.python.org/downloads/windows/ 下载 python2.7安装时注意勾选添加到path。
最后强烈建议安装http://clang.llvm.org/ (clang) 和 http://blog.csdn.net/sfezst/article/details/6212522 1/2步 (ctags)并都添加到PATH。
这样才算安装完全,下面步骤出错的概率会更小。
一开始Vim肯定是这样的:
初步配置
Vim的配置分为两个部分:
一部分是配置文件,在linux下是/home/你的用户名/.vimrc,windows下是vim.exe目录下的_vimrc,我们的设置就在这个里面。
另一部分是种种插件的存储目录,大概就是linux下的/home/xxx/.vim/和win下的vim.exe目录下的一大堆autoload
plugin
ftplugin
等等文件夹。
以下用win介绍,linux的可类推。
一开始gui界面是gvim,是相当简陋的,我们需要一些基础的配置。
Sensible.vim
sensible.vim : Defaults everyone can agree on
用这个起步很简单。把http://www.vim.org/scripts/script.php?script_id=4391 下载下来的sensible.zip中的plugin目录和vim.exe目录中的plugin目录合并。正常情况下你应该能看到plugin\sensible.vim 的文件,这样就配置完成了。
_vimrc起步
在vim.exe目录下新建_vimrc,写入以下起步内容:
之后会长这样,基本就能满足基本需求了。
![Alt text](./2015-06-05 21-56-05屏幕截图.png)
插件管理基础
Pathogen – 独立本地插件目录
http://blog.csdn.net/zhaoyw2008/article/details/8012757
插件多了你会发现各个插件直接解压到各个目录会很混乱。这个插件可以让其他插件解压到bundle文件夹下的单独文件夹下,便于分离
Vundle – 自动在线下载/更新插件
http://lab.yqc.im/Windows-vim-vundle.html
上文1/2步就是安装Vundle,安装之后只要指定插件的github作者和名称就能自动下载安装了。
插件推荐
如何寻找插件:github / www.vim.org/scripts/
语言类
两个cpp语言增强
http://www.vim.org/scripts/script.php?script_id=1640
http://www.vim.org/scripts/script.php?script_id=4293
Python
http://www.vim.org/scripts/script.php?script_id=790
Javascript
http://www.vim.org/scripts/script.php?script_id=1491
Markdown
http://www.vim.org/scripts/script.php?script_id=2882
显示CSS颜色
http://www.vim.org/scripts/script.php?script_id=2150
汇编
http://www.vim.org/scripts/script.php?script_id=1650
界面类
Airline
https://github.com/bling/vim-airline
轻量版状态栏
Startify
https://github.com/mhinz/vim-startify
启动界面
小功能类
Easytags
保存时自动调用ctags生成文件,必备。
安装见http://blog.csdn.net/sfezst/article/details/6212522 1/2步
Tagbar
侧边栏显示各种东西,Taglist增强版,必备
NERDTree
侧边栏显示文件列表,必备
Easymotion
可以用\\w
之类的命令直接跳转到任何一个w能跳转到的地方,必备
fugitive
GIT集成,基本必备
vim-unimpaired
为很多:set xxx
提供了[x
的快捷操作
VimShell
侧边栏打开Shell,兼容性比较好
Vim-indent-guide
每行左边缩进处显示一条线
ZoomWin
Ctrl+鼠标滚轮放大/缩小窗口
Guicolorscheme
让gvim的配色到终端vim中也能用,win下表现糟
补全/深层语义/提示
个人的组合是Syntastic提示+YCM补全c/cpp/c#/python + neocomplete with jscomplete and phpcomplete解决其他的
SingleCompile
必备。手动定义Compile函数的日子一去不复返了。
Syntastic
智能提示错误,基本必备。cpp需要clang以获得最佳效果
https://github.com/scrooloose/syntastic/wiki
Neocomplete
这个需要配合jscomplete和phpcomplete来解决大多数问题。非语义匹配最强。
可以用autocmd FileType cpp,c,python3,python,csharp,java NeoCompleteLock
来禁用掉其在这几种文件类型的匹配
YoucompleteMe/Clang_complete
windows下前者安装较为困难,但是效果前者好很多。(https://bitbucket.org/Haroogan/vim-youcompleteme-for-windows/ 这里有YCM的Windows预编译版本)
cpp语义匹配最强
Javacomplete2
https://github.com/artur-shaik/vim-javacomplete2
开发中,个人很看好
Vim-latex
Latex支持,个人感觉一般
Gtags
被埋没的好东西。和ctags相比更适合用来阅读大代码。
首先请安装gnu global(windows:http://adoxa.altervista.org/global/ linux请自行编译6.4版本,软件仓库中的太老了)
之后安装Gtags.vim
在一个大型项目中的顶层运行gtags
(vim之外的命令行),稍等片刻会生成GTAGS
和 GRTAGS
文件。之后在任何子目录的vim中使用:GTagsCursor
和Gtags 标签名
就会跳转到定义的地方去了。
基本以上这些就是常用的插件了,具体还要靠各位自己琢磨了。最后打个广告,推销下自己的配色:http://www.vim.org/scripts/script.php?script_id=5112