¿Cansado de usar tu mismo editor de texto? ¿Cansado de estar atado a un editor específico? ¿Tus compañeros de trabajo se burlan porque no entiendes vi?…No te preocupe más!!! Ya está aquí una guía rápida de vi.
¿Cómo funciona Vi?
Quizás estás cansado de vi porque cada vez que intentas utilizarlo no obtienes los resultados esperados. Ok, vamos a hablar de cómo funciona vi. Existen tres modos de operación:
- Modo comando: En este modo, vi espera una acción a ser ejecutada como copiar, pegar o mover el cursor. Este es su comportamiento por defecto, así que cuando abres un archivo y empiezas a escribir no verás lo que estás escribiendo porque estarás ejecutando comandos.
- Modo Insertar: En este modo de hecho puedes escribir en el archivo, pero antes debes usar uno de los comandos de insertar como “i”
- Modo comando extendido: Este es un modo especial donde puedes pasarle argumentos a los comandos. Para entrar en este modo solo escribe dos puntos y el comando. Por ejemplo:
:1,4 y
Esto indica que se debe copiar de la línea 1 a la 4. Ahora vamos a ver algunos comandos agrupados según su funcionalidad:
Movimiento de cursor
| h | Mueve a la izquierda |
| j | Mueve hacia abajo |
| k | Mueve hacia arriba |
| l | Mueve hacia la derecha |
| w | Ir al inicio de la palabra (próxima palabra) |
| e | Ir al final de la palabra actual |
| b | Ir hacia atrás una palabra |
| 0 | Ir al comienzo de línea |
| $ | Ir al final de la línea |
| nG | Ir a la línea n. G solo significa ir a la última línea |
| :n | Ir a la línea n |
Insertando texto
| i | Inicio de modo de inserción en el cursor |
| I | Modo de inserción al inicio de la línea |
| a | Agregar después del cursor |
| A | Agregar al final de la línea |
| o | Nueva línea abajo del cursor |
| O | Nueva línea arriba del cursor |
| ea | Agregar al final de la palabra |
| Esc | Salir del modo de inserción y regresar al modo de comando |
Edición de texto
| r | Reemplaza un único carácter sin entrar al modo de inserción |
| J | Unir con la línea abajo del cursor |
| cc | Cambia (reemplaza) la línea |
| cw | Cambiar palabra |
| c$ | Cambiar hasta el final de la línea |
| s | Borrar carácter y sustituye |
| S | Borrar línea y sustituir (como cc) |
| u | Deshacer |
| Ctrl+R | Rehacer |
| . | Repetir último comando |
Cortar y pegar
| yy | Copiar línea |
| p | Pegar después del cursor |
| P | Pegar antes del cursor |
| dd | Borrar línea |
| x | Borra el carácter actual |
Saliendo
| :w | Guardar sin salir |
| :wq | Guardar y salir |
| :q | salir (no sale si han habido cambios) |
| :q! | Salir sin guardar |
| ZZ | Como :wq |
Búsqueda de texto
| / | Búsqueda progresiva |
| ? | Búsqueda regresiva |
| n | Próxima ocurrencia |
Modo Visual (marcando texto)
| v | Modo visual por carácter |
| V | Modo visual por línea |
| Ctrl+v | Modo visual por bloque |
Comandos del modo visual
| aw | marcar palabra |
| ab | Marcar lo que este en paréntesis |
| aB | marcar lo que está en corchetes |
| > | Desplazar a la derecha |
| < | Desplazar a la izquierda |
| y | Copiar el texto marcado |
| d | Borrar el texto macado |
| ~ | intercambio de mayúsculas y minúsculas |
Trabajando con varias ventanas
| Ctrl+ws | Dividir ventanas |
| Ctrl+ww | cambiarse entre ventanas |
| Ctrl+wq | Salir de ventana |
| Ctrl+wv | Dividir ventanas verticalmente |
Sintaxis general de vi
Existe una sintaxis más general para ejecutar comandos en vi:
contador operador movimiento
Por ejemplo, si quieres borrar tres palabras puedes escribir esto:
3dw
Puedes omitir el operador y usar esta sintaxis como un comando de movimiento. Por ejemplo, si quieres moverte diez palabras:
10w
O puedes usarlo para ejecutar comandos varias veces, sin realizar movimientos:
5yy
Otras cosas útiles
| :set number | Activar numeración de línea |
| :syntax on | Reconocimiento de sintaxis de lenguaje. |
| :set ai | Indentación automática |
| >> | Agregar un nivel de indentación |
| << | Quitar un nivel de indentación |
Necesito más práctica, por favor!
Si necesitas más práctica (incluso desde cero) puedes seguir un tutorial con escribir en la consola de texto:
vimtutor
Referencias
- http://www.worldtimzone.com/res/vi.html
- http://tnerual.eriogerg.free.fr/vimqrc.html
- http://zarb.org/%7Ezerodogg/vicmd.png


Planeta Linux
Sígueme