Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1730388
  • 博文数量: 410
  • 博客积分: 9563
  • 博客等级: 中将
  • 技术积分: 4517
  • 用 户 组: 普通用户
  • 注册时间: 2010-07-03 19:59
个人简介

文章分类

全部博文(410)

文章存档

2017年(6)

2016年(1)

2015年(3)

2014年(4)

2013年(32)

2012年(45)

2011年(179)

2010年(140)

分类: LINUX

2011-06-20 00:05:24


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

阅读(2350) | 评论(1) | 转发(2) |
给主人留下些什么吧!~~

网络安全服务2011-06-20 14:41:28