Еще один менеджер плагинов для Vim
Для Vim существует несколько менеджеров плагинов. Я хочу рассказать еще об одном.ВведениеНа Хабре уже были обзоры менеджеров плагинов: раз, два. Рассмотрим еще один: VIM-PLUG. Данный менеджер обладает рядом интересных возможностей: Простота установки (код плагина содержится в единственном файле) Быстрые установка и обновление плагинов (если Vim собран с опцией +ruby) Поддержка ветвей и тегов Постобработка В статье автор рассказывает о причинах, побудивших его написать еще один плагин. А в это статье приводит сравнение производительности плагинов.Установка и базовая настройка Чтобы установить плагин, достаточно скачать один файл: curl -fLo ~/.vim/autoload/plug.vim --create-dirs \ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim А можно добавить в .vimrc следующий фрагмент: if empty (glob (»~/.vim/autoload/plug.vim»)) execute '! curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.github.com/junegunn/vim-plug/master/plug.vim' endif и плагин установится при первом старте Vim’а.Далее следует добавить информацию об устанавливаемых плагинах:
call plug#begin ('~/.vim/plugged') Plug 'scrooloose/nerdtree' » Project and file navigation Plug 'majutsushi/tagbar' » Class/module browser Plug 'fisadev/FixedTaskList.vim' » Pending tasks list … Plug 'freeo/vim-kalisi' call plug#end () Для установки плагинов необходимо выполнить команду PlugInstall, для обновления — PlugUpdate:
Для обновления самого плагина используется отдельная команда PlugUpgrade, для удаления плагинов — PlugClean.
Дополнительные настройки При настройке можно указать конкретный тип файла, для которого будет загружаться указанный плагин. Конечно, хорошо написанный плагин сам такое должен уметь, но такое бывает не всегда: Plug 'itchyny/vim-cursorword', {'for': 'python'} Также можно указать какую-либо команду и VIM-PLUG загрузит плагин при первой попытке выполнить эту команду: Plug 'fmoralesc/vim-pad', {'on': 'Pad'} Некоторые плагины требуюют выполнение дополнительных действий после своей установки. VIM-PLUG может помочь и в данном случае: Plug 'Valloric/YouCompleteMe', {'do': 'sudo ./install.sh'} С YouCompleteMe у меня возникла небольшая проблема пришлось при первой установке вручную выполнить: git submodule update --init --recursive Также можно указать ветку или тег, с которых следует брать код плагина: Plug 'xvadim/vim-cursorword', {'branch': 'feature', 'for': ['python', 'bash']} Заключение Лучший способ надоесть — рассказать все до конца. Помимо рассмотренных, данный менеджер поддерживает еще дополнительный ряд возможностей, с которыми можно ознакомиться на странице проекта.