Respostas:
Ctrl-Ce Escnão são os mesmos na vi
/ vim
na maioria dos modos, incluindo o modo de inserção. A diferença é que Escdispara abreviações enquanto Ctrl-cnão. Se isso é importante para você, depende de você ou algum plug-in usado usar abreviações.
Note-se que é mais seguro para assumir Esce Ctrl-Cque não significam a mesma coisa em vim
. Outro exemplo desse mesmo site é ao sair do modo de inserção de bloco (não no vi
).
Eu acho que você quer dizer vim
, não vi
.
Isso realmente funciona vim
, embora eu não o usaria a menos que tivesse 100% de certeza de que nunca tocaria em um sistema operacional não Linux. O motivo é que outros sistemas operacionais podem ter suas próprias implementações vi
, que não implementam isso, e você pode achar que, ao executar vi
nessas plataformas, o Ctrl-C tem seu próprio comportamento tradicional: interrompa o processo e deixe seu terminal em um estado estranho .
vi
implementação que ainda exista hoje que não seja compatível Ctrl-C
? Veja minha resposta para a diferença real.
Se você está se referindo vim
, há uma pequena diferença. CTRL-C
não verifica abreviações e não aciona o InsertLeave
evento. Então você ou plugins definiram quaisquer autocmd
instruções que dependem InsertLeave
, elas não serão acionadas.
Na documentação oficial 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.
Você pode definir um mapeamento para CTRL-C
a <esc>
, em seguida, ele irá acionar InsertLeave
.
Type :quit<Enter> to exit Vim
e me fez procurar no Google como voltar. Bateri
com você volta ao modo de inserção.