はじめに
この記事では、現在の Neovim 構成で導入している主要プラグインを「用途別」に整理し、あわせて最小の操作方法(キーやコマンド)をまとめます。
各プラグインの GitHub リンクも併記します。
前提・環境
- Plugin manager: lazy.nvim(ロックファイル運用)
- Terminal: WezTerm(フォント MesloLGS NF、背景は不透明運用)
- Leader キー:
<Space>
お断り
この記事では、プラグインの機能の詳細説明などには触れません。
あくまで「導入しているプラグインの一覧と、主要な操作方法のまとめ」を目的としています。
Git / Diff(変更確認と操作)
lazygit(TUI クライアント)
brew install lazygit
gitsigns.nvim(行単位差分)
github.com
github.com/lewis6991/gitsigns.nvim
- 変更行のサイン表示、ステージやリセットなど。
neogit(Magit ライク UI)
github.com
github.com/NeogitOrg/neogit
:Neogit で起動。コミット/branch/merge を対話的に。
diffview.nvim(差分/履歴)
github.com
github.com/sindrets/diffview.nvim
代表コマンド: :DiffviewOpen / :DiffviewClose。
vim-fugitive(低レベル Git)
github.com
github.com/tpope/vim-fugitive
:G blame などのコマンドが使える。
補足(lazygit の格納先と日本語化)
- Lazygit 自体は TUI(プラグインではなく外部ツール)。macOS 既定の設定パスは
~/Library/Application Support/lazygit。 - 運用しやすいように
~/.config/lazygitに設定を置き、App Support 側はシンボリックリンクで統一。- コマンド例:
mkdir -p ~/.config/lazygit
ln -snf ~/.config/lazygit "~/Library/Application Support/lazygit"
- 日本語化は
~/.config/lazygit/config.ymlに次を追記:
gui:
language: "ja"
- Neovim からの起動:
<leader>gg(toggleterm 経由のフロート表示)。
Markdown(書く・整える・プレビュー)
vim-table-mode(表整形)
github.com
github.com/dhruvasagar/vim-table-mode
:TableModeToggle で表モードのオン/オフ。
glow.nvim(端末内プレビュー)
github.com
github.com/ellisonleao/glow.nvim
依存: glow CLI(brew install glow)。:Glow、終了は q。
markdown-preview.nvim(ブラウザプレビュー)
github.com
github.com/iamcco/markdown-preview.nvim
- 初回は自動ビルド(要 Node.js)。
:MarkdownPreview/:MarkdownPreviewStop/:MarkdownPreviewToggle- ショートカット:
<leader>mg(Glow)、<leader>mp(PreviewToggle)。
整形と lint
conform.nvim(保存時整形)
github.com
github.com/stevearc/conform.nvim
nvim-lint(markdownlint)
github.com
github.com/mfussenegger/nvim-lint
UI / 表示(テーマ・見やすさ)
tokyonight.nvim(既定テーマ、不透明)
github.com
github.com/folke/tokyonight.nvim
lualine.nvim(ステータスライン)
github.com
github.com/nvim-lualine/lualine.nvim
dropbar.nvim(パンくず)
github.com
github.com/Bekaboo/dropbar.nvim
indent-blankline.nvim(インデントガイド)
github.com
github.com/lukas-reineke/indent-blankline.nvim
hlchunk.nvim(ブロック可視化)
github.com
github.com/shellRaining/hlchunk.nvim
nvim-scrollbar(スクロールバーにマーク表示)
github.com
github.com/petertriho/nvim-scrollbar
nvim-transparent(透過トグル、既定はオフ)
github.com
github.com/xiyaowong/nvim-transparent
- 透過の切替:
<leader>uT。不透明が基本、必要時だけオンにする運用。
ナビゲーション / 検索
neo-tree.nvim(エクスプローラ)
github.com
github.com/nvim-neo-tree/neo-tree.nvim
- 開閉
<C-b>、フォーカス<leader>e、現在ファイル<leader>er - 新規/コピー/貼付:
a/c/p(末尾/でディレクトリ作成)。
telescope.nvim(ファジー検索)
github.com
github.com/nvim-telescope/telescope.nvim
- ファイル
<C-p>/<leader>ff>、全文<leader>fg>、バッファ<leader>fb>。
ターミナル統合
toggleterm.nvim
github.com
github.com/akinsho/toggleterm.nvim
- 下/右/フロート:
<leader>tt/<leader>tv/<leader>tf>。 - Lazygit トグル:
<leader>gg>。
LSP / 補完 / 整形 / 診断
mason.nvim + mason-lspconfig + lspconfig(LSP 管理)
github.com
github.com/williamboman/mason.nvim
github.com
github.com/williamboman/mason-lspconfig.nvim
github.com
github.com/neovim/nvim-lspconfig
nvim-cmp(補完本体): https://github.com/hrsh7th/nvim-cmp
ソース: cmp-nvim-lsp / cmp-buffer / cmp-path / cmp-nvim-lsp-signature-help
github.com
github.com/hrsh7th/cmp-nvim-lsp
github.com
github.com/hrsh7th/cmp-buffer
github.com
github.com/hrsh7th/cmp-path
github.com
github.com/hrsh7th/cmp-nvim-lsp-signature-help
–
スニペット: LuaSnip + friendly-snippets
github.com
github.com/L3MON4D3/LuaSnip
github.com
github.com/rafamadriz/friendly-snippets
補助: lspkind.nvim(アイコン), nvim-autopairs(括弧)
github.com
github.com/onsails/lspkind.nvim
github.com
github.com/windwp/nvim-autopairs
整形: conform.nvim(保存時)
github.com
github.com/stevearc/conform.nvim
診断: nvim-lint(Markdown/YAML ほか)
github.com
github.com/mfussenegger/nvim-lint
スキーマ: SchemaStore.nvim(YAML/JSON)
github.com
github.com/b0o/SchemaStore.nvim
Lua 開発補助: neodev.nvim
github.com
github.com/folke/neodev.nvim
.luarc.jsonにLua.diagnostics.globals=["vim"]も用意して誤検知を防止。
マルチカーソル
- vim-visual-multi: https://github.com/mg979/vim-visual-multi
- 基本操作:
Ctrl-nで次の一致にカーソル追加、Escで終了。
- 基本操作:
その他(未分類・ユーティリティ)
- barbar.nvim(バッファタブ)
- 移動:
<leader>bn/<leader>bp、クローズ:<leader>bd、ダイレクト:<leader>1〜<leader>9
- 移動:
github.com
github.com/romgrk/barbar.nvim
- winresizer(分割サイズ変更)
:WinResizerStartResizeでサイズ変更モード
github.com
github.com/simeji/winresizer
- nvim-surround(囲み編集)
- 代表操作:
ys{motion}{char}追加 /ds{char}削除 /cs{from}{to}変更
- 代表操作:
github.com
github.com/kylechui/nvim-surround
- treesj(配列/引数の split/join)
- トグル:
<leader>tj
- トグル:
github.com
github.com/Wansmer/treesj
- nvim-various-textobjs(追加テキストオブジェクト)
- デフォルトキーマップ有効。詳細は
:h various-textobjsを参照
- デフォルトキーマップ有効。詳細は
github.com
github.com/chrisgrieser/nvim-various-textobjs
- vim-commentary(コメント)
gc/gcc
github.com
github.com/tpope/vim-commentary
- vim-operator-replace(オペレータ置換)
gr{motion}
github.com
github.com/kana/vim-operator-replace
- vim-tmux-navigator(tmux連携移動)
Ctrl-h/j/k/lで tmux も跨いで移動
github.com
github.com/christoomey/vim-tmux-navigator
- vim-translator(翻訳)
<leader>tr翻訳 /<leader>tR置換で反映
github.com
github.com/voldikss/vim-translator
- auto-save.nvim(自動保存)
- 挿入終了/入力停止で自動保存(デフォルト ~1s)
github.com
github.com/okuuva/auto-save.nvim
- git-messenger.vim(行の最終コミットポップアップ)
<leader>gm
github.com
github.com/rhysd/git-messenger.vim
- blamer.nvim(行末 blame 表示)
<leader>gBトグル
github.com
github.com/APZelos/blamer.nvim
最後に
他にも導入したものについては、このブログに随時まとめていきます。
次回は MCP サーバー導入編(導入したサーバーの説明と手順)をまとめます。