Insertar, borrar, cambiar y reemplazar texto son las operaciones centrales de cualquier sesión de edición. Vim ofrece comandos precisos para cada variante, reduciendo la edición a combinaciones predecibles.
Abreviaciones de modos: N = Normal | I = Insert | V = Visual | C = Command | VB = Visual Block
Entrar a Insert mode
Modo
Comando
Acción
N
i
Insert antes del cursor
N
a
Insert después del cursor
N
I
Insert al inicio de la línea (primer no-blanco)
N
A
Insert al final de la línea
N
o
Nueva línea abajo y entra a Insert
N
O
Nueva línea arriba y entra a Insert
N
s
Borra el carácter bajo el cursor y entra a Insert
N
S
Borra la línea completa y entra a Insert
N
C
Borra desde el cursor hasta el final y entra a Insert
Borrar texto
Modo
Comando
Acción
N
x
Borra el carácter bajo el cursor
N
X
Borra el carácter anterior al cursor
N
dd
Borra la línea completa
N
D
Borra desde el cursor hasta el final de la línea
N
{n}dd
Borra n líneas
N
dw
Borra hasta el inicio de la siguiente palabra
N
de
Borra hasta el final de la palabra actual
N
dib
Borra el contenido dentro de ()
N
dab
Borra () incluyendo los paréntesis
I
<Ctrl-h>
Borra el carácter anterior (igual que Backspace)
I
<Ctrl-w>
Borra la palabra anterior
I
<Ctrl-u>
Borra desde el cursor hasta el inicio de la línea
Cambiar texto
Modo
Comando
Acción
N
r{c}
Reemplaza el carácter bajo el cursor por c
N
R
Entra a Replace mode (sobreescribe caracteres)
N
cc
Borra la línea y entra a Insert
N
cw
Cambia hasta el final de la palabra
N
ci"
Cambia el contenido dentro de comillas dobles
N
ca"
Cambia incluyendo las comillas dobles
N
ci(
Cambia el contenido dentro de paréntesis
N
cit
Cambia el contenido dentro de una etiqueta HTML/XML
N
ct{c}
Cambia desde el cursor hasta antes del carácter c
Copiar y pegar
Modo
Comando
Acción
N
yy
Copia la línea completa
N
Y
Copia la línea completa (igual que yy)
N
yw
Copia hasta el inicio de la siguiente palabra
N
ye
Copia hasta el final de la palabra actual
N
y$
Copia desde el cursor hasta el final de la línea
N
p
Pega después del cursor
N
P
Pega antes del cursor
N
gp
Pega después y deja el cursor al final del texto pegado
N
]p
Pega y ajusta la indentación al contexto actual
Deshacer y rehacer
Modo
Comando
Acción
N
u
Deshace el último cambio
N
U
Deshace todos los cambios en la línea actual
N
<Ctrl-r>
Rehace el cambio deshecho
N
{n}u
Deshace los últimos n cambios
Transformaciones
Modo
Comando
Acción
N
~
Alterna mayúscula/minúscula del carácter bajo el cursor
V
u
Convierte la selección a minúsculas
V
U
Convierte la selección a mayúsculas
V
~
Alterna mayúsculas/minúsculas en la selección
N
guu
Convierte la línea completa a minúsculas
N
gUU
Convierte la línea completa a mayúsculas
N
>>
Indenta la línea a la derecha
N
<<
Indenta la línea a la izquierda
V
>
Indenta la selección a la derecha
N
J
Une la línea actual con la siguiente
N
gJ
Une líneas sin añadir espacio entre ellas
Tips
ci", ci(, cit son algunos de los comandos más productivos de Vim: cambian exactamente el contenido de un delimitador sin seleccionar manualmente.
]p al pegar evita tener que reindivatar manualmente bloques de código copiados de otro contexto.
En Insert mode, <Ctrl-w> y <Ctrl-u> evitan salir a Normal solo para borrar; mantienen el flujo de escritura.
r{c} es más eficiente que entrar a Insert, corregir y salir cuando solo hay un carácter incorrecto.
J con un número prefijo une varias líneas de una vez: 3J une las 3 líneas siguientes a la actual.