CervanTeX

CervanTeX

Grupo de Usuarios de TeX  Hispanohablantes

Inscrito en el registro de asociaciones el 24.03.99

¿Qué es TeX? ¿Y LaTeX?

Esta página es un extracto de otra realizada por Antonio González, de la Universidad de Sevilla. Puedes también consultar la original


Contenidos


¿Que es TeX? ¿Y LaTeX?

Introducción

TeX (pronúnciese "tek") es el más potente de los procesadores de textos encaminados a documentos científicos, si bien puede usarse para cualquier tipo de documento. LaTeX (y su sucesor LaTeX2e) es un lenguaje estructurado construido a partir de TeX, para la elaboración de documentos tales como artículos, libros, boletines de problemas, boletines de prácticas... Como ejemplos tenemos el manual de Campos Electromagnéticos de este departamento, la revista Physical Review, etc

La diferencia esencial entre TeX y otros programas, como WordPerfect, es que no es un procesador WYSIWYG ("What you see is what you get"). Ello quiere decir que un documento en TeX debe ser escrito en forma de fichero fuente y posteriormente compilado. Esto, que en principio puede parecer un inconveniente, puede tornarse en una de sus grandes ventajas, como veremos más tarde. En este aspecto, es similar al lenguaje HTML en que está escrita esta página (pero muchísimo más complejo).

Una de las razones de la difusión del LaTeX es que es gratis. Tal como ocurre con el Linux, el LaTeX es freeware. Esto quiere decir que puede conseguirse libre y legalmente haciendo un ftp anónimo a las direcciones apropiadas (que indico más tarde). Esto permite además estar siempre a la última (ya que aparece una vesrión nueva cada seis meses), y es lo que ha facilitado que su desarrollo haya sido realizado por personas a todo lo largo del mundo.

Un poco de historia

La primera versión de TeX, obra de Donald E. Knuth (DEK), nacio a principios de los años ochenta. En su nivel más básico, estaba constituido por un conjunto de órdenes (o primitivas) del tipo "centrar texto", "dejar un espacio vertical", etc. El uso de un lenguaje de tan bajo nivel, si bien muy potente, era extremadamente dificil, por lo que el mismo DEK desarrolló la primera ampliación de TeX, el Plain TeX.

La primera gran ventaja de TeX es que es extremadamente fácil definir macros a partir de las primitivas (o de otras macros). A un conjunto estructurado de macros se le denomina un formato. El Plain TeX fue el primero de ellos. Introducía gran número de órdenes de alto nivel, pero seguía estando más orientado a aspectos tipográficos que a la estructura de los documentos como un todo.

Por ello, en 1985, Leslie Lamport desarrolló un lenguaje construido sobre el Plain TeX (el cual lo estaba sobre el TeX), que recibió el nombre de LaTeX (el nombre, propicio a chistes de dudoso gusto, deriva de La de Lamport y TeX). Consiste en una serie de macros y formatos dirigidos a confeccionar documentos completos (articulos o libros) y así presta especial atención a aspectos tales como estructura en secciones, subsecciones, etc., control de numeración de ecuaciones y referencias cruzadas, citas bibliográficas, tablas y figuras, índices,... conservando toda la potencia a la hora de escribir ecuaciones de gran calidad.

Desde su aparición, LaTeX ha conocido una gran difusión en el ámbito científico, siendo hoy día el procesador más usado por matemáticos y físicos y gran número de ingenieros. Hoy día hay libros y revistas científicas escritas en LaTeX. LaTeX es tan programable como TeX y por ello ha estado sujeto a desarrollos ulteriores. Estos desarrollos no siempre han sido compatibles entre así, ya que fueron realizados independientemente por individuos en todo el mundo. Para armonizar estos avances se creó el equipo LaTeX3 con el objeto de desarrollar una versión de LaTeX que englobara a las existentes y permitiera un crecimiento uniforme en el futuro.

El primer resultado de sus trabajos es el llamado LaTeX2e, nacido en Junio de 1994 y aceptado actualmente como el nuevo estándar mundial. LaTeX2e contiene a todo lo anterior y experimenta un crecimiento continuo, publicándose una versión cada seis meses.

El futuro del LaTeX depende no sólo de si mismo sino también de los avances en otros procesadores, en la medida en que estos incorporen las herramientas y la flexibilidad de este procesador, podrán sustituirlo. Dada la desatención de las grandes compañías a la comunidad científica internacional, parece que el futuro del LaTeX es todavía prometedor. Aparte de por una gran ventaja que lo distingue de AmiPro, Word o WordPerfect. El LaTeX es freeware.

Algunos ejemplos

Un documento simple

Para ver como funciona la cosa, consideremos el documento hola.tex siguiente

 
\documentclass{article} 
\begin{document} 
  Hola, mundo. 
\end{document} 

Este fichero contiene, en primer lugar un encabezamiento, que lo define como un documento en LaTeX2e en formato "article" (que es el más simple). Despues vendría el preámbulo (que aquí está vacio) que contiene cosas tales como el tamaño de la página. Sigue la linea \begin{document}, que marca el principio del texto. Luego el texto en sí y luego el fin del documento. Todo lo que haya más allá es ignorado.

Este fichero hola.tex debe ser compilado, generándose un fichero hola.dvi, que puede ser visto por pantalla (un preview) o mandado a la impresora, si se dispone de los drivers correspondientes.

Un ejemplo de ecuación con referencia

Veamos un ejemplo más complicado, que muestra algunas de las características del LaTeX

 
\documentstyle[11pt]{article} 
\begin{document} 
La fórmula de Cauchy establece que 
\begin{equation} 
f(z)=\frac{1}{2\pi i}\oint \frac{f(\zeta)}{z-\zeta}d\zeta 
\label{cauchy} 
\end{equation} 
La fórmula (\ref{cauchy}) es aplicable a cualquier función analítica. 
\end{document} 

Una vez procesado este fichero, el resultado es el siguiente:

Aqui debería ir una imagen

Como comparación, puede verse este mismo texto, tal como se obtiene con otro procesador

Aqui debería ir una imagen

Es evidente que la calidad de la ecuación escrita con LaTeX es superior a la del otro procesador, pero el fichero que la produce resulta un tanto misterioso.

Este fichero es una muestra de las características típicas del LaTeX. Las ecuaciones no se escriben en forma gráfica, simplemente se indica dónde comienzan y donde acaban. A su vez, el contenido de la ecuación está formado por una serie de comandos, p.ej. \pi y \zeta producen letras griegas, \oint produce el signo de integral cerrada. Algunos de estos comandos admiten argumentos, así \frac{ }{ } produce una fracción, siendo el primer argumento el numerador y el segundo el denominador.

El ejemplo ilustra otra propiedad interesante: las referencias cruzadas. La ecuación anterior contiene una etiqueta (fijada por el comando \label), de forma que cuando posteriormente uno cita a la misma, solo debe indicar su nombre. El procesador se encarga de asignar el número y modificarlo si es necesario (porque en una redacción posterior se haya insertado o suprimido una ecuación anterior).

Otra propiedad es que el significado de los comandos es dependiente del formato elegido. Supongamos que inicialmente se pensaba escribir un artículo, pero posteriormente se ha decidido transformarlo en un libro. Simplemente hay que cambiar la palabra article de la cabecera por book. El solito se encarga de cambiar la numeración de (1) a (1.1) (suponiendo que la misma aparezca en el capítulo 1.


Me interesa, ¿dónde puedo conseguirlo?

Por ser gratis, siempre puedes pedirselo a alguien que ya lo tenga (y no estarás cometiendo un delito), pero si te interesa una versión completa y actualizada, lo mejor es realizar un ftp anónimo al sitio adecuado.

Los archivos de TeX y LaTeX se encuentran en la llamada CTAN (Comprehensive TeX Archive Network), que es un conjunto de ordenadores repartidos por todo el mundo. De estos, tres son los nodos principales

El primero de ellos es nuestro nodo local y es el recomendable por su alta velocidad. Existen multitud de mirrors de estos ordenadores, donde se puede encontrar copia de la información, si bien es posible que no contengan la última versión. En España hay una copia en ftp.rediris.es, pero no está al día.

La estructura de un nodo CTAN es siempre la misma. Existe un directorio tex-archive del cual cuelga un árbol de directorios. En particular, existe un directorio systems, del que penden las distintas implementaciones. Existen versiones para

De las primeras no puedo hablar mucho, pues soy usuario de PC's. Para este tipo de ordenador existe una versión bastante extendida que es el emTeX (la "em" deiva de Eberhard Mattes, el autor, que se dedica full-time a este procesador). emTeX contiene, aparte de las ultimas versiones de LaTeX2e, un conjunto de drivers de alta calidad para multitud de impresoras (matriciales, de chorro de tinta o láser). emTeX posee el inconveniente de que no incluye un editor adecuado. Por ello, es conveniente agenciarse (también en CTAN) el llamado TeXshell, diseñado para emTeX. éste es un shell muy parecido al de Borland C para DOS, que permite editar, compilar, hacer un preview o imprimir. Usa asimismo diferentes colores para marcar los textos según se trate de comandos, texto normal, comentarios, etc.

Entre las implementaciones anteriores hay una ausencia notable: Windows (3.1 ó 95). Bien, no es cierto que no haya versiones para Windows, lo que ocurre es que son de pago. Conozco una que es gratis, pero no está adaptada al uso de caracteres acentuados. Sí existen shells, como el dviwin que permiten usar un editor diferente y simultanear la edición con el preview del resultado.


¿Que ventajas tiene frente a otros procesadores?

Ya he comentado algunas, pero aquí intentaré indicar las más importantes:

Alta calidad en la edición de ecuaciones.

Esta es siempre la razón última por la que un usuario científico se inclina hacia el LaTeX. Este procesador ajusta los tamaños de paréntesis, integrales, subíndices y superíndices, alinea los elementos de las matrices, construye cajas, etc.

Permite redactar documentos estructurados.

A través de los llamado formatos, LaTeX posibilita escribir textos dividéndolos en capítulos, secciones, subsecciones, controlando en todo momento la numeración y las referencias cruzadas. Construye índices de contenidos, tablas o figuras. Ajusta los tamaños y tipos de letras según la parte del dodumento en que se hallen.

Facilidad en la construcción de macros y comandos

A poco de comenzar a usar este procesador, el usuario se encuentra definiendo o redefiniendo comandos para que estos se ajusten a sus preferencias personales. Por ejemplo, es posible que una determinada expresión aparezca repetidas veces en el texto. Nada mas facil que definir un comando que reemplace a todo un bloque. O bien, es posible que no guste la forma en que LaTeX numera las páginas. Una redefinición al principio del documento permite cambiar esto.

Se escribe en ASCII

Esto, que al principio puede parecer un inconveniente (ya que implica teclear mucho más) se torna en ventaja al cabo del tiempo. Por un lado permite incrementar la velocidad de escritura (pues no hay que andar tirando de ratón o menús), por otro facilita el uso de cualquier editor de texto (no contiene caracteres de control) y permite su transmisión por correo electrónico (puede escribirse en ASCII de 7 bits). Esto hace que ya algunas revistas científicas admitan artículos escritos en LaTeX, enviados por e-mail. Ellos lo procesan en el lugar de destino, hacen los cambios necesarios y lo imprimen.

Es gratis

Pues eso.


Algún inconveniente tendrá, digo yo.

Por supuesto. Si no fuera así, hoy tendriamos LaTeX en cada ordenador en cada casa. Veamos algunas de las críticas mas habituales.

Es muy dificil

A diferencia de los procesadores visuales, que pueden usarse casi desde el primer día con resultados aceptables, LaTeX requiere un periodo de aprendizaje antes de conseguir los primeros frutos. Incluso cuando ya se es un usuario medio o avanzado, siempre es conveniente tener cerca un manual o un latexperto, al que preguntarle.

Este proceso de iniciación consiste principalmente en aprenderse los comandos esenciales. Despues le siguen comandos secundarios.

Más tarde, puede uno aprender a programar en este lenguaje. Llegado ese punto se da el siguiente salto, atacar el Plain TeX o incluso el TeX, para introducir comandos de bajo nivel. Estas dos ultimas fases sólo son precisas si uno está interesado en los intríngulis del sistema.

Uno no ve los resultados hasta que compila el fichero.

Una de las decepciones que sufre el usuario novato es que no ve los frutos de su trabajo hasta que compila. Como suelen aparecer errores de compilación, esto suele ser frustrante (aparte de conllevar una pérdide de tiempo). La única solución es armarse de paciencia. Con el tiempo, los errores disminuyen y, simultáneamente, uno aprende a procesar de cabeza, por lo que no necesita hacer un preview para saber como va a quedar.

De todas formas, LaTeX no está especialmente dirigido a los aspectos estéticos, sino a los estructurales. Si uno está interesado en la estética más que en el fondo (por ejemplo, porque trabaja en la autoedición), LaTeX no es el procesador adecuado. éste se basa en en la claridad más que en la belleza de los documentos.

Existen, no obstante, soluciones intermedias entre el LaTeX y los procesadores WYSIWYG. Así, el TeXtures de los Mac o el dviwin de los PC's permiten mantener en pantalla el fichero que se está editando y el ultimo preview, lo cual facilita la corrección de los documentos.

No permite introducir imágenes.

Esta acusación habitual no es del todo cierta. Poderse, se puede, pero no es algo trivial en LaTeX. A veces, resulta más facil dejar el espacio y luego recortar y pegar. Estos problemas se solucionan usando los drivers para salidas postscript y figuras del mismo tipo.

No tiene variedad de fuentes

Cuando DEK desarrolló el TeX, lo acompaño de un conjunto completo de fuentes de alta calidad. Estas fuentes eran independientes de la impresora utilizada (ya que eran tratadas como gráficos) lo que producía la misma calidad en cualquier sitio. Con el tiempo, esta fuentes (las Computer Modern o CM) se convirtieron en la "firma" del procesador, que permitía identificar un documento a primera vista. A medida que el LaTeX se difundía han aumentado las demandas de más fuentes para usos diversos. El crecimiento es todavía lento. En las versiones para salidas postscript si es posible el uso de cualquier fuente, pero no se garantiza que las ecuaciones mantengan la calidad requerida.


¿Donde puedo conseguir más información?

Bibliografía

Debido a la difusión limitada de este procesador, no existe (que yo sepa) bibliografía en castellano (salvo quizás apuntes de una determinada Universidad). Si hay en inglés, e incluso los ficheros fuente (escritos en TeX, por supuesto) son accesibles en la Web. Algunos títulos al respecto son:

De todos estos libros (salvo de la segunda edición del de Lamport) dispongo de copia y puedo opinar con conocimiento de causa. Existe bibliografía adicional en cada uno de estos libros, así como en los nodos de la WWW dedicados al TeX.

Existe además una revista dedicada exclusivamente al TeX, el llamado TUGboat, pero nunca la he visto, así que no puedo opinar.

En la WWW

Para empezar, existen unas FAQ's sobre TeX y LaTeX, escritas y mantenidas por el TUG inglés donde se encuentra información de lo más completa y variopinta. Es además searchable, esto es, puede consultarse un término concreto.

También existen una guía muy completa en francés. Contienen informacion sobre comandos, documentacion, FAQ's, etc. aparte de las típicas cuestiones técnicas.

Existe un nodo dedicado especificamente al TeX. Es www.dante.de, el único inconveniente es que está en alemán (algunas páginas también en inglés). En el aparecen datos, bibliografía, direcciones diversas. Un nodo en inglés con abundante informacion es el de la universidad de Cambridge: www.tex.ac.uk . También se puede conseguir información en el otro nodo de CTAN: www.shsu.edu. Pero éste es un nodo general y hay que explorar un poco hasta llegar a la información buscada.

También están las conexiones ftp que indicamos antes

y un nodo gopher

Grupos de discusión (newsgroups)

Además de la información pasiva, existén foros de discusión sobre estos procesadores. En ellos los novatos suelen plantear sus dudas y los latexpertos (a veces el mismo DEK) pueden dignarse a contestarlas. También se discuten las ventajas y defectos de las diferentes versiones, implementaciones, fuentes, etc.

El grupo principal es

Aparte existe un grupo de habla hispana (aunque muy poco utilizado) en

Asociaciones de usuarios

Existen asociaciones de usuarios de TeX (los TUGs o TeX Users Groups) distribuidas por el mundo, en las cuales los miembros se dedican a desarrollar proyectos conjuntos para la difusión y mejora de este procesador (recordemos que sin una empresa que lo respalde, depende exclusivamente de los usuarios).

En la actualidad se está organizando el TUG de habla hispana, el llamado CervanTeX, encaminado, entre otras cosas, a desarrollar la adaptación del TeX a las peculiaridades del castellano (con sus eñes y caracteres acentuados). CervanTeX tiene su propia página, en la que podrás encontrar detalles sobre sus actividades, asi como un link a las FAQ's sobre el uso de TeX en castellano y sus problemas. Tambien indica direcciones de contacto, nodos de interés, etc.

ir al índice de contenidos


quijote.gif

CervanTeX
logo u sevilla
Estadísticas de acceso
según nedstat
desde Mayo de 1999
Visitantes
según CiberStats
desde Noviembre de 1999
CervanTeX
DMA1
U. Sevilla