Transcript
  • Edicin Estructurada en EmacsAlejandro Imass

    Una gua de novato a novato sobreDocBook y otros estndaresSGML/XML haciendo hincapi en el usode la edicin directa y estructuradautilizando Emacs.

    1. IntroduccinEste artculo se centra en el uso de Emacs para editar archivos SGML y sus derivados, como por ejemploXML y HTML. Si nunca ha usado Emacs o este programa le desagrada por alguna razn, no sepreocupe, a m tambin me desagradaba. Siempre me pregunt qu era lo que la gente vea en una cosatan complicada y poco amigable como Emacs. Sin embargo, cuando empec a escribir en Docbookcomprend inmediatamente la necesidad de una herramienta ms sofisticada que un simple editor detextos a color. En un principio yo haca mis trabajos utilizando Nedit, uno de mis editores de textofavoritos, pero no lleg a las expectativas de lo que deba ser, para m, el perfecto editor de textoestructurado: con sangrado automtico, que dejara bonitos los prrafos, que pudiera chequear laortografa solamente de los datos y, lo ms importante, que tuviera medios para la validacin contextualen tiempo de ejecucin de cualquier DTD. Ahora bien, sta quiz parezca una lista de deseos muy largay difcil de satisfacer, pero descubr que Emacs puede hacer fcilmente todo esto y mucho, pero muchoms. Nunca advert el poder y la flexibilidad de Emacs ya que nunca me impresion como entorno, loadvert en la edicin de documentos SGML. De hecho, luego de descubrir Emacs gracias a la edicinestructurada, este programa se ha convertido en mi navaja suiza y espero que, cuando usted termine deleer este artculo, tambin se convierta en la suya.

    Recientemente he probado LyX con Docbook y ahora puedo concluir que este intento tambin tienefuturo y facilita la transicin de editores WYSIWYG 1a la manera estructurada de editar textos. Sinembargo, esta clase de cosas nunca nos darn la libertad, el poder y la flexibilidad que nos pueden darherramientas como Emacs + PSGML, especialmente si nos encontramos en un ambiente deprogramacin y estamos habituados a encarar los proyectos desde ese punto de vista.

    Sobre el alcance de este artculo slo dir que no se trata de una gua para SGML, Docbook o Emacs.Como ya dir ms adelante, el principal objetivo es introducir y discutir el modo principal2 PSGML deEmacs y las dificultades ms importantes con las que se encontrara cualquier usuario al editardocumentos SGML y XML. Este artculo trata de ser una gua para principiantes por lo que lainformacin que se proveer aqu debera ser suficiente para poder entender todo sin necesidad deconocimientos previos. De todos modos espero poder estimular al lector lo suficiente como parainvestigar an ms en el tema. Es por esto que se dan algunas referencias y enlaces a otros artculos ylibros al final de este artculo.

    1

  • Edicin Estructurada en Emacs

    Recordemos tambin que Docbook, SGML y XML se estn moviendo a un ritmo muy rpido y que yahan surgido varias tendencias. Recomiendo la lectura del excelente artculo de Eric Raymond sobreDocbook en el cual se explica en qu etapa se encuentra Docbook actualmente y hacia dnde apuntanvarias de las tendencias (hay un enlace al final). Tambin deseo aclarar que este documento discute sobreel uso de SGML Docbook y no de XML Docbook, formato que parece ser una nueva tendencia. De todosmodos, cualquier cosa que aparezca en este artculo probablemente se aplique tambin para XMLDocbook que en esencia es la misma cosa. Por lo que entiendo, el modo principal PSGML es capaz deanalizar sintcticamente DTD de tipos SGML y XML (o esquemas3 que es el nombre que se le da en elmundo XML), lo que es otro motivo para pensar que todo lo que sea mostrado en este artculo se aplicara ambas variantes de Docbook.

    2. La Fantasa de los Procesadores de Texto

    Yo nac en la era de los Procesadores de textos por lo que no tuve oportunidad de conocer lo que eracomponer tipogrficamente hasta que descubr UNIX y Troff hace cinco aos. Aunque suene pococreble, qued encantado con la nueva forma de escribir usando marcas4 y sin tener que preocuparme porel aspecto de mis documentos pero s por el contenido y la estructura, lo cual debera ser el principalobjetivo de todos los autores. Ms adelante descubr Ispell y el resto de la filosofa Unix al integrarmuchas y pequeas piezas que realmente, todas juntas, funcionan perfectamente.

    Quiz, como programador, esto sea natural para mi. Me agrad el hecho de poder escribir (y mantener!)mis documentos de la misma manera en que escribo mis programas. De todos modos no quiero aburrir allector con mis experiencias frente a una computadora por lo que, para hacer corta esta historia, un dadescubr una vieja tradicin en computacin llamada SGML5, y no pude creer que las computadoras sevolvieran WYSIWYG en vez de volverse WYSIWYM (un concepto extrado de la pgina de LyX).

    He sufrido mucho y en primera persona el calvario de usar Microsoft Word para trabajar condocumentos y manuales, en realidad no muy largos. A continuacin listo algunas de mis experiencias:

    Los formatos de documentos son difciles de integrar. Integrar el trabajo de varias personas casisiempre se convierte en una pesadilla de reformateo, terminando siempre con una docena de estilosdiferentes que son difciles de limpiar. Dar formato nuevo a un documento Ms-Word es una larga,manual y tediosa tarea.

    El nmero de estilos crece fuera de control y no hay manera de poner en vigor un formato. Un usuarioprincipiante terminar con una docena de formatos distintos o simplemente los ignorar a todos. Porejemplo, un novato en Ms-Word (o cualquier otro programa WYSIWYG) probablemente lo que hares simplemente cambiar la fuente y el tamao a mano, en lugar de usar los encabezados y estilosapropiados.

    En el caso de que las compaas deseen crear plantillas de documentos estndar, las mismas seimpondrn muy poco y probablemente sean todas violadas o mal usadas. Es muy difcil organizar unestndar para la documentacin a nivel de una corporacin y probablemente las compaas terminencon una docena de diferentes estndares en todos los departamentos. Por ejemplo, los logotipos yotros tipos de grficos de una corporacin tienden a mutar con el tiempo en muchos tipos de formas,

    2

  • Edicin Estructurada en Emacs

    proporciones y tamaos. Al final, cada usuario termina con lo que l cree que es el estndar de lacompaa y, antes de que alguien se de cuenta, nadie sabr cul es realmente el logo oficial.

    Al trabajar con documentos de cierto tamao, el programa tiende a volverse muy inestable,especialmente si trabajamos con imgenes u otros objetos. Un error tpico de Ms-Word es lamisteriosa X que por alguna razn que nadie conoce reemplaza todos nuestros grficos. Ante esteerror el documento es irrecuperable y se deber reemplazar cada grfico a mano.

    El formato de un documento Ms-Word es binario, por lo que es bsicamente intil tratar de extraer lainformacin dentro de ellos. Si las universidades solicitaran trabajos como tesis en estos formatos (ycranme que las universidades de aqu piden formato Ms-Word), estos sern tan tiles como papeles ydesfavorecern la creacin de bases de datos de informacin. Por otro lado, si las universidades fueraninteligentes, pediran los trabajos en formato SGML para as, ms adelante poder crear bases de datosde conocimiento para que otros estudiantes puedan consultarlas eficientemente.

    El formato binario .doc parece expandirse en tamao fuera de control cuanto ms lo usemos. Solahaber una opcin para compactar estos documentos pero, al parecer, ha desaparecido en las nuevasversiones de MS-Word. Esto es un real desperdicio de los recursos de una compaa dado que unusuario comn desconoce esta caracterstica: la nica manera de resolver este problema es crear unnuevo documento doc y copiar y pegar todo el contenido del viejo documento en el nuevo.

    Los servidores de las corporaciones que usan estos formatos se alborotan y desorganizan fcilmente.Encontrar algo que usar se vuelve parecido a buscar piezas esparcidas en un campo de chatarra: segastan horas abriendo documentos aqu y all hasta que por fin se encuentra algo de valor.

    La reutilizacin de documentos es algo difcil de llevar a cabo y mantener. Por ejemplo, laspresentaciones estndar de una compaa o captulos estndar son algo muy difcil de integrar en undocumento ya empezado, por lo que estas plantillas tienden a ser copiadas y modificadas por toda lacompaa.

    Si el archivo binario se corrompe (lo cual sucede muy frecuentemente), no hay manera de salvarnuestra informacin, la cual est embebida en un formato propietario6

    La informacin podr ser exportada en varios tipos de formato, pero siempre utilizando herramientaspropietarias para tal tarea. No se recomienda exportar a otros tipos de formato dado que, adems de laprdida de datos que esto supone, no ser una tarea trivial. Si trabajamos con MS Word y distribuimosnuestros archivos, estamos obligando a estas personas a utilizar software propietario tanto para leercomo para convertir nuestros documentos a otros formatos.

    De cualquier forma, podra seguir escribiendo pginas de todos los problemas que herramientas del tipoLo Que Ves Es Lo Que Obtienes (WYSIWYG) han causado a compaas y a la gente durante aos.Personalmente, tuve la experiencia de tener una secretaria que se tomaba una hora o ms para escribiruna simple carta (mientras buscaba el logo correcto, chequeaba virus, imprima y tena problemas con lared, etc), una tarea que hace diez aos se realizaba en tres minutos en una mquina de escribir comn queno usaba electricidad. He visto estudiantes que derrochan varios das en tratar de integrar las diferentespartes de un trabajo y a veces pierden meses de tiempo debido a la corrupcin de sus documentos o porvirus en los mismos. En cuanto a m, he perdido das y semanas de trabajo en la edicin de manualeslargos o especificaciones de algn sistema y estoy seguro que cualquier lector al leer estas lneas seacuerda de algn caso parecido que le ha tocado vivir personalmente.

    En conclusin, las herramientas para procesamiento de textos del tipo WYSIWYG son excelentes para

    3

  • Edicin Estructurada en Emacs

    trabajos pequeos de oficina o para uso simple personal. En algunos aspectos no se les puede negar supoder y pueden encargarse de trabajos de peso mediano sin problemas. No fueron hechas para la edicinprofesional a gran escala y definitivamente no son recomendables para uso a nivel corporativo, en elmismo sentido en que las hojas de clculo nunca fueron diseadas para almacenar gran cantidad de datosde alguna corporacin, una mala costumbre muy comn en las empresas modernas.

    Aunque las herramientas WYSIWYG son relativamente fciles de usar por un principiante, cuandoqueremos implementar su uso en forma profesional la curva de entrenamiento se hace cada vez msinclinada y los estndares no pueden ser puestos en prctica con dichas herramientas.

    Cualquiera que haya tenido que darles un uso serio a estas herramientas estar de acuerdo con que hayalgo mal en ellas y que de seguro debe existir una forma alternativa de realizar el trabajo Alguien noest de acuerdo con que crear la Enciclopedia Britnica es prcticamente imposible con herramientascomo MS Word o Adobe Page-Maker ? Cuando uno mira hacia atrs en la historia de las computadorasse da cuenta de que esas alternativas siempre estuvieron disponibles, pero por alguna razn nunca fueronpopulares entre los usuarios mortales de computadoras7

    3. El Mundo del Formateo de Textos

    Usar el concepto Formateo de textos discriminndolo de Procesamiento de textos8 tal como aprendleyendo mi primer libro de UNIX. Fue en ese libro donde por primera vez descubr lo que era Troff y lafilosofa que se esconde detrs del concepto de formateo de textos (vs. WYSIWYG).

    El formateo de textos diferencia los siguientes elementos en un documento:

    Contenido

    Estructura

    Estilo

    Bsicamente, la filosofa se resume en que los autores deben concentrarse en el contenido y estructuraantes que en el estilo de sus documentos. Dado que la mayora de las veces la estructura est predefinida(o estandarizada en el caso de Docbook) para satisfacer el cometido del autor, ste terminaconcentrndose estrictamente en el contenido, lo cual debera ser su inters primario.

    En el formateo de textos los autores pueden usar las ms simples herramientas, como un editor de textos,o pueden utilizar editores de textos estructurados y especializados, como LyX o Emacs. En cualquiera delos casos, su informacin siempre es almacenada en el ms natural de los formatos de computadora:texto plano. Esto adquiere mucho sentido dadas todas las razones que se dieron en contra de los formatosbinarios en Seccin 2

    4

  • Edicin Estructurada en Emacs

    3.1. Por qu SGML?

    Resumen corto de la historia

    Opuestamente a lo que la mayora cree, SGML (el padre de XML) es un lenguaje muy antiguo, hasta talpunto que algunos lo llaman la venganza de los cuarentones. Este significado se debe a que hace algoms de 20 aos hubo muchos entusiastas de computacin que hicieron mucha fuerza en la comunidadpara la implementacin de estndares abiertos como SGML. stos fueron ignorados por el mercado oquiz anulados del mismo por intereses comerciales. De cualquier modo, SGML se ha usado encompaas e industrias muy importantes durante muchos aos. De hecho, muchas corporacionesimportantes han almacenado su experiencia y conocimiento corporacional en SGML desde hace yamucho tiempo9.

    XML es simplemente un subconjunto simplificado de SGML lo que significa que cualquier documentoXML es un SGML vlido, pero no cumplindose necesariamente lo recproco. El cometido bsico deXML en nuestros das es superar lo que HTML10 ha sembrado tras la explosin de la web en los 90.Historias sobre estos lenguajes pueden ser encontradas por toda la web, por lo que no dar ms detallessobre este tema. De todos modos, en el resto del documento me estar refiriendo a SGML, pero en estepunto el lector probablemente se de cuenta de que XML es casi la misma cosa, slo que ms simple.Cuando hablamos de transformaciones a otros formatos, existen algunas distinciones importantes entreSGML y XML. SGML usa las hojas de estilo DSSSL las cuales son escritas en Scheme, un dialecto deLisp. XML ha desarrollado un estndar ms simple de transformacin llamado XSLT el cual se escribeen XML lo cual hace que sea mucho ms fcil de escribir y mantener. Dado que todo esto no es un puntofundamental de este artculo, recomiendo a los lectores interesados en el tema que lean el excelenteartculo de Eric Raymond:

    http://www.tldp.org/HOWTO/Docbook-Demystification-HOWTO/(http://www.tldp.org/HOWTO/Docbook-Demystification-HOWTO/)

    Finalmente y para aclarar la pregunta implcita en el ttulo de esta seccin, SGML (o XML) es una buenaidea principalmente porque es un lenguaje extensible que puede ser fcilmente transformado en otrosestndares cuando estos salgan al pblico. Esto significa que si usted escribe o mantiene sus documentosen SGML, se asegurar que sobrevivan a cualquier cambio en la tecnologa o en los estndares y puedanser transformados a cualquier otro tipo de estndar que eventualmente surja. Ms aun, SGML es elantiguo y estable ISO 8879:1986.

    3.2. Breve vistazo a SGML

    La denominacin SGML viene de Standard Generalized Mark-up Language (algo as como LenguajeEstndar Generalizado de Etiquetas). A su vez, XML viene de eXtensible Mark-up Language (LenguajeExtensible de Etiquetas) y es simplemente un subconjunto simplificado de SGML (no unaimplementacin, ver seccin anterior). Es un lenguaje de computadoras, pero no es un lenguaje

    5

  • Edicin Estructurada en Emacs

    procedural (o sea, las instrucciones no son ejecutadas en algn orden especfico), sino un lenguajedeclarativo.

    Los lenguajes de etiquetas (Mark-up) se basan justamente en el uso de (tag). sta define laestructura de un modo muy parecido a lo que sucede en las bases de datos. Todo lo dems es contenido o,para utilizar la jerga SGML, caracteres de datos (CDATA). Desde el punto de vista del estndar, SGMLslo define reglas bsicas sobre el uso y anidacin de las etiquetas. Por ejemplo, se encuentra explcito enel lenguaje que cada etiqueta debe tener una etiqueta de final (end tag) correspondiente y que laanidacin de etiquetas debe ser perfecta, lo que significa que las etiquetas internas deben ser cerradasantes de las etiquetas externas. Por supuesto, las definiciones SGML son mucho ms complejas que esto,pero bsicamente esas son las reglas principales. XML tambin tiene reglas estrictas como stas. Hayetiquetas excepcionales las cuales no tienen una etiqueta de final correspondiente y son del formato. Adems, a las etiquetas tambin podemos pasarles parmetros como es el caso de la etiqueta en HTML, en la cual se puede, por ejemplo, especificar el color de fondo de la pgina con elparmetro BGCOLOR="WHITE"..

    Dadas estas reglas bsicas, todo lo dems se deja a discrecin del usuario. Esto significa que el nombrede las etiquetas, sus parmetros y las implementaciones especficas de las reglas de anidacin pueden serrealizadas por la persona que escribe en SGML. sta es la belleza verdadera del lenguaje ya que permiteque cualquiera invente su propio estndar de etiquetas. Si lo pensamos detenidamente entonces SGML esen realidad un lenguaje para describir estructuras flexibles de datos que pueden ser fcilmentemanipuladas y transformadas por herramientas, llamadas analizadores sintcticos (parsers). Lasestructuras de datos SGML son, por mucho, ms flexibles que las tablas RDBMS (aka SQL) paraalmacenar cosas complicadas como libros, pero no slo se limitan a manipular documentacin. Dehecho, SGML y ahora tambin XML, estn siendo utilizados para el almacenamiento en bases de datosde propsitos generales, desplazando varias implementaciones heredadas de DBMS de Relacionamientode Objetos (Object-Relational DBMS).

    Ahora bien, si cualquiera puede realizar su propio lenguaje de etiquetas con SGML, tiene que haber unmodo de poner en vigor las reglas que hemos inventado. Esto es implementado por lo que se denominacomo DTD (Document Type Definition, o en espaol Definicin del Tipo de Documento). Un DTDdefine los nombres de las etiquetas, el orden legal de las ocurrencias y las reglas de anidacin para unaimplementacin SGML particular. A la vez, los DTDs se escriben en SGML y se representan como unsimple archivo en el sistema. En especial, Docbook es un DTD que se usa para definir libros y artculos.

    El uso de DTDs impone ciertas condiciones. Primero sobre la persona que va a utilizarlas, o sea, lapersona deber tener algn conocimiento bsico de la DTD antes de empezar a escribir en ese formato.Tambin es conveniente usar un editor estructurado que tenga la capacidad contextual de validacin.Estos editores son muy tiles ya que nos irn indicando las etiquetas que estn permitidas en cierto puntode nuestro documento (irn analizando las reglas de la DTD por nosotros). An ms, podremos usar unanalizador sintctico que valide los documentos usando un cierta DTD de nuestro sistema y que indiquetodas las inconsistencias.

    Bueno, esto es bsicamente todo lo que se necesita saber para empezar a trabajar con SGML. Todos estosconceptos se clarificarn a medida que avancemos la lectura, especialmente en la siguiente seccin que

    6

  • Edicin Estructurada en Emacs

    discute cmo crear un documento SGML usando Emacs.

    4. SGML usando Emacs

    La palabra Emacs podra ahuyentar a mucha gente que lea este artculo. Yo los entiendo. No puedoentender por qu diablos un editor tiene que ser tan complicado y obscuro. Es por esto que nunca meesforc mucho por aprender a usarlo. Soy tan slo un hombre simple y haragn y amo a los editoressimples y poderosos como Nedit, del cual pienso todava que es un gran editor. Sin embargo, y cranme,cuando descubran la edicin SGML utilizando Emacs (lo cual, con suerte aprendern aqu), realmente sesorprendern. De hecho, estoy seguro de que quedarn tan impresionados que nunca ms querrnabandonar Emacs para ninguna de sus necesidades de edicin. Estn leyendo estas palabras de alguienque sola evitar Emacs a toda costa y ahora lo usa para todas las cosas que se puedan imaginar.

    Aprender Emacs es un viaje largo, pero no tiene por qu ser aburrido. Se debe entender que esteprograma no es tanto un editor de textos, sino todo un ambiente. Luego, si se lo lleva poco a poco,terminaremos por acostumbrarnos a l y, eventualmente amarlo.

    Antes de empezar con la parte prctica de esta gua se necesitar instalar todas las siguientes cosas parainterpretar los ejemplos.

    4.1. Requisitos del Sistema

    Necesitar verificar su sistema y asegurarse de que cuenta con todas las herramientas descritas abajoinstaladas y funcionando.

    Alguna clase de sistema operativo UNIX o tipo-UNIX. Lo siento, este artculo no es para usuarios deWindoze. No estoy discriminando injustamente, es slo que no tengo ni idea de cmo funcionan lasherramientas en este ambiente y tampoco tengo intenciones de averiguarlo. Yo por ejemplo, uso elSistema Debian con el Ncleo Linux. 11.

    Se necesitar alguna versin de GNU Emacs. Probablemente todo esto tambin funcione con XEmacspero francamente no s cules son las diferencias entre ambos paquetes. De todos modos, si usted esun usuario de XEmacs probablemente sepa qu hacer para conseguir que todo esto camine. Yo usoEmacs 21 el cual viene con unos coquetos mens y una barra de herramientas en X. Esta ltimaversin probablemente sea la ms adecuada para los principiantes.

    PSGML: (Tomado de la documentacin de PSGML) Es un modo principal para editar documentosSGML y XML. Funciona con GNU Emacs 19.34, 20.3, o mayores o con XEmacs 19.9. PSGMLcontiene un simple analizador sintctico SGML y puede trabajar con cualquier DTD. Entre lasfunciones que provee se destacan mens y comandos para insertar las etiquetas que seancontextualmente vlidas, identificacin de errores estructurales, edicin de los valores de los atributosen una ventana aparte con informacin sobre tipos estndar y una edicin estructurada.

    7

  • Edicin Estructurada en Emacs

    La discusin sobre este paquete y por qu Emacs puede ser tan poderoso en la edicin estructuradacomo SGML o HTML ser el principal objetivo de este artculo. De hecho, el modo HTML de Emacses muy poderoso y hace que la creacin y edicin de pginas web sea una pasada. Doy nimos a losusuarios a que, despus de leer este artculo prueben este modo principal de Emacs. Algunas personasson perezosas y prefieren los editores HTML de tipo visual. Si bien son muy fciles de usar, no sonprcticos a la hora de crear pginas web dinmicas. El cdigo que generan casi siempre es muy sucio(en particular el cdigo generado por MS-FrontPage es horrible) o lleno de datos intiles. Esto haceque se haga difcil el cortar y pegar piezas aqu y all para crear pginas dinmicas usando, porejemplo Perl/CGI o PHP. Adems, si nos consideramos a nosotros mismos programadores yadmitimos la necesidad de una de estas herramientas visuales, probablemente nos encontremos en elsitio equivocado y deberamos considerar cambiar nuestra carrera al diseo grfico.

    SGML-Base y SGML-Data: As es como son llamados en Debian. Se deber contar con la instalacinequivalente en la distribucin usada. De cualquier modo, esto debera instalar el archivo de catlogo deSGML base y los DTDs bsicos (se explicar todo esto ms adelante). Estoy casi seguro de que esto eslo que deja que nuestros documentos usen los identificadores pblicos en lugar de los identificadoresdel sistema.

    En cualquier documento SGML, la primera lnea debe ser una declaracin SGML o una declaracinDOCTYPE de la forma:

    Esta lnea le dir al analizador sintctico frente a qu tipo de documento se encuentra y contra quDTD debe validar. En el ejemplo de arriba, el documento es un artculo definido en el DTDDocbook. Si todo est instalado correctamente, el sistema debera ser capaz de encontrar el DTD sinque le tengamos que especificar caminos a los archivos. Si el encabezado de arriba no llegara afuncionar, todava tendremos la posibilidad de agregar lo que se llama un identificador de sistemapara que as el analizador sintctico pueda encontrar el DTD. Los analizadores sintcticos toman lasiguiente forma:

    Estoy bastante seguro de que los archivos de catalogos SGML que se piden como requisitos es lo quedeja al usuario usar solamente identificadores pblicos, lo que hace que los documentos sean muchoms portables. Si algn lector puede contribuir con algn comentario adicional en esta parte,agradecera la retroalimentacin.

    SGML-Tools, SGML-Tools Lite, Docbook-Tools, Debian-Doc o Linux Doc Tools. Esto depende de ladistribucin Linux usada y las tareas que se quieran realizar. Estos paquetes se denominan de forma

    8

  • Edicin Estructurada en Emacs

    diferente en cada distro pero realizan las mismas tareas. Se encargan de instalar guiones que facilitanla conversin de SGML a cualquiera de los formatos HTML, PS, PDF, RTF, TeX, etc. Estos guionesprobablemente causen dependencias a otros paquetes como Jade y TeX. Tambin necesitaremosinstalar el DTD de Docbook, las hojas de estilo DSSSL de Docbook, XML y XSL (si eventualmentequeremos trabajar con XML-Docbook) y el paquete Docbook-Utilities. Despus de que hayamosinstalado todas estas utilidades seremos capaces de ejecutar rdenes como db2ps, db2html, db2rtf ydems.

    He aqu algunas de las dependencias que puedo deducir de la informacin provista por los paquetes enDebian:

    La conversin a texto requiere groff-base

    La conversin a LaTeX requiere tetex-base, tetex-bin y tetex-extra.

    La conversin a Info requiere Jade.

    La conversin a PostScript requiere TeX, DVI, GhostScript y otras herramientas PS. A su vez, siqueremos ver los archivos .ps deberemos tener instalado GhostView u otro programa equivalente.

    La lista de arriba debe tomarse como algo representativo y variar segn el sistema (si hablamos deLinux depender en la distribucin y versin). De todos modos, dado que SGML y Docbook sonherramientas bastante estndar en los sistemas operativos libres, es muy comn que su sistema tengaun macro paquete que instale todo lo que necesitemos con relativa facilidad.

    4.2. Hola Mundo

    A este punto el lector debera ser capaz de iniciar Emacs invocando emacs en el intrprete de rdenes oseleccionando la opcin en nuestro escritorio. Notar que Emacs tendr el mismo comportamiento tantoen X Window como en la consola de caracteres. Creo que la nica diferencia es que en el modo decaracteres los mens deben ser activados con el teclado, en lugar de utilizar el ratn. En realidad nopuedo explicar mucho sobre este punto ya que nunca he usado Emacs en modo de consola puro.

    Una vez que Emacs se haya ejecutado nos encontraremos en el bfer *scratch*.12 Podremos crear unnuevo archivo usando los comandos C-x C-x C-f

    Ntese que C-x hace referencia a presionar la tecla Ctrl y luego la tecla x. La secuenciaM-x hace referencia a presionar la tecla Alt y luego la x. En Emacs, la tecla Alt puedeemularse presionando (y soltando) primero la tecla Esc siguiendo la tecla que corresponde.De hecho, en algunos sistemas la tecla Alt no funcionar y nos veremos obligados a usar latecla Esc.

    9

  • Edicin Estructurada en Emacs

    Emacs preguntar por el archivo en la parte inferior de la pantalla, la cual se llama mini-bfer. Si seescribe el nombre de un archivo que no existe en el directorio actual (casi siempre ~/), Emacs crear unnuevo archivo. Para empezar, escrbase hello.sgml y presinese enter.

    Para la gente nueva en Emacs, este trajeteo entre cuadros puede resultar un poco confuso.Aunque, Emacs automatiza la mayora de estas conmutaciones, si en algn punto nosencontramos perdidos, para volver a empezar podemos hacer click en el mini-bfer ypresionar C-g algunas veces. Esta orden le dice a Emacs que aborte las rdenes previas.

    Si por alguna razn nuestra pantalla est dividida en ms de un cuadro, podremosmaximizar (para usar un trmino familiar) cualquiera de estos cuadros simplementehaciendo click en l y luego presionando C-x 1. Adems, podremos dividir la pantalla demuchas maneras diferentes. Prubese esto presionando C-x 2, C-x 3, y demscombinaciones. Estando en X-Window es realmente una buena idea tener la pantallaseparada en cuadros, ya que podremos seleccionar cada uno de ellos por separado con unsimple click de ratn.

    Si se ha instalado correctamente PSGML se debera ver Loading psgml...done en el mini-bfer.Tambin, en la barra de estado (la lnea que est justo arriba del mini-bfer), se debera ver SGMLindicando que se ha activado el modo principal SGML.

    Emacs trabaja en los modos principal y secundario. Slo puede haber un nico modoprincipal activado a la vez. El modo SGML en el modo principal en el cual estaremostrabajando nosotros. Los modos secundarios se caracterizan por realizar tareas especficas yse puede tener varios de ellos ejecutndose dentro de un modo primario. Por ejemplo,existen varios modos secundarios tiles como auto-fill-mode e ispell-mode, los cuales nosayudarn mucho cuando trabajemos con archivos SGML. El modo secundario Ispellverificar nuestra ortografa en tiempo real, mientras que el modo secundario auto-fill nosayudar a mantener nuestros prrafos justificados correctamente.

    He aqu el archivo completo para un documento tipo Hola mundo:

    Ejemplo 1. Ejemplo de cdigo para Hola Mundo

    Mi primer libro

    Mi primer captulo

    Mi primer seccin

    Mi primer prrafo

    10

  • Edicin Estructurada en Emacs

    Se podra escribir este listado carcter a carcter en cualquier otro editor (excepto quiz con LyX), o sepuede sacar provecho de las ventajas que tiene el modo principal PSGML de Emacs para la edicinestructurada. Aqu es donde comienza la parte interesante...

    4.3. Primer Paso: La declaracin del Documento

    La primera cosa que siempre se deber hacer al editar un documento Docbook es escribir la Declaracindel Tipo de Documento, y esto debe ser realizado manualmente.

    Esta primera lnea en el documento le dir a Emacs dnde encontrar la DTD para que pueda analizarlosintcticamente cuando sea necesario. La DTD contiene todas las reglas para Docbook y permitir aPSGML deducir qu cosas estn permitidas, en qu lugares y cmo realizar el sangrado del documento.

    4.4. Empezar a usar PSGML

    Ahora que se tiene la lnea DOCTYPE, muvase el cursor justo debajo y presinese C-c C-e. Si nostardamos lo suficiente en el mini-bfer se podr apreciar que Emacs ha elegido book como el elementovlido. Esto es as porque en ese punto del documento no hay otro elemento vlido que podamos ingresar.Ahora, presinese enter y veamos que ocurre. Si todo funciona bien, obtendremos el siguiente cdigo:

    Ahora presinese enter una vez ms y luego C-c C-e. Obsrvese ahora que Emacs no es capaz de decidirqu etiqueta usar en este punto dado que existe ms de una opcin. Igual que en una shell se podrpresionar Tab para autocompletar pero, dado que existen muchas opciones se ver que la pantalla sedivide mostrndonos una lista de las etiquetas vlidas en ese punto del documento.

    Si se desea salir de dicha seleccin, simplemente presinese C-g o escrbase las primeras letras de laetiqueta (por ejemplo, escrbase ti), y luego Tab y luego Enter. Lo que hemos hecho es crear unaetiqueta para insertar el ttulo del documento y Emacs ya ha ubicado el cursor justo donde losnecesitamos! Escrbase el ttulo y muvase el cursor al final de la lnea (como en cualquier editor, sepodr presionar End con tal motivo), presinese Enter y luego C-c C-e. Escrbase ahora ch y luegopresinese Tab. Acabamos de crear nuestro primer captulo!. Sgase igual, hasta haber editado undocumento parecido a hola-mundo.sgml listado en Ejemplo 1>.

    11

  • Edicin Estructurada en Emacs

    Hasta el momento, se podr empezar a apreciar lo que se quiso decir con un editor de textosestructurado. Y esto es slo el comienzo, ya que la funcionalidad de PSGML se conecta con muchascaractersticas interesantes de Emacs, lo que realmente confirma que ambas cosas son las herramientasdefinitivas para el desarrollo de documentos SGML. Por supuesto, puede pasar que a este punto a unotodava no le agrade tanto Emacs porque, a pesar de las ventajas vistas, todava sigue siendo muy raro yobtuso. As que, hagamos algunas mejoras....

    4.5. Gran introduccin, pero Emacs sigue sin gustarme demasiado...

    Bueno, probablemente para muchos usuarios como yo, que venimos de editores de texto amigables ycoquetos, Emacs sea inspido y complicado por lo que en esta seccin se mostrar cmo hacer quefuncione como un editor de textos normal. Se podr ver que con un pequeo retoque Emacs puede sertan o ms amigable que el editor de textos que solamos usar.

    4.5.1. Colores de las Fuentes

    La principal cosa que perd al migrar a Emacs fue el Coloreado Sintctico13 y me cost mucho trabajoenterarme de cmo activarlo. En Emacs, la opcin para esto se llama Global Font Lock. El porqu de talnombre es un misterio para m, pero he aqu lo que hay que hacer para activarla:

    M-x global-font-lock

    Obviamente, no se deber escribir todo esto. Simplemente global-f y Tab.

    4.5.2. Quiero ver lo que estoy seleccionando!

    Otra caracterstica estndar molesta de Emacs es la imposibilidad de ver lo que se est seleccionando.Emacs trae el modo mark desactivado por defecto, as que lo deberemos activar con:

    M-x transient-mark-mode

    4.5.3. Dios mo! Cmo hago para desactivar el estpido ajuste de lnea?

    En lo personal, sta fue la cosa ms molesta de Emacs. Es decir, hay muchas situaciones en las que, leguste o no al estndar de codificacin GNU, hay que ir ms all del margen derecho. Bueno, ellos hanhecho bastante difcil el desactivar esta opcin estpida, pero he aqu lo que hay que hacer:

    M-x hscroll-mode

    12

  • Edicin Estructurada en Emacs

    Sin embargo, esto no termina aqu, y lo siguiente no ser tan trivial. Se deber cambiar al bfer *scratch*(lo cual se podr hacer seleccionando el men Buffers y luego click en *scratch*). ste es un bfer deevaluacin de expresiones Lisp (lo que quiere decir que simplemente, el modo principal por defecto deeste bfer es para evaluaciones Lisp, lo cual se puede ver en la lnea de estado). Ahora, escrbase la lnea

    (setq-default truncate-lines 1)

    seguida de C-j. Esto ejecutar la lnea de cdigo Lisp.

    4.5.4. Guardando nuestras personalizaciones.

    Lo que se debe hacer es crear un archivo llamado .emacs en nuestro directorio home. ste serejecutado cada vez que Emacs se inicie. He aqu cmo luce mi archivo .emacs:(global-font-lock-mode)(transient-mark-mode 1)(hscroll-mode)(setq-default truncate-lines 1)

    5. Ms all de Hola MundoHasta aqu hemos visto las caractersticas bsicas de la edicin estructurada usando Emacs. Sin embargo,hay mucho, pero mucho ms que ver. He aqu algunos bonitos trucos y sugerencias que van a hacernuestra vida como autores de documentacin mucho ms fcil.

    5.1. Dividir nuestros documentos en diferentes archivos.

    Una de las principales ventajas del Formateo de Textos sobre la Edicin de Textos, es la habilidad detrabajar en archivos separados y la flexibilidad a la hora de organizar estos archivos de manera personal.Ms an, con la tcnica de Formatear Textos se puede ser tan flexible con nuestra documentacin, comolo somos a la hora de organizar nuestros archivos fuentes cuando programamos.

    Las Entidades deben ser declaradas en la declaracin DOCTYPE al principio del documento. Unadeclaracin tpica es como la siguiente:

    13

  • Edicin Estructurada en Emacs

    Como se puede deducir del ejemplo anterior, las entidades son declaradas dentro de los parntesis rectos[]. Adems, puede verse que existe un identificador de sistema para la entidad, de manera que elanalizador sintctico pueda encontrar el archivo cuando procese el documento principal. El nombre de laentidad, adems de identificarla dentro del documento, puede tener cualquier nombre que deseemos.Personalmente, en el ejemplo, trat de mantener el mismo nombre entre el de la entidad y el identificadordel sistema, pero esto no es un requisito.

    Para usar nuestra entidad, slo deberemos usar el signo & y su nombre, por ejemplo:&presDeLaCompania;

    Importante: Cuando trabajamos con entidades, no se puede incluir una declaracin DOCTYPE enla misma. Esto hace que a Emacs le sea imposible saber cmo validar el documento. He encontradouna alternativa para superar esto y es explicada abajo.

    5.2. Validar nuestros documentos

    Como se ver al correr de esta seccin, Emacs/PSGML no slo nos ayudar a editar documentos SGML,sino que tambin nos ayudar a validar documentos en cualquier momento que nos encontremoseditndolos. Esta es una caracterstica estndar pura de Emacs (no de PSGML), gracias a la cualaprenderemos a valorar la edicin estructurada en dicho editor de textos.

    5.2.1. Validar un documento simple

    En cualquier punto del documento, simplemente presionando C-c C-v se podr ver la orden nsgmls en elmini-bfer. Presionando enter, podremos validar nuestro documento actual. Tanto si ocurre un error en lavalidacin, como si sali todo bien, seremos notificados en una divisin de la pantalla, por debajo delmini-bfer.

    Algo til con respecto a esto es saber que, si hacemos click en uno de los errores y luego enter, nosveremos desplazados justo a la lnea donde se encontr el error. Es ms, si el error est en otros archivoque el actual, Emacs lo abrir automticamente y nos har saltar a donde supuestamente se encuentra elerror! sta es una funcionalidad estndar de Emacs en integracin con algunas otras herramientas denuestro sistema. Es el mismo caso que gdb, make o un compilador java. As de simple.

    5.2.2. Validar partes (entidades) de un documento

    El principal problema con la divisin del documento en partes separadas en archivos, o entidades que escomo se las denomina en SGML, es que no podemos tener una declaracin DOCTYPE en cualquiera de

    14

  • Edicin Estructurada en Emacs

    estas partes. Si lo hiciramos as, Emacs no tendra forma de saber dnde buscar la DTD. He aqu lo queyo hago para solucionar este problema:

    1. Ir al documento principal, (aquel que tiene la declaracin DOCTYPE) e ir al men DTD -> SaveParsed DTD. Dar aqu un nombre simple como docbook.ced o main.ced. Sera buenoalmacenar este archivo en el mismo directorio en el que almacenamos nuestro documento principal.

    2. Al abrir la parte del documento, obtendremos el error External entity XXXXXX not found,donde XXXXXX es el nombre de la primera etiqueta que se encontr. Ignrese esto y presinese C-x 1para maximizar el cuadro en el que trabajaremos. Seleccinese el men DTD->Load Parsed DTDy sustityase filename.ced por main.ced (o por el nombre que le hallamos dado al archivo en 1).

    Y eso es todo! Ahora podremos trabajar con dicha parte del documento en Emacs de igual forma quecomo lo venamos haciendo con nuestro documento principal.

    5.3. Manteniendo nuestros documentos bonitos

    En esta seccin se hablar sobre el correcto sangrado y justificacin de nuestros Docbook. Para estousaremos algunos modos principales de Emacs y el propio modo principal PSGML.

    5.3.1. La Tecla Tab

    A diferencia de cualquier otro editor que yo haya visto antes, la tecla Tab se comporta de un modosorprendentemente inteligente en Emacs. Por ejemplo, si nos encontramos en un modo principal distintoal modo de texto puro, al presionar la tecla Tab en cualquier parte del documento, esto har que la lneaen la cual estamos posicionados sangre correctamente, mientras que en cualquier otro editor de textos loanterior quebrar la lnea en dos.

    5.3.2. Sangrar una regin

    Como modo de ejemplo, supngase que en Ejemplo 1 hemos decidido que nuestra Sect2 sea ahora unaSect1 y queremos hacerla sangrar apropiadamente. He aqu como hacer tal cosa:

    1. Seleccinese la regin (C-space activa el bloque de la seleccin) y reemplcense las etiquetas. Siestamos sangrando para afuera una regin deberamos empezar a buscar y reemplazar empezandopor las etiquetas exteriores. Si, por el contrario, estamos sangrando hacia adentro, deberamos hacerlo contrario.

    2. Una vez que las etiquetas tengan los nombres correctos, Emacs debera ser capaz de realizar elsangrado de la regin automticamente. Para ello, simplemente seleccinese la regin nuevamente ypresinese M-x indent-region y Voil!

    15

  • Edicin Estructurada en Emacs

    5.3.3. Otros detalles sobre el sangrado

    En esta seccin se discutirn aspectos que involucran cuestiones de estilo y claridad en el cdigo.Personalmente, en algunos casos prefiero que las lneas de CDATA (los caracteres de datos) estn entrelas lneas que ocupan las etiquetas, y no que estas ltimas estn al principio y al final de CDATA, en lasmismas lneas. Los prrafos son ejemplos perfectos de esto:

    En esta seccin se discutirn aspectos que involucrancuestiones de estilo y claridad en el cdigo. Personalmente,en algunos casos prefiero que las lneas deCDATA (los caracteres de datos) estnentre las lneas que ocupan las etiquetas, y no que estasltimas estn al principio y al final de CDATA, en lasmismas lneas. Los prrafos son ejemplos perfectos de esto:

    versus

    En esta seccin se discutirn aspectos que involucrancuestiones de estilo y claridad en el cdigo. Personalmente,en algunos casos prefiero que las lneas deCDATA (los caracteres de datos) estnentre las lneas que ocupan las etiquetas, y no que estasltimas estn al principio y al final de CDATA, en lasmismas lneas. Los prrafos son ejemplos perfectos deesto.

    Tngase presente que para el sangrado de una regin, Emacs seguir el sangrado de la primera lnea y apartir de este, alinear todas las dems. Luego, deberemos tener correctamente hecho el sangrado de laslneas superiores para que en las lneas inferiores sea correcto.

    5.4. Ortografa

    Dado que Emacs se integra pacficamente con el sistema operativo y sus herramientas, tambin lo hacecon Ispell y spell. Esta integracin puede ser ad-hoc activando el modo principal Ispell o puede serejecutado en un modo secundario. Esta ltima manera de funcionar es anloga al subrayado rojo que sepresenta en las faltas ortogrficas de los documentos en Ms Word. He aqu algunas pistas:

    Para revisar ortogrficamente un documento, presinese M-x ispell.

    Para cambiar el diccionario presinese M-x ispell-change-dictionary. (Pueden verse los diccionariosdisponibles de Ispell en /usr/lib/ispell.

    Para activar el modo secundario de Ispell, simplemente presinese M-x flyspell-mode.

    Si se tiene activado el modo secundario Ispell y se escucha un beep, esto significa que se ha cometidoun error ortogrfico en alguna palabra. Para corregirlo, detngase la edicin inmediatamente y

    16

  • Edicin Estructurada en Emacs

    presinese M-$. De esta forma se vern algunas opciones en la parte superior de la pantalla, igual queen el modo principal de Ispell!

    5.5. Formatos y Grficos

    Si bien los documentos SGML pueden ser limpiamente convertidos a otros muchos formatos, hay un parde consideraciones que hacer si vamos a convertir documentos SGML que involucren algn otro tipo dedato que no sea texto. Para explicar esto, supongamos que estamos manteniendo un documento SGML elcual ser distribuido en dos formatos bsicos: PostScript y HTML. Si el documento no tiene grficos nohabr problemas serios al realizar las conversiones. Sin embargo, si los tiene hay que tener en cuenta doscaractersticas de los mismos: su tamao y su formato. En primer lugar tomemos como ejemplo unacaptura de pantalla de 800x600: la misma podr mostrarse sin problemas en un archivo HTML, pero noentrar en una hoja A4 en un archivo PS o PDF. El problema con los formatos es un poco mscomplicado. Por ejemplo, debemos tener en cuenta que en un archivo HTML no podremos mostrar unimagen EPS directamente, as como tambin, en un archivo PostScript no podremos mostrar una imagenPNG.

    Probablemente haya una manera de corregir esta clase de limitaciones en los documentos SGML queinvolucren algn tipo de programa preprocesador, o algo parecido. Sin embargo no estoy enterado de laexistencia de algo parecido. Cuando encuentre la herramienta apropiada, probablemente actualice estaseccin del documento. As y todo, he encontrado un procedimiento simple que simplifica la solucin deeste problema de formatos:

    Crese un subdirectorio llamado graphic en el cual guardaremos todas nuestras imgenes. En dichosubdirectorio, crense otros subdirectorios uno para cada tipo de formato. Por ejemplo, en mi caso,trabajo con Gimp y publico mis trabajos tanto en PostScript como en HTML por lo que tengo tres deestos subdirectorios: XCF 14, EPS y PNG.

    Cuando creemos un grfico, guardmoslo en los diferentes formatos en cada subdirectorio. Para losformatos XCF y EPS guardemos los archivos con extensin, pero guardemos los archivos PNG sinextensin.

    Si en nuestro documento no especificamos el tipo de archivo, cada rutina de conversin esperar unaextensin diferente para las imgenes; excepto por la conversin a HTML la cual tomar el nombredel archivo literalmente. Es por esto que en el punto anterior ped que se guardaran los archivos PNGsin extensin. De todos modos, el explorador de pginas HTML a usar debera ser capaz de determinarel tipo de archivo. He aqu un ejemplo para insertar una captura de pantalla:

    Emacs 21 Graphical Menus in X

    Antes de ejecutar la herramienta para la conversin de SGML a otro formato, nos debemos asegurarde tener los archivos de tipo correcto en el directorio graphic. Por ejemplo, la conversin a formatoPostScript esperar que en dicho directorio halla archivos EPS. As, no tendremos que modificar ladeclaracin de cada etiqueta graphic para cada conversin.

    17

  • Edicin Estructurada en Emacs

    Dado que nuestros archivos PNG no tienen extensin, el parmetro IMG en el archivo HTML tendrla misma ruta y nombre de archivo que su ancestro SGML.

    5.6. Referencias Cruzadas, Enlaces y URLs

    Cada elemento SGML puede tener un ID15 definido por el usuario. Este ID nos permite hacer referenciaal elemento con diferentes propsitos y obtener una salida ms coqueta en algunos tipos de archivo quesoporten ciertas caractersticas. Un ejemplo de esto ltimo puede ser el siguiente. Si estamos publicandonuestros documentos en archivos HTML u otro tipo de archivos que soporten hiperenlaces, puede serltil publicar enlaces dentro del documento que apunten a otras partes del mismo. Estos enlaces puedenser declarados de diferentes maneras en los documentos Docbook y en esta seccin se darn algunascaractersticas que he encontrado dignas de relatar.

    5.6.1. XRef

    He encontrado a XRef muy verstil dado que trabaja de igual forma en publicaciones para la impresin(PostScript) como en publicaciones HTML. La nica diferencia es que en este ltimo formato agrega elhipervnculo.

    Para usar XRef se debe, primero que nada, identificar el nodo objetivo del vnculo (o sea, aquella cosa ala cual vamos a apuntar). Para esto, simplemente deberemos ir a la etiqueta de apertura del elemento quequeremos identificar, teclear C-c + y seleccionar ID. Luego deberemos introducir el nombre:

    La Fantasa de los Procesadores de Texto

    A partir de ahora, en cualquier lugar podremos hacer referencia a la seccin del ejemplo anterior,utilizando su ID de la forma:

    los cuales fueron listados en

    5.6.2. URL

    Para declarar una URL el procedimiento es bastante trivial. Simplemente debe usarse el elemento ULinkde modo anlogo a como se hace en el siguiente ejemplo:

    http://xml.coverpages.org/general.html#faq

    18

  • Edicin Estructurada en Emacs

    5.7. Otros trucos bonitos

    Aqu cubrir otras caractersticas bonitas que he descubierto gracias al uso de Emacs y el mduloPSGML. Esta seccin crecer con el tiempo, por lo que el lector debera mantenerse en lnea....

    5.7.1. Etiquetado no planeado

    No he podido encontrar un mejor ttulo para esta seccin por lo que los lectores tendrn que soportarste. Supngase que se est realizando la correccin de un documento ya terminado y se decide enfatizarpalabras que no lo estn. Si se usa C-c C-e se terminar con una etiqueta de apertura seguida de unaetiqueta de fin pero con nada en el medio. Sin lugar a dudas, esto no es lo que queremos. En este caso sepodr usar C-< lo cual nos dejar elegir una etiqueta, pero slo insertar la de apertura. Cuando sequiera cerrar dicho elemento, se podr presionar C-/ lo cual insertar automticamente en ese lugar laetiqueta de fin!

    5.7.2. Parmetros de las Etiquetas

    Cuando escribimos en Docbook o en HTML, podemos ver que las etiquetas aceptan gran variedad deparmetros diferentes, los cuales pueden ser muy difciles de recordar de memoria, o hasta pueden tenervalores por defecto. En estos casos, lo que puede hacerse es, ubicando el cursor en cualquier parte de unaetiqueta de abertura, presionar C-c +. Esto har que se abra una lista de parmetros vlidos en dichaetiqueta y hasta se podrn ver los valores permitidos para cada uno de estos parmetros, si es que hansido definidos. Encuentro esta caracterstica sorprendente y esencial para cualquier edicin que involucreetiquetas. Lo que quiero decir, es que ya no necesitaremos tener al lado alguna referencia al lenguajeHTML o Docbook al editar documentos en tales formatos, ya que la mayora de la informacin de losparmetros de una etiqueta la podremos obtener con la rden anterior y el autocompletado. De todosmodos, esto no es excusa para no aprender el lenguaje estndar de etiquetas con el cual se trabaje, pero ssirve para no tener que acordarnos de memoria de estas caractersticas de menor importancia.

    6. Sobre este artculoNota: Las direcciones de correos electrnicos que siguen estn levemente modificadas para evitarSPAM.

    6.1. Sobre el autor

    El nombre del autor de este documento es Alejandro Imass, (ait (http://bios.linuxguru.net/view/ait)). Sele puede encontrar en esta direccin (mailto:ait@ tariffi.net) de correo electrnico y en su pgina web

    19

  • Edicin Estructurada en Emacs

    (http://www.tariffi.net/~ait) se podrn encontrar ms detalles sobre l. Su ubicacin actual es Guatire,Miranda, Venezuela y es inventor. Escribi este artculo el 12 de Noviembre de 2002.

    6.2. Sobre la traduccin al espaol

    La traduccin al espaol de este documento fue llevada a cabo por Sebastin Gurin (Cancerbero) a quiense lo puede encontrar mandndole un correo electrnico a su direccin (mailto:[email protected]).

    Como todo trabajo humano, la traduccin debe tener errores, por lo que el traductor ruega recibircomentarios, sugerencias, retos, etc, de los lectores hispanoparlantes que lean este documento.

    Notas1. WYSIWYG son las siglas de What You See Is What You Get (Lo que ves es lo que obtienes).

    Esto hace referencia a la filosofa de editores de textos como MS-Word, Word Perfect, Kword, oWriter de OpenOffice, en los que el usuario debe preocuparse por la apariencia y estructuracin delformato del documento.

    2. De aqu en adelante se traducir major mode y minor mode al espaol como modo principal ymodo secundario, respectivamente. Nota del Traductor.

    3. del trmino schemes. Nota del Traductor.

    4. traduccin de tags al espaol.

    5. http://articles.linuxguru.net/view/202#FTN.AEN17(http://articles.linuxguru.net/view/202#FTN.AEN17)

    6. No olvidemos otro problema bastante grave de los formatos binarios como .doc, especialmentegrave en nuestros das de correo electrnico. Un archivo binario puede traer embebidas en su cdigoalgunas sentencias que pueden ser ejecutadas sin que el usuario se d cuenta. Esto puede serutilizado con malas intenciones (especialmente en los sistemas operativos Windows): haytestimonios de contaminacin de virus informticos a travs de archivos binarios como los de Office.Actualmente, los antivirus traen opciones para verificar esta clase de documentos antes de abrirlos.Nota del Traductor.

    7. creo que dicha razn toma en este caso el nombre de publicidad. Nota del Traductor-Comentarista ;-)8. Se han traducido Text Processing y Word Processing al espaol como Formateo de Textos y

    Procesamiento de Textos respectivamente. Aunque no parezcan las traducciones correctas, existeuna diferencia sutil entre ambos conceptos en ingls: Word Processing hace referencia a editoresWYSIWYG como MS Word mientras que Text Processing hace referencia a la edicin dedocumentos en formatos estructurados, p.ej: SGML-Docbook. Sin embargo, empresas comoMicrosoft han traducido Word Processing como Procesadores de Textos. As, si usramos lastraducciones literales de dichos trminos causaramos no poca confusin en los lectores.

    9. http://xml.coverpages.org/general.html#faq (http://xml.coverpages.org/general.html#faq) es un buenenlace en donde se detalla la historia de SGML.

    20

  • Edicin Estructurada en Emacs

    10. http://articles.linuxguru.net/view/202#FTN.AEN74(http://articles.linuxguru.net/view/202#FTN.AEN74)

    11. La sutil precisin de la oracin tiene como propsito impedir en este documento la confrontacinLinux vs. GNU/Linux.

    12. El lector debe notar que este artculo no es una gua paso-a-paso sobre el uso de Emacs. Hay muchainformacin escrita sobre esto. Este artculo se enfocar en el uso del modo principal PSGML y elDTD Docbook. De todos modos se har una resea paso-a-paso sobre el conocimiento mnimonecesario para que un principiante pueda manejarse en este documento. El resto debera serinvestigado por el lector.

    13. que es la traduccin al espaol de Syntax Highlighting. Nota del traductor.

    14. XCF - Formato Nativo de Gimp.

    15. que vendra a ser como un acrnimo de IDentificador.

    21

    1. Introduccin2. La Fantasa de los Procesadores de Texto3. El Mundo del Formateo de Textos3.1. Por qu SGML?3.2. Breve vistazo a SGML

    4. SGML usando Emacs4.1. Requisitos del Sistema4.2. Hola Mundo4.3. Primer Paso: La declaracin del Documento4.4. Empezar a usar PSGML4.5. Gran introduccin, pero Emacs sigue sin gustarme demasiado...4.5.1. Colores de las Fuentes4.5.2. Quiero ver lo que estoy seleccionando!4.5.3. Dios mo! Cmo hago para desactivar el estpido ajuste de lnea?4.5.4. Guardando nuestras personalizaciones.

    5. Ms all de Hola Mundo5.1. Dividir nuestros documentos en diferentes archivos.5.2. Validar nuestros documentos5.2.1. Validar un documento simple5.2.2. Validar partes (entidades) de un documento

    5.3. Manteniendo nuestros documentos bonitos5.3.1. La Tecla Tab5.3.2. Sangrar una regin5.3.3. Otros detalles sobre el sangrado

    5.4. Ortografa5.5. Formatos y Grficos5.6. Referencias Cruzadas, Enlaces y URLs5.6.1. XRef5.6.2. URL

    5.7. Otros trucos bonitos5.7.1. Etiquetado no planeado5.7.2. Parmetros de las Etiquetas

    6. Sobre este artculo6.1. Sobre el autor6.2. Sobre la traduccin al espaol


Top Related