Emacs 24 看上去会有包管理器。Vim有哪些包管理选项?
发布于 2011-02-21 20:58:33
发布于 2012-10-23 07:29:24
通过将插件文件传播到整个个人的vim运行时目录中,vim的插件管理过去一直是一种痛苦的传统方式,例如。用于*nix系统的~/.vim。一旦一个插件被安装,很难被更新,因为没有一个简单的方法来删除过时的插件文件,这是一个必要的步骤。
首先,我想列举一下我个人对一个优秀插件管理工具的需求:
有很多实现(Vim-Scripts.org有一个包含所有可用工具的综合总结 ),我将通过它们的创建顺序来讨论几个主要工具。
振球是第一次尝试解决这个问题,实际上是一个半官方的解决方案,很多插件都随*.vba软件包一起运行了很长一段时间。与GetLatestVimScripts相结合,形成了传统的vim插件管理方式。
尽管如此,问题仍然存在,直到蒂姆·波普的致病菌(Github回购)将每个插件放到自己的目录中,并通过修改vim的"rtp(runtimepath)“在启动时加载它们。这是一个很大的进步--与由git/github托管的vim-scripts.org和其他工具(如振子)相结合,它形成了管理vim插件的现代方式。有很多文章和视频谈到了这个主题。
作为一个插件管理插件,病原体仍然缺少一些核心功能,如搜索,安装,更新和删除插件。因此,VAM(Vim-Addon-Manager)(Github回购)走了出来。VAM几乎提供了成为插件管理器所需的一切:将插件文件放在自己的目录中,在vim启动时加载插件,在ex命令行中搜索/安装/更新/删除插件,用纯VimL编写,维护自己的插件中央信息数据库,甚至解决插件依赖关系。作为一个功能齐全的vim插件管理器,VAM应该是我们需要的,但在我看来,VAM的方法有点不雅,有时设计过度。虽然它仍然是一个很棒的插件,值得使用。
然后,出现了Tom的tplugin(Github回购),它通过只在调用相关命令或函数时加载插件来改进病原体,类似于AsNeeded。此外,它还具有某种看似不错的依赖解决机制。
最后,Gmarik创建了范德尔 (Github回购),它是蒂姆·波普的病原体的继承者,灵感来源于Ruby的邦德勒,它提供了更好的用户界面和额外的管理功能。Vundle to Vim非常类似于Ruby项目的Bundler。通过在vimrc中声明需要的插件,vundle通过ex命令行接口处理所有其他插件,包括安装/更新和删除插件。最重要的是,vundle是在纯VimL中实现的。在vundle的帮助下,可以通过一个简单的vimrc文件来管理多台计算机上的vim配置。作为一种现代的插件管理工具,vundle依赖于Git,可以直接从Github安装插件。Vundle还为搜索和安装插件提供了一个奇特的交互界面。
虽然Vundle并没有完全满足我的要求,但是它确实朝着正确的方向发展,这对我来说似乎是一个好的起点。
以下是VAM作者讨论和vim插件管理器的另一种比较的MarcWeber。
发布于 2010-03-17 23:01:02
还有pathogen.vim
id=2332
虽然这并不是您想要的,但它提供了一种管理github和bitbucket的结帐的方法。
这是好的,因为它分离插件的目录结构。因此,您可以签出插件的存储库,并获得适当的版本控制,而不是依赖维护人员来更新代码。此外,它也不依赖插件作者设置/包的要求,因为其他选项被引用。
在vim.org上还有一些其他插件可以执行这项任务,尽管我目前还找不到它们
https://stackoverflow.com/questions/2458398
复制相似问题