2011-02-17 13 views
42

¿Cuál es la diferencia entre Ctrl +C y Ctrl +[? Los documentos contienen los siguientes que puedo encontrar:¿Cuál es la diferencia entre Ctrl + C y Ctrl + [?

<Esc> or CTRL-[ End insert or Replace mode, go back to Normal mode. Finish 
       abbreviation.   
       Note: If your <Esc> key is hard to hit on your keyboard, train 
       yourself to use CTRL-[.
CTRL-C   Quit insert mode, go back to Normal mode. Do not check for 
       abbreviations. Does not trigger the |InsertLeave| autocommand 
       event.
CTRL-C     Interrupt current (search) command. Use CTRL-Break on 
         MS-DOS |dos-CTRL-Break|. 
         In Normal mode, any pending command is aborted.

Parece que hay cierto desacuerdo sobre lo que exactamente los comandos hacen.

¿El Ctrl +C no también dejan modo de sustitución, y cómo se relacionan las abreviaturas a la espera de comandos?

+1

duplicado: http://stackoverflow.com/questions/80677/what-is-the-difference-between-cc-and-c-in-vim – Drakosha

+0

El duplicado sigue sin resolverse, y no aborda la cuestión relativa a las abreviaturas y comandos pendientes. –

Respuesta

54

ayuda a pensar de CtrlC en vim la misma forma de pensar de CtrlC en una cáscara - desea detener lo que estaba haciendo antes posible y obtener el control de nuevo. Entonces en vim, si está usando CtrlC para salir del modo de inserción, vim no va a molestarse en comprobar si usted acaba de escribir parte de una abreviatura, y no va a ejecutar el auto de lujo Los comandos que tus complementos han configurado para cada vez que salgas del modo de inserción, simplemente te devolverán al modo normal tan pronto como sea posible. Si no está utilizando abreviaturas o autocmds, entonces no notará esta diferencia.

+0

Ahhh, eso lo clava, gracias. No sabía que había ganchos que cambian de modo. –