【2025年版】LazyVim完全ガイド - モダンなNeovim環境を構築しよう
LazyVimの導入から使い方、カスタマイズまで初心者にもわかりやすく解説。Neovimを最強のエディタに変える方法を学びましょう。
LazyVim完全ガイド - モダンなNeovim環境を構築しよう
LazyVimは、Neovimをすぐに使える本格的な開発環境に変えてくれる設定(ディストリビューション)です。
VimやNeovimは設定が複雑で有名ですが、LazyVimを使えば最初から便利なプラグインが設定済みの状態で使い始められます。
この記事では、LazyVimの基本から応用まで、初心者にもわかりやすく解説します。
LazyVimとは?
Neovimの課題
Neovimは非常に高機能なテキストエディタですが、素の状態では:
- 機能が少ない
- 設定が複雑
- プラグインの選定が大変
そのため、多くの人が「設定に時間がかかりすぎて挫折」してしまいます。
LazyVimが解決すること
LazyVimは、実用的なデフォルト設定と厳選されたプラグインを提供します。
動作要件
LazyVimを使うには以下が必要です:
| 項目 | 要件 |
|---|---|
| Neovim | 0.11.2以上(LuaJIT必須) |
| Git | 2.19.0以上 |
| フォント | Nerd Font v3.0以上(推奨) |
| ターミナル | True Color対応 |
インストール方法
既存の設定をバックアップ
まず、既存のNeovim設定をバックアップします(初めての方はスキップ):
LazyVimをインストール
初回起動
初回起動時に必要なプラグインが自動的にインストールされます。少し時間がかかりますが、完了するまで待ちましょう。
Omarchyの場合
OmarchyにはLazyVimがプリインストールされています。追加の設定は不要です。
基本的な使い方
Vimの基本を理解しよう
LazyVimはNeovim(Vimベース)なので、Vimの基本操作を理解する必要があります。
モード
Vimには複数の「モード」があります:
| モード | 説明 | 入り方 |
|---|---|---|
| Normal | 移動・編集コマンド | Esc |
| Insert | テキスト入力 | i, a, o |
| Visual | 範囲選択 | v, V |
| Command | コマンド実行 | : |
基本的な移動
| キー | 動作 |
|---|---|
h | 左 |
j | 下 |
k | 上 |
l | 右 |
w | 次の単語 |
b | 前の単語 |
0 | 行頭 |
$ | 行末 |
gg | ファイル先頭 |
G | ファイル末尾 |
基本的な編集
| キー | 動作 |
|---|---|
i | カーソル位置で入力開始 |
a | カーソルの後ろで入力開始 |
o | 下に新しい行を作って入力開始 |
O | 上に新しい行を作って入力開始 |
x | 1文字削除 |
dd | 1行削除 |
yy | 1行コピー |
p | 貼り付け |
u | 元に戻す |
Ctrl + r | やり直し |
LazyVimのリーダーキー
LazyVimではSpaceキーがリーダーキーです。多くの機能はSpaceから始まります。
Spaceを押すと、次に何を押せばいいかヒントが表示されます(which-keyプラグイン)。
よく使う機能
ファイル操作
| キー | 動作 |
|---|---|
Space + e | ファイルエクスプローラーを開く |
Space + f + f | ファイル検索 |
Space + f + r | 最近開いたファイル |
Space + f + g | ファイル内容を検索(grep) |
ファイルエクスプローラー(neo-tree)
Space + eでファイルエクスプローラーが開きます。
ファイルエクスプローラーでの操作:
| キー | 動作 |
|---|---|
Enter | ファイルを開く |
a | 新規ファイル/フォルダ作成 |
d | 削除 |
r | リネーム |
c | コピー |
m | 移動 |
q | 閉じる |
バッファ操作
「バッファ」は開いているファイルのことです。
| キー | 動作 |
|---|---|
Space + b + b | バッファ一覧 |
Space + b + d | バッファを閉じる |
H | 前のバッファ |
L | 次のバッファ |
ウィンドウ操作
画面を分割して複数のファイルを表示できます。
| キー | 動作 |
|---|---|
Space + w + v | 垂直分割 |
Space + w + s | 水平分割 |
Space + w + d | ウィンドウを閉じる |
Ctrl + h/j/k/l | ウィンドウ間移動 |
検索
| キー | 動作 |
|---|---|
/ | 現在のファイル内を検索 |
n | 次の検索結果 |
N | 前の検索結果 |
Space + f + g | プロジェクト全体を検索 |
Space + s + g | カーソル下の単語を検索 |
Git連携
LazyVimにはGit連携機能が組み込まれています。
| キー | 動作 |
|---|---|
Space + g + g | Lazygitを開く |
Space + g + b | git blame表示 |
Space + g + h + s | ハンクをステージ |
Space + g + h + r | ハンクをリセット |
]h | 次の変更へ |
[h | 前の変更へ |
LSP(言語サーバー)
LSP(Language Server Protocol)により、IDE並みの機能が使えます。
LSPでできること
- 自動補完: コードを入力すると候補が表示される
- 定義ジャンプ: 関数の定義場所に移動
- エラー表示: リアルタイムでエラーを表示
- リネーム: 変数名を一括変更
- フォーマット: コードを自動整形
LSPの操作
| キー | 動作 |
|---|---|
g + d | 定義にジャンプ |
g + r | 参照を表示 |
g + D | 宣言にジャンプ |
K | ホバー情報(ドキュメント表示) |
Space + c + a | コードアクション |
Space + c + r | リネーム |
Space + c + f | フォーマット |
補完の使い方
コードを入力すると自動的に補完候補が表示されます。
| キー | 動作 |
|---|---|
Ctrl + n | 次の候補 |
Ctrl + p | 前の候補 |
Enter | 候補を確定 |
Ctrl + e | 補完をキャンセル |
言語サーバーの追加
LazyVimはMasonを使って言語サーバーを管理します。
:Mason
Masonを開いて、必要な言語サーバーをインストールできます。
カスタマイズ
設定ファイルの構造
LazyVimの設定は以下のような構造です:
オプションのカスタマイズ
~/.config/nvim/lua/config/options.luaで基本設定を変更できます:
キーマップの追加
~/.config/nvim/lua/config/keymaps.luaでキーマップを追加できます:
プラグインの追加
~/.config/nvim/lua/plugins/ディレクトリにLuaファイルを作成します:
カラースキームの変更
便利なプラグイン
LazyVimに追加すると便利なプラグインを紹介します。
コード補助
| プラグイン | 説明 |
|---|---|
github/copilot.vim | GitHub Copilot |
Exafunction/codeium.vim | Codeium(無料のAI補完) |
windwp/nvim-autopairs | 括弧の自動補完 |
UI強化
| プラグイン | 説明 |
|---|---|
folke/noice.nvim | メッセージUI改善 |
rcarriga/nvim-notify | 通知UI |
akinsho/bufferline.nvim | タブ表示 |
Git強化
| プラグイン | 説明 |
|---|---|
sindrets/diffview.nvim | 差分表示 |
NeogitOrg/neogit | Git操作UI |
言語サポート
| プラグイン | 説明 |
|---|---|
mfussenegger/nvim-dap | デバッガー |
nvim-neotest/neotest | テストランナー |
トラブルシューティング
プラグインが動かない
これでプラグインの更新と同期が行われます。
LSPが動かない
接続されているLSPの状態を確認できます。
エラーログを確認
または:
設定をリセット
実践的なワークフロー
ファイルを開いて編集
コードの問題を修正
Git操作
まとめ
LazyVimの主要な操作をまとめます:
| カテゴリ | よく使うキー |
|---|---|
| ファイル | Space + e, Space + f + f |
| バッファ | Space + b + b, H/L |
| ウィンドウ | Ctrl + h/j/k/l, Space + w + v/s |
| 検索 | /, Space + f + g |
| Git | Space + g + g |
| LSP | g + d, K, Space + c + a |
LazyVimは最初は覚えることが多いですが、慣れると非常に効率的に作業できます。
まずは基本的なファイル操作から始めて、徐々にキーバインドを覚えていきましょう。