VimをObsidianやWebStormで使い始めて、さっそく不満が出てきました。日本語を入力してEscキーでノーマルモードに戻っても、ATOKがそのまま日本語入力モードになっていて、hjklを押したつもりがひらがなで入力されてしまうやつです。

「なんとかならんかな」と1日モヤモヤしていたら、「Vimで日本語を使うための工夫」というZennの記事を発見しました。でも、ATOKでの設定方法は書いていなくて。

ググってみると出てくるのはちょっと古い仕様の話ばかり。JustSystemsの公式ドキュメントも2005年更新で、今のATOKと画面が違いました。

結局、自分でATOKの設定画面をひとつひとつ開いて探しました。

見つけた設定場所

ATOKパレット(または画面上のATOKアイコン)から「キー・ローマ字カスタマイザ」を開きます。

キー設定画面

「キー設定」ボタンを押した次の画面で「英字入力」という行を探して、右のセルをクリック。左下の「+」ボタンを押すと「キーを追加」ウィンドウが開きます。

キー設定画面のクリックする所

「反映する状態」を「文字未入力のとき」に設定して、Escキーを登録します。

キーを追加ウィンドウ

これで、日本語入力を終えてEscを押すと、ノーマルモードへの移行と同時にIMEもオフになりました。

やってみて

「文字未入力のとき」という条件を付けているのがポイントで、日本語を打っている途中でEscを押した場合はATOKが入力を取り消すだけにしてくれます。VimのEscとぶつかることなく、自然に動いてくれました。

ObsidianでもWebStormでも、ターミナルでも同様に効いてくれるので、また1つVim生活が快適になりました。