Neovimのプラグインマネージャーをvim-plugからpacker.nvimへ

Neovim界隈のトレンドがluaへの移行ということで、プラグインマネージャーもluaに移行していきたいと思います

packer.nvimとは

packer.nvimはlua製のプラグインマネージャーです。
lua製なので、neovimでしか使えません(vimはluaに対応していないため)。

他にもプラグインマネージャーはありますが、今回はluaへ移行するというモチベーションなのでpacker.nvimにしました。

他のプラグインマネージャー

移行作業

移行作業はそんなに難しくはありませんでした。
まあ、いれてるプラグインの数がそんなに多くないし、特殊なこともやってないので、ただ羅列するだけだったしな。

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

つまり、PackerSyncした時、次の3つのコマンドが走っています。

  • PackerClean
  • PackerInstall
  • PackerCompile

これらはそれぞれ、以下の役割を担っています。

PackerClean

プラグインの削除

PackerInstall

プラグインのインストール

PackerCompile

プラグイン設定の変更

コメント

タイトルとURLをコピーしました