カラースキームとは配色のことで、キーワードや文字列、括弧など、様々なコード内の要素や背景色に対し異なった配色を適用することを指します。このおかげで、コードの可読性が上がったり、目が疲れにくい組み合わせを選んだりすることができます。
Neovimではカラースキームを好みの色にカスタマイズすることが出来ます。
termguicolorsの有効化
termguicolorsという設定を有効化すると、ターミナルで使われている色も使えるようになり(24bit RGB)、デフォルトのnvimよりも豊富な色のバリエーションがカラースキームで適用されますので、ぜひ設定しておきましょう。
~/.config/nvim/lua/user/options.lua
termguicolors = true
カラースキームの変更
まずはカラースキームの変更とはどのようなものかを実感するために、コマンドラインモードで以下のように入力してみましょう。
:colorscheme industry
これでindustryというカラースキームに配色が変更されたのが確認出来るはずです。
但し、上記の方法だけだと、Neovimを終了したら設定もリセットされますので、次回以降にNeovimを起動するときはデフォルトのカラースキームに戻ってしまいます。
そこで、~/.config/nvim/init.luaにて以下のコマンドを設定することで、常に指定のカラースキームが適用されるようにします。
vim.cmd "colorscheme industry"
カラースキーム・プラグイン
もしNeovimがデフォルトで提供しているどのカラースキームも好みに合わない場合は、カラースキームのプラグインをインストールすることが出来ます。githubでは様々なカラースキームプラグインが提供されていますので、好きなプラグインのレポジトリー名を指定すればインストールされます。
例えばPackerの場合、~/.config/nvim/lua/user/plugins.luaにて以下のように記述し保存するとインストールされます。
return packer.startup(function(use)
use "folke/tokyonight.nvim"
end)
そして、~/.config/nvim/init.luaにてインストールしたカラースキームを指定すればそのプライグインが使えるようになります。
vim.cmd "colorscheme tokyonight"
ただ、上記の方法だと万が一カラースキームがインストールされていない場合はinit.lua全体がエラーになってしまいます。
そこで、luaのprotected callを使ってエラー回避をします。
~/.config/nvim/lua/user/colorscheme.lua
local colorscheme = "tokyonight"
local status_ok, _ = pcall(vim.cmd, "colorscheme " .. colorscheme)
if not status_ok then
vim.notify("colorscheme " .. colorscheme .. " not found!")
return
end
そして、~/.config/nvim/init.luaにて上記ファイルを読み込みます。
require "user.colorscheme"
これで、もしcolorchemeコマンドがエラーになった場合はエラーメッセージと共にreturnされ、エラーになることなくneovimを起動出来ます。
カラースキームの変更は簡単にできますので、ぜひ色々なカラースキームを試してみて、自分好みのものを見つけてみてください。
