Vim es una versión mejorada del editor de texto Vi, presente en todos los sistemas UNIX. Es una herramienta poderosa, con el que te convertirás un vaquero en el teclado.


Por su aspecto al inicio podemos verlo frio incoloro, dark, pero te aseguro que cuando comiences a usarlo tu trabajo dependerá de esta herramienta versátil.

1. Inicio

NComandosDescripción
1vi nombre_de_archivoAbrir o crear el archivo
2vi -r nombre_de_archivoRecuperar un archivo de una caída del sistema 
3view nombre_de_archivoAbrir archivo sólo para leer

2. Comandos del Cursor

Los cursores nos ayudan a situarnos en diferentes lugares escribibles del documento, es como ir navegando con el mouse, en este caso lo realizaremos con el teclado.

NComandosDescripción
1hMoverse un carácter hacia la izquierda
2jMoverse una línea hacia abajo
3kMoverse una línea hacia arriba
4wMoverse una palabra a la derecha
5W (Mayúscula)Moverse una palabra a la derecha (pasados los signos de puntuación)
6bMoverse una palabra a la izquierda
7BMoverse una palabra a la izquierda (pasados los signos de puntuación)
8eMoverse al final de la palabra actual
9ReturnMoverse una línea hacia abajo
10Back SpaceMoverse un carácter a la izquierda
11Space BarMoverse un carácter a la derecha
12HMoverse un carácter a la derecha
13MMoverse al centro de la pantalla
14LMoverse a la parte inferior de la pantalla
15Ctrl-FPaginar una pantalla hacia adelante
16Ctrl-DDesplazarse media pantalla hacia adelante
17Ctrl-BPaginar una pantalla hacia atrás
18Ctrl-UDesplazarse media pantalla hacia atrás

3. Comandos VI: Caracteres y Líneas

NComandosDescripción
1aInsertar caracteres a la derecha del cursor
2AInsertar caracteres al final de la línea
3iInsertar caracteres a la izquierda del cursor
4I (Mayúscula)Insertar caracteres al principio de línea
5oInsertar una línea por debajo el cursor
6O (Mayúscula)Insertar una línea por encima del cursor 

4. Comandos VI: Reemplazar Texto

NComandosDescripción
1cwCambiar una palabra (o parte de una palabra) a la derecha del cursor
2cCambiar una línea
3C (Mayúscula)Cambiar desde el cursor hasta el final de la línea
5sSustituir cadena por carácter(es) desde el cursor hacia adelante
6rReemplazar el carácter marcado por cursor por otro carácter
7r ReturnPartir una línea
8JUnir la línea actual con la línea inferior
9xpTransponer el carácter del cursor con el carácter a la derecha
10~Cambiar el tipo de letra (mayúscula o minúscula)
11uDeshacer el comando anterior
12UDeshacer todos los cambios en la línea actual
13:uDeshacer el comando anterior sobre la línea última

5. Comandos VI: Eliminar Texto

NComandosDescripción
1xEliminar el carácter del cursor
2X (Mayúscula)Eliminar el carácter a la izquierda del cursor
3dwEliminar la palabra (o la parte de la palabra a la derecha del cursor)
4ddEliminar la línea que contiene al cursor
5DEliminar la parte de la línea a la derecha del cursor
6dGEliminar hasta el final de línea
7d1GEliminar desde el principio del archivo hasta el cursor
8:5,10 dEliminar las líneas de la 5 a la 10

6. Comandos VI: Copiar y mover texto

NComandosDescripción
1yyTirar o copiar línea
2yTirar o copiar línea
3pPoner la línea tirada o eliminada por debajo de la línea actual
4P (Mayúsculas)Poner la línea tirada o eliminada por encima de la línea actual
5:1,2 co 3Copiar las líneas de la 1 a la 2 y ponerlas después de la línea 3
6:4,5 m 6Mover las líneas de la 4 a la 5 y ponerlas después de la línea 6

7. Comando VI: Ajustar la numeración de las líneas

NComandosDescripción
1:set nuMostrar los números de las líneas
2:set nonuEsconder los números de las líneas

8. Comandos VI: Establecer la distinción entre mayúsculas y minúsculas

NComandosDescripción
1:set icEn la búsqueda se ignora la distinción entre mayúsculas y minúsculas
2:set noicEn la búsqueda se distingue entre mayúsculas y minúsculas

9. Comandos VI: Moverse por una Línea

NComandosDescripción
1GIr a la última línea del archivo
21GIr a la primera línea del archivo
321GIr a la línea 21

10. Comandos VI: Buscar y reemplazar

NComandosDescripción
1/stringBúsqueda de cadena de caracteres
2?stringBúsqueda hacia atrás de cadena de caracteres
3nEncontrar la siguiente aparición de string en la dirección de búsqueda
4NEncontrar la aparición previa de la cadena de caracteres en la dirección de búsqueda
5:g/search/s//replace/gBuscar y reemplazar

11. Comandos VI: Insertar un archivo en otro archivo

NComandosDescripción
1:r nombre_de_archivoInsertar (leer) el archivo a continuación del cursor
2:34 r nombre_de_archivoInsertar el archivo después de la línea 34

12. Comandos VI: Guardar y Salir

NComandosDescripción
1:wGuardar los cambios (escribir el contenido de la memoria intermedia)
2:w nombre_de_archivoEscribir el contenido de la memoria intermedia a un archivo con nombre
3:wqGuardar los cambios y salir de vi
4ZZGuardar los cambios y salir de vi
5:q!Salir sin guardar los cambios
6xGuardar los cambios y salir de vi