Neovimプラグインをまともに選定できるリストを作った
ちょっと前に自分の使っている Neovim プラグインをまとめましたが、
他にもどういう競合プラグインがあるのか知りたい人もいると思いましたので、競合プラグインも一同に会した Neovim プラグインのリストをまとめてみました。
↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
ちなみに目次だけでこの長さあります。
なんで awesome じゃダメだったの?
このリスト以外にも似たような用途として利用されるものに awesome があります。
neovim プラグインもまとめれられてるものがあり
になります。
Awesome の欠点
私も awesome を結構見るのですが、正直あんまり好きではないです。
理由は以下となります。
- 情報が羅列されているだけであまりカテゴリが整理されていない
- 結局どれがいいのか選ぶのに十分な情報がない
- 古いものやもう使わなくてもよいものなどが整理されない
- 公平性がある程度大事になってくるのでプラグイン選定が好きな人が追加する情報もそうでない人の情報も平等に扱われてしまう
どういうふうに改善すればよいか
- 情報が羅列されているだけであまりカテゴリが整理されていない
- → カテゴリ分けを充実させる。完全に競合なプラグインが 2 つ以上存在する場合は新規でカテゴリを作る。
- 結局どれがいいのか選ぶのに十分な情報がない
- → 選定に有益な情報(スター数はアクティビティ)を追加する。
- → 逆にプラグインの説明みたい必要のないものは削除する(だいたい速くて使いやすくてとかみたいな無駄な情報しか書いてないから)。
- 古いものやもう使わなくてもよいものなどが整理されない
- → 最終更新日時を追加する。
- → CI で archived になっているものを検出する。
- 公平性がある程度大事になってくるのでプラグイン選定が好きな人が追加する情報もそうでない人の情報も平等に扱われてしまう
- → 自分のおすすめはカテゴリの一番上に持ってくる。
だから自分専用のプラグインリストを作った
上の改善案を満たすように Markdown 上に shields.io のバッジを貼ったリストを作成しました。(もっといいやり方があるかもしれませんがとりあえず一番簡単だったので)
自動補完部分を例として上げますが、一番スター数が多くて人気がありそうなのが nvim-cmp で勢いがあるのが coq_nvim だということがひと目でわかります。
現状 README に設置しているバッジは shields.io から直接参照しているので初回読み込みに時間がかかります。
GitHub Actions で 1 日 1 回更新して Markdown に吐き出す形式にするのがよいかもしれません。一応少しでも速く読み込めるようプラグイン数の多いカテゴリは別ファイルにしてます。
また更新がめんどくさくならないように運用負荷を最小にするようスニペット(LuaSnip)を活用してます。これを使えば見つけたプラグイン名を貼るだけ、ものの 5 秒で更新できます。
s("badge_link", {
t({ "- [" }),
i(1, { "repo/name" }),
f(function(args, snip)
return string.format(
"](https://github.com/%s) ![](https://img.shields.io/github/stars/%s) ![](https://img.shields.io/github/last-commit/%s) ![](https://img.shields.io/github/commit-activity/y/%s)",
args[1][1],
args[1][1],
args[1][1],
args[1][1]
)
end, { 1 }),
}),
新着プラグイン情報を得る方法
リストだけだとどれが新しく追加されたプラグインなのかコミットログからいちいち判断する必要があり大変かと思います。
ですので新着プラグインでよさそうなものだけを抜粋して私が Twitter の #neovim_plugins のハッシュタグでつぶやいてます(日本語)。
よければチェックしてみてください。
そもそも他のエディタではどうやってるの?
Neovim 以外の他のエディタ(VS Code など)でも、同様のプラグインを選定するツラミは発生すると思いますが Neovim に比べると苦労は少ないはずです。
なぜかというとそれは**マーケットプレイス** があるからです。
カテゴリもきちんと用意されており、評価を表す星があり、コメントも記入でき、ダウンロード数も見ることができます。
さらに最近勢いのあるプラグインや新着プラグインもわかってプラグイン選びには最高の環境ですね。
VS Code ユーザーはこの無償で与えられているこの仕組みにもっと感謝すべき!
ちなみに Neovim でもプラグインの標準仕様のフォーマットを決める動きが出てきてます。これが実現できればマーケットプレイス的なものが実装されるの日も来るかもしれません。
Author And Source
この問題について(Neovimプラグインをまともに選定できるリストを作った), 我々は、より多くの情報をここで見つけました https://zenn.dev/yutakatay/articles/neovim-pluginlist著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Collection and Share based on the CC protocol