Neovim のインストール方法と LazyVim 導入ガイド
Neovim は、従来の Vim を現代的に再設計したテキストエディタで、拡張性が高く、プラグインでカスタマイズしやすいことが特徴です。この記事では、各 OS 別のインストール方法から基本的な設定、プラグインの導入方法までを解説します。
目次
Neovim とは
NOTENeovim は、Vim の機能を継承しつつ、非同期処理、組み込みターミナル、Lua による API 拡張などの新機能を追加した次世代エディタです。
Vim との主な違いは以下のとおりです:
- Lua スクリプトによる API 拡張
- 非同期 I/O 処理によるパフォーマンス向上
- 組み込みターミナル
- LSP(Language Server Protocol)のネイティブサポート
- より良いデフォルト設定
OS 別インストール方法
Linux
Ubuntu の場合
# APTからインストール
sudo apt update
sudo apt install neovim
# 最新版を使いたい場合はPPAを追加
sudo add-apt-repository ppa:neovim-ppa/unstable
sudo apt update
sudo apt install neovim
Arch Linux の場合
sudo pacman -S neovim
Fedora の場合
sudo dnf install neovim
macOS
macOS では Homebrew を使ったインストールが最も簡単です。
# Homebrewがない場合はインストール
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# Neovimのインストール
brew install neovim
Windows
Windows では複数のインストール方法があります。
Chocolatey を使う方法
# PowerShellを管理者権限で実行
choco install neovim
Scoop を使う方法
# Scoopがない場合はインストール
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
irm get.scoop.sh | iex
# Neovimのインストール
scoop install neovim
WSL2 を使っている場合
WSL2 を使用している場合は、Linux 環境内で Neovim をインストールするのがおすすめです。
# Ubuntuの場合
sudo apt update
sudo apt install neovim
公式サイトからのダウンロード
Neovim 公式ダウンロードページから Windows 用の zip ファイルをダウンロードし、展開して使うこともできます。
LazyVim の導入
Neovim の設定は複雑になりがちですが、LazyVim を使うことで簡単に VSCode のような高機能な IDE 環境を構築できます。LazyVim は多数のプラグインが事前設定された「ディストリビューション」で、すぐに使える開発環境を提供します。
そして HHKB の無刻印キーボードの特殊でありますが効率的な配列と Neovim+lazyVim のキーボードだけで行う操作感が、画面から目を反らすことのない最高で究極の開発体験を得ることができるのです!
LazyVim のインストール
LazyVim をインストールする前に、まず Neovim の設定ディレクトリのバックアップを取っておくことをおすすめします。
# Linux/macOS
# 既存の設定がある場合はバックアップ
[ -d ~/.config/nvim ] && mv ~/.config/nvim ~/.config/nvim.bak
[ -d ~/.local/share/nvim ] && mv ~/.local/share/nvim ~/.local/share/nvim.bak
[ -d ~/.local/state/nvim ] && mv ~/.local/state/nvim ~/.local/state/nvim.bak
[ -d ~/.cache/nvim ] && mv ~/.cache/nvim ~/.cache/nvim.bak
# Windows (PowerShell)
# 既存の設定がある場合はバックアップ
if (Test-Path $env:LOCALAPPDATA\nvim) { Rename-Item -Path $env:LOCALAPPDATA\nvim -NewName nvim.bak }
if (Test-Path $env:LOCALAPPDATA\nvim-data) { Rename-Item -Path $env:LOCALAPPDATA\nvim-data -NewName nvim-data.bak }
次に、LazyVim の設定を直接クローンします:
# Linux/macOS
git clone https://github.com/LazyVim/starter ~/.config/nvim
# Windows (PowerShell)
git clone https://github.com/LazyVim/starter $env:LOCALAPPDATA\nvim
クローンした後、一度 Git ディレクトリを削除して、独自の設定リポジトリとして使えるようにします:
# Linux/macOS
rm -rf ~/.config/nvim/.git
# Windows (PowerShell)
Remove-Item -Recurse -Force $env:LOCALAPPDATA\nvim\.git
LazyVim の初回起動
Neovim を起動すると、LazyVim のセットアップが自動的に開始されます:
nvim
初回起動時は多数のプラグインがインストールされるため、少し時間がかかります。完了したら、:checkhealth
コマンドを実行して、環境に問題がないか確認してください。
LazyVim のカスタマイズ
LazyVim は非常に簡単にカスタマイズできます。主な設定ファイルは以下の場所にあります:
~/.config/nvim/lua/config/options.lua
: Neovim の基本設定~/.config/nvim/lua/config/keymaps.lua
: キーマッピング~/.config/nvim/lua/config/lazy.lua
: Lazy プラグインマネージャーの設定
プラグインの追加
プラグインを追加するには、~/.config/nvim/lua/plugins
ディレクトリに新しいファイルを作成します。例えば、追加のカラースキームを導入する場合:
-- ~/.config/nvim/lua/plugins/colorscheme.lua
return {
-- 追加のカラースキーム
{ "catppuccin/nvim", name = "catppuccin" },
{ "folke/tokyonight.nvim" },
-- カラースキーム設定を上書き
{
"LazyVim/LazyVim",
opts = {
colorscheme = "catppuccin",
},
},
}
キーマッピングのカスタマイズ
キーマッピングはkeymaps.lua
で変更できます:
-- ~/.config/nvim/lua/config/keymaps.lua
local keymap = vim.keymap.set
-- Escキーの代わりにjjを使用
keymap("i", "jj", "<ESC>", { desc = "Escape insert mode" })
-- ウィンドウ間の移動
keymap("n", "<C-h>", "<C-w>h", { desc = "Go to left window" })
keymap("n", "<C-j>", "<C-w>j", { desc = "Go to lower window" })
keymap("n", "<C-k>", "<C-w>k", { desc = "Go to upper window" })
keymap("n", "<C-l>", "<C-w>l", { desc = "Go to right window" })
基本設定のカスタマイズ
基本的な Neovim の設定はoptions.lua
で変更できます:
-- ~/.config/nvim/lua/config/options.lua
vim.opt.shiftwidth = 2 -- インデントのスペース数
vim.opt.tabstop = 2 -- タブのスペース数
vim.opt.relativenumber = true -- 相対行番号を表示
vim.opt.wrap = true -- 行の折り返しを有効に
vim.opt.scrolloff = 10 -- スクロール時に表示する前後の行数
LazyVim に含まれる主要プラグイン
TIPLazyVim には多数の優れたプラグインが事前設定されており、すぐに使える状態になっています。
コーディング支援
- nvim-lspconfig: 言語サーバープロトコル設定
- nvim-treesitter: 構文解析と高度なハイライト
- nvim-cmp: 高機能コード補完
- LuaSnip: スニペットエンジン
- mason.nvim: LSP サーバー簡単インストール
UI 関連
- neo-tree.nvim: ファイルエクスプローラー
- telescope.nvim: ファイル検索・フィルタリング
- which-key.nvim: キーバインドヘルプ
- bufferline.nvim: バッファタブ表示
- noice.nvim: コマンドライン UI 改善
Git 統合
- gitsigns.nvim: Git 変更表示
- vim-fugitive: Git 操作
カスタマイズすることも簡単です。
最終アドバイスLazyVim は強力な機能がデフォルトで多数含まれていますが、すべてを一度に覚える必要はありません。まずは基本的な操作から始めて、徐々に機能を探索していくのがおすすめです。
:Lazy
コマンドで現在インストールされているプラグインを確認し、:LazyExtras
で追加の拡張機能を導入できます。
Neovim の世界を楽しんでください!LazyVim を使えば、プロのような開発環境がすぐに手に入ります。もし質問やトラブルがあれば、コメントセクションでお知らせください。