おもちゃバコ

中身スカスカ♡

NeoVimを触ってみた

こんにちは

Neovimに入門したときの備忘録です。
(vimについて調べ物をすると目にする機会が多いので気になってた。)


Neovimとは

Neovimの公式を見ればわかりますが簡単にまとめました。
間違えているかもしれないので詳細を知りたい方は本家へ。

github.com

参考

有名なvim


環境

  • Windows11
  • cmd.exe
  • winget v1.4.10173

今回はPythonやGitなどのを利用するのはなるべく避けるようにしました。
依存ソフトウェアは少ないほうが好き。

(特にPythonは色々な環境で使われているので, 特殊な設定がされていると上手く動作しないかもしれないのが怖かった)

インストール

Windows10以降はwingetでインストール出来るようです(Installing Neovim)

powershellかcmdを開いてwingetする。
winget install Neovim.Neovim

Windows Terminalでコマンドプロンプトを開いてwingetしたのですが, インストール完了後に一度Windows Terminalを閉じないとnvimコマンドが使用できませんでした。
(おま環っぽい?)

Windows10からパッケージマネージャが標準でインストールされていることを初めて知りました。
インストールも楽でめちゃくちゃ便利だね。

起動

powershellとかcmdにnvimと打てば起動する。

初期画面が nvim 専用!!!

噂のターミナルモードもいい感じだったし,なんかマウスも使えた。


init.vim

Installing Neovimによると, init.vimがNeovimにおける.vimrc的なものらしい。

init.vimの配置場所は%userprofile%\AppData\Local\nvim\init.vimみたいだけど, nvimフォルダは存在しないので新規作成した。

シンボリックリンクがまともに機能する環境なら,.vimrcをリンクさせるだけで良いはず。
っと思ったけど,Windows用のシンボリックコマンドmklinkでは読み込みできませんでした...
よくわかんない。

とりあえず.vimrcにif文でNeovim専用処理を記述した。

if has('nvim')
    " Neovim専用処理
endif

このinit.vimは下に記述するプラグインも含めた完全体。


プラグイン

このままでは本家vimと変わらないのでプラグインを入れてみる。

プラグインマネージャ

プラグインマネージャにも色々ありますが, 軽量で依存ソフトが少ないvim-jetpackを導入しました。

vim-jetpackについての詳細は開発者さんの解説へ。
zenn.dev

インストール詳細は公式のgithubへ。

1.ダウンロード
USERPROFILEは各自で変えてね。
curl -fLo %USERPROFILE%\AppData\Local\nvim-data\site\pack\jetpack\opt\vim-jetpack\plugin\jetpack.vim --create-dirs https://raw.githubusercontent.com/tani/vim-jetpack/master/plugin/jetpack.vim

gitが無い環境の人は下記を記述してcurlを使おう。
let g:jetpack_download_method = 'curl'

2.init.vim
とりあえずBootstrapだけ追加。

packadd vim-jetpack
call jetpack#begin()
Jetpack 'tani/vim-jetpack', {'opt': 1} "bootstrap
call jetpack#end()

3.Neovim
Neovimを起動して:JetpackSync

プラグイン

Neovim用のプラグインを導入してみた。
依存が少ないものを選んだつもり。

fern.vim

ファイラーの1つ。
github.com

Jetpack 'lambdalisue/fern.vim'をinit.vimに追加して:JetpackSyncする。

:Fern .で呼び出し。
詳細はFernウィンドウ内でaキー入力後にhelpを入力。
隠しファイルはデフォルトでは見えないのでinit.vimに追記が必要。

init.vimに下記を記述しました。

let g:fern#default_hidden=1 " Show hidden files.
noremap <F12> :Fern . -reveal=% -drawer -toggle -width=30<CR>

アイコン表示とかはフォントの設定が必要そうなので今回はパス。

vim-airline

vimのステータスバーをリッチにするプラグインです。
github.com

Jetpack 'vim-airline/vim-airline'をinit.vimに追加して:JetpackSyncする。
インストール後は再起動すれば自動で適用されていますが,init.vimにも設定を追記しておくのが良いかも。

ついでにairlineのthemesも入れておきます。
Jetpack 'ryanoasis/vim-devicons'をinit.vimに追加して:JetpackSyncする。
公式のスクリーンショットでいい感じのを探す。

init.vimに下記を記述しました。

let g:airline#extensions#tabline#enabled = 1
let g:airline#extensions#tabline#buffer_idx_mode = 1
let g:airline_theme = 'minimalist'

(起動が0.5秒ぐらい遅くなった気がする)

nvim(テーマ)

Neovim用のcolorschemeの1つ。
github.com

colorschemeの決め手は猫のアイコン。

Jetpack 'vim-airline/vim-airline'をinit.vimに追加して:JetpackSyncする。
再起動すればcolorschemeに4種類ぐらい追加されている。

init.vimに下記を記述しました。

colorscheme catppuccin-mocha

見た目

こんな感じになりました。
大きな変化はないけどファイラーとか便利になった。


まとめ

自分はバニラのvimに慣れてしまっているのでNeovimの恩恵はあまり受けれていませんが, プラグインマシマシな人はvimよりNeovimの方が良いかも...と感じます。

プラグインを利用する場合はNeovim,それ以外はvimって感じで使い分けていきたいと思います。
(これからはNeovimにするつもり...)

あと,個人的にはWindowsの標準機能でインストール出来る点がめっっちゃ好きです。