¡Editor de texto Vi!
Edición de texto, de la manera correcta.
Introducción
Domine el editor de texto Vi y aprenda a realizar ediciones complejas en sus archivos con menos tiempo y esfuerzo.
En la última sección creamos algunos archivos pero estaban en blanco. Un poco aburrido, pero tenemos que empezar por algún lado. En esta sección veremos una herramienta para poner contenido en archivos y editar ese contenido también. Vi es un editor de texto que probablemente es muy diferente a cualquier editor que haya usado antes. Tomará un tiempo para tener su cabeza alrededor, pero una vez que lo hagan, se darán cuenta de que en realidad es bastante poderoso. Es un poco como escribir al tacto, al principio el aprendizaje es incómodo y te preguntas por qué te molestas, pero una vez que lo domines, no querrás volver.
Incluso si no usa Vi todo el tiempo, definitivamente encontrará que los patrones de trabajo que desarrolla al aprender el editor se pueden transferir fácilmente a otros programas y con gran efecto.
Esta sección y las siguientes secciones en realidad están formando la base para las últimas secciones, donde las juntaremos todas y comenzaremos a hacer cosas realmente divertidas. He elegido mirar a Vi primero para que tu mente tenga un poco de tiempo para procesarlo y darle sentido en preparación para más tarde cuando lo necesitemos.
Vi es una herramienta muy potente. En esta sección, mi objetivo no es cubrir todo lo que Vi puede hacer, sino ponerte en marcha con lo básico. Al final de la sección, proporcionaré algunos enlaces a recursos donde puedes aprender más sobre Vi. Le recomiendo encarecidamente que investigue algunos de ellos.
Un Editor de línea de comandos
Vi es un editor de texto de línea de comandos. Como se dará cuenta ahora, la línea de comandos es un entorno muy diferente a su interfaz gráfica de usuario. Es una ventana única con entrada y salida de texto solamente. Vi ha sido diseñado para funcionar dentro de estas limitaciones y muchos argumentarían que, en realidad, es bastante poderoso como resultado. Vi está pensado como un editor de texto sin formato (similar al Bloc de notas en Windows o Textedit en Mac) en lugar de una suite de procesamiento de textos como Word o Pages. Sin embargo, tiene mucha más potencia en comparación con el bloc de notas o Textedit.
Como resultado, tienes que deshacerte del ratón. Todo en Vi se hace a través del teclado.
Hay dos modos en Vi. Modo de inserción (o entrada) y modo de edición. En el modo de entrada, puede introducir o introducir contenido en el archivo. En el modo de edición, puede moverse por el archivo, realizar acciones como eliminar, copiar, buscar y reemplazar, guardar, etc. Un error común es comenzar a ingresar comandos sin volver primero al modo de edición o comenzar a escribir entrada sin entrar primero en el modo de inserción. Si haces cualquiera de estos, generalmente es fácil de recuperar, así que no te preocupes demasiado.
Cuando ejecutamos vi, normalmente lo emitimos con un solo argumento de línea de comandos que es el archivo que desea editar.
vi < file>
Si se olvida de especificar un archivo, hay una forma de abrir un archivo dentro de vi, pero es más fácil salir de vi y tener otra oportunidad. También recuerde que cuando especificamos el archivo puede ser con una ruta absoluta o relativa.
Vamos a sumergirnos y comenzar. Va a ser difícil para mí demostrar mucho de esto, así que en su lugar enumeraré lo que quiero que escriban y tendrán que intentarlo y ver qué sucede.
En primer lugar, pasemos a su directorio que creó en la sección sobre manipulación de archivos. Vamos a crear algunos archivos y esto los mantendrá fuera del camino de sus cosas normales.
Ahora editaremos nuestro primer archivo.
- vi firstfile
Cuando se ejecuta este comando abre el archivo. Si el archivo no existe, lo creará para usted y luego lo abrirá. (no es necesario tocar archivos antes de editarlos) Una vez que ingrese vi, se verá algo como esto (aunque dependiendo del sistema en el que se encuentre, puede parecer ligeramente diferente).
- ~
- ~
- ~
- ~
- ~
- «firstfile»
siempre comienzan en el modo de edición así que la primera cosa que vamos a hacer es cambiar al modo de inserción pulsando yo. Usted puede decir cuando usted está en el modo de inserción como la esquina inferior izquierda le dirá.
- ~
- ~
- ~
- ~
- ~
- — INSERTAR —
Ahora escribe en un par de líneas de texto y pulse la tecla Esc, que le llevará de vuelta al modo de edición.
Guardar y salir
Hay algunas maneras de hacer esto. Todos hacen esencialmente lo mismo, así que elige la forma que prefieras. Para todos estos, asegúrese de estar en modo de edición primero.
Si no está seguro de si está en modo de edición o no, puede mirar la esquina inferior izquierda. Mientras no diga INSERT, estás bien. Alternativamente, puede presionar Esc para estar seguro. Si ya está en modo de edición, presionar Esc no hace nada para que no haga ningún daño.
La mayoría de los comandos dentro de vi se ejecutan tan pronto como presiona una secuencia de teclas. Cualquier comando que comience con dos puntos (:) requiere que presione <enter> para completar el comando.
Guardar y salir del archivo que actualmente tiene abierto
Otras formas de ver archivos
vi nos permite editar archivos. Si quisiéramos, también podríamos usarlo para ver archivos, pero hay otros dos comandos que son un poco más convenientes para ese propósito. El primero es cat, que en realidad significa concatenar. Su propósito principal es unir archivos, pero en su forma más básica es útil solo para ver archivos.
cat <file>
Si ejecuta el comando cat, dándole un solo argumento de línea de comandos que es el archivo que acabamos de crear, verá su contenido mostrado en la pantalla, seguido del mensaje.
Si accidentalmente ejecuta cat sin darle un argumento de línea de comandos, notará que el cursor se mueve a la siguiente línea y luego no sucede nada. Debido a que no especificamos un archivo, cat lee algo llamado STDIN (del que aprenderemos en la sección ‘Canalización y redirección’ que por defecto es el teclado. Si escribe algo, presione <enter> verá que cat refleja su entrada en la pantalla. Para salir de aquí puede presionar <Ctrl> + c que es la señal universal para Cancelar en Linux.
De hecho, siempre que tenga problemas, generalmente puede presionar < Ctrl > + c para salir de problemas.
- primer archivo de gato
- aquí verá
- cualquier contenido que haya introducido en su archivo
Este comando es agradable cuando tenemos un archivo pequeño para ver, pero si el archivo es grande, la mayor parte del contenido volará por la pantalla y solo veremos la última página de contenido. Para archivos más grandes hay un comando más adecuado que es menos.
less < file>
less le permite moverse hacia arriba y hacia abajo dentro de un archivo utilizando las teclas de flecha. Puede avanzar una página completa usando la barra espaciadora o retroceder una página presionando b. Cuando haya terminado, puede presionar q para salir.
Eche un vistazo al archivo que acaba de crear ahora usando ambos comandos.
Navegar por un archivo en Vi
Ahora volvamos al archivo que acabamos de crear e introduzcamos más contenido. En el modo de inserción, puede usar las teclas de flecha para mover el cursor. Ingrese dos párrafos más de contenido y luego presione Esc para volver al modo de edición.
A continuación se muestran algunos de los muchos comandos que puede introducir para moverse por el archivo. Juegue con ellos y vea cómo funcionan.
- Teclas de flecha – mueve el cursor alrededor
- j, k, h, l – mueve el cursor hacia abajo, arriba, izquierda y derecha (similar a las teclas de flecha)
- ^ (caret) – mueve el cursor al principio de la línea actual
- G – mueve el cursor al final de la línea actual
- nG – mueve a la enésima línea (por ejemplo, 5G se mueve a la 5ª línea)
- G – mueve/li>
- w – mover al principio de la siguiente palabra
- nw – mover hacia adelante n palabra (por ejemplo, 2w mueve dos palabras hacia adelante)
- b – mover al principio de la palabra anterior
- nb – mover hacia atrás n palabra
- { – mover hacia atrás una palabra párrafo
- } – avanzar un párrafo
Si escribe :establecer nu en modo de edición dentro de vi, habilitará los números de línea. Encuentro que activar números de línea hace que trabajar con archivos sea mucho más fácil.
Eliminar contenido
Acabamos de ver que si queremos movernos en vi hay bastantes opciones disponibles para nosotros. Varios de ellos también nos permiten precederlos con un número para movernos tantas veces. La eliminación funciona de forma similar al movimiento, de hecho, varios comandos de eliminación nos permiten incorporar un comando de movimiento para definir lo que se va a eliminar.
A continuación se muestran algunas de las muchas formas en que podemos eliminar contenido dentro de vi. Juega con ellos ahora. (también consulte la sección de abajo sobre deshacer para que pueda deshacer sus eliminaciones.)
- x-eliminar un solo carácter
- nx-eliminar n caracteres (por ejemplo, 5x elimina cinco caracteres)
- dd-eliminar la línea actual
- dn – d seguida de un comando de movimiento. Borra a donde el comando de movimiento te hubiera llevado. (por ejemplo, d5w significa eliminar 5 palabras)
Deshacer
Deshacer cambios en vi es bastante fácil. Es el personaje u.
- u-Deshacer la última acción (puede seguir presionando u para seguir deshaciéndose)
- U (Nota: mayúscula) – Deshacer todos los cambios en la línea actual
Llevándolo más lejos
Ahora podemos insertar contenido en un archivo, movernos por el archivo, eliminar contenido y deshacerlo, luego guardarlo y salir. Ahora puede hacer una edición básica en vi. Sin embargo, esto solo toca la superficie de lo que vi puede hacer. No entraré en todos los detalles aquí (creo que ya te he arrojado suficiente), pero te daré algunas cosas que tal vez quieras analizar para ampliar tu experiencia en vi. Una búsqueda básica en el motor de búsqueda de su elección para vi < inserte el concepto aquí> encontrará muchas páginas con información útil. También hay muchas hojas de trucos vi que enumeran todos los comandos disponibles para usted.
- copiar y pegar
- buscar y reemplazar
- búferes
- marcadores
- rangos
- configuración
divertirse y recordar para mantener a la misma. vi será doloroso al principio, pero con la práctica pronto se convertirá en su amigo.
Resumen
Actividades
Juguemos con algo de contenido.
- Comience creando un archivo y poniendo algo de contenido en él.
- Guarde el archivo y véalo tanto en cat como en less
- Vuelva al archivo en vi e introduzca más contenido.
- Desplácese por el contenido utilizando al menos 6 comandos de movimiento diferentes.
- Juegue con varios de los comandos de eliminación, especialmente los que incorporan un comando de movimiento. Recuerda que puedes deshacer los cambios para no tener que seguir añadiendo contenido nuevo.