VSCodeでVimの拡張機能を導入してみた

技術

はじめに

前からVimを使ってみたいな。と思っていました。

しかし、なかなかVimを使うタイミングもないし、Vimの操作方法は独特で、一度使ってみたけどなかなか慣れない。挫折するかも。など、いろいろな理由で尻込みしていました。

でもVimを使ってみたい。

「Vimが便利」という状態を体験してみたい。

ということで考えた結果、第一歩として普段使っているVSCodeにVimの拡張機能を入れて少しずつ経験を積もう。ということに。

そこでVSCodeの拡張機能「Vim」を導入してみました。

動作環境

・Kubuntu 22.04

VSCodeの拡張機能「Vim」

VSCodeの拡張機能「Vim」は拡張機能で”Vim”を検索すると出てきます。

上記拡張機能をインストールすると、VSCodeにVimの機能が導入されます。

インストール直後からVimの操作方法になるため、注意してください。

Vimの操作方法を知らないと戸惑うことになります。(私はびっくりしました。)

ですので、始めは素のVimなどを使用してみて、操作方法やVimのモード概念を簡単にでもよいので知っておく、予習しておくことをお勧めします。

拡張機能「Vim」の設定を変更する

拡張機能「Vim」を導入するとキーバインドがVimのキーバインドに変更されます。

ただ、このままだとVSCodeのショートカット(例えば、Ctrl+f「検索」)や通常のショートカット(Ctrl+c)などもVimキーバインドに変更されてしまいます。

VSCodeをせっかく使っているので、普段使っているショートカットはそのままにしたいです。

ですので、設定を変更します。

下記は私の現在の設定(setting.json)です。

"vim.insertModeKeyBindings": [

    {
      "before": ["j", "j"],
      "after": ["<Esc>"]
    }
  ],
  "vim.hlsearch": true,
  "vim.useSystemClipboard": true,
  "vim.handleKeys": {
  //以下はVimのショートカットを利用
  "<C-d>": true,  //下方向へのカーソル移動 ※上方向へのカーソル移動(Ctrl+u)はデフォルト設定でも動作
  //以下はVimではなく、Windows側のショートカット
  "<C-c>": false, //コピー
  "<C-v>": false, //貼り付け ※VisualBlockモードはCtrl+Qで行う
  "<C-x>": false, //切り取り
  "<C-f>": false, //検索
  "<C-a>": false, //全選択
  "<C-p>": false,  //ファイル検索
  "<C-w>": false //ファイルを閉じる
  },

下記を参考にさせてもらっています。

VSCodeで始めるVim - Qiita
※本記事で言う「Vim」とは「Vimキーマップ」のことです。Vim、使ってますか?Vimって使ったことのない人からすると何がいいのかよくわからないですよね。特に「移動はhjklで行う」あたりが最…
VSCodeVimのおすすめ設定 - Qiita
VisualStudioCodeではVimのキーバインドで開発ができるように以下のプラグインが提供されています。・VSCodeVim…

私は、「Ctrl + w」のファイルを閉じるショートカットをよく使うので、「Ctrl + w」のVimキーバインドも無効にしています。

おわりに

VSCodeの拡張機能「Vim」についてでした。

普段使っているVSCodeでVimの操作方法に慣れていきたいと思います。

拡張機能の良いところは、いつでも無効化できる点です。

作業の時間が少ない時や、慣れないVimキーバインドを使用している余裕がない場合は無効化して、落ち着いたらまた有効化すればよいのが便利ですね。

ある程度慣れてきたら本家のVimに挑戦してみたいです。