VimLives Like Vim上古神器Vim

Vim 插件管理器概览

2017-07-05  本文已影响172人  liuchengxu

什么是 Vim 插件

:h plugin :

Vim's functionality can be extended by adding plugins. A plugin is nothing
more than a Vim script file that is loaded automatically when Vim starts. You
can add a plugin very easily by dropping it in your plugin directory.

一个 Vim 插件不过是 Vim 启动时自动加载的 Vim script 脚本而已. Vim 启动时会自动加载 runtimepath 中的 plugin 子目录下的所有文件. 那么, runtimepath 又是什么? :h runtimepath:

runtimepath

runtimepath 就是 Vim 查找脚本文件的地方, runtimepath 之于 Vim ,
有点类似 $PATH 之于 shell. :echo &runtimepath 即可进行查看.

runtimepath 下面有两个子目录需要注意:

goyo.vim

上图中还有一个 doc 目录, 它里面通常放的是插件的 help 内容.

如果不用插件管理器, 手动管理 Vim Script 脚本文件也可以. 但是当插件一多的话, 就会变得很可怕, 更新, 删除都会很麻烦. 直到目前为止, Vim 并没有标准的插件管理器, 尽管 Vim 8 已经引入了 packages 的管理功能 (:h packages).

主流插件管理器

主流的插件管理器有下面这几个, 从早期现在看来 "稍显简陋" 的 pathogen, 到 Vundle 已经是真正有了几分 manager 的意思, 再到现在比较流行的 vim-plugdein.vim ( neobundle 是 dein 作者前一个插件管理器作品, 已经弃用了 ). vim-plug 和 dein.vim 现在都支持并行安装和延迟加载, 这对于有几十甚至上百个插件的人来说是非常重要的.

我比较喜欢 vim-plug, space-vim 也是使用的 vim-plug, 因为它设计简单, 使用方便, 功能也都算完备.

vim-plug

非主流插件管理器

除了主流的插件管理器, 还有很多非主流的管理器. 主流管理器都是用 Vim Script 实现的, 只是有些功能, 比如并行安装, 会有一些版本或是编译的特性 (+python等)要求, 使用上没有什么依赖. 而一些非主流管理器可能是用其他语言写的, 需要你事先安装了那个语言, 比如有用 Rust 和 Haskell 实现的.

其实一个管理器的主要功能就是到 GitHub 上下载插件 (git clone) 然后放到指定目录, 这里 是 vim-plug 的作者对 vim-plug 诞生写的一篇文章, 里面介绍了 vim-plug 的由来.

下面是一些非主流的 Vim 插件管理器, 有兴趣的可以自行查看:

上一篇 下一篇

猜你喜欢

热点阅读