2024/12/10

Neovimおもしろプラグイン紹介

あなたのNeovimライフがちょっとリッチになるプラグインをご紹介します。

はじめに

今回は全く必要ないけど、あるとちょっと楽しいプラグインを3つ紹介したいと思います。
以下の3つなります。

  • andweeb/presence.nvim
  • sphamba/smear-cursor.nvim
  • nvzone/showkeys

設定はLazyVimの場合を書いています。 皆さんが使ってる各種プラグインマネージャー・ディストリビューションに合わせて読み替えてください。

では、それぞれ見ていきます。

andweeb/presence.nvim

こちらはdiscordのアクティビティにNeovimを表示するためのプラグインです。
これで俺はNeovimを使ってるんだぞ!とイキることができます。
皆さんも*vimを使い始めた理由はカッコいいからですよね! 是非イキリましょう。

discord

設定はこれだけです。

discord.lua
{
  "andweeb/presence.nvim",
  lazy = false,
},

ただし、ファイル名やプロジェクト名が盛れるのでセキュリティには気をつけましょう。

他の人のプロフィールだと、リポジトリのリンクが表示されてしまいます。 (プライベートリポジトリはもちろん見えませんが、、、)

sphamba/smear-cursor.nvim

こちらはカーソルをビュンビュンさせるプラグインです。

https://github.com/sphamba/smear-cursor.nvim

公式ページのDemoを見るとわかりやすいですが、 簡単に言うとNeovideカーソルアニメーションを再現したものです。

こちらも簡単に設定できます。 注意点としては、requireするときに-_になっていることです。

cursor.lua
{
  "sphamba/smear-cursor.nvim",
  init = function()
    require("smear_cursor").setup()
  end,
},

そもそも、LazyVimにはExtrasとして用意されているので、lua/config/lazy.luaに一行追加するだけです。 Smear-cursor | LazyVim

Kitty terminalでは、わざわざプラグインを入れなくとも再現可能で、一行設定を追加するだけです。

kitty.conf
cursor_trail 3

(正直、こっちの方がスムーズで良いです。当たり前ですが笑)

スクロールを滑らかにするkarb94/neoscroll.nvimというプラグインもあるので、興味ある方は是非。

Neovide風では無くなってしまいますが、echasnovski/mini.animateというプラグインもあります。

nvzone/showkeys

keycastrをNeovimの中で再現できます。 知らない方向けに話すと、キーの入力を画面に出すことができます。

YouTubeにNeovimのコーディング動画をあげる時に便利そうですね、、、(あげるとは言ってない)
まあYouTubeにあげることは無くても、ライブコーディングやペアプロで使えそうです。

ちなみに、NvChadの作者さんが作ってます。

デフォルトで右下に表示されます。

showkeys

設定は簡単で以下の通りです。

showkeys.lua
{
  "nvzone/showkeys",
  cmd = "ShowkeysToggle",
  opts = {
    timeout = 1,
    maxkeys = 5,
  }
}

オプションはこちらを参考にしてください。 位置はpositionプロパティで変えることができます。

僕は以下のように設定しています。

showkeys.lua
{
  "nvzone/showkeys",
  dependencies = { "folke/snacks.nvim" },
  opts = {
    timeout = 3,
    maxkeys = 5,
  },
  init = function()
    local showkeys = require("showkeys")
    Snacks.toggle({
      name = "Showkeys",
      get = function()
        return require("showkeys.state").visible
      end,
      set = function()
        showkeys.toggle()
      end,
    }):map("<leader>uk")
  end,
},

僕はLazyVimを使用しているので、snacks.nvimが組み込まれています。 そのトグル機能を使用しています。 その際にsnacks.nvimが先に読み込まれるようにdependenciesに追加しておきます。

enable

disable

これで有効無効の通知が動きます。

また、which-keyにもしっかり表示されています。(kの部分です)

which-key

最後に

気づいたらほとんどshowkeysの説明になってしまいましたが、 皆さんのNeovimライフが少しでも今より良くなれば幸いです。

また面白いプラグインを見つけたら紹介したいと思います。

ではまた。

最終更新日:2026/01/20