Vim的插件管理利器pathogen

Vim的插件管理利器pathogen转自 http blog 163 com yysfire 126 blog static nbsp nbsp nbsp Vim 能成为一款优秀的编辑器 是离不开各种功能的插件的 默认情况下 Vim 的插件都是散落安装在 VIM vimfiles vim onLinux nbsp 目录下 然而 安装的插件多了之后 其管理就成为一个问题 有时为了删除一个

转自:http://blog.163.com/yysfire@126/blog/static//

     Vim 能成为一款优秀的编辑器,是离不开各种功能的插件的。默认情况下,Vim 的插件都是散落安装在 $VIM/vimfiles/(~/.vim/ on Linux) 目录下。然而,安装的插件多了之后,其管理就成为一个问题,有时为了删除一个插件,必须在vimfiles目录的子目录里一个个地找,然后一个文件一个文件地删,很麻烦。其实,我们完全可以将各个插件都安装在单独的文件夹下,这样更新和删除插件就变得很容易了。这就要依赖插件管理插件了。
目前,Vim 的插件管理插件主要有三个:pathogen,vim-addon-manager和vundle。个人觉得,在Windows平台下,pathogen最方便好用。下面就简要介绍一下这个插件的使用方法(以Windows平台为例,Unix/Linux平台类似)。

一、pathogen.vim的安装与使用

1、 下载 pathogen.vim,将其放到$VIM/vimfiles/autoload目录下。
2、在vimrc文件中添加:

call pathogen
#infect()

3、在$VIM/vimfiles目录下新建目录bundle,安装的插件就都放到这个目录下(按照原来的目录结构)。例如,安装插件a.vim,它本来是应该放在$VIM/vimfiles/plugin目录下,现在就可以放在$VIM/vimfiles/bundle/<you_name>/plugin 目录下,其中<you_name>可以自己随便取,比如就取为a,这样以后看到此目录,就知道它里面是插件a.vim了。

4、打开Vim就可以使用bundle目录下的插件了。
5、很多插件还带有自己的说明文档(doc目录中),只要执行一下命令

:call pathogen
#helptags()

pathogen就可以自动为bundle目录下所有的doc目录中的txt文件生成帮助文档标签。

二、c.vim 与 pathogen.vim 的兼容问题

pathogen与大部分插件都很兼容,但有少部分插件在使用pathogen管理时会出现问题。例如,C&C++程序员用得非常多的插件 c.vim(C/C++ IDE — Write and run programs. Insert statements, idioms, comments etc)。当将此插件安装到bundle/cvim/目录下后,打开Vim,会弹出”Global template file ‘.s:C_GlobalTemplateFile.’ not readable.”的警告。要解决这个问题,只需要将此插件的c.vim文件(在plugin目录下)的69行:
      let s
:plugin_dir   
= $VIM.
‘/vimfiles/’
修改为:
      let s
:plugin_dir   
= $VIM.
‘/vimfiles/bundle/cvim/’

即可。

三、pathogen.vim 与 vimball

有些插件是以vimball的方式发布的(打包成.vba格式),如果按照常规的安装方式,即用Vim打开vba文件,然后执行命令:

:so 
%

那么,插件的文件还是被解压到vimfiles目录下,而非bundle目录。当然,我们可以用

:RmVimball pluginname

命令来卸载vba格式的插件。

然而,如果我们仍然想用pathogen来管理vba格式的插件,那么可以依照以下步骤操作:

:edit name.vba

: !mkdir $VIM\vimfiles\bundle\name
:UseVimball $VIM\vimfiles\bundle\name

这样,name插件的文件就都被解压到$VIM\vimfiles\bundle\name 目录下,且自动执行了helptags命令。

扩展阅读

  • https://github.com/tpope/vim-pathogen
  • http://www.vim.org/scripts/script.php?script_id=2332


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/233145.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • jsonArray字符串转List

    jsonArray字符串转ListjsonArray字符串转List&lt;Map&lt;String,String&gt;&gt;StringjsonStr="[{user:{name:\"张三\",age:\"20\"}},{score:{yuwen:\"80\",shuxue:\"90\"}}]";List&lt;Map&lt;Stri

    2022年5月14日
    108
  • Visio 2010工具产品密钥

    Visio 2010工具产品密钥最近需要安装Visio2010来进行画图工作的需要,因此在网上找了好长时间的产品密钥,这是我亲测之后觉得有效的,大家可以根据我下面的这些产品密钥来激活Visio2010。具体的密钥如下:GR24B-GC2XY-KRXRG-2TRJJ-4X7DCVWQ6G-37WBG-J7DJP-CY66Y-V278X2T8H8-JPW3D-CJGRK-3HTVF-VWD83HMCVF-BX8YB-…

    2022年6月1日
    49
  • 跨链协议ChainBridge简明教程【EVM/Substrate】「建议收藏」

    跨链协议ChainBridge简明教程【EVM/Substrate】「建议收藏」ChainBridge是一个可扩展的跨链通信协议,目前兼容EMV和Substrate链,支持两个不同的EVM区块链、或者一个EVM链与一个Substrate链之间的跨链桥接与通证转移,支持ERC20、ERC721等多种类型的通证的跨链转移,以及普通数据的跨链转移。在这个教程中,我们将介绍ChainBridge的基本构成和安装方法,并利用ChainBridge实现Substrate原生资产和以太坊ERC20/ERC721通证之间的跨链转移。用自己熟悉的语言学习以太坊开发:Java|Php|

    2022年5月6日
    78
  • Python学习笔记二(高级特性)

    Python学习笔记二(高级特性)本文主要对Python的函数调用的使用进行讲解。

    2022年6月17日
    30
  • Image.open()_image.open函数

    Image.open()_image.open函数文章目录1导入库2图像读取3读入图片类型4通道5显示方法6相互转换Image.open()和ci2.imread()都是用来读取的图像,但在使用过程中存在一些差别。具体,可以从以下几个角度进行分析:1导入库导入的包不同。img=cv2.imread(path),这是opencv中的处理图片的函数,使用时需importcv2img=Image.open(path),这是PIL中的一个处理图片的函数,使用时需fromPILimportImage#opencv-py

    2022年10月14日
    2
  • Exhibitor(zookeeper监控工具)[通俗易懂]

    Exhibitor(zookeeper监控工具)[通俗易懂]具体看github上的文档,很详细https://github.com/soabase/exhibitor/wiki/Running-Exhibitor一、这个是Netflix出品的一个监控工具,但实际上也很难用。。Exhibitor的主要功能监控本机的Zookeeper服务,可以自动重启挂掉的Zookeeper服务;定期备份数据;定期清理Zookeeper日志;提供了一个We…

    2025年7月4日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号