はじめに
この記事では、Windows11でVSCode Neovimを使うまでの環境構築の記事です。Vimユーザーの方なら、この環境構築をすることでVSCode上で爆速Vimキーバインドを快適に使うことができるようになります。
動作環境:Windows11 Home
パッケージマネージャー:winget(Windows11では標準搭載)
0. VSCode Neovimとは
VSCode上でVimのキーバインドを利用できる、VSCodeの拡張機能です。Vim(vscodevim)という公式の拡張機能と比較して、動作が軽く、日本語を入力してもぶれず、.vimrc(init.vim)を利用できるのでおススメです。
1. VSCodeのインストール
※ インストール済みの場合は飛ばしてください。
筆者の場合はフォルダやファイル右クリック時に「Codeで開く」を利用したいので、以下のコマンドでインストールします。
winget install vscode --override "/silent /mergetasks=""addcontextmenufiles,addcontextmenufolders"""
2. Neovimのインストール
こちらもwingetでインストールします。
winget install -e --id=Neovim.Neovim
インストールすると、Cドライブの下のProgram Filesの下にNeovimというフォルダができていると思います。
※ インストール後は、PowerShell上でnvimのコマンドが使用できるようになると思います。
nvim
以下のような画面が出てくればOK。
今は必要ないので、:q!
で終了しておきましょう。
3. init.vimの作成
Neovimはインストールしても、init.vimを自動では作成してくれないので、自分で作成しましょう。
%userprofile%\AppData\Local\nvim\init.vim
に作成します。
エクスプローラーで作成してもいいですし、以下のコマンドで作成してもOKです。
# nvimフォルダの作成
mkdir ~\AppData\Local\nvim
# init.vimの作成(PowerShellなので、touchは使えない)
New-Item -Type File ~\AppData\Local\nvim\init.vim
init.vimの中身までは指定しませんが、VSCode NeovimはVimのプラグインまで読み込んでくれます。ここでプラグインなども一緒にインストールするといいでしょう。
4. VSCode Neovimの拡張機能のインストールと設定
左の拡張機能タブからVSCode Neovimをインストールしましょう。
※ (2022/9/15時点)VSCode Neovimの最新v0.0.89だと日本語入力時にぶれてしまうので、アンインストール右の部分からv0.0.88をインストールしています。
そして、このままアンインストール右の設定ボタンから「拡張機能の設定」を開きましょう。
変更する箇所は以下の2箇所です。
- Neovim Executable Paths: Win32に
C:\Program Files\Neovim\bin\nvim.exe
を入力します(wingetで入手した場合この場所になると思います。違う場合は、インストールしたNeovimのbinフォルダ下のnvim.exeのパスを指定しましょう)。 - Neovim Init Vim Paths: Win32に
~\AppData\Local\nvim\init.vim
(先ほどのinit.vimのパス)を入力します。
まとめ
以上で、VSCode上で快適なVimキーバインドを使うことができます。Let's enjoy vim at VSCode!
参考文献
- Installing Neovim
https://github.com/neovim/neovim/wiki/Installing-Neovim - WindowsにNeoVimをインストールして設定ファイルinit.vimを読み込ませるまで
https://qiita.com/karakuri-t910/items/81f005ab6992ff54d5a5 - vscode-neovimでVSCodeのvim操作を高速化しつつ.vimrcも使えるようにした話
https://tech-blog.cloud-config.jp/2020-12-02-vscode-neovim/ - winget で vscode をインストールする - proudust.github.io
https://proudust.github.io/20200726-winget-install-vscode/