alberto-ros / apuntes-aec

Texto guía para los apuntes de Ampliación de Estructura de Computadores
MIT License
4 stars 2 forks source link

Valorar si merece la pena utilizar lualatex para el soporte UTF8. #3

Closed useredsa closed 4 years ago

useredsa commented 4 years ago

Estuvimos hablando en los comentarios del último commit (efe0f5903c18738c8236e9d69ab050188d226a8b), que había que escribir \acute para poner acentos en modo matemático. Tras investigar, comento una posible solución.

pdflatex tiene mal soporte para UTF8 porque es antiguo. No obstante, lualatex (suele venir en la misma instalación de TexLive) es un motor para latex basado en lua que soporta UTF8 de forma nativa. Tiene un paquete muy interesante, unicode-math que permite escribir caracteres UTF8 en modo matemático. Cuando los apuntes tienen letras griegas en las fórmulas viene muy bien. Para nosotros, que no vamos a usar tantas fórmulas, no marcaría tanto la diferencia.

Lo que si nos ofrece es la posibilidad de escribir acentos dentro del comando \operatorname, que se debe utilizar para introducir los nombres de funciones de más de una letra, como \operatorname{Tiempo de ejecución}. (Si \operatorname parece muy largo, se puede declarar un alias como \opname o \oname.)

En resumidas cuentas:

Ventajas

Desventajas

(Aunque son intercambiables si no usas paquetes que solo funcionen con un compilador, ese sería el caso.)

Alternativas

alberto-ros commented 4 years ago

Gracias. Muy interesante. Lo he probado y funciona correctamente. El resultado en el pdf parece exactamente el mismo (fuente, espaciado de caracteres, ...) por lo que viendo el tiempo extra de compilación, quizás sea mejor dejar pdflatex y usar el comando \acute.

useredsa commented 4 years ago

Gracias. Muy interesante. Lo he probado y funciona correctamente. El resultado en el pdf parece exactamente el mismo (fuente, espaciado de caracteres, ...) por lo que viendo el tiempo extra de compilación, quizás sea mejor dejar pdflatex y usar el comando \acute.

Sí, lualatex tiene más fuentes claro, pero usando las mismas sale lo mismo.

Tengo curiosidad. ¿Has notad un aumento en el tiempo de compilación? (Habría que verlo sin salida por terminal en realidad, porque es lo que más se lleva).

alberto-ros commented 4 years ago

Con el código latex original:

$ time pdflatex apuntes-aec > /dev/null

real 0m0.784s user 0m0.751s sys 0m0.029s

$ time lualatex apuntes-aec > /dev/null

real 0m0.984s user 0m0.908s sys 0m0.050s

Añadiendo el package unicode-math y usándo operatorname en una fórmula:

$ time lualatex apuntes-aec > /dev/null

real 0m6.199s user 0m5.990s sys 0m0.154s

useredsa commented 4 years ago

Con el código latex original:

$ time pdflatex apuntes-aec > /dev/null

real 0m0.784s user 0m0.751s sys 0m0.029s

$ time lualatex apuntes-aec > /dev/null

real 0m0.984s user 0m0.908s sys 0m0.050s

Añadiendo el package unicode-math y usándo operatorname en una fórmula:

$ time lualatex apuntes-aec > /dev/null

real 0m6.199s user 0m5.990s sys 0m0.154s

Hay muchísima diferencia. En mi sistema la verdad que era más lento pero no tanto. 0.6s - 1.3s. No sé si será porque tengo una versión más nueva de lualatex en arch.

Dado lo que tarda, va a ser mejor no utilizarlo, sí.