vim-addon-manager是一个非常棒的Vim插件,但是他有一个问题,就是他在安装的时候是使用插件的注册名字来区分不同的插件,这样就经常让人很迷惑。
例如我要安装showmarks插件,但是我用命令
:ActivateAddons showmarks
后,会提示showmarks和ShowMarks两个插件,我该装哪个?
经过和vim-addon-manager作者
的沟通(),找到了进一步查找信息的方法,做了一个小函数。
最新的好消息:作者决定把查询功能增加到主干分支当中。
使用方法:
:ActivateAddons showmarks后,如果tab发现有多个类似插件,按F2能够查询所有找到的类似的插件的注册信息,这样你就可以根据地址上vim.org去查看到底要装哪个了。
详细代码,拷贝到你的vimrc里面就可以了。
VimL语言:
01 "使用F2在安装插件的过程中命令行模式搜索插件信息
02 function! Find_addon_info(addname)
03 " 从vim-addon-manager数据库中查询插件信息
04 let s:addon_list=items(
05 \ filter(copy(g:vim_addon_manager['plugin_sources'])
06 \ ,'v:key =~ a:addname'))
07 for [addon_key,addon_info] in s:addon_list
08 echo '插件名称: '.addon_key
09 let s:nr=get(addon_info,'vim_script_nr')
10 if s:nr
11 echo ' 编号 : ' . s:nr
12 endif
13 echo '下载地址: '. get(addon_info,'url')
14 let s:dt=get(addon_info,'date')
15 if s:dt
16 echo '上传日期: ' . s:dt
17 endif
18 echo "\n"
19 " echo '详细信息'
20 " echo addon_info
21 endfor
22 endfunction
23
24 function! LastWord()
25 let cmdline = split(getcmdline())
26 let @b = cmdline[-1]
27 return 'call Find_addon_info("' . @b .'")'
28 endfunction
29 cnoremap <F2> <C-\>e LastWord()<CR><CR>
输出结果类似下面,其中152和2142分别是两个插件的vim.org的插件编号,地址为
插件名称: ShowMarks
编号 : 152
下载地址:
上传日期: 2004-08-16
插件名称: showmarks
编号 : 2142
下载地址:
上传日期: 2008-02-06
阅读(2389) | 评论(1) | 转发(2) |