| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa |
| ecce [2024/02/16 23:42] – peron | ecce [2026/04/21 16:06] (actual) – editor externo 127.0.0.1 |
|---|
| | '':'' | Detiene el modo de inserción | | | '':'' | Detiene el modo de inserción | |
| | ''m'' | mueve el puntero a la línea siguiente | | | ''m'' | mueve el puntero a la línea siguiente | |
| | ''p'' | Imprime la línea actual | | | ''p'' | Presentar la línea actual | |
| |
| En el //prompt// de comandos ''>'' ordena el comando ''g'' ("mecanografiar una línea") y presiona la **tecla Intro**. | En el //prompt// de comandos ''>'' ordena el comando ''g'' ("mecanografiar una línea") y presiona la **tecla Intro**. |
| Para guardar los cambios del buffer almacén en el fichero destino y cerrar el editor, desde el //prompt de comandos// ''>'', introduce el comando especial ''%c''. | Para guardar los cambios del buffer almacén en el fichero destino y cerrar el editor, desde el //prompt de comandos// ''>'', introduce el comando especial ''%c''. |
| |
| ====Edición avanzada==== | ====Corrección==== |
| La edición de texto avanzada supera al de una máquina de escribir tradicional. | La edición de texto avanzada supera al de una máquina de escribir tradicional, pues a la vez de permitir mover el punter, permite realizar tareas de corrección sobre el texto. |
| |
| === Movimiento y corrección=== | === Movimiento === |
| |
| Imagina a Ecce como una antigua máquina de escribir. En aquellas girabas el rodillo para avanzar o retroceder en las líneas en el papel. | Imagina a Ecce como una antigua máquina de escribir. En aquellas girabas el rodillo para avanzar o retroceder en las líneas en el papel. |
| Si utilizas el modificador ''*'', podrás avanzar de forma //indefinida// hasta llegar al final del documento (o hasta el principio, en caso de utilizar el comando ''m-*''). | Si utilizas el modificador ''*'', podrás avanzar de forma //indefinida// hasta llegar al final del documento (o hasta el principio, en caso de utilizar el comando ''m-*''). |
| |
| Recuerda que al llegar al finsl del documento darás con el indicador ''<nowiki>*** FIN ***</nowiki>''. | Recuerda que al llegar al final del documento darás con el indicador ''<nowiki>*** FIN ***</nowiki>''. |
| |
| ==Comandos de Movimiento== | ==Comandos de Movimiento== |
| | |
| ^ **Comando** ^ **Movimiento del Puntero** ^ | ^ **Comando** ^ **Movimiento del Puntero** ^ |
| | ''r'' | Mueve el puntero un carácter a la **derecha** (en la línea actual) | | | ''r'' | Mueve el puntero un carácter a la **derecha** (en la línea actual) | |
| | ''m'' | Mueve el puntero a la línea siguiente | | | ''m'' | Mueve el puntero a la línea siguiente | |
| | ''m-'' | Mueve el puntero a la línea anterior | | | ''m-'' | Mueve el puntero a la línea anterior | |
| | ''*'' o ''0'' | **Repetición indefinida** ("repite la acción no poder cumplir mas") | | |
| |
| ==Comandos de corrección básica== | |
| ^ **Comando** ^ **Borrado realizado** ^ | |
| | ==Comandos de corrección== |
| | ^ **Comando** ^ **Corrección** ^ |
| | ''e'' | **Borra un carácter** a la izquierda del puntero | | | ''e'' | **Borra un carácter** a la izquierda del puntero | |
| | ''e-'' | Borra un carácter a la derecha del puntero | | | ''e-'' | Borra un carácter a la derecha del puntero | |
| | ''i/texto'' | Inserta la cadena ''texto'' a la derecha del puntero | | | ''i/texto'' | Inserta la cadena ''texto'' a la derecha del puntero | |
| | ''i-/texto'' | Inserta la cadena ''texto'' a la izquierda del puntero | | | ''i-/texto'' | Inserta la cadena ''texto'' a la izquierda del puntero | |
| | ''g''//n// | permite introducir //n// líneas. | | | ''g''//n// | Genera //n// líneas y permite mecanografiarlas. | |
| | ''d/texto'' | En la línea actual, borra la primer iteración de la cadena ''texto'' tras el puntero | | | ''d/texto'' | En la línea actual, borra la (primer iteración de la) cadena ''texto'' | |
| | ''d-/texto'' | En la línea anterior, borra la iteración previa de ''texto'' | | | ''d-/texto'' | En la línea anterior, borra la (primer iteración de la) cadena ''texto'' | |
| | ''u/texto'' | Borra todo hasta la cadena ''texto'' (en la línea actual) | | | ''u/texto'' | Borra todo hasta la cadena ''texto'' (en la línea actual) | |
| |
| Para esta operación se utilizan dos comandos: | Para esta operación se utilizan dos comandos: |
| |
| | | ''f/cadena1/'' | A partir del puntero, busca ''cadena1'' (hasta el fin del fichero). | |
| | | ''s/cadena2'' | Tras encontrar la cadena buscada con ''f/cadena1/'', la reemplaza con ''cadena2'' | |
| |
| | ''f/cadena1/'' | A partir del puntero, buscará ''cadena1'' en todo el fichero. | | ==Modificadores== |
| | ''s/cadena2'' | Tras usar f/cadena1, la reemplaza con ''cadena2'' | | * El modificador ''*'' o ''0'' significa **Repetición indefinida** (por lo que "repite la acción no poder cumplir mas"). Por ejemplo, el comando ''r*'' mueve el puntero hasta llegar al final de la línea actual. |
| | * Como regla general, al especificar un número entero //n// luego de un comando, lo ejecutarás dicho comando recursivamente //n// veces. Por ejemplo: |
| | |
| | | ''p23'' | Imprime 23 líneas (siguientes al puntero) | |
| | | ''m10'' | Baja el puntero diez líneas | |
| | | ''g5'' | Genera 5 líneas de texto en blanco debajo del puntero | |
| | |
| | De la misma manera es posible invertir el orden del comando antecediendo al número //n// con un signo ''-''. Por ejemplo: |
| | |
| | | ''m-*'' | Retrocede el puntero todas las líneas (vuelve al inicio del texto) | |
| | | ''p*''| Imprime todo desde el puntero hasta el final del texto | |
| | | ''m-10'' | Sube el puntero diez líneas | |
| | | ''p-23'' | Imprime (en orden inverso) las 23 líneas anteriores al puntero | |
| | | ''p-*'' | Imprime todo hasta el inicio del texto | |
| | |
| | |
| | |
| | * Si sólo introduces un //número// en la línea de comandos, Ecce repetirá el comando introducido anteriormente una //n// cantidad de veces. |
| |
| ===Comandos Especiales=== | ===Comandos Especiales=== |
| | ''%v'' | Imprime la versión de Ecce | | | ''%v'' | Imprime la versión de Ecce | |
| |
| ====Edición Avanzada==== | ====Edición==== |
| Junto a los comandos de una letra simple, Ecce dispone la posibilidad de usar opciones más avanzadas que te permiten editar con mayor conveniencia. | Junto a los comandos de corrección, Ecce dispone la posibilidad de usar comandos de edición para las líneas, que al actuar como párrafos permiten una edición más conveniente. |
| |
| ===Comandos de Edición Avanzada=== | ===Comandos de Edición Avanzada=== |
| | ^ **Comando avanzado** ^ **Resultado** ^ |
| | ''b'' | **Divide la línea** en la posición del puntero. | | | ''b'' | **Divide la línea** en la posición del puntero. | |
| | ''j'' | **Une la línea** desde el puntero a la siguiente línea | | | ''j'' | **Une la línea** desde el puntero a la siguiente línea | |
| | ''q'' | Mueve la línea actual a la siguiente | | |
| | ''q-'' | Mueve la línea actual a la anterior | | |
| | ''a'' | Ajusta el largo | | | ''a'' | Ajusta el largo | |
| | ''C'' | Cambia mayúsculas con Shift derecho | | | ''C'' | Cambia mayúsculas con Shift derecho | |
| | ''C-'' |Cambia a minúsculas con shift izq | | | ''C-'' |Cambia a minúsculas con shift izq | |
| |
| |
| Como regla general, si introduces un número //n// junto a tu comando, y ejecutarás dicho comando recursivamente //n// veces. Por ejemplo: | |
| |
| | ''p23'' | Imprime las 23 líneas siguientes al puntero | | |
| | ''m10'' | Sube el puntero diez líneas | | |
| | ''g5'' | Deja 5 líneas de texto en blanco debajo del puntero | | |
| |
| De la misma manera es posible invertir el orden del comando antecediendo al número //n// con un signo ''-''. Por ejemplo: | |
| |
| | ''p*''| Imprime todo desde el puntero hasta el final del texto | | |
| | ''p-23'' | Imprime las 23 líneas anteriores al puntero | | |
| | ''p-*'' | Imprime todo hasta el inicio del texto | | |
| | ''m-10'' | Retrocede el puntero diez líneas | | |
| | ''m-*'' | Retrocede el putnero todas las líneas (vuelve al inicio del texto) | | |
| |
| |
| Como en el caso anterior, estos pueden repetirse indicándole números apropiados: | |
| |
| | ''f/texto/4'' | Busca la 4ta. iteración de "texto" | | |
| | ''r40'' | Mueve a la derecha 40 caracteres | | |
| |
| Estas órdenes pueden encadenarse juntas: | |
| |
| ''m23 f/texto/ p3'' | |
| |
| |
| |
| |
| |
| ===Comandos Compuestos=== | ===Comandos Compuestos=== |
| La utilidad de estos comandos está en su repetición en bucle, condicional o incondicional. Observa estos ejemplos: | La utilidad de estos comandos está en su repetición en bucle, condicional o incondicional. Observa estos ejemplos: |
| |
| ^ Operación ^ Ejemplo ^ Significado/efecto ^ | ^ **Operación** ^ **Ejemplo** ^ Significado/efecto ^ |
| | ''0'' o ''*'' | | **Repetición indefinida** ("repite hasta no poder cumplir mas") | | | ''0'' o ''*'' | | **Repetición indefinida** ("repite hasta no poder cumplir mas") | |
| | | ''r0'' | Mueve el puntero al final de la línea | | | | ''r0'' | Mueve el puntero al final de la línea | |
| | | ''(mv'+'\)0'' | Busca la siguiente línea que comienza con `''+'' | | | | ''(mv'+'\)0'' | Busca la siguiente línea que comienza con `''+'' | |
| |
| Si sólo introduces un //número// en la línea de comandos, Ecce repetirá el comando introducido anteriormente una //n// cantidad de veces. | |
| | ====Combinación de comandos==== |
| | |
| | |
| | Como en el caso anterior, estos pueden repetirse indicándole números apropiados: |
| | |
| | | ''f/texto/4'' | Busca la 4ta. iteración de "texto" | |
| | | ''r40'' | Mueve a la derecha 40 caracteres | |
| | |
| | Estas órdenes pueden encadenarse juntas: |
| | |
| | ''m23 f/texto/ p3'' |
| | |
| |
| Podrás delimitar patrones por cualquier caracter excepto letras, dígitos, y aquellos que tienen significación definida. Podrás usar: ''"'', ''<nowiki>/</nowiki>'', ''$'', ''>'', ''+'', ''.'', '':'', ''='' y ''_''. | Podrás delimitar patrones por cualquier caracter excepto letras, dígitos, y aquellos que tienen significación definida. Podrás usar: ''"'', ''<nowiki>/</nowiki>'', ''$'', ''>'', ''+'', ''.'', '':'', ''='' y ''_''. |
| |