lazy.nvimへの移行(プラグインマネージャの変更)
NeoVimのライトな使い方しかしていなかったせいか、特にここ1年問題もなくフツーに使えてた。
でも、プラグインの管理に使っていたPacker.nvimのメンテナンス終了のアナウンス。
NOTICE: This repository is currently unmaintained. For the time being (as of August, 2023), it is recommended to use one of the following plugin managers instead:
じゃあ、ちょうどいいからプラグインの管理プラグインを変更して、プラグインも見直してみようかと。 Packerがお勧めしているのはこの二つ。
lazy.nvim: Most stable and maintained plugin manager for Nvim.
pckr.nvim: Spiritual successor of packer.nvim. Functional but not as stable as lazy.nvim.
じゃあ安定性を優先してlazy.nvimに。
ちなみに、色々やるならdpp.vimが面白いのは間違いないと思う。
github.com
インストールと初期設定
Packerを使っていたときには、
というやり方でやってた。
これがlazyになると、
と、管理が楽になった。
一番最初の.config/nvimの中身はこれだけ
─nvim │ init.lua │ └─lua 001_core.lua 002_keymap.lua 100_lazy.lua
init.luaはこれだけ
-- luaで作成 require('001_core') require('002_keymap') require('100_lazy')
001_coreと002_keymapの内容は
からあまり変わってない。
肝心の100_lazy.luaはこんな感じ
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" if not vim.loop.fs_stat(lazypath) then vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", "--branch=stable", -- latest stable release lazypath, }) end vim.opt.rtp:prepend(lazypath) require('lazy').setup('plugins', opts)
これは最後の行以外は、プラグインの説明ページを貼り付けただけ。
ちなみに、最初のほうに書いているのは、決まったフォルダにlazy.nvimがあるかをチェックして
lazy.nvimがなかったらgit cloneコマンドでlazy.nvimをとってくるという内容
プラグインの保管場所は「vim.fn.stdpath("data") .. "/lazy/lazy.nvim"」ということ
これがどこかを調べたいならコマンドラインモードで
:lua print(vim.fn.stdpath("data"))
でチェックすることができる
100_lazy.luaの最後に記載した「plugins」がプラグインの設定ファイル名plugins.luaを使いますという意味になるみたい。
これをpluginsというフォルダにすることで、1プラグイン1ファイルで設定していくことが可能になる。
試しにカラースキームのKanagawaをインストールするとこんな感じ
└─nvim │ init.lua │ └─lua │ 001_core.lua │ 002_keymap.lua │ 100_lazy.lua │ └─plugins kanagawa.lua
ちなみに配布元はこちら
このプラグインをインストールするときに「100_lazy.lua」にはなにも記載していない。
kanagawa.luaはこんな感じ
return{ 'rebelot/kanagawa.nvim', event = "VimEnter", config = function() vim.cmd.colorscheme "kanagawa" end, }
設定ファイルは「return{」で始まって「}」で終わる
最初にどこからダウンロードするか?githubだとこの書き方でOK
次はどのタイミングでプラグインを読み込むか?
lazy.nvimはプラグインを読み込むタイミングを遅らせることで、neovim本体の起動時間を早めることができる
今回はvimを開いたときなので「event="VimEnter"」になる。タイミングは色々あるので、配布元のページを確認したほうがいい。
最後にconfigの行で、プラグインを使ってなにをするのかやkeymapをここに書いていく。
書き方がいくつかあるみたいなので、統一した書き方ができるようにしておきたい。
この状態でNeovimを再起動したら、プラグインのインストール画面が最初に自動で起動する。
qキーでインストール画面が閉じられて、今回はKanagawaのカラースキームが設定されて表示された。