Qué son TeX y LaTeX

TeX existe por culpa de un juego de galeradas decepcionantes. En la primavera de 1977 Donald Knuth abrió las galeradas de la segunda edición del volumen 2 de su propio The Art of Computer Programming y quedó consternado: su editorial había pasado del plomo a la fotocomposición y las fórmulas —lo que más le importaba— habían salido feas. Se puso a escribir él mismo un sistema de composición, calculando unos pocos meses. Le llevó diez años. Ese sistema es TeX. LaTeX no es ni sucesor ni rival de TeX: es un paquete de macros que se ejecuta sobre un motor TeX, es decir, un conjunto enorme de órdenes escritas en el propio lenguaje de TeX. Esta página explica qué es realmente cada uno, por qué se escribe estructura en lugar de apariencia y —sin vender humo— a quién le conviene LaTeX y a quién no.

Qué es TeX: un motor de composición nacido de unas galeradas

TeX es un programa que lee un archivo de texto con órdenes dentro y calcula, con una precisión de fracciones de punto, dónde va cada carácter y cada filete en la página. La composición tipográfica es originalmente un término de imprenta —ir tomando tipos de plomo uno a uno hasta formar la forma de impresión— y TeX asume ese trabajo en el ordenador. Su autor es Donald Knuth, informático de Stanford. Su primera nota de diseño, escrita en mayo de 1977, se conserva con el nombre TEXDR.AFT y más tarde se reeditó como capítulo de su libro Digital Typography. La primera versión funcional data de 1978.

Como el objetivo de Knuth era componer bien las fórmulas, cada detalle de TeX resulta obsesivo. Hace partición de palabras con guiones, interletraje de pares como AV y To, ligaduras que funden fi y fl en un solo glifo y control de líneas viudas y huérfanas para que la primera o la última línea de un párrafo no quede sola en otra página, todo ello sin que se lo pidan. El corte de líneas, sobre todo, no llena una línea cada vez: TeX mira el párrafo completo y elige el conjunto de cortes de coste total mínimo, y por eso añadir un carácter al final de un párrafo puede cambiar dónde se corta la primera línea. Esa minuciosidad explica que la edición académica siga funcionando sobre TeX.

Un último dato retrata el carácter de TeX. Sus números de versión están pensados para converger a π: cada entrega añade un decimal más, y el TeX que viene en TeX Live 2024 se presenta como 3.141592653. Knuth ha declarado que a su muerte la versión quedará congelada en π y que cualquier cambio posterior deberá considerarse un error. Su programa hermano, el sistema de fuentes Metafont, converge del mismo modo a e, la base de los logaritmos naturales. Una broma sobre numeración de versiones sostenida en serio durante más de cuarenta años.

terminal
$ tex --version
TeX 3.141592653 (TeX Live 2024)
kpathsea version 6.4.0

Cómo se pronuncian «TeX» y «LaTeX»

La X final no es la letra latina sino la χ (ji) griega. TeX son las tres primeras letras del griego τέχνη (technē, oficio o arte), y Knuth escribe que debe pronunciarse con la ch del alemán ach o del escocés loch. Los angloparlantes acaban cerca de «tech» y en Japón el nombre se lee además, desde hace mucho, «tef». Para LaTeX conviven «LAY-tech», «LAH-tech» y «LAY-teks», y nunca se ha zanjado cuál es la correcta. No guarda relación con el material látex. El logotipo con sus letras subidas y bajadas procede del mismo origen; escribir \LaTeX en el texto lo compone.

Qué es LaTeX: un paquete de macros, no un programa aparte

LaTeX no es un programa distinto de TeX. TeX cuenta con un mecanismo de macros —una forma de definir órdenes nuevas a partir de las existentes— y LaTeX es un cuerpo enorme de órdenes escrito únicamente con ese mecanismo. Al ejecutar pdflatex no se lanza «el ejecutable LaTeX», sino un motor TeX en el que se ha precargado todo el juego de órdenes de LaTeX. Equivocarse en esto es lo que vuelve confusas más adelante las palabras «motor» y «formato». En una instalación de TeX Live incluso puede comprobarse que latex y pdflatex apuntan al mismo ejecutable, pero esa demostración corresponde a las páginas sobre el TeX clásico y sobre LaTeX como formato.

Quien escribió esas macros es Leslie Lamport, el informático conocido más tarde por sus trabajos sobre sistemas distribuidos. A comienzos de los años ochenta, mientras estaba en SRI International, reunió un juego de macros de TeX para sus propios documentos y lo publicó: eso fue LaTeX. Cerró su propia etapa con LaTeX 2.09 en 1985 y al año siguiente, en 1986, publicó el manual LaTeX: A Document Preparation System en Addison-Wesley. El «La» del nombre es el La de Lamport.

Lo que hoy se entiende por «LaTeX» es casi con seguridad LaTeX2e, publicado el 1 de junio de 1994 por el equipo del LaTeX Project en torno a Frank Mittelbach. El motivo está dicho con claridad en la fuente primaria, el número 1 de LaTeX News: los derivados de LaTeX 2.09 se habían multiplicado hasta obligar a cada sitio a mantener a la vez LaTeX con y sin NFSS, además de SLiTeX y AmSLaTeX, de modo que se los volvió a reunir bajo un único formato. Fue entonces cuando la primera línea de un documento pasó de \documentstyle a \documentclass. La orden que todo el mundo teclea primero es, de hecho, producto de aquella unificación de 1994. El largo esfuerzo de LaTeX3 nunca llegó a ser un producto aparte: desde 2018 se distribuye dentro del núcleo de LaTeX2e como la capa de programación expl3, sobre la que se escribe la mayoría de los paquetes modernos.

Escribir significado en vez de apariencia: la ruptura real con el procesador de textos

En un documento LaTeX no se escribe «14 puntos en negrita, 3,5 líneas de espacio arriba» para hacer un título. Se escribe \section{Introduction}: solo el hecho de que eso es un título de sección. Los cuerpos y los espacios viven en el archivo de clase. En article.cls de TeX Live 2024, la línea 302 dice \@startsection{section}{1}{\z@}{-3.5ex ...}{2.3ex ...}{\normalfont\Large\bfseries}: 3,5ex de espacio arriba, 2,3ex abajo, compuesto en \Large y negrita. Esos números no aparecen nunca en su original. Por eso basta con cambiar article por la clase que facilita una revista para que todos los títulos obedezcan sus normas sin tocar el texto. Es exactamente la separación entre HTML y CSS en la web.

latex
\documentclass{article}
\begin{document}
\section{Introduction}
The body says what the text \emph{is}, never how it should look.
\[ E = mc^2 \]
\end{document}

Esta división del trabajo rinde en cuanto el documento se alarga. Nunca se teclea un número: basta con poner \label y \ref para que «véase la figura 3.2» y su página se rellenen solos, y si una figura insertada desplaza toda la numeración, se corrige sola. El índice general, el alfabético y la bibliografía se generan igual. Dicho al revés: en cuanto uno empieza a poner un título en negrita a mano o a teclear un número, ha renunciado justo a aquello en lo que LaTeX es mejor. Hay un precio, eso sí. No se ve el resultado mientras se escribe. Escribir, compilar, mirar el PDF: ese bucle es el ritmo de trabajo de LaTeX y, hasta que se convierte en costumbre, se siente claramente más lento que un procesador de textos.

Diferencias entre TeX, LaTeX, pdfLaTeX, upLaTeX y LuaLaTeX

Los nombres se multiplican porque son el producto de dos cosas: el motor (el programa que hace el trabajo) y el formato (el sistema de órdenes). Motores: TeX, pdfTeX, XeTeX, LuaTeX y pTeX/upTeX; formatos: plain TeX, LaTeX y ConTeXt. pdflatex es «motor pdfTeX más formato LaTeX», uplatex es «motor upTeX más formato LaTeX»: los nombres son literalmente esa multiplicación. LaTeX sobre los motores japoneses pTeX y upTeX se llama pLaTeX y upLaTeX respectivamente. Qué motor elegir es una cuestión práctica que responde a fondo la página sobre la elección de motor; como orientación rápida: pdflatex para texto sobre todo en inglés, lualatex o xelatex si se quieren usar las fuentes ya instaladas y uplatex o lualatex para japonés.

NombreQué es realmenteDónde encaja
texEl motor de Knuth en sí, con el formato plain TeXPara entender la maquinaria; no para escribir a diario
latexEl formato LaTeX, con salida DVILa ruta clásica por DVI; también la base del flujo japonés
pdflatexMotor pdfTeX más LaTeX; escribe PDF directamenteLa opción por defecto para escritura latina y la más probada
uplatexMotor upTeX más LaTeX; escribe DVIEl estándar para artículos en japonés; sólido en escritura vertical y reglas japonesas de corte
xelatexMotor XeTeX más LaTeX; Unicode y fuentes del sistemaCuando se quiere indicar una fuente OpenType por su nombre
lualatexMotor LuaTeX más LaTeX; ampliable desde dentro con LuaPor donde empezar hoy; el japonés mediante luatexja

Para quién es LaTeX y para quién no

En una frase: LaTeX gana en la medida en que un documento es largo, estructurado y muy revisado. Muchas fórmulas, una jerarquía profunda, decenas de figuras y referencias, un formato distinto para cada revista, coautores que leen diffs en Git: cuantas más de esas condiciones se den, más rinde la automatización. En física, matemáticas e informática es de hecho el estándar: el servidor de preprints arXiv pide las fuentes en LaTeX y Wikipedia escribe sus fórmulas en notación LaTeX.

El reverso: hay trabajos en los que LaTeX claramente no compensa. Todo lo que consista en colocar elementos en posiciones arbitrarias —un folleto de una página, un póster— es más rápido y más previsible en un programa de maquetación. Si los coautores solo usan Word, el coste de las conversiones se come la ganancia de la automatización. Y si la entrega es mañana y nunca se ha usado LaTeX, escríbalo hoy en Word: esto se aprende en días, y esos días no se pagan con tiempo prestado. Decir «con LaTeX el documento quedará bonito» no es exacto. Lo exacto es: escriba bien la estructura y quedará libre del trabajo de dar formato.

  • Si el documento está lleno de fórmulas, tire de LaTeX sin darle muchas vueltas. Ninguna otra herramienta compone así las ecuaciones.
  • Si la revista publica un archivo de clase de LaTeX, úselo. Toda la discusión sobre el formato desaparece.
  • Si el documento va a crecer con coautores durante años, el texto plano se gana su sitio. Los diffs se leen en Git y el archivo seguirá abriéndose dentro de diez años.
  • Si el objetivo es maquetar una sola página, use otra herramienta sin remordimientos. Colocar cosas en coordenadas elegidas es lo que peor hace LaTeX.
  • Para probarlo sin más, ejecútelo en el navegador en lugar de instalar nada. Rendirse durante la instalación es la peor forma de renunciar a LaTeX.

Por último, las razones prácticas de que TeX lleve más de cuarenta años en pie. Es libre y de código abierto: se puede leer, modificar y explotar comercialmente. La entrada es texto plano en un archivo .tex, así que sirve cualquier editor, grep la busca, un guion la genera y Git la compara. En CTAN, la Comprehensive TeX Archive Network, hay miles de extensiones: a la pregunta «¿sabe hacer esto?» casi siempre le ha respondido ya alguien. Y la misma entrada da la misma salida: en Windows, macOS o Linux, y a partir de un archivo escrito hace diez años. Allí donde la reproducibilidad es un requisito —investigación, registros oficiales— esa propiedad es difícil de sustituir. Ahora, a fabricar una página de verdad.