Saltar al contenido

Diferencias entre LuaTeX, ConTeXt y XeTeX

Solución:

Tanto LuaTeX como XeTeX son motores UTF-8 para procesar documentos TeX. Esto significa que la entrada (archivos .tex) puede contener caracteres que con pdfTeX son difíciles de usar directamente. Ambos también pueden usar fuentes del sistema, nuevamente a diferencia de pdfTeX. Sin embargo, los dos tienen un enfoque muy diferente.

XeTeX utiliza bibliotecas específicas del sistema para funcionar. Esto significa que es muy fácil de usar “listo para usar” para cargar fuentes del sistema y otras tareas UTF-8. De hecho, fue escrito con este propósito: idiomas de apoyo, etc., con el que lucha TeX tradicional. Esto lo convierte en un motor fácil de usar para los usuarios finales, especialmente si usa el paquete fontspec en LaTeX. Sin embargo, debido a que las cosas se “envían” al sistema operativo, existe una compensación en términos de flexibilidad.

Por el contrario, LuaTeX tiene objetivos más grandes. La idea es agregar un lenguaje de secuencias de comandos (Lua) a TeX y abrir las partes internas de TeX a este lenguaje. El resultado es que muchas cosas son posibles, pero hay que programarlas. Existe un creciente soporte de LaTeX para LuaTeX: fontspec v2 lo admite, y se están escribiendo nuevos paquetes para utilizar más de las nuevas funciones.

Por el momento, usaría XeTeX para UTF-8 y soporte de fuentes, a menos que buscara efectos particulares que solo LuaTeX hace bien (la tipografía árabe es un desafío particular). La elección entre XeTeX y LuaTeX es ‘ajustada’: ambos tienen ventajas dependiendo de sus requisitos exactos. (Estoy en el equipo del kernel de LaTeX, así que como programador estoy muy interesado en explotar LuaTeX).

ConTeXt no es un motor, por lo que se encuentra en un lugar ligeramente diferente aquí. ConTeXt es un formato para TeX, como LaTeX, pero es más nuevo y mucho más grande. ConTeXt Mark IV es una implementación exclusiva de LuaTeX. Las personas detrás de ConTeXt son muy activas en el desarrollo de LuaTeX y están utilizando las nuevas funciones para extender TeX y lo que ConTeXt puede hacer. Ya he señalado que estoy trabajando en LaTeX, así que, por supuesto, me gustaría ver que las nuevas funciones de LaTeX hagan lo mismo. Esto es algo en lo que estamos trabajando yo y los otros miembros del proyecto LaTeX.

XeTeX Básicamente ofrece dos mejoras sobre el LaTeX predeterminado y tiene un inconveniente.

Las mejoras son:

  • XeTeX admite la entrada codificada en UTF-8 de forma predeterminada. De hecho, esta es la única codificación admitida.
  • XeTeX admite fuentes TrueType / OpenType directamente. Esto puede ser aprovechado por el poderoso paquete fontspec que hace que cargar y usar las fuentes instaladas sea realmente fácil.
  • El soporte de fuentes va mucho más allá de lo que admiten la mayoría de los editores (incluso profesionales). Por ejemplo, permite acceder fácilmente a características especiales de fuentes como ligaduras raras, variantes de glifos y números de estilo antiguo (estilo de texto).

El inconveniente es:

  • XeTeX no admite (todavía) el conjunto completo de funciones del paquete de microtipos, como lo hace pdfTeX. Sin embargo, la característica principal, la protuberancia, funciona bien.

Además, XeTeX solo tiene salida PDF; sin DVI o PS. No estoy seguro de si esto puede contarse como un inconveniente, pero YMMV.

La respuesta de Joseph Wright resume muy bien las diferencias, solo quiero agregar que luatex también es un lenguaje de secuencias de comandos por derecho propio: cuando ejecuta el luatex ejecutable como texlua
(o alternativamente, ejecutar luatex --luaonly) se comportará como un intérprete de scripts lua con algunas adiciones a la biblioteca.

En este modo, no se puede realizar la composición tipográfica, pero eso no significa que no sea útil. Por ejemplo, hasta donde yo sé, este es el único intérprete de scripts con una interfaz kpathsea incorporada. Ninguna de las características relacionadas con la composición tipográfica está expuesta, pero la otra funcionalidad lua en luatex está disponible para los scripts:

  • kpse, para buscar archivos
  • cargador de fuentes, para investigar archivos de fuentes
  • mplib, para crear gráficos de metapost
  • epdf, para investigar archivos pdf (todavía experimental)

Además, se han agregado algunas bibliotecas lua útiles de Internet:

  • luamd5, para cálculos de suma de comprobación
  • luasocket, para e / s de red
  • luafilesystem, para e / s de disco
  • slnunicode, para procesamiento de cadenas Unicode
  • luazip, para entrada zipfile
  • lpeg, para escribir analizadores

Esta capacidad de scripting de luatex se usa para algunos de los scripts en TeXLive 2010, y es de esperar que estos más scripts puedan ser reemplazados en el futuro.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *