Vim

Aquí una referencia rápida de algunos comandos más usados:
En modo normal
: Pasa al modo comando
v Entra en modo visual, para seleccionar de caracter a caracter
V Entra en modo visual, para seleccionar de linea a linea
Control+v Entra en modo visual para seleccionar bloques en columnas.
y Copia lo que tengamos seleccionado en modo visual sin borrar
d Copia lo que tengamos seleccionado en modo visual y borrandolo
x Copia lo que tengamos seleccionado en modo visual y borrandolo
c Lo mismo que d y x pero pasando a modo insert.
p Pegar lo que tengamos copiado.
"+gp Pegar lo que tengamos en el portapapeles.
"*p Pegar lo que tengamos en el portapapeles.
Q En modo comando especial, para salir de el escribir visual o vi
ESC Pasa a modo normal
i Pasa a modo de insertar
a Pasa a modo insertar en la siguiente posición trás el cursos
A Pasa a modo insertar al final de la lina
o Pasa a modo insertar creando una linea vacia bajo la linea actual
O Pasa a modo insertar creando una linea vacia sobre la linea actual
D Borra hasta el final de la linea.
C Igual que D pero pasando a modo inserción
dd Borra la lina actual sobre la que está el cursor
cc Borra la lina actual sobre la que está el cursor pasando a modo insertar
S Lo mismo que cc, borra linea para sustituirla por lo que escribamos.
D Borra desde el cursor hasta el final de linea
x Borra el caracter bajo el cursor
X Borra el caracter a la izquierda del cursor
u Undo. Deshacer la última acción (se puede usar mas veces)
Control+r Redo. Rehacer la última accion (se puede usar mas veces)
J Junta la linea actual con la siguiente, eliminando el retorno de carro.
80#-ESC+ENTER 80# despues ESC y ultimo ENTER para escribir # 80 veces
r Reemplaza la letra o caracter bajo el cursor por la que pulsemos a continuación
R Reemplaza hasta el final de linea lo que vayamos escribiendo (mirar INSERT)
ZZ Sale del editor grabando lo que hay en el archivo
$ Desplaza el cursor hasta el final de la linea (similar a tecla FIN)
0 Desplaza el cursor hasta comienzo de linea (similar a INICIO)
INSERT Pasa de modo insert a replace alternativamente.
{ Mueve el cursor al anterior párrafo (o bloque de código).
} Mueve el cursor al siguiente párrafo (o bloque de código).
gg Mueve el cursor a la primera linea del archivo.
G Mueve el cursor a la ultima linea del archivo.
5G Mueve el cursor a la linea número 5.
Control+f Hace scroll como AvPag
Control+B Hace scroll como RePag
zz Desplaza la pantallla para poder ver que hay abajo y encima del cursor.
En modo insertar
Shift+Insert Pega lo que tengamos en el portapapeles
Para trabajar con pestañas
:tabnew Abre pestaña pero vacia
:tabnew archivo Abre pestaña con el archivo de nombre archivo :)
:tabclose Cierra pestaña. Podemos cerrar con :q! para descartar cambios o :q
gt Para avanzar por las pestañas (esto en modo normal)
gT Para retroceder por las pestañas (modo normal)
Para trabajar con ventanas
Ctrl-W s Partir pantalla horizontalmente. Igual a :split archivo.
Ctrl-W v Partir pantalla verticalmente. Igual a :vsplit archivo.
Ctrl-W c Cierra pantalla o ventana actual. Tambien con :close
Ctrl-W q Salir de la ventana actual (la cierra y se pierde lo que se tenga). Igual a :q!
Ctrl-W o Cierra todas las ventanas quedando solo la actual. Igual a :only
Ctrl-W cursores Se mueve en la dirección del cursor elegido
Ctrl-W w Moverse ciclicamente entre ventanas.
Ctrl-W r Rotar orden de las ventanas.
Ctrl-W x Intercambiar la ventana actual con la siguiente.
Ctrl-W + Aumenta en una linea el tamaño de la ventana en horizontal.
Ctrl-W - Reduce en una linea el tamaño de la ventana en horizontal.
Ctrl-W = Iguala el tamaño de todas las ventanas en horizontal.
Ctrl-W > Aumenta en una linea el tamaño de la ventana en vertical.
Ctrl-W < Recude en una linea el tamaño de la ventana en vertical.