- PVSM.RU - https://www.pvsm.ru -
Удобное управление пакетами. Обновление в одно касание. Простота и элегантность. Обо всем этом под катом.
Как правило, .vim каталог имеет несколько подкаталогов для ftplugins, для плагинов, для документов и т. д. Проблема с которой сталкиваются пользователи в этом случае: для того чтобы обновить скрипт надо выяснить, какие файлы поставлялись вместе с плагином, удалить эти файлы, затем переустановить плагин. Результат — лень. Пользователи не обновляют плагины и неохотно пробуют новые. Vim без плагинов — это не Vim.
Одним из решений является Pathogen. Pathogen делает ваш .vim каталог аккуратным. Вместо того, чтобы один плагин распространялся через несколько подкаталогов, Pathogen позволяет вам положить каждый плагин в его собственный каталог. Таким образом, вместо этого:
/.vim
/.vim/ftplugin
/.vim/ftplugin/plugin1.vim
/.vim/ftpluginplugin2.vim
/.vim/syntax
/.vim/syntax/plugin1.vim
/.vim/syntax/plugin2.vim
Вы имеет это:
/.vim
/.vim/bundle
/.vim/bundle/plugin1
/.vim/bundle/plugin1/ftplugin
/.vim/bundle/plugin1/ftplugin/plugin1.vim
/.vim/bundle/plugin1/syntax
/.vim/bundle/plugin1/syntax/plugin1.vim
/.vim/bundle/plugin2
/.vim/bundle/plugin2/plugin
/.vim/bundle/plugin2/plugin/plugin2.vim
/.vim/bundle/plugin2/syntax
/.vim/bundle/plugin2/syntax/plugin2.vim
Также можно расширить возможности Pathogen используя Git подмодули [1] или так Обновление плагинов Pathogen [2]. Но, сам по себе, Pathogen только организует удобную структуру каталогов.
Vundle [3] является, по существу, пакетным менеджером для Vim, таким как Bunlder для Ruby. Этот плагин организует структуру каталогов также, как и Pathogen. Но в отличии от него позволяет:
Руководство по установке в Vundle readme написано просто и понятно, поэтому сдесь только краткая выжимка:
Установка Vundle:
$ git clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle
Добавляем следующие строки в ваш .vimrc:
set nocompatible
filetype off " обязательно!
set rtp+=~/.vim/vundle.git/
call vundle#rc()
filetype plugin indent on " обязательно!
Следующие строки, по сути, просто пример, не стоит о них беспокоится:
" оригинальные репозитории на github
Bundle 'tpope/vim-fugitive'
Bundle 'lokaltog/vim-easymotion'
Bundle 'rstacruz/sparkup', {'rtp': 'vim/'}
" репозитории vim-scripts
Bundle 'L9'
Bundle 'FuzzyFinder'
Bundle 'rails.vim'
" не github репозитории
Bundle 'git://git.wincent.com/command-t.git'
Стандартная формула это: Bundle "источник"
.
Здесь у нас есть список плагинов, которые вы можете использовать. Первые три — те, что вы загружаете с githhub. Вам только нужно записать username/repo_name для них. Вторые три — имена скриптов, используемые на vim.org сайте. Вам нужно только дать имя для них. Последние примеры — примеры для git репозиториев, которые живут не на github.
Теперь у вас есть список плагинов, которые вы хотите использовать в .vimrc. Что дальше? Открываем Vim и выполняем команду :BundleInstall
. Это установит все плагины записанные в вашем .vimrc.
Установка плагина даволе проста. Обновление плагинов также просто: :BundleInstal
обновит все ваши плагины. Если вы хотите удалить плагин, то удалите его из вашего .vimrc (вы можете его закоментировать). Затем запустите :BundleClean
.
Чтобы лучше справляться с плагинами нужно знать их всех по именам, что не всегда просто. Посмотреть список установленных плагинов можно при помощи команды :BundleList
.
Последний штрих в пользу менеджера плагинов Vundle — это поиск. :BundleSearch foo
поможет вам в поиске(или первоначальном обновлении кэша) для пакета foo.
" Краткая справка
" :BundleList — список конфигурированных bundles
" :BundleInstall — установить(обновить) bundles
" :BundleSearch foo — поиск(или первоначальное обновление кэша) для foo
" :BundleClean — подтверждение(или авто-одобрение) удаления неиспользуемых bundles
"
" :h или Vundle Wiki [4] — для большей информации
«Пользователям Windows смотреть Vundle for Windows [5]
Источники:
Репозиторий на github [3].
Статья [6], которая сподвигла меня написать этот пост.
Автор: vihryn
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/vim/12228
Ссылки в тексте:
[1] Git подмодули: http://vimcasts.org/episodes/synchronizing-plugins-with-git-submodules-and-pathogen/
[2] Обновление плагинов Pathogen: http://habrahabr.ru/post/116523/
[3] Vundle: https://github.com/gmarik/vundle/
[4] Vundle Wiki: https://github.com/gmarik/vundle/wiki
[5] Vundle for Windows: https://github.com/gmarik/vundle/wiki/Vundle-for-Windows
[6] Статья: http://www.charlietanksley.net/philtex/sane-vim-plugin-management/
Нажмите здесь для печати.