Edición Estructurada en Emacs


Tabla de contenidos
1. Introducción
2. La Fantasía de los Procesadores de Texto
3. El Mundo del Formateo de Textos
3.1. ¿Por qué SGML?
3.2. Breve vistazo a SGML
4. SGML usando Emacs
4.1. Requisitos del Sistema
4.2. Hola Mundo
4.3. Primer Paso: La declaración del Documento
4.4. Empezar a usar PSGML
4.5. Gran introducción, pero Emacs sigue sin gustarme demasiado...
4.5.1. Colores de las Fuentes
4.5.2. ¡Quiero ver lo que estoy seleccionando!
4.5.3. ¡Dios mío! ¿Cómo hago para desactivar el estúpido ajuste de línea?
4.5.4. Guardando nuestras personalizaciones.
5. Más allá de Hola Mundo
5.1. Dividir nuestros documentos en diferentes archivos.
5.2. Validar nuestros documentos
5.2.1. Validar un documento simple
5.2.2. Validar partes (entidades) de un documento
5.3. Manteniendo nuestros documentos bonitos
5.3.1. La Tecla Tab
5.3.2. Sangrar una región
5.3.3. Otros detalles sobre el sangrado
5.4. Ortografía
5.5. Formatos y Gráficos
5.6. Referencias Cruzadas, Enlaces y URLs
5.6.1. XRef
5.6.2. URL
5.7. Otros trucos bonitos
5.7.1. Etiquetado no planeado
5.7.2. Parámetros de las Etiquetas
6. Sobre este artículo
6.1. Sobre el autor
6.2. Sobre la traducción al español
 

Una guía de novato a novato sobre DocBook y otros estándares SGML/XML haciendo hincapié en el uso de la edición directa y estructurada utilizando Emacs.

1. Introducción

Este artículo se centra en el uso de Emacs para editar archivos SGML y sus derivados, como por ejemplo XML y HTML. Si nunca ha usado Emacs o este programa le desagrada por alguna razón, no se preocupe, a mí también me desagradaba. Siempre me pregunté qué era lo que la gente veía en una cosa tan complicada y poco amigable como Emacs. Sin embargo, cuando empecé a escribir en Docbook comprendí inmediatamente la necesidad de una herramienta más sofisticada que un simple editor de textos a color. En un principio yo hacía mis trabajos utilizando Nedit, uno de mis editores de texto favoritos, pero no llegó a las expectativas de lo que debía ser, para mí, el perfecto editor de texto estructurado: con sangrado automático, que dejara bonitos los párrafos, que pudiera chequear la ortografía solamente de los datos y, lo más importante, que tuviera medios para la validación contextual en tiempo de ejecución de cualquier DTD. Ahora bien, ésta quizá parezca una lista de deseos muy larga y difícil de satisfacer, pero descubrí que Emacs puede hacer fácilmente todo esto y mucho, pero mucho más. Nunca advertí el poder y la flexibilidad de Emacs ya que nunca me impresionó como entorno, lo advertí en la edición de documentos SGML. De hecho, luego de descubrir Emacs gracias a la edición estructurada, este programa se ha convertido en mi navaja suiza y espero que, cuando usted termine de leer este artículo, también se convierta en la suya.

Recientemente he probado LyX con Docbook y ahora puedo concluir que este intento también tiene futuro y facilita la transición de editores WYSIWYG [1]a la manera estructurada de editar textos. Sin embargo, esta clase de cosas nunca nos darán la libertad, el poder y la flexibilidad que nos pueden dar herramientas como Emacs + PSGML, especialmente si nos encontramos en un ambiente de programación y estamos habituados a encarar los proyectos desde ese punto de vista.

Sobre el alcance de este artículo sólo diré que no se trata de una guía para SGML, Docbook o Emacs. Como ya diré más adelante, el principal objetivo es introducir y discutir el modo principal[2] PSGML de Emacs y las dificultades más importantes con las que se encontraría cualquier usuario al editar documentos SGML y XML. Este artículo trata de ser una guía para principiantes por lo que la información que se proveerá aquí debería ser suficiente para poder entender todo sin necesidad de conocimientos previos. De todos modos espero poder estimular al lector lo suficiente como para investigar aún más en el tema. Es por esto que se dan algunas referencias y enlaces a otros artículos y libros al final de este artículo.

Recordemos también que Docbook, SGML y XML se están moviendo a un ritmo muy rápido y que ya han surgido varias tendencias. Recomiendo la lectura del excelente artículo de Eric Raymond sobre Docbook en el cual se explica en qué etapa se encuentra Docbook actualmente y hacia dónde apuntan varias de las tendencias (hay un enlace al final). También deseo aclarar que este documento discute sobre el uso de SGML Docbook y no de XML Docbook, formato que parece ser una nueva tendencia. De todos modos, cualquier cosa que aparezca en este artículo probablemente se aplique también para XML Docbook que en esencia es la misma cosa. Por lo que entiendo, el modo principal PSGML es capaz de analizar sintácticamente DTD de tipos SGML y XML (o esquemas[3] que es el nombre que se le da en el mundo XML), lo que es otro motivo para pensar que todo lo que sea mostrado en este artículo se aplicará a ambas variantes de Docbook.

Notas

[1]

WYSIWYG son las siglas de "What You See Is What You Get" ("Lo que ves es lo que obtienes"). Esto hace referencia a la filosofía de editores de textos como MS-Word, Word Perfect, Kword, o Writer de OpenOffice, en los que el usuario debe preocuparse por la apariencia y estructuración del formato del documento.

[2]

De aquí en adelante se traducirá "major mode" y "minor mode" al español como "modo principal" y "modo secundario", respectivamente. Nota del Traductor.

[3]

del término "schemes". Nota del Traductor.