1.javacomplete
javacompelete的作者是fangread:
http://blog.chinaunix.net/uid-236532-id-2392574.html
javacompelete下载页面:
http://vim.wendal.net/scripts/script.php?script_id=1785
( 啊……www.vim.org 悲情的被sf 对中国屏蔽了,只能靠这个使用了反向代理的URL)
1.1 unzip
unzip javacomplete.zip -d ~/.vim
1.2 .vimrc
use autocmd:
:" Only do this part when compiled with support for autocommands.
:if has("autocmd")
: autocmd Filetype java setlocal omnifunc=javacomplete#Complete
:endif
1.3 run
---------------------------------------------强大的pathogen--------------------------------------------------
Vim 插件管理工具 pathogen
DaNmarner 在 Hacker News 最近关于 Vim 插件的 帖子 回复中了解到一个叫做 pathogen 的 Vim 脚本,其作用是改善 Vim 管理插件的方式。试用过后发现 pathogen 果然强大。是以撰文分享。
问题剖析
可扩展性是优秀软件的重要特点之一,而 Vim 从 Unix 系统一路传成下来更是将可扩展性发挥到了极致。相信多数 Vim 的经验用户除了自己经精心维护的 .vimrc
配置文件之外更是有一个用起来得心应手的插件宝库,从而让 Vim 满足自己五花八门的使用需求。
Vim 大行其道,除了优秀插件众多之外的另一个因素是插件机制的简便易用。安装插件的方法无外乎一下载二解压,或者下载以后用运行 Vim 里的安装命令。没有特殊指定,插件都是装载~/.vim
目录之下。通过复制,symlink 甚至版本控制工具把这个目录备份一下,日后更是能在不同机器上瞬间找到熟悉的编辑环境。
可是时间一久,这个 ~/.vim
目录难免变得越来越臃肿,各类插件横七竖八的散落在那一个个 autoload
,ftplugin
,indent
,syntax
,doc
等目录里面不说,很多插件还我行我素的自己创建一堆私有目录,占山为王。等到你想删除或更新某某插件的时候,要么得去重新下载插件的压缩包,找到它的五脏六腑都安插在了什么位置,要么只能凭着瞎猜法门一个目录一个目录的去找来。
解决之道
pathogen 让每个插件占有一个单独的目录,解决插件文件分散的问题。安装了 pathogen 以后只要在 ~/.vim
(注:MS Windows 下貌似是 ~\vimfiles
,下同)里建立一个 bundle
目录,然后把所有插件一一放在~/.vim/bundle/插件名
下面,就可以使用。插件的安装过程与没有 pathogen 时类似,但从安装结束开始,一切的插件管理过程都能得到简化。
试用过某个插件以后需要删除?安装在 bundle
目录里最后把插件的目录一删了之就行了。
想保持使用某个插件的最新版本?直接从插件的仓库 checkout 一份代码到 bundle
目录,或者别的地方再 symlink 一下就行了。
想了解一下这个插件的实现方法?有了 pathogen 去哪里找插件脚本再也不是问题了。
实战演练
pathogen 只有一个单独的脚本,所谓安装就是把它放在你的 ~/.vim/autoload
目录。
如果你有一个类 Unix 环境(Linux, Mac OS X),只需要下面这一条命令:
wget -O ~/.vim/autoload/pathogen.vim http://www.vim.org/scripts/download_script.php?src_id=12116
要启用它,还要在 .vimrc
文件里, filetype plugin indent on
之前的任何地方,加入下面这句:
call pathogen#runtime_append_all_bundles()
这样就搞定了,把常用的插件都重装在 ~/.vim/bundle
里面吧!DaNmarner 个人喜欢直接把插件从仓库里 checkout 出来,以后直接通过版本控制来更新 Vim 插件。以 NERDTree 这个插件为例,安装起来是这样的:
git clone http://github.com/scrooloose/nerdtree.git path/to/code/nerdtree
ln -s path/to/code/nerdtree ~/.vim/bundle/nerdtree
更新到最新版本:
cd path/to/code/nerdtree && git pull origin
删除该插件:
rm -rf ~/.vim/bundle/nerdtree
怎么样,有了 pathogen ,管理 Vim 插件是不是简单了很多?
本文作者为 DaNmarner,原文发表于 http://blog.danmarner.com/me/entry/vim-pathogen/ ,
" 设置NerdTree map <F3> :NERDTreeMirror<CR> map <F3> :NERDTreeToggle<CR>
按F3即可显示或隐藏NerdTree区域了。
附:http://www.cnblogs.com/chijianqiang/archive/2012/11/06/vim-3.html
NERDTree提供了丰富的键盘操作方式来浏览和打开文件,我简单介绍一些常用的快捷键:
和编辑文件一样,通过h j k l移动光标定位
o 打开关闭文件或者目录,如果是文件的话,光标出现在打开的文件中
go 效果同上,不过光标保持在文件目录里,类似预览文件内容的功能
i和s可以水平分割或纵向分割窗口打开文件,前面加g类似go的功能
t 在标签页中打开
T 在后台标签页中打开
p 到上层目录
P 到根目录
K 到同目录第一个节点
J 到同目录最后一个节点
m 显示文件系统菜单(添加、删除、移动操作)
? 帮助
q 关闭
想了解更多操作方式,可以通过? 查看详细的帮助信息。
---------------------------------------------强大的auto-pairs--------------------------------------------------
vim.wendal.net/scripts/download_script.php?src_id=12116
git clone git://github.com/jiangmiao/auto-pairs.git ~/.vim/bundle/auto-pairs
---------------------------------------------强大的TagList------------------------------------------------------
http://vim.wendal.net/scripts/script.php?script_id=273
装这个之前需要装ctags:
sudo apt-get install exuberant-ctags
然后就什么都不要做了。