ecce

¡Esta es una revisión vieja del documento!


Ecce (Editor de Contexto Compatible de Edimburgo) es un editor de texto de culto escrito en la década de 1960 para las terminales teletipo de la minicomputadora PDP-10. Conformó uno de los primeros editores conocidos como modales (con modo de inserción y de comandos), y durante mas de 25 años contó contó con seguidores de culto en los entornos multiusuario.

El original fue escrito en lenguaje BCPL por Hamish Dewar, y ha sido reescrito en lenguaje C en 1984.

Ecce no está disponible en texto-plano, pero podrás compilar por tí mismo su código fuente del programa ecce.c y usarlo. Hazlo con:

cc ecce.c -o ecce

Ejecución

La sintaxis para ejecutar Ecce es:

./ecce origen destino

Como Ecce es antediluviano ni siquiera es capaz de crear por si mismo un fichero en Unix, por tanto podrías ejecutarlo creando antes un fichero origen desde la shell con el comando touch y opcionalmente un fichero destino, por ejemplo:

touch texto.txt ;
./ecce texto.txt destino.txt

Edición básica

Ecce te presentará la memoria disponible para su uso:

Buffer space = 768 KBytes
Ecce
>

El editor cuenta con dos prompts de acuerdo al modo en el que esté operando:

  • Modo de Comando: >
  • Modo de Inserción de texto: :

Para el uso más sencillo posible de Ecce, en el prompt de comandos > introduce el comando g0 y presiona la tecla Intro. Al usar este comando Ecce conmutará al modo de inserción, y recibirás un prompt de inserción texto en forma de :.

En el prompt : mecanografía las líneas de texto deseadas. Al presionar la tecla Intro, introducirás dicha línea al buffer de memoria que forma el documento de entrada de Ecce. Continúa agregando mas líneas en blanco presionando la tecla Intro.

Si en lugar de g0 indicas el comando g, se generaría una única línea en blanco, tras lo cual, al introducirle texto, recibirías el mensaje END si no existen otras líneas.

Una vez que hayas finalizado la inserción de texto, podrás retornar al modo de comandos desde el prompt de inserción de texto :, ingresando :. En consecuencia volverás al prompt de comandos >.

Guardar y salir

Desde el prompt de comandos >, podrás guardar los cambios en al fichero destino y cerrar el editor, utilizando el comando %C.

Imagina a Ecce como una antigua máquina de escribir. Podrás desplazar la posición actual de edición en el documento (llamada puntero).

Comando Acción
g Genera una única línea nueva
p Imprime la línea actual del puntero
m Baja el puntero una línea
m- Sube el puntero una línea
k Borra la línea actual
%C Guarda los cambios al fichero destino y sale de Ecce
Movimiento y corrección
r Se mueve a la derecha un caracter en la línea actual
l Se mueve a la izquierda un caracter en la línea actual
e Borra un caracter en la línea actual

Para introducir estos comandos opera en el modo de comandos.

A Ajusta el largo
B Divide la línea en dos en el puntero
C Cambia mayúsculas con Shift derecho
C- Cambia a minúsculas con shift izq
D/texto Borra primer ocasión del texto
D-/texto Borra interación previa de texto
E Borra caracter a la derecha del puntero
E- Borra caracter a la izquierda del puntero
F/texto Busca texto a continuación
F-/texto Busca texto anteriormente
G/texto Inserta línea de texto luego del puntero
G- Sube una línea
I/texto Inserta texto a la derecha del puntero
I- Inserta texto a la izquierda del puntero
J Une la siguiente línea
K Borra línea actual
K- Borra línea anterior
O/texto Sobreescribe la línea con texto
P Imprime la línea actual

Ecce dispone de opciones más avanzadas que te permiten editar con mayor potencia que ed. Por ejemplo, si introduces un número n junto a tu comando, y ejecutarás dicho comando recursivamente n veces. En esta tesitura:

p23 Imprime las 23 líneas siguientes
m10 Asciende diez líneas
g5 Deja 5 líneas de texto en blanco

Cualquiera de estos comandos básicos puede adjuntarse en reversa si lo antecedes con un -. Por ejemplo:

m-10 Retrocede diez líneas
Buscar y reemplazar
i/texto/ Inserta una cadena “texto” aquí en la línea.
f/texto/ Busca “texto” indicado.

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
  • ecce.1676841062.txt.gz
  • Última modificación: 2023/02/19 21:11
  • por peron