Neovim界隈のトレンドがluaへの移行ということで、プラグインマネージャーもluaに移行していきたいと思います
packer.nvimとは
packer.nvimはlua製のプラグインマネージャーです。
lua製なので、neovimでしか使えません(vimはluaに対応していないため)。
他にもプラグインマネージャーはありますが、今回はluaへ移行するというモチベーションなのでpacker.nvimにしました。
他のプラグインマネージャー
- vim-plug: 今まで使ってた
- vim-jetpack: とても速いらしい。今回はluaへ移行するモチベのため見送り。
移行作業
移行作業はそんなに難しくはありませんでした。
まあ、いれてるプラグインの数がそんなに多くないし、特殊なこともやってないので、ただ羅列するだけだったしな。
before with vim-plug
call plug#begin()
Plug 'easymotion/vim-easymotion'
Plug 'junegunn/vim-easy-align'
Plug 'vim-scripts/taglist.vim'
Plug 'kana/vim-operator-user'
Plug 'haya14busa/vim-operator-flashy'
Plug 'Shougo/vimproc.vim', {'do' : 'make'}
Plug 'markonm/traces.vim'
Plug '907th/vim-auto-save'
Plug 'tpope/vim-fugitive'
Plug 'airblade/vim-gitgutter'
Plug 'preservim/nerdcommenter'
Plug 'preservim/nerdtree'
Plug 'altercation/vim-colors-solarized'
Plug 'SidOfc/mkdx' "for markdown
Plug 'vim-skk/eskk.vim' "for skk
call plug#end()
after with packer.nvim
vim.cmd [[packadd packer.nvim]]
return require('packer').startup(function(use)
use 'wbthomason/packer.nvim'
use {'easymotion/vim-easymotion'}
use {'junegunn/vim-easy-align'}
use {'Shougo/vimproc.vim', run = 'make'}
use {'markonm/traces.vim'}
use {'907th/vim-auto-save'}
use {'tpope/vim-fugitive'}
use {'airblade/vim-gitgutter'}
use {'preservim/nerdcommenter'}
use {'preservim/nerdtree'}
use {'altercation/vim-colors-solarized'}
use {'SidOfc/mkdx', ft = {'markdown'}}
use {'vim-skk/eskk.vim'}
end)
packer.nvim使い方
vim-plugの場合
新しいプラグインを追加 or アップデートするとき
:PlugUpdate
プラグインを削除するとき
:PlugClean
packer.nvimの場合
新しいプラグインを追加 or アップデートするとき or プラグインを削除するとき
:PackerSync
PackerSyncについてもう少し詳しく
packer.nvimにはvim-plugのUpdateやCleanのようなコマンドもあります。
PackerSyncすると、裏ではこのコマンドが走っているようです。
- PackerSync
- PackerUpdate
- PackerClean
- PackerInstall
- PackerCompile
- PackerUpdate
つまり、PackerSyncした時、次の3つのコマンドが走っています。
- PackerClean
- PackerInstall
- PackerCompile
これらはそれぞれ、以下の役割を担っています。
PackerClean
プラグインの削除
PackerInstall
プラグインのインストール
PackerCompile
プラグイン設定の変更
コメント