vi es un editor de texto orientado a la pantalla creado originalmente para el sistema operativo Unix. El nombre "vi" se deriva de la abreviatura más corta e inequívoca del comando ex visual, que cambia el editor de línea ex al modo visual.
vi está incluido en las distribuciones de Linux más populares como Ubuntu, Linux Mint o Debian. Además, puedes usarlo en otros sistemas basados en UNIX como FreeBSD, OpenBSD o MINIX.
vi editor tiene los siguientes modos de operación-
1. Modo de comando
Tareas administrativas como guardar archivos, ejecutar comandos, mover el cursor, cortar y pegar líneas o palabras, y buscar y reemplazar.
2. Modo texto
Este modo le permite insertar texto en el archivo.
Escribiendo un programa C muy pequeño usando vi:
- Abrir una terminal
- Escriba:archivo vi.c, esto creará un nuevo archivo
3. vi está en modo comando por defecto, si quieres escribir algo, no puedes hacerlo.
4. Escriba "i", le permite escribir su código.
5. Ahora estás en el modo de inserción, pero si quieres eliminar un carácter, no puedes hacerlo.
6. Escriba ESC para cambiar al modo de comando
7. En el modo de comando, escriba "x", debería eliminar el carácter debajo del cursor
8. Puede insertar un carácter a la izquierda del cursor escribiendo "i"
9. Puede insertar un carácter a la derecha del cursor escribiendo “a”
10. Inserta “>” en el texto
11. Regresa al modo de comando y escribe :wq, luego escribe return wq
12. Ahora estás en el indicador nuevamente, mira el contenido de tu archivo usando cat:
13. Ahora debería pensar que vi es muy complicado, vi no es un editor complicado, sino que es diferente porque vi solo puede funcionar en un modo a la vez.
14. Abre tu archivo nuevamente (vi file.c) y escribe el siguiente código:
void main(void){
printf(“vi is a great tool to write code faster ”);
}
15. Guarde su archivo, y si tiene gcc instalado, debe compilarlo y ejecutarlo.
Vi opciones comunes para abrir un archivo:
- archivo vi
- Crea un nuevo archivo si ya no existe; de lo contrario, abre un archivo existente.
- archivo vi -R
- Modo de solo lectura
Moverse entre caracteres
- Debes estar en modo comando.
- Puedes usar las teclas:arriba, abajo, izquierda y derecha.
- Además, puede usar otra clave
k | Cursor arriba |
j | Cursor abajo |
h | Cursor a la izquierda |
l | Cursor a la derecha |
Comando | Descripción |
yo | Inserta texto antes del cursor actual |
l | Inserta texto al principio de la línea actual |
a | Inserta texto después del cursor actual |
A | Inserta texto al final de la línea actual |
o | Crea una nueva línea para la entrada de texto debajo del cursor |
O | Crea una nueva línea para la entrada de texto sobre el cursor |
x | Elimina el carácter debajo del cursor |
X | Elimina el caracter antes del cursor |
dd | Elimina la línea en la que está el cursor |
cc | Elimina el contenido de la línea, dejándolo en modo de inserción |
r | Reemplaza el carácter debajo del cursor |
J | |
< | Une la línea actual con la siguiente. Un conteo une esa cantidad de líneas. |
>> | Desplaza la línea actual hacia la izquierda un ancho de desplazamiento. |
:archivo nr | Lee el archivo y lo inserta después de la línea n. |
~ | Cambia el caso del carácter debajo del cursor. |
^G | Presione las teclas CTRL y G al mismo tiempo para mostrar el nombre del archivo actual y el estado. |
T | Restaura la línea actual al estado en el que estaba antes de que el cursor entrara en la línea. |
u | Deshacer el último cambio en el archivo. Si vuelve a escribir 'u', se volverá a realizar el cambio. |
J | Une la línea actual con la siguiente. Un conteo une esa cantidad de líneas. |
:f | Muestra la posición actual en el archivo en % y nombre de archivo, número total de archivos. |
:f nombre de archivo | Cambia el nombre del archivo actual a nombre de archivo. |
:w nombre de archivo | Escribir en archivo nombre de archivo. |
:e nombre de archivo | Abre otro archivo con nombre de archivo. |
:nombre de directorio de cd | Cambia el directorio de trabajo actual a dirname. |
:e # | Utilice para alternar entre dos archivos abiertos. |
:n | En caso de que abra varios archivos usando vi, use :n para ir al siguiente archivo de la serie. |
:N | En caso de que abra varios archivos usando vi, use :N para ir al archivo anterior de la serie. |
:archivo r | Lee el archivo y lo inserta después de la línea actual |