Emacs
Emacs es un editor de texto con una gran cantidad de
funciones, muy popular entre programadores y usuarios técnicos. GNU Emacs es
parte del proyecto GNU y la versión más popular de Emacs con una gran actividad
en su desarrollo. El manual de GNU Emacs lo describe como "un editor
extensible, personalizable, auto-documentado y de tiempo real."
El EMACS original significa, Editor MACroS para el
TECO. Fue escrito en 1975 por Richard Stallman junto con Guy Steele. Fue
inspirado por las ideas de TECMAC y TMACS, un par de editores TECO-macro
escritos por Guy Steele, Dave Moon, Richard Greenblatt, Charles Frankston, y
otros. Se han lanzado muchas versiones de EMACS hasta el momento, pero actualmente
hay dos que son usadas comúnmente: GNU Emacs, iniciado por Richard Stallman en
1984, y XEmacs, una fork de GNU Emacs, que fue iniciado en 1991. Ambos usan una
extensión de lenguaje muy poderosa, Emacs Lisp, que permite manejar tareas
distintas, desde escribir y compilar programas hasta navegar en Internet. GNU
Emacs es mantenido por el Proyecto GNU Emacs, el cual cuenta entre sus miembros
a Richard Stallman.1
Algunas personas hacen distinción entre la palabra en
mayúsculas "Emacs", usada para referirse a versiones derivadas del
programa creado por Richard Stallman (particularmente GNU Emacs y XEmacs), y la
palabra en minúsculas "emacs", que es usada para referirse al gran
número de implementaciones de Emacs. La palabra "emacs" es
pluralizada frecuentemente en inglés como emacsen por analogía con
"oxen". Por ejemplo, el paquete compatible de Emacs para Debian se
llama emacsen-common. El único plural proporcionado por el Collins English
Dictionary es emacsen.3
En la cultura de Unix, Emacs es uno de los dos
principales contendientes en las tradicionales guerras de editores, el otro es
vi.
Historia
Emacs en modo texto, ejecutado en la línea de comandos
sin modo gráfico.
Emacs nació en los laboratorios del MIT durante los
años 70. Antes de su introducción, el editor de textos predeterminado en el
Sistema Incompatible de Tiempo Compartido (ITS), el sistema operativo en los
laboratorios de Inteligencia Artificial PDP-6 y PDP-10, era un editor de líneas
conocido como TECO. A diferencia de los editores de texto modernos, en TECO la
introducción de texto, la edición y la vista del mismo se hacía de manera
separada, como Vi lo haría luego. Los caracteres tecleados no aparecían dentro
del documento, había que introducir una serie de instrucciones, en el lenguaje
de TECO, indicándole que debía colocar los caracteres requeridos. El texto no
se mostraba en la pantalla. Este comportamiento es similar al del programa ed,
que todavía se utiliza hoy en día.
Richard Stallman visitó el Laboratorio de Inteligencia
Artificial de Stanford en 1972 o 1974 y conoció al editor de textos
"E". Escrito por Fred Wright, el editor, tenía un comportamiento
intuitivo WYSIWYG (lo que ves es lo que obtienes) como es común en los editores
de textos modernos. Impresionado por esta característica, Stallman volvió al
MIT donde Carl Mikkelsen, uno de los hackers en el Laboratorio de Inteligencia
Artificial, había agregado un modo de edición-muestreo llamado
"Control-R" a TECO, que le permitía a la pantalla mostrar lo que el
usuario ingresaba desde el teclado. Stallman reimplementó este modo para que
corriera eficientemente. Agregó una característica al modo edición-muestreo de
TECO, para que el usuario pueda redefinir cualquier atajo de teclado para
ejecutar un programa TECO.
Otra característica de E, que no tenía TECO, era
corregir el acceso aleatorio. Desde la implementación, el TECO original fue un
editor secuencial, diseñado para editar cinta de papel perforada en el PDP-1.
La edición típica podía ser llevada a cabo en una página a la vez, en el orden
que las páginas aparecen en el archivo.
La nueva versión de TECO fue popular en el Laboratorio
de IA, y pronto acumuló una colección de macros, cuyos nombres terminaban en
"MAC" o "MACS". Dos años después, Guy Steele unificó una
diversidad de macros de teclado en uno solo.
Después de una noche de hacking conjunto por Steele y
Stallman, éste acabó la implementación, que incluía utilidades para extender y
documentar el nuevo conjunto de macros. El sistema resultante fue llamado EMACS,
es decir, "Editing MACroS". Una versión alternativa sostiene que
EMACS quería decir "E con MACroS", refiriéndose a la falta de
capacidades de macros en E. Según Stallman, él tomó el nombre Emacs
"porque <E> no estaba en uso como abreviatura en el ITS en aquel
momento". Se ha comentado también que "Emack & Bolio's" era
el nombre de una heladería popular en Boston, a poca distancia del MIT. Un
programa de formateo de texto usado en ITS fue llamado más tarde BOLIO por Dave
Moon, que frecuentaba la heladería. No obstante, a Stallman no le gustaba ese
helado, y ni siquiera lo conocía cuando eligió el nombre "Emacs";
esta ignorancia es la base de un Hacker koan, Emacs and Bolio).
Comentarios
Publicar un comentario