Wagomu no Akibako

mini.depsが初心者にも扱いやすいのではないかという提案


この​記事はVim駅伝2024年3月29日(金)の​記事です。

前回の​記事は​ tadashi-aikawaさんの​「📘あまり​紹介されていないけど​ かけが​えの​ない​Neovimプラグインたち - Minerva」と​いう​記事でした。

次回の​記事は​ 4月1日(月) に​投稿される​予定です。


はじめに

タイトルの​通りです。
初心者向けの​Neovimの​プラグインマネージャーと​して​よく​選択肢に​上がるのは​この​2つだと​思います。

  • VimPlug
  • Lazy.nvim

その​中に​mini.depsも​加えても​よいのではないかと​思い記事を​書く​ことにしました。

mini.depsの​レポジトリは​こちらです。

GitHub - echasnovski/mini.deps: Plugin manager. Part of 'mini.nvim' library. Plugin manager. Part of 'mini.nvim' library. . Contribute to echasnovski/mini.deps development by cr...
ogp

mini.depsが​合うであろう​人

  • 最低限の​機能を​持った​lua製プラグインマネージャーを​探している
  • 遅延に​ついて​詳しくない​/遅延読み込みする​気が​あまりない

mini.depsとは

プラグインマネージャーです。
mini.nvimと​いう​小さな​プラグインが​沢山集まっている​プラグイン集の​一つで​先月​公開された​新作です。

mini.depsの​特徴

シンプルで​軽量

mini.depsは​シンプルで​軽量な​プラグインマネージャーです。​必要最低限の​機能に​絞られている​ため、​設定方​法に​悩むことなく​使い​始める​ことができます。

導入が​簡単

Lazy.nvimと​同様に、​インストールする​ための​Luaコードが​提供されています。​初心者でもinit.luaに​コードを​貼り付けるだけで​導入できる​点が​嬉しい​ポイントです。​具体的には、​以下の​コードをinit.luaの​先頭付近に​貼り付けて​Neovimを​再起動するだけで​使い​始められます。

local path_package = vim.fn.stdpath('data') .. '/site/'
local mini_path = path_package .. 'pack/deps/start/mini.deps'
-- mini.depsだけではなくてmini.nvimを入れたい場合はこっち↓
-- local mini_path = path_package .. 'pack/deps/start/mini.nvim'
if not vim.loop.fs_stat(mini_path) then
  vim.cmd('echo "Installing `mini.deps`" | redraw')
  local clone_cmd = {
    'git', 'clone', '--filter=blob:none',
    'https://github.com/echasnovski/mini.deps', mini_path
  }
  vim.fn.system(clone_cmd)
  vim.cmd('packadd mini.deps | helptags ALL')
  vim.cmd('echo "Installed `mini.deps`" | redraw')
end

require('mini.deps').setup({ path = { package = path_package } })

シンプルな​遅延

mini.depsでは、​遅延読み込みの​ためにMiniDeps.now()MiniDeps.later()の​2つの​関数が​用意されています。​しかし、MiniDeps.now()は​安全に​呼び出すだけなのでもは​や遅延ではなく、​実質の​ところ遅延読み込みさせたい​場合に​使う​関数はMiniDeps.later()のみです。

使い分けと​してはMiniDeps.now()には​起動直後に​読み込みたい​プラグインを、MiniDeps.later()には​起動直後じゃなくても​いい​プラグインを​指定します。

作者の​nvimの​設定が​公開されている

これは​結構​大きいです。​mini.nvimの​作者が​mini.depsを​使った​設定ファイルを​公開しています。​これを​見る​ことで​実際の​使い方を​知る​ことができる​点も​良い​ところです。
https://github.com/echasnovski/nvim/blob/a3916554cb3cada94b7c4a1f7a1c4d6ab4e8b558/init.lua

まとめ

mini.depsは、​Neovimを​触り​始めたばかりの​初心者にも​おすすめできる​シンプルで​扱いやすい​プラグインマネージャーです。

mini.depsは​いいぞ