キーボードの故障や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 + [ でインサートモードを抜けることで一括挿入を実行します。
ところが、 Ctrl + c を押下してビジュアルモードを抜けようとすると次のようになってしまいます。
つまり、選択範囲へ挿入する操作がキャンセルされたことになってしまうわけです。これでは用をなさないので、とても困ります。
この使い分けは善し悪しがあって、キャンセルしたい場合には役に立つという面もあります。
そのため、 Ctrl + [ と Ctrl + c の違いを正しく理解して、うまく使い分けていく必要があります。
きちんと覚えると素晴らしく重宝しますので、ぜひ正確に覚えましょう。
このVimコマンドの補足情報
- 利用頻度
- 便利さ
- 覚え易さ
関連するVimヘルプ
下記のコマンドで Vim/neovmでヘルプを確認できます。
:help ESC :help CTRL-C :help CTRL-[
ヘルプで検索するときは、大文字小文字は識別されません。そのため、どちらを入力しても問題有りません。
参考書籍
こちらの書籍が参考になります。
Vim/neovim関連の書籍で、もっとも評判が良くてバイブルと呼んでる人もいる一冊です。Vim/neovimのバージョンに依存しない沢山のTips形式で、その表題通りに「思考のスピードで編集」できるようになるノウハウが詰まっています。その高い評価は Amazon のレビューからも分かる通りです。Vimmer なら必ず一度は読んでおいて間違いありません。
こちらもVim関連の書籍で評価が高い書籍の一冊です。vim-jpで見かける上級Vimmer(Vimサポーターズ)の皆様による、Vimを実践で使ったノウハウからプラグイン関連の情報が詰まっています。日本の Vim界隈を知る上でも是非一読しておきたい一冊です。
Vim/neovim の設定ファイルやプラグインなど、Vim script に関するノウハウがいくつも詰まった一冊です。日本で Vim Script をここまで深く解説している唯一の書籍と言えます。Vim力を伸ばしたいと考えるなら、絶対に避けては通れない書籍でしょう。