見出し画像

初めてのNeovim。初心者Mac環境構築編

こんにちは。ke1nyです。

最近、Reactを独学していて、オリジナルのCMSとか作ってみたいなぁと思っていて、その開発ツールとしてVSCodeを使用しているのですが、せっかく新しいフレームワークを覚えるのだから、VSCodeとは違うエディタで開発モチベーションを高めてみますか!ということでVSCode以外のエディタを調べてみました。

すると、全世界のプログラマーはvimを使用されている方が多いということ、その派生したエディタのNeovimが良いよという情報をキャッチしたので、Neovimで頑張って開発してみようという記録になります。

最終的にはNeovimで、React開発して簡単なCRUDアプリを作成できるところまでを目指します。

Neovimインストール

はじめに、HomebrewでNeovimをインストールします。

brew install neovim

インストールできてるか確認します

nvim -version
NVIM v0.9.0
...以下省略...

設定ファイルの設定

Neovimの設定ファイルを作成します

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

mkdir -pは新規でディレクトリを作成するコマンド
-pは親ディレクトリも一緒に作成してくれるオプション

touchは、新規でファイルを作成してくれるコマンド

init.luaがNeovimの設定ファイルになりますが、init.vimでも良いそうです。
ただしinit.luaとinit.vimは混在できないそうです。
今回は、init.luaで設定を追加していくことにします。

init.luaファイルをnvimで起動しよう

ターミナルのカレントが、nvimフォルダであれば、そのままinit.luaファイルを起動できますが、ターミナルを消してしまった場合は、一度nvimフォルダまでcdしましょう

cd ~/.config/nvim

nvimコマンドで、init.luaファイルを開きます

nvim init.lua

コマンドを実行すると、データが入っていないinit.luaファイルがターミナル上で開きます。
キーボード上で[i]を押下すると挿入モードになり、ファイルに書き込みができます。
ファイルの書き込みが完了し、保存したい場合は挿入モードを抜け出し[esc]キーを押下して、[:w]を押下するとファイルが保存されます。
[:q]を押下するとファイルが閉じます。

Neovimのコマンド集に関しては、他のサイトで確認してください。
いつか、備忘録としてまとめるつもりです。

Neovimのデフォルト設定

ネット上でおすすめしている設定を参考にして、以下のようにしました。
init.luaの設定をカスタマイズすることで、自分好みのエディタに育てるというイメージですね…おそらく。

local options = {
  fileencoding = "utf-8", --エンコーディングをUTF-8に設定
  swapfile = false, --スワップファイルは作成しない
  helplang = "ja", --ヘルプファイルの言語は日本語
  hidden = true, --バッファを切り替えるときに、ファイルを保存しなくても良いように
	number = true, --行番号を表示
	wrap = false, --画面の右端で改行しない
	ambiwidth = 'double', --記号が半角文字と重なる問題を解消。記号を全角文字の幅で表示する
	autoindent = true, --新しい行を開業したとき、1つ上の行のインデントを引き継ぐ
	smartindent = true,
	cursorline = true, --カーソルが存在する行にハイライトを当ててくれます
	tabstop = 2, --TABキーを押したとき、2文字分の幅をとる
	softtabstop = 2,
	shiftwidth = 2,
	expandtab = true, --tabstopで指定した数の分の半角スペースが入力
  autoread = true, --vim以外でファイル変更したときに自動再読み込みする
	showmatch = true, --括弧の連携
	matchtime = 1,
	ignorecase = true, --大文字無視
	smartcase = true, --大文字で検索したら区別をつける
	wrapscan = true, --検索が末尾までいったら先頭から検索
}
for k, v in pairs(options) do
	vim.opt[k] = v
end

設定ファイルの分割

以下のように設定ファイルを分割することで、init.luaに記載する量が減り、複数の設定ファイルを管理することができます。

cd ~/.config/nvim
mkdir lua && cd lua
nvim basic_config.lua

~/.config/nvim/lua/basic_config.luaに先ほど作成したinit.luaの設定項目をコピーします。

そして、init.luaを書き換えます

--basic_config.luaに記述してあるコードを読み込む
require('basic_config')

ロードする際、.luaの拡張子は不要です。あと./luaのディレクトリの記述も不要です。
init.luaには他のファイルを読み込む設定のみ書けば、管理が楽になりそうですね。

とりあえずNeovimで開発できそうな感じ

今まで仕事では、VSCode、VisualStudio等のIDE環境で開発することが多かったのですが、Neovimの構築も比較的わかりやすいのと、起動も早いので
プログラマーに人気なエディタというのも頷けます。

次回以降は、init.luaに対して広く使われていそうなプラグインを試しにロードしてみたり、React開発する前にtmuxの環境構築もしようと思います。
その後、React開発に必要な環境諸々も整理していこうと思います。

エディタを自分好みにカスタマイズしていくのが好きな人はNeovim向いているかもしれませんね〜

この記事が参加している募集

この記事が気に入ったらサポートをしてみませんか?