Vim es un editor modal: cada modo define qué hace cada tecla. Entender los modos es el primer paso para operar Vim con fluidez y sin fricción.


Abreviaciones de modos:
N = Normal | I = Insert | V = Visual | C = Command | VB = Visual Block

Modos principales

ModoComandoAcción
NiEntra a Insert antes del cursor
NIEntra a Insert al inicio de la línea
NaEntra a Insert después del cursor
NAEntra a Insert al final de la línea
NoAbre línea abajo y entra a Insert
NOAbre línea arriba y entra a Insert
NvEntra a Visual por caracteres
NVEntra a Visual por líneas
N<Ctrl-v>Entra a Visual Block
N:Entra a Command mode
NREntra a Replace mode (sobreescribe)
NgREntra a Virtual Replace mode
I/V/C<Esc>Regresa a Normal mode
I<Ctrl-c>Regresa a Normal (sin ejecutar autocomandos)
I<Ctrl-[>Equivalente a <Esc>, regresa a Normal
N<Ctrl-o>Ejecuta un comando Normal desde Insert y regresa

Modos derivados y especiales

ModoComandoAcción
NgvReactiva la última selección Visual
VoMueve el cursor al extremo opuesto de la selección
VBIEntra a Insert en todas las líneas del bloque
VBAEntra a Insert al final de todas las líneas del bloque
C<Ctrl-f>Abre el historial de comandos como buffer editable
Nq:Abre historial de comandos (Command-line window)
Nq/Abre historial de búsquedas

Tips

  • El modo Normal es el modo base: siempre regresa a él con <Esc> o <Ctrl-[>. No te quedes atrapado en Insert.
  • <Ctrl-o> en Insert permite ejecutar exactamente un comando Normal (ej. <Ctrl-o>dd borra la línea sin salir de Insert).
  • Visual Block (<Ctrl-v>) es especialmente útil para insertar texto en múltiples líneas simultáneamente con I o A.
  • gR (Virtual Replace) respeta el ancho visual de tabs y caracteres multibyte, a diferencia del Replace normal con R.
  • :set showmode muestra el modo activo en la barra inferior; útil mientras aprendes.