=============================================================================== = B i e n v e n i d o a l t u t o r d e V I M - Versión 1.4 = =============================================================================== Vim es un editor muy potente que dispone de muchos mandatos, demasiados para ser explicados en un tutor como éste. Este tutor está diseñado para describir suficientes mandatos para que usted sea capaz de aprender fácilmente a usar Vim como un editor de propósito general. El tiempo necesario para completar el tutor es aproximadamente de 25-30 minutos, dependiendo de cuanto tiempo se dedique a la experimentación. Los mandatos de estas lecciones modificarán el texto. Haga una copia de este fichero para practicar (con «vimtutor» esto ya es una copia). Es importante recordar que este tutor está pensado para enseñar con la práctica. Esto significa que es necesario ejecutar los mandatos para aprenderlos adecuadamente. Si únicamente se lee el texto, se olvidarán los mandatos. Ahora, asegúrese de que la tecla de bloqueo de mayúsculas no está activada y pulse la tecla j lo suficiente para mover el cursor de forma que la Lección 1.1 ocupe completamente la pantalla. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lección 1.1: MOVIMIENTOS DEL CURSOR ** Para mover el cursor, pulse las teclas h,j,k,l de la forma que se indica. ** ^ k Indicación: La tecla h está a la izquierda y mueve a la izquierda. < h l > La tecla l está a la derecha y mueve a la derecha. j La tecla j parece una flecha que apunta hacia abajo. v 1. Mueva el cursor por la pantalla hasta que se sienta cómodo con ello. 2. Mantenga pulsada la tecla j hasta que se repita «automágicamente». ---> Ahora ya sabe como llegar a la lección siguiente. 3. Utilizando la tecla abajo, vaya a la Lección 1.2. Nota: Si alguna vez no está seguro sobre algo que ha tecleado, pulse <ESC> para situarse en modo Normal. Luego vuelva a teclear la orden que deseaba. Nota: Las teclas de movimiento del cursor también funcionan. Pero usando hjkl podrá moverse mucho más rápido una vez que se acostumbre a ello. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lección 1.2: ENTRANDO Y SALIENDO DE VIM ¡¡ NOTA: Antes de ejecutar alguno de los pasos siguientes lea primero la lección entera!! 1. Pulse la tecla <ESC> (para asegurarse de que está en modo Normal). 2. Escriba: :q! <INTRO> ---> Esto provoca la salida del editor SIN guardar ningún cambio que se haya hecho. Si quiere guardar los cambios y salir escriba: :wq <INTRO> 3. Cuando vea el sÃmbolo del sistema, escriba el mandato que le trajo a este tutor. Éste puede haber sido: vimtutor <INTRO> Normalmente se usarÃa: vim tutor <INTRO> ---> 'vim' significa entrar al editor, 'tutor' es el fichero a editar. 4. Si ha memorizado estos pasos y se se siente con confianza, ejecute los pasos 1 a 3 para salir y volver a entrar al editor. Después mueva el cursor hasta la Lección 1.3. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lección 1.3: EDICIÓN DE TEXTO - BORRADO ** Estando en modo Normal pulse x para borrar el carácter sobre el cursor. **j 1. Mueva el cursor a la lÃnea de abajo señalada con --->. 2. Para corregir los errores, mueva el cursor hasta que esté bajo el carácter que va aser borrado. 3. Pulse la tecla x para borrar el carácter sobrante. 4. Repita los pasos 2 a 4 hasta que la frase sea la correcta. ---> La vvaca saltóó soobree laa luuuuna. 5. Ahora que la lÃnea esta correcta, continúe con la Lección 1.4. NOTA: A medida que vaya avanzando en este tutor no intente memorizar, aprenda practicando. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lección 1.4: EDICIÓN DE TEXTO - INSERCIÓN ** Estando en modo Normal pulse i para insertar texto. ** 1. Mueva el cursor a la primera lÃnea de abajo señalada con --->. 2. Para que la primera lÃnea se igual a la segunda mueva el cursor bajo el primer carácter que sigue al texto que ha de ser insertado. 3. Pulse i y escriba los caracteres a añadir. 4. A medida que sea corregido cada error pulse <ESC> para volver al modo Normal. Repita los pasos 2 a 4 para corregir la frase. ---> Flta texto en esta . ---> Falta algo de texto en esta lÃnea. 5. Cuando se sienta cómodo insertando texto pase al resumen que esta más abajo. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RESUMEN DE LA LECCIÓN 1 1. El cursor se mueve utilizamdo las teclas de las flechas o las teclas hjkl. h (izquierda) j (abajo) k (arriba) l (derecha) 2. Para acceder a Vim (desde el sÃmbolo del sistema %) escriba: vin FILENAME <INTRO> 3. Para salir de Vim escriba: <ESC> :q! <INTRO> para eliminar todos los cambios. 4. Para borrar un carácter sobre el cursor en modo Normal pulse: x 5. Para insertar texto en la posición del cursor estando en modo Normal: pulse i escriba el texto pulse <ESC> NOTA: Pulsando <ESC> se vuelve al modo Normal o cancela un mandato no deseado o incompleto. Ahora continúe con la Lección 2. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lección 2.1: MANDATOS PARA BORRAR ** Escriba dw para borrar hasta el final de una palabra ** 1. Pulse <ESC> para asegurarse de que está en el modo Normal. 2. Mueva el cursor a la lÃnea de abajo señalada con --->. 3. Mueva el cursor al comienzo de una palabra que desee borrar. 4. Pulse dw para hacer que la palabra desaparezca. NOTA: Las letras dw aparecerán en la última lÃnea de la pantalla cuando las escriba. Si escribe algo equivocado pulse <ESC> y comience de nuevo. ---> Hay algunas palabras pásalo bien que no pertenecen papel a esta frase. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lección 2.2: MÃS MANDATOS PARA BORRAR ** Escriba d$ para borrar hasta el final de la lÃnea. ** 1. Pulse <ESC> para asegurarse de que está en el modo Normal. 2. Mueva el cursor a la lÃnea de abajo señalada con --->. 3. Mueva el cursor al final de la lÃnea correcta (DESPUÉS del primer . ). 4. Escriba d$ para borrar hasta el final de la lÃnea. ---> Alguien ha escrito el final de esta lÃnea dos veces. esta lÃnea dos veces. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lección 2.3: SOBRE MANDATOS Y OBJETOS El formato del mandato de borrar d es como sigue: [número] d objeto O d [número] objeto donde: número - es cuántas veces se ha de ejecutar el mandato (opcional, defecto=1). d - es el mandato para borrar. objeto - es sobre lo que el mandato va a operar (lista, abajo). Una lista corta de objetos: w - desde el cursor hasta el final de la palabra, incluyendo el espacio. e - desde el cursor hasta el final de la palabra, SIN incluir el espacio. $ - desde el cursor hasta el final de la lÃnea. NOTE: Para los aventureros, pulsando sólo el objeto estando en modo Normal sin un mandato moverá el cursor como se especifica en la lista de objetos. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lección 2.4: UNA EXCEPCIÓN AL 'MANDATO-OBJETO' ** Escriba dd para borrar una lÃnea entera. ** Debido a la frecuencia con que se borran lÃneas enteras, los diseñadores de Vim decidieron que serÃa más fácil el escribir simplemente dos des en una fila para borrar una lÃnea. 1. Mueva el cursor a la segunda lÃnea de la lista de abajo. 2. Escriba dd para borrar la lÃnea. 3. Muévase ahora a la cuarta lÃnea. 4. Escriba 2dd (recuerde número-mandato-objeto) para borrar las dos lÃneas. 1) Las rosas son rojas, 2) El barro es divertido, 3) El cielo es azul, 4) Yo tengo un coche, 5) Los relojes marcan la hora, 6) El azucar es dulce, 7) Y asà eres tu. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lección 2.5: EL MANDATO DESHACER ** Pulse u para deshacer los últimos mandatos, U para deshacer una lÃnea entera. ** 1. Mueva el cursor a la lÃnea de abajo señalada con ---> y sitúelo bajo el primer error. 2. Pulse x para borrar el primer caráter erróneo. 3. Pulse ahora u para deshacer el último mandato ejecutado. 4. Ahora corrija todos los errores de la lÃnea usando el mandato x. 5. Pulse ahora U mayúscula para devolver la lÃnea a su estado original. 6. Pulse ahora u unas pocas veces para deshacer lo hecho por U y los mandatos previos. 7. Ahora pulse CTRL-R (mantenga pulsada la tecla CTRL y pulse R) unas pocas veces para volver a ejecutar los mandatos (deshacer lo deshecho). ---> Corrrija los errores dee esttta lÃnea y vuuelva a ponerlos coon deshacer. 8. Estos mandatos son muy útiles. Ahora pase al resumen de la Lección 2. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RESUMEN DE LA LECCIÓN 2 1. Para borrar desde el cursor hasta el final de una palabra pulse: dw 2. Para borrar desde el cursor hasta el final de una lÃnea pulse: d$ 3. Para borrar una lÃnea enter pulse: dd 4. El formato de un mandato en modo Normal es: [número] mandato objeto O mandato [número] objeto donde: número - es cuántas veces se ha de ejecutar el mandato mandato - es lo que hay que hacer, por ejemplo, d para borrar objeto - es sobre lo que el mandato va a operar, por ejemplo w (palabra), $ (hasta el final de la lÃnea), etc. 5. Para deshacer acciones previas pulse: u (u minúscula) Para deshacer todos los cambios de una lÃnea pulse: U (U mayúscula) Para deshacer lo deshecho pulse: CTRL-R ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lección 3.1: EL MANDATO «PUT» (poner) ** Pulse p para poner lo último que ha borrado después del cursor. ** 1. Mueva el cursor al final de la lista de abajo. 2. Escriba dd para borrar la lÃnea y almacenarla en el buffer de Vim. 3. Mueva el cursor a la lÃnea que debe quedar por debajo de la lÃnea a mover. 4. Estando en mod Normal, pulse p para restituir la lÃnea borrada. 5. Repita los pasos 2 a 4 para poner todas las lÃneas en el orden correcto. d) ¿Puedes aprenderla tu? b) Las violetas son azules, c) La inteligencia se aprende, a) Las rosas son rojas, ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lección 3.2: EL MANDATO «REPLACE» (remplazar) ** Pulse r y un carácter para sustituir el carácter sobre el cursor. ** 1. Mueva el cursor a la primera lÃnea de abajo señalada con --->. 2. Mueva el cursor para situarlo bajo el primer error. 3. Pulse r y el carácter que debe sustituir al erróneo. 4. Repita los pasos 2 y 3 hasta que la primera lÃnea esté corregida. ---> ¡Cuendo esta lÃnea fue rscrita alguien pulso algunas teclas equibocadas! ---> ¡Cuando esta lÃnea fue escrita alguien pulsó algunas teclas equivocadas! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lección 3.3: EL MANDATO «CHANGE» (cambiar) ** Para cambiar parte de una palabra o toda ella escriba cw . ** 1. Mueva el cursor a la primera lÃnea de abajo señalada con --->. 2. Sitúe el cursor en la u de lubrs. 3. Escriba cw y corrija la palabra (en este caso, escriba 'Ãnea'). 4. Pulse <ESC> y mueva el cursor al error siguiente (el primer carácter que deba cambiarse). 5. Repita los pasos 3 y 4 hasta que la primera frase sea igual a la segunda. ---> Esta lubrs tiene unas pocas pskavtad que corregir usem el mandato change. ---> Esta lÃnea tiene unas pocas palabras que corregir usando el mandato change. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lección 3.4: MÃS CAMBIOS USANDO c ** El mandato change se utiliza con los mismos objetos que delete. ** 1. El mandato change funciona de la misma forma que delete. El formato es: [número] c objeto O c [número] objeto 2. Los objetos son tambiém los mismos, tales como w (palabra), $ (fin de la lÃnea), etc. 3. Mueva el cursor a la primera lÃnea de abajo señalada con --->. 4. Mueva el cursor al primer error. 5. Escriba c$ para hacer que el resto de la lÃnea sea como la segunda y pulse <ESC>. ---> El final de esta lÃnea necesita alguna ayuda para que sea como la segunda. ---> El final de esta lÃnea necesita ser corregido usando el mandato c$. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RESUMEN DE LA LECCIÓN 3 1. Para sustituir texto que ha sido borrado, pulse p . Esto Pone el texto borrado DESPUÉS del cursor (si lo que se ha borrado es una lÃnea se situará sobre la lÃnea que está sobre el cursor). 2. Para sustituir el carácter bajo el cursor, pulse r y luego el carácter que sustituirá al original. 3. El mandato change le permite cambiar el objeto especificado desde la posición del cursor hasta el final del objeto; e.g. Pulse cw para cambiar desde el cursor hasta el final de la palabra, c$ para cambiar hasta el final de la lÃnea. 4. El formato para change es: [número] c objeto O c [número] objeto Pase ahora a la lección siguiente. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lección 4.1: SITUACIÓN EN EL FICHERO Y SU ESTADO ** Pulse CTRL-g para mostrar su situación en el fichero y su estado. Pulse MAYU-G para moverse a una determinada lÃnea del fichero. ** Nota: ¡¡Lea esta lección entera antes de ejecutar alguno de los pasos!! 1. Mantenga pulsada la tecla Ctrl y pulse g . Aparece una lÃnea de estado al final de la pantalla con el nombre del fichero y la lÃnea en la que está situado. Recuerde el número de la lÃnea para el Paso 3. 2. Pulse Mayu-G para ir al final del fichero. 3. Escriba el número de la lÃnea en la que estaba y despúes Mayu-G. Esto le volverá a la lÃnea en la que estaba cuando pulsó Ctrl-g. (Cuando escriba los números NO se mostrarán en la pantalla). 4. Si se siente confiado en poder hacer esto ejecute los pasos 1 a 3. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lección 4.2: EL MANDATO «SEARCH» (buscar) ** Escriba / seguido de una frase para buscar la frase. ** 1. En modo Normal pulse el carácter / . FÃjese que tanto el carácter / como el cursor aparecen en la última lÃnea de la pantalla, lo mismo que el mandato : . 2. Escriba ahora errroor <INTRO>. Esta es la palabra que quiere buscar. 3. Para repetir la búsqueda, simplemente pulse n . Para busacar la misma frase en la dirección opuesta, pulse Mayu-N . 4. Si quiere buscar una frase en la dirección opuesta (hacia arriba), utilice el mandato ? en lugar de / . ---> Cuando la búsqueda alcanza el final del fichero continuará desde el principio. «errroor» no es la forma de deletrear error; errroor es un error. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lección 4.3: BÚSQUEDA PARA COMPROBAR PARÉNTESIS ** Pulse % para encontrar el paréntesis correspondiente a ),] o } . ** 1. Sitúe el cursor en cualquiera de los caracteres ), ] o } en la lÃnea de abajo señalada con --->. 2. Pulse ahora el carácter % . 3. El cursor deberÃa situarse en el paréntesis (, corchete [ o llave { correspondiente. 4. Pulse % para mover de nuevo el cursor al paréntesis, corchete o llave correspondiente. ---> Esto ( es una lÃnea de prueba con (, [, ], {, y } en ella. )). Nota: ¡Esto es muy útil en la detección de errores en un programa con paréntesis, corchetes o llaves disparejos. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lección 4.4: UNA FORMA DE CAMBIAR ERRORES ** Escriba :s/viejo/nuevo/g para sustituir 'viejo' por 'nuevo'. ** 1. Mueva el cursor a la lÃnea de abajo señalada con --->. 2. Escriba :s/laas/las/ <INTRO> . Tenga en cuenta que este mandato cambia sólo la primera aparición en la lÃnea de la expresión a cambiar. ---> Laas mejores épocas para ver laas flores son laas primaveras. 4. Para cambiar todas las apariciones de una expresión ente dos lÃneas escriba :#,#s/viejo/nuevo/g donde #,# son los números de las dos lÃneas. Escriba :%s/viejo/nuevo/g para hacer los cambios en todo el fichero. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RESUMEN DE LA LECCIÓN 4 1. Ctrl-g muestra la posición del cursor en el fichero y su estado. Mayu-G mueve el cursor al final del fichero. Un número de lÃnea sewguido de Mayu-G mueve el cursor a la lÃnea con ese número. 2. Pulsando / seguido de una frase busca la frase hacia ADELANTE. Pulsando ? seguido de una frase busca la frase hacia ATRÃS. Después de una búsqueda pulse n para encontrar la aparición siguiente en la misma dirección. 3. Pulsando % cuando el cursor esta sobre (,), [,], { o } localiza la pareja correspondiente. 4. Para cambiar viejo por nuevo en una lÃnea pulse :s/viejo/nuevo Para cambiar todos los viejo por nuevo en una lÃnea pulse :s/viejo/nuevo/g Para cambiar frases entre dos números de lÃneas pulse :#,#s/viejo/nuevo/g Para cambiar viejo por nuevo en todo el fichero pulse :%s/viejo/nuevo/g Para pedir confirmación en cada caso añada 'c' :%s/viejo/nuevo/gc ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lección 5.1: CÓMO EJECUTAR UN MANDATO EXTERNO ** Escriba :! seguido de un mandato externo para ejecutar ese mandato. ** 1. Escriba el conocido mandato : para situar el cursor al final de la pantalla. Esto le permitirá introducir un mandato. 2. Ahora escriba el carácter ! (signo de admiración). Esto le permitirá ejecutar cualquier mandato del sistema. 3. Como ejemplo escriba ls después del ! y luego pulse <INTRO>. Esto le mostrará una lista de su directorio, igual que si estuviera en el sÃmbolo del sistema. Si ls no funciona utilice !:dir . --->Nota: De esta manera es posible ejecutar cualquier mandato externo. --->Nota: Todos los mandatos : deben finalizarse pulsando <INTRO>. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lección 5.2: MÃS SOBRE GUARDAR FICHEROS ** Para guardar los cambios hechos en un fichero, escriba :w NOMBRE_DE_FICHERO. ** 1. Escriba :!dir o :!ls para ver una lista de su directorio. Ya sabe que debe pulsar <INTRO> después de ello. 2. Elija un nombre de fichero que todavÃa no exista, como TEST. 3. Ahora escriba :w TEST (donde TEST es el nombre de fichero elegido). 4. Esta acción guarda todo el fichero (Vim Tutor) bajo el nombre TEST. Para comprobarlo escriba :!dir de nuevo y vea su directorio. ---> Tenga en cuenta que si sale de Vim y entra de nuevo con el nombre de fichero TEST, el fichero serÃa una copia exacta del tutor cuando lo ha guardado. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lección 5.3: UN MANDATO DE ESCRITURA SELECTIVO ** Para guardar parte del fuchero escriba :#,# NOMBRE_DEL_FICHERO ** 1. Escriba de nuevo, una vez más, :!dir o :!ls para obtener una lista de su directorio y elija nombre de fichero adecuado, como TEST. 2. Mueva el cursor al principio de la pantalla y pulse Ctrl-g para saber el número de la lÃnea correspondiente. ¡RECUERDE ESTE NÚMERO! 3. Ahora mueva el cursor a la última lÃnea de la pantalla y pulse Ctrl-g de nuevo. ¡RECUERDE TAMBIÉN ESTE NÚMERO! 4. Para guardar SOLAMENTE una parte de un fichero, escriba :#,# w TEST donde #,# son los números que usted ha recordado (primera lÃnea, última lÃnea) y TEST es su nombre de dichero. 5. De nuevo, vea que el fichero esta ahà con :!dir pero NO lo borre. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lección 5.4: RECUPERANDO Y MEZCLANDO FICHEROS ** Para insertar el contenido de un fichero escriba :r NOMBRE_DEL_FICHERO ** 1. Escriba :!dir para asegurarse de que su fichero TEST del ejercicio anterior está presente. 2. Situe el cursor al principio de esta pantalla. NOTA: Después de ejecutar el paso 3 se verá la Lección 5.3. Luego muévase hacia ABAJO para ver esta lección de nuevo. 3. Ahora recupere el fichero TEST utilizando el mandato :r TEST donde TEST es el nombre del fichero. NOTA: El fichero recuperado se sitúa a partir de la posición del cursor. 4. Para verificar que el fichero ha sido recuperado, mueva el cursor hacia arriba y vea que hay dos copias de la Lección 5.3, la original y la versión del fichero. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RESUMEN DE LA LECCIÓN 5 1. :!mandato ejecuta un mandato externo. Algunos ejemplos útiles son: :!dir - muestra el contenido de un directorio. :!del NOMBRE_DE_FICHERO - borra el fichero NOMBRE_DE FICHERO. 2. :#,#w NOMBRE_DE _FICHERO guarda desde las lÃneas # hasta la # en el fichero NOMBRE_DE_FICHERO. 3. :r NOMBRE_DE _FICHERO recupera el fichero del disco NOMBRE_DE FICHERO y lo inserta en el fichero en curso a partir de la posición del cursor. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lección 6.1: EL MANDATO «OPEN» (abrir) ** Pulse o para abrir una lÃnea debajo del cursor y situarle en modo Insert ** 1. Mueva el cursor a la lÃnea de abajo señalada con --->. 2. Pulse o (minúscula) para abrir una lÃnea por DEBAJO del cursor y situarle en modo Insert. 3. Ahora copie la lÃnea señalada con ---> y pulse <ESC> para salir del modo Insert. ---> Luego de pulsar o el cursor se sitúa en la lÃnea abierta en modo Insert. 4. Para abrir una lÃnea por encima del cursor, simplemente pulse una O mayúscula, en lugar de una o minúscula. Pruebe este en la lÃnea siguiente. Abra una lÃnea sobre ésta pulsando Mayu-O cuando el curso está en esta lÃnea. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lección 6.2: EL MANDATO «APPEND» (añadir) ** Pulse a para insertar texto DESPUÉS del cursor. ** 1. Mueva el cursor al final de la primera lÃnea de abajo señalada con ---> pulsando $ en modo Normal. 2. Escriba una a (minúscula) para añadir texto DESPUÉS del carácter que está sobre el cursor. (A mayúscula añade texto al final de la lÃnea). Nota: ¡Esto evita el pulsar i , el último carácter, el texto a insertar, <ESC>, cursor a la derecha y, finalmente, x , sólo para añadir algo al final de una lÃnea! 3. Complete ahora la primera lÃnea. Nótese que append es exactamente lo mismo que modo Insert, excepto por el lugar donde se inserta el texto. ---> Esta lÃnea le permitirá praticar ---> Esta lÃnea le permitirá praticar el añadido de texto al final de una lÃnea. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lección 6.3: OTRA VERSIÓN DE «REPLACE» (remplazar) ** Pulse una R mayúscula para sustituir más de un carácter. ** 1. Mueva el cursor a la primera lÃnea de abajo señalada con --->. 2. Sitúe el cursor al comienzo de la primera palabra que sea diferente de las de la segunda lÃnea marcada con ---> (la palabra 'anterior'). 3. Ahora pulse R y sustituya el resto del texto de la primera lÃnea escribiendo sobre el viejo texto para que la primera lÃnea sea igual que la primera. ---> Para hacer que esta lÃnea sea igual que la anterior use las teclas. ---> Para hacer que esta lÃnea sea igual que la siguiente escriba R y el texto. 4. Nótese que cuando pulse <ESC> para salir, el texto no alterado permanece. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lección 6.4: FIJAR OPCIONES ** Fijar una opción de forma que una búsqueda o sustitución ignore la caja ** (Para el concepto de caja de una letra, véase la nota al final del fichero) 1. Busque 'ignorar' introduciendo: /ignorar Repita varias veces la búsque pulsando la tecla n 2. Fije la opción 'ic' (Ignorar la caja de la letra) escribiendo: :set ic 3. Ahora busque 'ignorar' de nuevo pulsando n Repita la búsqueda varias veces más pulsando la tecla n 4. Fije las opciones 'hlsearch' y 'insearch': :set hls is 5. Ahora introduzca la orden de búsqueda otra vez, y vea qué pasa: /ignore ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RESUMEN DE LA LECCIÓN 6 1. Pulsando o abre una lÃnea por DEBAJO del cursor y sitúa el cursor en la lÃnea abierta en modo Insert. Pulsando una O mayúscula se abre una lÃnea SOBRE la que está el cursor. 2. Pulse una a para insertar texto DESPUÉS del carácter sobre el cursor. Pulsando una A mayúscula añade automáticamente texto al final de la lÃnea. 3. Pulsando una R mayúscula se entra en modo Replace hasta que, para salir, se pulse <ESC>. 4. Escribiendo «:set xxx» fija la opción «xxx» ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lección 7: MANDATOS PARA LA AYUDA EN LÃNEA ** Utilice el sistema de ayuda en lÃnea ** Vim dispone de un sistema de ayuda en lÃnea. Para activarlo, pruebe una de estas tres formas: - pulse la tecla <AYUDA> (si dispone de ella) - pulse la tecla <F1> (si dispone de ella) - escriba :help <INTRO> Escriba :q <INTRO> para cerrar la ventana de ayuda. Puede encontrar ayuda en casi cualquier tema añadiendo un argumento al mandato «:help» mandato. Pruebe éstos: :help w <INTRO> :help c_<T <INTRO> :help insert-index <INTRO> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Aquà concluye el tutor de Vim. Está pensado para dar una visión breve del editor Vim, lo suficiente para permitirle usar el editor de forma bastante sencilla. Está muy lejos de estar completo pues Vim tiene muchÃsimos más mandatos. Para lecturas y estudios posteriores se recomienda el libro: Learning the Vi Editor - por Linda Lamb Editorial: O'Reilly & Associates Inc. Es un buen libro para llegar a saber casi todo lo que desee hacer con Vi. La sexta edición incluye también información sobre Vim. Este tutorial ha sido escrito por Michael C. Pierce y Robert K. Ware, Colorado School of Mines utilizando ideas suministradas por Charles Smith, Colorado State University. E-mail: bware@mines.colorado.edu. Modificado para Vim por Bram Moolenaar. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Traducido del inglés por: Eduardo F. Amatria Correo electrónico: eferna1@platea.pntic.mec.es ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~