はじめに
VSCode の Vim 拡張の動作がもっさりしているので、現状できる対策について調べてみました。
Vim - Visual Studio Marketplace
Extension for Visual Studio Code - Vim emulation for Visual Studio Code
VSCode の Vim 拡張
VSCode の Vim 拡張は、VSCode 上で Vim をエミュレートする拡張になります。
しかし、この Vim 拡張を有効化すると、カーソルの移動や文字の入力(連続入力)がおそくなったりします。
2023/10/5 現在、Github の Issue で"slow"と検索すると、74 件の Issue がヒットしました。

その中でも、特にコメントが多かったのが下記の 2 つの Issue です。
Vim plugin slows vscode down. · Issue #2021 · VSCodeVim/Vim
If I turn vim plugin on (all other plugins off), vscode starts to lag. There is a noticeable delay (0.1 sec) on every keyboard input.
Issue · VSCodeVim/Vim
:star: Vim for Visual Studio Code. Contribute to VSCodeVim/Vim development by creating an account on GitHub.
現状の対策?
Issue を見てみると、相性の悪いプライグインを無効化、Vim 拡張の設定を変更するなどが見当たりましたが、私自身の環境では大した効果はありませんでした。
利用してる PC は 2GHz Quad-Core Intel Core i5 の MacBook Pro になります。ちなみに、もう一台 2.3GHz Quad-Core Intel Core i7 の MacBook Pro で同じ設定を動かしてみたところ、スペックの高い方がスムーズに動いていたので、単純にスペックが高い PC を使っていれば解決するかもしれません。
2023/10/5 現在、完全な解決策は出ていないようですが、下記の設定をsettings.jsonに追加するというのが最新の解決策になりそうです。実際、私自身の環境でも多少の効果はありました。(それでも重いと感じますが)
1 "extensions.experimental.affinity": {
2 "vscodevim.vim": 1,
3 }コマンドパレットから下記のコマンドを実行して、"local process #"と表示されていれば、設定が反映されています。
Developer: Show Running Extensions

また、Neovim 拡張に移行したというコメントもありました。こちらは、今後試してみたいと思います。
VSCode Neovim - Visual Studio Marketplace
Extension for Visual Studio Code - Vim mode for VSCode, powered by Neovim
参考
- Vim plugin slows vscode down. · Issue #2021 · VSCodeVim/Vim
- Vim gets very slow, the longer VSCode seems to be open · Issue #3957 · VSCodeVim/Vim
- Extensions using the "type" command (for ex. Vim) have poor performance due to being single-threaded with other extensions · Issue #75627 · microsoft/vscode
- Text entry lag and lost keypresses on v1.26.0 · Issue #8573 · VSCodeVim/Vim
- Vim - Visual Studio Marketplace




