Logotipos (\TeX, etc.)

El cuerpo del comando de logo \TeX de LaTeX cabe en una línea: T\kern-.1667em\lower.5ex\hbox{E}\kern-.125emX\@. Póngala junto al original que Knuth escribió en plain.tex y verá que la versión de LaTeX tiene exactamente un token más al final, \@ — y ese único token ensancha en 1,11pt el espacio tras «…compuesto en TeX. La frase siguiente». Los comandos de logo no son adorno, sino la acumulación de decisiones diminutas como esa. Esta página examina cómo se construyen realmente \TeX, \LaTeX y \LaTeXe, qué hace falta para obtener \XeTeX o \BibTeX, y qué escribir en los tres lugares donde los logos se rompen: títulos, marcadores de PDF y archivos .bib — con la salida realmente obtenida en cada prueba.

Cómo se construyen los logos: kerns, una E bajada y una A elevada

\TeX es una «T», una «E» bajada y una «X» acercadas mediante kerns negativos, y las cifras delatan la intención. Entre la T y la E hay −0,1667em —exactamente un sexto de cuadratín, lo mismo que un espacio fino en matemáticas—, entre la E y la X −0,125em (un octavo de cuadratín), y la E desciende 0,5ex. Lo curioso es que todo ese apretamiento no estrecha el resultado. Medido en Computer Modern de 10pt, un «TeX» tecleado sin más ocupa 18,33334pt, mientras que \TeX da 18,6108pt — levemente más ancho. Bajar la E cambia cómo encajan las formas vecinas, lo que revela que \TeX es un comando que fabrica una forma, no uno que ahorra espacio. \LaTeX, en cambio, sí aprieta de verdad: 25,66368pt frente a los 29,58337pt de un «LaTeX» tecleado, en torno a un 13 % menos.

latex.ltx
% The three logos LaTeX itself defines (latex.ltx, lines 7648-7661).
\DeclareRobustCommand\TeX{T\kern-.1667em\lower.5ex\hbox{E}\kern-.125emX\@}
\DeclareRobustCommand{\LaTeX}{L\kern-.36em%
        {\sbox\z@ T%
         \vbox to\ht\z@{\hbox{...\fontsize\sf@size\z@ ... A}\vss}}%
        \kern-.15em\TeX}
\DeclareRobustCommand{\LaTeXe}{\mbox{\m@th
  \if b\expandafter\@car\f@series\@nil\boldmath\fi
  \LaTeX\kern.15em2$_{\textstyle\varepsilon}$}}

\LaTeX prolonga la misma idea: antes de \TeX coloca una A pequeña elevada para formar «La» y luego enlaza con el logo de TeX. Esa A no es un carácter aparte, sino una A en cuerpo de nota (\sf@size) alineada arriba dentro de una \vbox exactamente tan alta como una T — es decir, la instrucción de alinear la cima de la A con la de la T. El kern profundo de −0,36em entre la L y la A produce ese solapamiento característico. \LaTeXe añade después un 2 y un \varepsilon compuesto como subíndice matemático; si mira de cerca $_{\textstyle\varepsilon}$, verá que la épsilon viene del modo matemático, de ahí que su forma siga a la fuente matemática y no a la del texto. Y que el logo se ponga en negrita dentro de un título en negrita se debe a que \LaTeXe inspecciona la serie de la fuente y cambia a \boldmath.

Solo tres logos vienen con LaTeX: ni XeTeX ni BibTeX

LaTeX básico define exactamente tres comandos de logo: \TeX, \LaTeX y \LaTeXe. \XeTeX, \LuaTeX, \pdfTeX, \BibTeX y \ConTeXt no están entre ellos. Si los escribe tal cual obtendrá ! Undefined control sequence., así que hay que cargar un paquete. Conviene conocer dos excepciones. Cargar amsmath, que casi todo documento matemático carga de todos modos, aporta \AmS, y \AmS-\LaTeX produce la marca «AMS-LaTeX». Y para METAFONT y METAPOST la respuesta estándar es \MF y \MP del paquete mflogo — se componen con una fuente de logos específica, de modo que ninguna otra vía da las formas correctas.

En caso de duda, use hologo — y la razón decisiva no es el tamaño de su colección, sino que no se rompe en los marcadores del PDF, algo que una sección posterior mide. hologo (v1.15, con fecha 16-11-2021, en TeX Live 2024) no añade un enjambre de comandos individuales: lo reúne todo en un solo comando que recibe el nombre del logo como argumento, como \hologo{XeTeX}. Su propia línea de descripción lo presenta como una colección de logos con soporte de marcadores, que es justamente la clave. Conoce alrededor de cincuenta nombres, de modo que \hologo{pdfTeX}, \hologo{LuaTeX}, \hologo{BibTeX}, \hologo{ConTeXt}, \hologo{KOMAScript}, \hologo{LaTeX3} y \hologo{biber} funcionan todos. Para poner mayúscula inicial al empezar una frase se usa \Hologo{...}; \Hologo{pdfLaTeX} compone «PdfLaTeX».

El truco está en que un nombre desconocido falla sin más. \hologo{pTeX} y \hologo{pLaTeX}, familiares en el ámbito japonés, no están registrados en el hologo que acompaña a TeX Live 2024, y producen el error ! Package hologo Error: Unknown logo. Cuando pTeX, upTeX, pLaTeX o upLaTeX aparecen en la prosa, lo práctico es dejar de buscar un comando de logo y teclear las letras. metalogo (v0.12, de 2010) sigue el camino opuesto: define \XeTeX, \XeLaTeX, \LuaTeX y \LuaLaTeX como comandos individuales y, a cambio, permite ajustar kerns y descensos par por par con \setlogokern{Te}{...} y \setlogodrop{...}. Si necesita reajustar un logo a la fuente en uso —está en XeLaTeX con una fuente del sistema, pongamos, y la A de \LaTeX queda mal—, esta es la única herramienta. Tenga en cuenta que hologo solo expone \hologo y \Hologo, así que cargarlo junto a metalogo no provoca choques de nombres (comprobado en pdfLaTeX y XeLaTeX de TeX Live 2024). Aun así, conviene quedarse con uno para mantener una presentación uniforme.

latex
\usepackage{hologo}    % \hologo{...} and \Hologo{...}
% \usepackage{metalogo} % \XeTeX, \LuaTeX + \setlogokern for fine tuning
% \usepackage{mflogo}   % \MF and \MP

\hologo{pdfTeX}, \hologo{XeTeX} and \hologo{LuaTeX} succeed \hologo{TeX}.
\hologo{BibTeX} builds the bibliography; \hologo{ConTeXt} is a rival format.
\Hologo{pdfLaTeX} starts a sentence with a capital.
% \hologo{pTeX} is NOT defined: "Unknown logo" error. Type pTeX instead.
ComandoResultadoPaquete necesario
\TeXTeX, con la E bajada 0,5exLaTeX básico (ninguno)
\LaTeXLaTeX, con la A pequeña alineada a la cima de la TLaTeX básico (ninguno)
\LaTeXeLaTeX2ε; la ε es un subíndice matemático y sigue la fuente matemáticaLaTeX básico (ninguno)
\AmSAMS; \AmS-\LaTeX da AMS-LaTeXamsmath / amstex
\hologo{XeTeX}XeTeX con su E invertida; seguro también en marcadoreshologo
\hologo{BibTeX}BibTeX; también existen \hologo{biber} y \hologo{BibTeX8}hologo
\hologo{ConTeXt}ConTeXt; \hologo{LuaTeX}, \hologo{pdfTeX} y \hologo{KOMAScript} funcionan igualhologo
\XeTeXXeTeX, ajustable con \setlogokern — pero se rompe en los marcadoresmetalogo
\LuaLaTeXLuaLaTeX; \XeLaTeX y \LuaTeX vienen del mismo paquetemetalogo
\MF / \MPMETAFONT / METAPOST, compuestos con una fuente de logos específicamflogo

De qué está hecha realmente la E invertida del logo XeTeX

La respuesta depende del motor. Tanto hologo como metalogo preguntan primero si la fuente en uso tiene U+018E (LATIN CAPITAL LETTER REVERSED E, Ǝ); si la tiene, emplean ese carácter sin más, y si no, reflejan una E corriente con \reflectbox de graphicx. La misma fuente produce, pues, sustancias distintas. Componga en TeX Live 2024 un documento que contenga solo \hologo{XeTeX} y extraiga el texto del PDF resultante con pdftotext: bajo XeLaTeX obtendrá XƎTEX y bajo pdfLaTeX, XETEX. En el primer caso hay una Ǝ genuina como carácter, que sobrevive al copiar y pegar; en el segundo solo hay una E colocada en espejo, de modo que la capa de texto guarda una E normal. Idénticos en la página, distintos al buscar o copiar.

¿Y cuando tampoco hay \reflectbox? hologo no se rinde: busca un sustituto en el orden graphicxpgfpstricks → su propio código específico del controlador. Si no aparece ninguno, emite un aviso diciendo que el logo needs driver specific macros, but driver ... is not supported y luego compone una e corriente y sigue adelante. La página muestra simplemente «XeTeX» y el documento termina — un fallo fácil de pasar por alto precisamente porque nada se detiene. El pdfLaTeX y el XeLaTeX habituales nunca caen por esa vía, así que no hay de qué preocuparse; pero si usa un controlador poco común y el logo se ve extrañamente simple, busque ese aviso en el registro.

Títulos, marcadores PDF y .bib: los tres lugares donde los logos se rompen

Los títulos van bien, los marcadores dependen del paquete y los .bib piden cuidado — esa es la conclusión. Primero los títulos: \TeX y \LaTeX están definidos con \DeclareRobustCommand, así que sobreviven a ser escritos en un índice o en un titulillo. (Las viejas historias de terror sobre argumentos móviles son anteriores a esa protección.) Donde la cosa se tuerce es en los marcadores. Cuando hyperref construye la cadena de un marcador PDF debe descartar todo comando de composición. En TeX Live 2024, \section{Using \XeTeX{} today} con metalogo llena el registro de Package hyperref Warning: Token not allowed in a PDF string (Unicode): removing \reflectbox on input line 5., y el marcador resultante dice «Using X0.5ex0.5exE0.5exTeX today» — las cotas se han filtrado directamente en la cadena. Escriba el mismo título con \hologo{XeTeX} y no habrá ni un aviso; el marcador dice «Using XeTeX today». hologo lleva para cada logo una forma aparte destinada a las cadenas PDF, y ahí está el motivo del «en caso de duda, hologo».

Un archivo .bib se rompe de otra manera. Muchos estilos de BibTeX reformatean las mayúsculas de los títulos, lo que significa que pasan mecánicamente a minúscula todo lo que no esté protegido por llaves — comandos de logo incluidos. Escriba title = {Typesetting With \LaTeX and \TeX}, páselo por plain.bst y el .bbl generado contendrá Typesetting with \latex and \tex.; la siguiente compilación se detiene con ! Undefined control sequence. El remedio es trivial: envuelva el comando de logo en llaves. title = {Typesetting With {\LaTeX} and {\TeX}} atraviesa el .bbl intacto. Es el mismo hábito que proteger una sigla como {DNA}. Y recuerde los lugares donde un logo está sencillamente fuera de sitio: nombres de archivo, URL, dentro de \verb, metadatos del PDF como pdftitle y cualquier descripción de una línea de comandos. Ahí lo correcto es la palabra «LaTeX» sin adornos, y un comando de logo resulta inútil o incluso dañino.

refs.bib
% Wrong: plain.bst lower-cases it to \latex, then LaTeX stops with
%   ! Undefined control sequence.
title = {Typesetting With \LaTeX and \TeX}

% Right: braces protect the command from BibTeX case changing
title = {Typesetting With {\LaTeX} and {\TeX}}

El espacio devorado: por qué «LaTeX is» sale como «LATEXis»

Escriba \LaTeX is great. y la salida será LATEXis great. — el logo pegado a la palabra siguiente. (Esa es la cadena real extraída con pdftotext de un PDF compuesto en TeX Live 2024.) La causa no tiene nada que ver con los logos: es la regla de tokenización de TeX según la cual un comando escrito con letras absorbe el espacio que marca el final de su nombre. Por qué existe esa regla corresponde a la página de sintaxis básica. Hay dos remedios: poner llaves vacías {} justo tras el comando, o insertar una barra invertida más espacio \ (un espacio de control). En ambos casos la salida pasa a ser LATEX is great. Si a continuación viene una coma o un punto, no hay espacio que devorar, así que \LaTeX, \TeX. no necesita nada. Hay quien deja que el paquete xspace restituya el espacio automáticamente, pero se equivoca en ciertos casos; ser explícito primero con {} o \ sigue siendo el hábito fiable.

latex
% Bad: the space is eaten, giving "LATEXis great."
\LaTeX is great.
% Good: empty braces end the command name
\LaTeX{} is great.
% Good: a control space
\LaTeX\ is great.
% No space to eat before punctuation, so this needs nothing
\LaTeX, \TeX.
% In maths, step back into text mode first
$x = \text{\LaTeX}$

Un último punto: los comandos de logo pertenecen al modo texto. \TeX está ensamblado a partir de \lower y \hbox, así que meterlo tal cual en modo matemático ($...$) es buscarse problemas; conviene volver antes al texto con el \text{} de amsmath, como en $x = \text{\LaTeX}$. \LaTeXe va aún más lejos: su definición está envuelta en una \mbox y entra internamente en modo matemático para poner la épsilon como subíndice. Un comportamiento desconcertante mientras uno piensa en un comando de logo como en una cadena de texto se vuelve previsible en cuanto se sabe que es una combinación de cajas subidas y bajadas (el equivalente de usuario es \raisebox), kerns y un subíndice matemático: entonces puede adivinarse de antemano dónde se romperá.