Jawaban:
Ctrl-Cdan Esctidak sama di vi
/ vim
dalam kebanyakan mode, termasuk mode insert. Perbedaannya adalah Escpemicu singkatan sementara Ctrl-ctidak. Apakah ini penting bagi Anda tergantung pada apakah Anda atau plugin yang Anda gunakan menggunakan singkatan.
Perhatikan bahwa lebih aman untuk berasumsi Escdan Ctrl-Ctidak bukan berarti hal yang sama di vim
. Contoh lain dari situs yang sama ini adalah ketika keluar dari mode penyisipan blok (tidak dalam vi
).
Saya pikir maksud Anda vim
, bukan vi
.
Ini memang bekerja vim
, meskipun saya tidak akan menggunakannya kecuali saya 100% yakin saya tidak akan pernah menyentuh sistem operasi non-Linux. Alasannya adalah bahwa OS lain mungkin memiliki implementasi sendiri vi
, yang tidak mengimplementasikan ini, dan Anda mungkin menemukan bahwa ketika berjalan vi
pada platform tersebut, Ctrl-C memiliki perilaku tradisionalnya sendiri: mengganggu proses dan meninggalkan terminal Anda dalam keadaan aneh .
vi
implementasi apa pun yang masih ada saat ini yang tidak ditangani Ctrl-C
? Lihat jawaban saya untuk perbedaan nyata.
Jika Anda merujuk vim
, ada sedikit perbedaan. CTRL-C
tidak memeriksa singkatan, dan itu tidak memicu InsertLeave
acara. Jadi Anda atau plugin telah menentukan autocmd
pernyataan apa pun yang bergantung pada InsertLeave
, mereka tidak akan dipicu.
Dari dokumentasi resmi 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.
Anda dapat menentukan pemetaan untuk CTRL-C
untuk <esc>
, maka itu akan memicu InsertLeave
.
Type :quit<Enter> to exit Vim
dan membuat saya Google cara untuk kembali. Menekani
membuat Anda segera kembali ke mode memasukkan.