Saltar al contenido
Topos Uranos

Resumen

Esta clase enseña a declarar los idiomas de un documento y a elegir sus tipografías. Explica qué cambia babel cuando se declara un idioma (la división de palabras, los rótulos, las fechas y las comillas) y distingue las tres maneras de cambiar de idioma: \selectlanguage, \foreignlanguage y el entorno otherlanguage. Aplica lo anterior al griego politónico y al latín, con un pasaje de cada uno. Presenta después fontspec: las tres familias de un documento, \babelfont para asignar una tipografía a cada idioma y los rasgos OpenType más útiles (cifras elzevirianas, versalitas y ligaduras). Enseña a comprobar que una tipografía contenga todos los caracteres del documento, leyendo las advertencias «Missing character» y buscando tipografías con albatross, y explica por qué conviene preferir las tipografías que trae TeX Live cuando el documento debe compilar también en Overleaf. Termina con una mención breve de las escrituras de derecha a izquierda, de las asiáticas y de polyglossia.

Objetivos de aprendizaje

  1. Declarar el idioma principal y los secundarios de un documento con babel, y explicar qué decide cada idioma en el resultado.
  2. Elegir entre \foreignlanguage, otherlanguage y \selectlanguage según lo que deba cambiar, y predecir la fecha, los rótulos y las comillas que resultan.
  3. Componer pasajes en griego politónico y en latín con su división de palabras y una tipografía adecuada.
  4. Asignar tipografías con fontspec y babel, y activar cifras elzevirianas, versalitas y ligaduras.
  5. Verificar que las tipografías elegidas contengan todos los caracteres y estilos que el documento usa, e interpretar las advertencias que indican lo contrario.
  6. Decidir entre una tipografía de TeX Live y una del sistema según dónde deba compilarse el documento.

Qué cambia con el idioma

Las clases anteriores cargaron siempre \usepackage[spanish]{babel} sin detenerse en lo que hace. Ahora bien, un idioma no es solo una lista de letras: tiene sus reglas para dividir las palabras al final de la línea, sus nombres para las partes de un documento, su manera de escribir las fechas y sus comillas. El paquete babel reúne esas convenciones por idioma, y declarar un idioma es pedirle que las aplique. En concreto, el idioma decide:

  • la división de palabras: con qué patrones busca el motor los puntos donde una palabra puede cortarse;
  • los rótulos que LaTeX escribe por sí solo, como el título del índice o el nombre de los cuadros y de las figuras;
  • la fecha que imprime \today, que es la del día de la compilación;
  • ciertas abreviaturas del teclado, como las que el español usa para las comillas, que se verán en esta misma sección.
EjemploLas mismas instrucciones en tres idiomas

Los tres párrafos usan las mismas instrucciones; solo cambia el idioma en que se leen. \tablename, \figurename y \contentsname son los rótulos de los cuadros, de las figuras y del índice.

Código LaTeX
\documentclass{article}\usepackage{fontspec}\usepackage[latin, english, spanish]{babel}\begin{document}Fecha: \today. Rótulos: \tablename, \figurename, \contentsname.​\begin{otherlanguage}{english}Date: \today. Captions: \tablename, \figurename, \contentsname.\end{otherlanguage}​\begin{otherlanguage}{latin}Dies: \today. Tituli: \tablename, \figurename, \contentsname.\end{otherlanguage}\end{document}
Resultado
Resultado

El latín escribe el día y el año en números romanos. Hay que advertir, además, que el español de babel llama «Cuadro» a las tablas: si se prefiere «Tabla», se añade la opción es-tabla, como en \usepackage[es-tabla, spanish]{babel}.

La división de palabras

La división de palabras es el efecto menos visible del idioma y el más importante. Cada idioma corta sus palabras según su propia tradición: el español corta por sílabas, el inglés respeta a menudo la formación de la palabra, como en stand-ing, y el latín, según la tradición que siguen sus patrones, pasa la s seguida de consonante a la línea siguiente. Si un pasaje en otro idioma no se marca, el motor lo divide con los patrones del idioma vigente, y los cortes que propone pueden ser incorrectos en ese idioma.

La instrucción \showhyphens escribe en el registro los puntos de corte que el motor admitiría en las palabras que recibe, sin imprimir nada en el documento. Sirve para comprobar qué patrones rigen en cada lugar.

EjemploLas mismas palabras con patrones distintos

La fuente pide los cortes de dos palabras inglesas y de dos latinas, primero con los patrones del español, que es el idioma principal, y después con los de su propio idioma.

Código LaTeX
\documentclass{article}\usepackage{fontspec}\usepackage[latin, english, spanish]{babel}\begin{document}\showhyphens{understanding knowledge}\foreignlanguage{english}{\showhyphens{understanding knowledge}}\showhyphens{nostrum conscientia}\foreignlanguage{latin}{\showhyphens{nostrum conscientia}}\end{document}

El registro muestra, para cada línea, una advertencia de caja (inofensiva: \showhyphens compone las palabras en una línea muy ancha para examinarlas) seguida de las palabras con sus cortes.

Registro de compilación
Underfull \hbox (badness 10000) in paragraph at lines 5--5[] \TU/lmr/m/n/10 un-ders-tan-ding know-led-ge​Underfull \hbox (badness 10000) in paragraph at lines 6--6[] \TU/lmr/m/n/10 un-der-stand-ing knowl-edge​Underfull \hbox (badness 10000) in paragraph at lines 7--7[] \TU/lmr/m/n/10 nos-trum cons-cien-tia​Underfull \hbox (badness 10000) in paragraph at lines 8--8[] \TU/lmr/m/n/10 no-strum con-scien-tia

Con los patrones del español, el inglés queda cortado en sílabas castellanas, y un corte como un-ders sería un error visible en un texto inglés; con los del inglés, los cortes respetan la formación de las palabras. Con el latín ocurre lo mismo: la línea 7 corta como se cortaría en español, y la línea 8, como enseña la tradición latina.

Las comillas del español

El español de babel define abreviaturas para las comillas: << abre unas comillas y >> las cierra, y babel elige el signo según la profundidad. Las exteriores son angulares; las que se abren dentro de ellas, inglesas; las del tercer nivel, simples. Es la jerarquía que recomienda la ortografía del español.

EjemploTres niveles de comillas
Código LaTeX
<<El maestro dijo: <<repitan <<anamnesis>> en voz alta>>.>>​``Comillas inglesas'' y `simples', escritas a mano.
Resultado
Resultado

La segunda línea muestra la forma clásica de LaTeX, que no depende del idioma: dos acentos graves abren unas comillas inglesas y dos apóstrofos las cierran; uno solo de cada uno da las simples.

Hay que distinguir, sin embargo, la abreviatura de una coincidencia. La tipografía, cargada por fontspec con el rasgo de ligaduras de TeX que se verá más abajo, convierte por sí sola dos signos < seguidos en una comilla angular, en cualquier idioma; lo que solo hace el español de babel es alternar los signos según el nivel. Fuera del español, la línea anterior imprimiría tres pares de comillas angulares, uno dentro de otro. La clase dedicada a las notas, las citas y los versos tratará las citas con más detalle.