Vim是一个非常优秀的编辑器,但是没装插件的Vim就始终只是个编辑器而已,是插件让Vim变得更加强大。

但是插件装得多了,管理就成了问题,Vim本身并没有提供插件管理功能,往往时间一长,.vim/vimfile 文件夹下就变得杂乱不堪。

vim-addon-manager这个插件就是为了管理Vim插件的插件。

介绍:

This plugin allows users to install and uninstall plugins with a minimum of work. Features:
    - Separate directories for each plugins
    - Dependency resolution
    - Popular VCS support: plugin supports fetching from Git, Mercurial,
      Subversion and Bazaar repositories

简单来说就是可以非常方便的安装和卸载插件。

依赖关系:

- Curl, wget or other program that can output URL contents to stdout (in
      order to get http protocol support)
    - Git, Mercurial, Subversion and Bazaar (if you want to install plugins
      from appropriate repositories)
    - vcs_checkouts plugin (comes with this addon)
    - Either tar, gzip and zip or 7-zip (required for unpacking some addons)
    - Vimball plugin (required for installing some addons) (in latest vim it
      is included by default)

linux下基本上安装下git和Mercural就可以开始安装了,windows下就比较麻烦,需要自行下载Curl,7z并将路径加入系统path,并安装msysgit。

在一切准备工作做好之后,就可以开始安装了。

新建一个目录用于存放插件文件,如:

1
~/vim-addons

然后进入这个文件夹,并下载插件文件:

1
2
cd ~/vim-addons
git clone git://github.com/MarcWeber/vim-addon-manager.git

安装完毕,会发现vim-addons文件夹下多了一个vim-addon-manager文件夹,这个文件夹中存放了vim-addon-manager的主要文件。

接着在.vimrc/_vimrc文件夹下添加以下代码:

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
fun SetupVAM()
   set runtimepath+=~/vim-addons/vim-addon-manager
   " commenting try .. endtry because trace is lost if you use it.
   " There should be no exception anyway
   " try
     call vam#ActivateAddons(['pluginA', 'pluginB'], {'auto_install' : 0})
     " pluginA could be github:YourName see vam#install#RewriteName()
   " catch /.*/
   "  echoe v:exception
   " endtry
 endf
 call SetupVAM()
 " experimental: run after gui has been started (gvim) [3]
 " option1:  au VimEnter * call SetupVAM()
 " option2:  au GUIEnter * call SetupVAM()
 " See BUGS sections below [*]

将代码中的runtimepath后面改正本机上vim-addon-manager的路径。

然后打开vim(linux下似乎不能直接打开图形版vim?笔者试着直接打开会无法运行,需要在终端中执行gvim打开),首次执行时会下载插件仓库文件(需要git)。

一切完成之后,就可以开始使用了。

安装插件:

1
:InstallAddons {name}

比如需要安装taglist,就执行:

1
:InstallAddons taglist        #注意大小写

这里不能不说一下,vim-addons-manager有个不太方便的地方,就是安装插件时插件的名字一定要与仓库中的完全匹配,这就给安装带来了一些麻烦。笔者的做法是自行打开

1
~/vim-addons/vim-addon-manager-known-repositories/plugin/vim-addon-manager-known-repositories.vim

并在其中查找插件的完整名称,然后进行安装。

激活插件:

1
:ActivateAddons {name}

如:

1
:ActivateAddons taglist

不过要注意这样激活的插件在下次打开Vim的时候是不会自动激活的,如果希望每次打开Vim都自动激活该插件,则需要在.vimrc/_vimrc文件中修改如下语句:

1
call vam#ActivateAddons(['pluginA', 'pluginB'], {'auto_install' : 0})

将其中的“pluginA”,“pluginB”修改为需要激活插件的名字(方括号内可以继续添加),下次启动Vim时就可以自动激活。

事实上,之后同步Vim插件就非常方便了,只需要同步.vimrc/_vimrc文件和vim-addon-manager插件就行了,所有在vam#ActivateAddons中包含的插件在首次运行时会自动安装,是不是很方便呢?

不过有些插件安装后有些问题,比如C/C++ IDE 安装后会找不到template,不过可以通过修改插件来修正。

以上只是一些基础的用法,更详细的使用帮助可以查阅插件的帮助。

vim-addon-manager【转】的更多相关文章

  1. 打造linux下的source insight——vim插件安装使用总结

    source insight是windows下的优秀编辑器,适合阅读管理代码,主要有以下功能: 查找函数,变量或者宏的定义. 查找函数,变量或者宏的引用位置. 查找函数被调用的位置 查找某个符号在工程 ...

  2. Vim插件之Command-T使用问题

    最近在使用vim插件CommandT时出现问题其实就是vim没有支持ruby,不过google之后找到了解决方法,老外的态度还是很让人敬佩的,度娘搜索的结果太让人呕心了.. 贴下,以后再次遇到解决. ...

  3. vim插件安装总结

    vim插件安装总结 vim 插件 vundle 插件对于vim来说是一个杀手级别的神器助手,能自动补全,语法高亮,文件搜索等等,有效地提升了编程效率.下面就个人的一些安装和使用进行一个总结. 自动管理 ...

  4. vim+python

    #!/bin/bash # install fisa vim config echo '===============================' echo 'start to install ...

  5. Basic Vim Configuration

    原文: https://computers.tutsplus.com/tutorials/basic-vim-configuration--cms-21498 原来,vim的配置文件,.vimrc也是 ...

  6. Openstack 实现技术分解 (3) 开发工具 — VIM & dotfiles

    目录 目录 前文列表 扩展阅读 前言 插件管理 Vundle 主题 Solarized 浏览项目目录结构 Nerdtree Symbol 窗口 Tagbar 文件模糊查询 CtrlP 代码补全 You ...

  7. CentOS上手工部署kubernetes集群

    本文完全是根据二进制部署kubernets集群的所有步骤,同时开启了集群的TLS安全认证. 环境说明 在下面的步骤中,我们将在三台CentOS系统的物理机上部署具有三个节点的kubernetes1.7 ...

  8. Kubernetes采用CoreDNS

    参考文档: kubernetes插件:https://github.com/kubernetes/kubernetes/tree/master/cluster/addons/dns/coredns 自 ...

  9. Kubernetes 部署 1.9.7 高可用版

    转载于https://codegreen.cn/2018/08/30/kubernetes-cluster-1.9.7/ 前言 在部署之前,首先感谢 手动搭建高可用的kubernetes 集群 博文的 ...

  10. 高可用Kubernetes集群-11. 部署kube-dns

    参考文档: Github介绍:https://github.com/kubernetes/dns Github yaml文件:https://github.com/kubernetes/kuberne ...

随机推荐

  1. 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:3.安装Oracle RAC-3.3.安装前检查

    3.3. 安装前检查 1.检查节点连通性 或:./runcluvfy.sh stage -pre crsinst -n linuxrac1,linuxrac2 -fixup -verbose [gri ...

  2. javascript快速入门25--浏览器中的XML

    打开XML 首先,直接从浏览器中打开XML文件,浏览器会对其进行格式良好性检查,如果不符合XML语法规范则显示出错,如果格式良好,再检查是否包含样式表(CSS或XSL),如果包含样式表,则用样式表格式 ...

  3. javascript快速入门14--DOM基础

    DOM(Document Object Model)——文档对象模型 什么是DOM? Document Object Model (DOM)是HTML和XML文档的编程接口.它提供了上述文档的一种结构 ...

  4. Calendar抽象类返回自己和Integer.TYPE和int.class

    public class Calend { public static void main(String[] args) { Calendar cal=Calendar.getInstance();/ ...

  5. ARP协议具体解释之ARP动态与静态条目的生命周期

    ARP协议详细解释之ARP动态与静态条目的生命周期 ARP动态条目的生命周期 动态条目随时间推移自己主动加入和删除. q  每一个动态ARP缓存条目默认的生命周期是两分钟.当超过两分钟,该条目会被删掉 ...

  6. 在基于or1200处理器的SoC上移植linux

    经历了前端的艰苦奋斗.SoC前端设计已经调试完毕,如今直接进入uboot移植   首先cd入u-boot-master 找到子文件夹include下得de2_115.h文件进行改动: (下一步计划:加 ...

  7. VBA【遍历每个工作表并将工作表表名赋予B2单元格】

    方法一:  存在缺陷:选中所有单元格,批量生成公式时候,每次需要点击进入工作表点击单元格--进入编辑状态,然后公式才会生效 使用公式如下: =,) 附件下载地址:点击下载 方法二: 使用宏编程进行复制 ...

  8. jquery遍历DOM方法总结

    1.jQuery 遍历 - 祖先 向上遍历 DOM 树 这些 jQuery 方法很有用,它们用于向上遍历 DOM 树: parent() parents() parentsUntil() jQuery ...

  9. MvcPager帮助文档 - MvcAjaxOptions 类

    表示用于 MvcPager 在 Ajax 分页模式下的选项设置,该类继承自 AjaxOptions. 公共属性: 名称 说明 默认值 AllowCache 获取或设置一个值,该值指示是否在Ajax分页 ...

  10. elasticsearch 使用快照方式迁移数据

    注册快照仓库 ES是通过快照的方式来实现数据备份,并且是以增量的方式,所以一般第一次做的话会花费较长的时间.为了做快照,那么就需要注册一个快照仓库,告诉ES我们的快照应该如何保存以及将快照保存到哪里. ...