Un documento no siempre es solo japonés e inglés. Francés, alemán, ruso, griego, árabe: cada uno tiene su propia separación silábica, sus propias cadenas de documento (“Chapter” ↔ “Chapitre”) y reglas tipográficas. LaTeX lo maneja con babel (todos los motores) o polyglossia (para motores Unicode), con bidi añadido para escrituras de derecha a izquierda.
babel y polyglossia
babel (de Johannes Braams) es el clásico, compatible con pdfLaTeX, XeLaTeX y LuaLaTeX. Declara lenguas como opciones del paquete (la última es la principal), cambia un bloque con \selectlanguage{...} y texto en línea con \foreignlanguage{lang}{...}. Activa la separación silábica adecuada, traduce cadenas del documento y aplica tipografía específica de la lengua (como el espacio fino francés antes de ; : ! ?). Se desarrolla activamente y es la opción predeterminada incluso con motores Unicode.
% babel:最後の言語がメイン / last language is the main one
\usepackage[russian,french,english]{babel}
...
\foreignlanguage{french}{Bonjour !}polyglossia es la alternativa orientada a XeLaTeX/LuaLaTeX, adecuada para fuentes del sistema y escrituras complejas. Declara lenguas con \setmainlanguage{...} / \setotherlanguage{...} (las secundarias deben ser explícitas) y cambia con un comando \text<lang> como \textarabic{...}.
Texto bidireccional — RTL
Las escrituras de derecha a izquierda (RTL) como árabe, hebreo y persa se manejan con motores Unicode. El paquete bidi (para XeTeX/LuaTeX) controla la dirección: \setRTL/\setRL para párrafos derecha→izquierda, \setLTR/\setLR para izquierda→derecha. En XeTeX, tanto babel como polyglossia dependen de bidi, y los puntos mixtos LR/RL necesitan marcado explícito. Para trabajo bidireccional serio, se recomienda LuaLaTeX: babel en LuaTeX usa un algoritmo Unicode que detecta la dirección automáticamente e invierte también diseños como tablas y márgenes.
% XeTeX / LuaTeX
\usepackage{bidi}
\setRTL % 以降を右→左に / switch to right-to-leftSoporte por lengua
babel/polyglossia cubren muchas lenguas: francés, alemán, italiano, español, portugués, ruso, griego, árabe, chino, coreano y más; cada una añade separación silábica, cadenas del documento y convenciones propias. Las escrituras no latinas (ruso/cirílico, griego, árabe) necesitan una fuente adecuada: lo más fácil es XeLaTeX/LuaLaTeX con fuentes del sistema (fontspec); en pdfLaTeX, combina el fontenc correcto (T2A para cirílico, LGR para griego). Para CJK, consulta las páginas dedicadas.
- La mayoría de casos →
babel(todos los motores, desarrollo activo). - Escrituras complejas / fuentes del sistema en XeLaTeX/LuaLaTeX →
polyglossiatambién sirve. - RTL (árabe, hebreo) →
LuaLaTeX+babel(manejo bidireccional automático). - Japonés / CJK → rutas dedicadas (ver “Métodos de composición japonesa”, “CJK”).