Еще один менеджер плагинов для Vim

в 11:35, , рубрики: vim, vim-plug

Для 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:

Еще один менеджер плагинов для Vim - 1

Для обновления самого плагина используется отдельная команда 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']}

Заключение

Лучший способ надоесть — рассказать все до конца. Помимо рассмотренных, данный менеджер поддерживает еще дополнительный ряд возможностей, с которыми можно ознакомиться на странице проекта.

Автор: XVadim

Источник


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js