VSCode NeovimでVSCodeをVimのように操作する

vscodevim

VSCode NeovimはVSCodeをVimのように操作できるようにするExtension。 同種のExtensionとしてVimをエミュレートするVSCodeVimというのもあるが、 こちらはエミュレートするのではなく実際のNeovimをバックエンドとすることで ほぼ完全な互換性と軽快な動作を実現しているらしい。

Neovimをインストールする。

$ brew install neovim
$ which nvim
/usr/local/bin/nvim

$ nvim --version
NVIM v0.6.1
Build type: Release
LuaJIT 2.1.0-beta3

日本語入力のままコマンドを打ってしまうと面倒なので、挿入モードから離れたときに入力モードを切り替えるようにする。

$ brew tap daipeihust/tap && brew install im-select
$ vi ~/.config/nvim/init.vim

autocmd InsertLeave * :silent !/usr/local/bin/im-select com.apple.inputmethod.Kotoeri.RomajiTyping.Roman 

Extensionをインストールして Neovimのパスを設定する。ドキュメントにscrollBeyondLastLineもfalseにした方が良いと書いてあったのでそうしている。

$ vi ~/Library/Application\ Support/Code/User/settings.json 
{
    ...
    "vscode-neovim.neovimExecutablePaths.darwin": "/usr/local/bin/nvim",
    "editor.scrollBeyondLastLine": false
}

これで再起動すれば使えるようになる。

よく使うコマンド

  • :e[dit]: ファイルを開く
  • :vs[plit]: 横方向に分割
    • Ctrl-w hjkl: エディタを移動

よく使うVSCodeのショートカット

Macのデフォルト。

  • Command + t: シンボルを検索
  • F2: リネーム
  • F8: 次のエラーに移動
  • F12: 定義へジャンプ
  • Command + F12: 実装へジャンプ
  • Ctrl + -: 元の位置に戻る
  • Ctrl + `: ターミナルを開く/閉じる

参考

超融合!時空を越えた絆 Neo Vim(VSCode)を試してみた