経験知ロゴ

PhpStormやVScodeのVimプラグインで、ノーマルモードに戻ったときIMEをオフにする方法

Vimのノーマルモード移行時にIMEをオフにする方法

普通のVimエディタなら、「.vimrc」を編集することでnomalモードに移行したときにIMEをオフにする設定ができるのですが、PhpStormやVScodeなどのVimプラグインではそこまでサポートしていません。

AutoHotkeyという、キーバインドにプログラムを仕込めるフリーソフトを使い、nomalモードに戻るキーを押したらついでにIMEをオフにするようにすることで実現できましたので紹介します。

※Windows環境です。

無変換キーでIMEをオフにする

まずは、どのキーでも良いのでIMEをオフにするキーを設定。

無変換キーに設定すると普通の文字入力も便利なので、無変換キーでIMEをオフにする設定を行う。

AutoHotKeyを導入

AutoHotkeyへアクセスし「Download」→「Downlo Currnt Version」をクリックし、ダウンロードしてインストール。

デスクトップを右クリックし、「新規作成」→「AutoHotKey Script」をクリック。
新規作成

新規の「.ahk」ファイルが作られているので、UTF-8で編集ができるテキストエディタで編集。
新規ファイル

既に4行入力されているので、その下に追加していく。

ESCキーでIMEオフを追加する場合は、

$Esc:: 
 Send,{Esc}
 Sleep 1
 Send,{sc07B}
 Return

CTRL + [でIMEをオフにする場合は、

$^[:: 
 Send,{^[}
 Sleep 1
 Send,{sc07B}
 Return

僕の場合、「jj」を使ってノーマルモードへ戻っていたので、「っj」を入力したら戻るようにしたかったが、流石にできなかったのでALT + jに設定。ノーマルモード移行キーを変えることにした。

$!j::
  Send,{esc}
  Sleep 1
  Send,{sc07B}
  Return

ちなみに、CAPSALTに変えているので、ホームポジションから殆ど動かずノーマルモードへ移行できる。

キー変更の方法はこちらの記事で。
Windowsのキーボード配置を変更する方法

ショートカットキーの記号は公式ドキュメントを参考に。

なんの機能を持ったコードか分かりやすい名前を付けて保存し、保存したファイルをダブルクリックすれば設定が反映されます。

起動時に自動実行する

このままでは、PCを起動するごとに作成したファイルを実行する必要があるので、スタートアップに登録。

Win + Rを押して「shell:startup」と入力し、「OKをクリック。
startupを起動

スタートアップ登録用のフォルダが開かれるので、その中に先程作った「.ahk」ファイルを移動させる。

これだけで登録完了。

おわりに

力技ですが、Vimプラグインでnomalモードに戻るとIMEをオフにすることができるようになりました。

日本語入力が恩になった状態でnomalモードを操作したときのイラつきは半端ないですからね。

役に立ったらこの記事のシェアをお願いします

ブログのフォロー・RSS購読は下記ボタンから