如何管理VIM中的插件管理器?

时间:2013-09-25 17:33:09

标签: vim

我知道这可能听起来很愚蠢,但我很想知道是否有一个框架来帮助VIM用户管理他们的插件管理器。

所以,我知道有这样的插件,如“Vundle”,“Pathogen”和“Neobundle”等。在过去的几天里,我一直在寻找这些工具。他们很棒。我的问题是,是否有任何更高级别的脚本旨在使用上述任何插件管理器简化插件加载过程。

所有“捆绑管理器”都有内部功能,用于卸载和加载插件,操作RTP等。只是想在开始编写我自己的vim脚本之前进行检查。

我主要关注使用“Neobundle”的技巧。我知道“janus”正在做我正在要求的事情。它运行它自己的功能来创建插件组和访问病原体功能。所以它有点像病原体的前端。

一个不错的案例是:

假设您使用“Neobundle”安装了插件“A”,“B”,“C”和“D”,但是您希望在启动时禁用插件“B”。但是稍后再启用它。每次你必须进入你的.vimrc并注释掉(或在那个负责加载插件“B”的那一行?或运行负责卸载该特定插件的“Neobundle”功能?

有更优雅的方法吗?

感谢。

2 个答案:

答案 0 :(得分:2)

你有那么多写得不好的插件吗?你需要一个但是只需要两个令人难以置信的抽象级别来“管理”它们吗?

无论如何,我认为没有一个真正的“超级经理”,因为首先没有统一的插件管理API这样的东西......缺乏这样的API可能就是为什么有这么多的原因同一主题的变化。

因为病原体是该系列中的第一个(有较旧的尝试,如内置的GLVS,是的,没有人知道它......)并且独自呆了一段时间,唯一似乎是“标准”的是bundle目录。国际海事组织,这将成为一个薄弱的起点。

我过去曾见过一些Pathogen前端的尝试,所以有一个“机会”,即在这个领域取得进展。

还有其他人,浏览r / vim一小时,你会发现很多......

答案 1 :(得分:1)

任何现代(即Vim 7.x),编写良好的插件都应该只在插件脚本中定义其映射和命令,并通过 autoload 机制按需加载其功能。特定于特定文件类型的功能应仅通过ftplugin脚本应用于那里。

除非你做两个相互独立的插件具有相同映射的疯狂东西,否则我认为不需要动态启用/禁用插件。不要让事情变得更加复杂。如果你真的有两个析取编辑用例,我宁愿创建两个单独的~/.vimrc文件和别名来使用它们。