viを使用するときは、従来の方法ではなくCtrl+を使用して挿入モードを終了します。後者の代わりに前者を使いたくない状況はありますか?ベストプラクティス以外の他の問題は発生しますか?CEsc
答え1
Ctrl-C挿入モードを含むほとんどのモードではEsc異なります。違いは、頭字語の代わりに頭字語がトリガーされることです。これがあなたにとって重要かどうかは、あなたまたはあなたが使用しているプラグインが略語を使用しているかどうかによって異なります。vi
vim
EscCtrl-c
Esc仮定して実行する方がCtrl-C安全です。いいえ意味は同じですvim
。その他はい同じサイトでブロック挿入モードを終了するときです(ではありませんvi
)。
答え2
というとvim
微妙な違いがあります。CTRL-C
略語は確認されず、イベントは発生しませんInsertLeave
。したがって、プラグインが依存autocmd
ステートメントを定義している場合、InsertLeave
そのステートメントはトリガーされません。
公式文書からhttp://vimhelp.appspot.com/insert.txt.html:
<Esc> or CTRL-[ End insert or Replace mode, go back to Normal mode. Finish
abbreviation.
CTRL-C Quit insert mode, go back to Normal mode. Do not check for
abbreviations. Does not trigger the InsertLeave autocommand
event.
CTRL-C
のマッピングを定義すると<esc>
トリガーされますInsertLeave
。
答え3
私の考えでは、あなたが言うことはvim
「いいえ」だと思いますvi
。
これはLinuxで動作しますvim
が、Linux以外のオペレーティングシステムには絶対に触れないことを100%確信しない限り使用しません。その理由は、他のオペレーティングシステムにはvi
それを実装しない独自の実装がある可能性があり、vi
Ctrl-Cがそのプラットフォームで実行されたときにプロセスを中断して端末を奇妙な状態にする独自のレガシー動作を見つけることができるためです。