Ubuntu の Neovim への Toogle Term などのプラグインのインストール方法

Ubuntu の Neovim に Toogle Term や Nvim Tree などのプラグインのインストールしたのでメモとして残しておきます。

Note分かりやすいよう、すべての設定を init.lua に記述します。 プラグインマネージャは lazy.nvim を使用します。

Neovim の設定ファイルを作成

~/.config/nvim に init.lua を作成します(存在しない場合)。これは Neovim の設定ファイルです。(ちなみに init.vim との共存は不可です)

mkdir touch ~/.config/nvim/
touch ~/.config/nvim/init.lua

参考lua とは何?と思う方もいるかもしれませんが、Lua はスクリプト言語の1つであり、Neovim の設定は Lua 言語で記述していきます。

プラグインマネージャ

プラグインマネージャは Neovim のプラグインを管理するためのプラグインです。 まずはじめにこれをインストールする必要があります。

Neovim のプラグインマネージャには主に packer と lazy.nvim の2つがあります。 独自の UI を有しており分かりやすく、扱いも簡単なのは lazy.nvim なので、今回はこちらを使います。

lazy.nvim のインストール

~/.config/nvim/init.lua に以下を記述

local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not (vim.uv or vim.loop).fs_stat(lazypath) then
  vim.fn.system({
    "git",
    "clone",
    "--filter=blob:none",
    "https://github.com/folke/lazy.nvim.git",
    "--branch=stable", -- latest stable release
    lazypath,
  })
end
vim.opt.rtp:prepend(lazypath)

今回インストールするプラグイン

Neovim には便利なプラグインが多数ありますが、今回は代表的な以下のプラグインをインストールします。

プラグイン機能
folke/noice.nvimコマンド入力フォームをエレガントにする
nvim-tree/nvim-tree.lua画面分割でファイラーを表示する
nvim-tree/nvim-web-deviconsnvim-treeのアイコン
akinsho/toggleterm.nvim画面分割でターミナルを表示

やりたいことは、要するに VSCode のようなレイアウト(左にファイラー、下にターミナル)にすることです。

lazy.nvim に各種プラグインをインストール

lazy.nvim にどのプラグインを読み込ませるかを設定します。setup() 内に読み込ませたいプラグイン("ユーザー名/リポジトリ名")を列挙していけばOKです。上記に上げたプラグインを記述します。

~/.config/nvim/init.lua に以下を記述

require("lazy").setup({
	"folke/noice.nvim",
	"nvim-tree/nvim-tree.lua",
	"nvim-tree/nvim-web-devicons",
	"akinsho/toggleterm.nvim",
})

noice の設定

ここから各プラグインの設定を行っていきます。デフォルト設定のまま使用するなら setup() 内は空のままでOKです。

~/.config/nvim/init.lua に以下を記述

require("noice").setup({
})

toggleterm の設定

toggleterm の設定ではターミナルのオン・オフのホットキー設定を入れています。

~/.config/nvim/init.lua に以下を記述

require("toggleterm").setup({
	--Ctrl + n でオン・オフ
	open_mapping = [[<C-t>]],
})

nvim-tree の設定

nvim-tree の設定では README にある Setup の設定と、アイコンとファイラーのオン・オフのホットキー設定を入れています。

~/.config/nvim/init.lua に以下を記述

vim.g.loaded_netrw = 1
vim.g.loaded_netrwPlugin = 1
vim.opt.termguicolors = true
require("nvim-tree").setup({
	sort = {
		sorter = "case_sensitive",
	},
	view = {
		width = 30,
	},
	renderer = {
		group_empty = true,
	},
	filters = {
		dotfiles = true,
	},
})

--アイコン設定
require "nvim-web-devicons".setup({
})

--カスタムマッピング設定
--Ctrl + n でオン・オフ
vim.api.nvim_set_keymap("n", "<C-n>", ":NvimTreeToggle <CR>", { noremap = true, silent = true })

Neovim を起動するとプラグインのインストール画面が表示され各種プラグインが自動でインストールされます。

フォントのインストール

最後に、NvimTree のアイコンを正常に表示させるために Nerd フォントの「0xProto」をインストールします。これを入れないとフォルダなどのアイコンがちゃんと表示されません。

https://www.nerdfonts.com/font-downloads

以上で完了です。

Ctrl + t でターミナル、Ctrl + n でファイラーのオン・オフができます。

ちなみに、画面の移動は Ctrl + ww で行えます。

noice のおかげでコマンドの入力フォームもエレガントですね。

~/.config/nvim/init.lua に記述したすべての設定をまとめると以下のようになります。

local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not (vim.uv or vim.loop).fs_stat(lazypath) then
  vim.fn.system({
    "git",
    "clone",
    "--filter=blob:none",
    "https://github.com/folke/lazy.nvim.git",
    "--branch=stable", -- latest stable release
    lazypath,
  })
end
vim.opt.rtp:prepend(lazypath)

require("lazy").setup({
    "folke/noice.nvim",
    "nvim-tree/nvim-tree.lua",
    'nvim-tree/nvim-web-devicons',
    "akinsho/toggleterm.nvim", version = "*", config = true
})

require("noice").setup({
})

require("toggleterm").setup({
    --Ctrl + n でオン・オフ
    open_mapping = [[<C-t>]],
})

vim.g.loaded_netrw = 1
vim.g.loaded_netrwPlugin = 1
vim.opt.termguicolors = true
require("nvim-tree").setup({
    sort = {
        sorter = "case_sensitive",
    },
    view = {
        width = 30,
    },
    renderer = {
        group_empty = true,
    },
    filters = {
        dotfiles = true,
    },
})

--アイコン設定
require "nvim-web-devicons".setup({
})

--カスタムマッピング設定
--Ctrl + n でオン・オフ
vim.api.nvim_set_keymap("n", "<C-n>", ":NvimTreeToggle <CR>", { noremap = true, silent = true })

公開日:2025年04月17日
最終更新日:2025年04月18日

他の記事も見る

このページのトップに戻る