[vim問題] ESCキーの代わりになるキーバインドは何種類?

アイキャッチ:ESCキーの代替キーは?

キーボードの故障やiPad版Vimなど、ESCキーが使えない状況が多々ありえます。

また、ESCキーがキーボードごとに異なることがストレスになりがちです。

そんな悩みを抱えるVimmerのために、この記事では Vim / neovim でプラグインを使わずに「ESCキーの代わり」になるキーバインドについて、ご紹介します。

[解答] Ctrl + c または Ctrl + [

Vimキーバインド1. ESC の代替

Ctrl + [

Vimキーバインド2. 強制キャンセル

 Ctrl + c

解説

Vimでは、他のモードからノーマルモードに戻るためにESCキーを多用します。そのため、最も重要なキーの1つと言えます。

ただ、ホームポジションから手を外さないといけない点と、慣れすぎるとメモ帳でも同じ操作をしてしまうような手癖になってしまう点が、難点といえます。※後者は人に寄ります。

そこで、この記事でご紹介したキーバインドを利用すれば、少しはマシになります。

「脱ESC」がVim初心者を抜け出す登竜門と仰る方もいらっしゃいますが、真偽の定かではありません。

たしかに、ホームポジションから手を外さずに済み、どのキーボードでも全く同じ配置で使える点では、こちらを覚えた方が利便性は高いのは間違いありません。

注意

Ctrl + [ は単純なESCキーの代替ですが、Ctrl + c はモードを切り替える際に途中だったコマンドをキャンセルしてしまいます。

例えば、ビジュアルモードで選択範囲の後ろに文字列する操作をした後、通常は次の様にESCキーや Ctrl + [ でインサートモードを抜けることで一括挿入を実行します。

HTMLのリストタグで各項目を挟む
HTMLのリストタグで各項目を挟む

ところが、 Ctrl + c を押下してビジュアルモードを抜けようとすると次のようになってしまいます。

 HTMLのリストタグで各項目を挟もうとしてキャンセルして失敗する
HTMLのリストタグで各項目を挟もうとしてキャンセルして失敗する

つまり、選択範囲へ挿入する操作がキャンセルされたことになってしまうわけです。これでは用をなさないので、とても困ります。

この使い分けは善し悪しがあって、キャンセルしたい場合には役に立つという面もあります。

そのため、 Ctrl + [Ctrl + c の違いを正しく理解して、うまく使い分けていく必要があります。

きちんと覚えると素晴らしく重宝しますので、ぜひ正確に覚えましょう。

iPad版Vim の iVim を純正の英語キーボードで使おうとすると、これらのキーバインドは必須になります。なぜなら、キーボードにESCキーがないためです。

このVimコマンドの補足情報

  • 利用頻度[star rate=5]
  • 便利さ[star rate=5]
  • 覚え易さ[star rate=4]

関連するVimヘルプ

下記のコマンドで Vim/neovmでヘルプを確認できます。

:help ESC
:help CTRL-C
:help CTRL-[

ヘルプで検索するときは、大文字小文字は識別されません。そのため、どちらを入力しても問題有りません。

参考書籍

こちらの書籍が参考になります。

[temp id=3]

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

Vim力アップして、そろそろ上級 Vimmer の仲間入りしたいIT系エンジニアの端くれです。読んでくる訪問者の皆様と一緒に、Vim力を上げていくことができる記事が書ければと考えています。