El movimiento en Vim se hace desde Normal mode sin tocar el ratón. Dominar estas teclas elimina la dependencia de las flechas y acelera la edición desde el primer día.
Abreviaciones de modos: N = Normal | I = Insert | V = Visual | C = Command | VB = Visual Block
Movimiento por caracteres y palabras
Modo
Comando
Acción
N
h
Un carácter a la izquierda
N
l
Un carácter a la derecha
N
j
Una línea abajo
N
k
Una línea arriba
N
w
Al inicio de la siguiente palabra
N
W
Al inicio de la siguiente PALABRA (ignora puntuación)
N
b
Al inicio de la palabra anterior
N
B
Al inicio de la PALABRA anterior
N
e
Al final de la palabra actual/siguiente
N
E
Al final de la PALABRA actual/siguiente
N
ge
Al final de la palabra anterior
Movimiento por línea
Modo
Comando
Acción
N
0
Al primer carácter de la línea
N
^
Al primer carácter no-blanco de la línea
N
$
Al final de la línea
N
g_
Al último carácter no-blanco de la línea
N
f{c}
Salta al siguiente carácter c en la línea
N
F{c}
Salta al carácter c anterior en la línea
N
t{c}
Salta justo antes del siguiente carácter c
N
T{c}
Salta justo después del carácter c anterior
N
;
Repite el último f, F, t o T
N
,
Repite el último salto en dirección opuesta
Movimiento por pantalla y archivo
Modo
Comando
Acción
N
gg
Primera línea del archivo
N
G
Última línea del archivo
N
{n}G
Va a la línea número n
N
{n}%
Va al n% del archivo
N
H
Primera línea visible de la pantalla
N
M
Línea central de la pantalla
N
L
Última línea visible de la pantalla
N
<Ctrl-d>
Baja media pantalla
N
<Ctrl-u>
Sube media pantalla
N
<Ctrl-f>
Baja una pantalla completa
N
<Ctrl-b>
Sube una pantalla completa
Scroll sin mover el cursor
Modo
Comando
Acción
N
zz
Centra la línea actual en pantalla
N
zt
Lleva la línea actual al tope de pantalla
N
zb
Lleva la línea actual al fondo de pantalla
N
<Ctrl-e>
Scroll hacia abajo sin mover cursor
N
<Ctrl-y>
Scroll hacia arriba sin mover cursor
Tips
Prefija cualquier movimiento con un número para repetirlo: 5j baja 5 líneas, 3w avanza 3 palabras.
f y t son muy potentes combinados con operadores: dt, borra hasta la siguiente coma sin incluirla.
Prefiere ^ sobre 0 cuando la línea tiene indentación; lleva directo al código, no al espacio en blanco.
:set relativenumber muestra números de línea relativos, lo que hace que {n}j o {n}k sean triviales de calcular.
zz es el comando más útil de scroll: recentra la vista sin interrumpir el flujo de edición.