nti*_*mes 75 vi vim packages package-managers vim-plugin
Emacs 24 看起来会有一个包管理器.Vim有哪些包管理选项?
wey*_*amz 36
通过在整个个人vim运行时目录中传播插件文件,vim的插件管理过去常常是一种痛苦,例如.~/.vim对于*nix系统.一旦安装了插件,就很难更新,因为没有简单的方法可以删除过时的插件文件,这是必要的步骤.
一开始,我想列出一个关于如何使用精美插件管理工具的个人要求:
有很多实现(Vim-Scripts.org对所有可用工具有一个全面的总结),我只会通过创建订单来讨论几个主要工具.
vimball是第一个解决这个问题的尝试,实际上是一个半官方的解决方案,许多插件与*.vba包一起装运了很长时间.结合GetLatestVimScripts,这形成了vim插件管理的传统方式.
尽管如此,问题仍然存在,直到Tim Pope的病原体(Github Repo)将每个插件放入其自己的目录并通过修改vim的"rtp(runtimepath)"在启动时加载它们.这是一个很好的进步 - 结合由git/github和其他工具(例如vimmer)托管的vim-scripts.org,它形成了管理vim插件的现代方式.有很多文章和视频谈论这个主题.
作为管理插件的插件,病原体仍然缺少一些核心功能,如搜索,安装,更新和删除插件.结果,VAM(Vim-Addon-Manager)(Github Repo)走了出来.VAM几乎提供了需要被插件管理一切:在VIM启动时地方在自己的目录插件文件,加载插件,搜索/安装/更新/非原命令行删除插件,用纯VimL,维护自己的插件中央信息数据库,甚至可以解决插件依赖关系.看起来VAM应该是我们作为一个功能齐全的vim插件管理器所需要的,但从我的角度来看,VAM采用的方法有点不优雅,有时过度设计.虽然它仍然是一个很棒的插件,值得使用.
然后,Tom Link的tplugin(Github Repo)通过在调用相关命令或函数时加载插件来改善病原体,类似于AsNeeded.此外,它有一些依赖性解决机制,看起来不错.
Finnaly,Gmarik创建了Vundle(Github Repo),这是Tim Pope的病原体的继承者,灵感来自Ruby的Bundler,它提供了更好的用户界面和额外的管理功能.Vundle到Vim与Bundler和Ruby项目很相似.通过在vimrc中声明所需的插件,vundle通过ex命令行界面处理所有其余的插件,包括安装/更新和删除插件.最重要的是,vundle是在纯VimL中实现的.在vundle的帮助下,只需一个简单的vimrc文件即可在几台计算机上管理vim配置.作为一个现代的插件管理工具,vundle依赖于Git,可以直接从Github安装插件.Vundle还提供了一个用于搜索和安装插件的精美交互式界面.
Vundle并没有完全满足我的要求,但它确实朝着正确的方向前进,这对我来说似乎是一个很好的起点.
以下是VAM作者MarcWeber 对vim插件管理器的讨论和另一种比较.
mic*_*ael 25
还有pathogen.vim
http://www.vim.org/scripts/script.php?script_id=2332
虽然它不是你要求它提供了一种方法来管理你的github和bitbucket的结账.
这很好,因为它分离了插件的目录结构.因此,您可以签出插件的存储库并获得正确的版本控制,而不是依赖维护者来更新代码.此外,它不依赖于插件作者根据引用的其他选项设置/打包.
vim.org上有一些其他插件可以执行此任务,但目前我找不到它们
Mic*_*zyk 12
我现在正在使用手工制作的设置,但我一直告诉自己有时候给这个镜头(链接都与同一个插件有关):
再一次,我还没有真正尝试过这个,但它看起来很有希望.
所有这些答案似乎都很老了。正如对类似问题的回答中所述,
Vim 8.0 和 Neovim 都有自己的内置包管理器
根本不需要另一个插件管理器。
我已经使用它一两年了,对我来说它看起来简单又容易。
以下是一些有关其优点以及如何使用它的资源:
:help packages在维姆中Vim.org + Vimballs + GetLatestVimScripts是内置的,目前可以管理vim插件.
:h GetLatestVimScripts
Run Code Online (Sandbox Code Playgroud)
关于它的坏事:
| 归档时间: |
|
| 查看次数: |
31969 次 |
| 最近记录: |