LEFログ:学習記録ノート

leflog: 学習の記録をどんどんアップしていきます

macOSでVSCodeのVim拡張を入れる際のオススメJSON設定

macOSの場合、controlキーとcommandキーが別になっている。そのため、VSCodeキーバインドと、Vim拡張のキーバインドが衝突しない。

WindowsLinuxVSCodeVim拡張を使う際は、キーバインドが重複していたため、Vim拡張を入れた場合、VSCodeのショートカットキーの一部を諦めるか、かなり設定を変える必要があった。

macOSでは、Vim拡張を入れても殆ど問題は起きないと思われる。

そのため、こちらの設定から、Ctrlに関するものを削除してあげれば快適に動きそう。

最低限の労力で出来る、VSCodeVim を使う際のおすすめ設定 - Qiita

具体的なコードを以下に添付する。これでVSCodeVim拡張が快適に使えるようになる。

{
  "vim.easymotion": true,
  "vim.sneak": true,
  "vim.incsearch": true,
  "vim.useSystemClipboard": true,
  "vim.hlsearch": true,
  "vim.insertModeKeyBindings": [
    {
      "before": ["j", "j"],
      "after": ["<Esc>"]
    }
  ],
  "vim.normalModeKeyBindingsNonRecursive": [
    {
      "before": ["K"],
      "commands": ["lineBreakInsert"],
      "silent": true
    }
  ],
  "vim.leader": "<space>"
}

lineBreakInsert は Vim の normal モードでも改行をできるようにするためのもの。

【VSCode】Ctrl-mで改行入力 - Kludge Factory


ただし、Vim拡張はあくまでプラグインなので、長期的に使っていく上では不安が少し残る。