561 - Typst es brutal
#typst es una alternativa a #markdown y #latex o mejor una combinación de ambos, pero con una sintáxis mucho mas sencilla y grandes posibilidades
Hace un par de semanas, en el episodio 557 del podcast que titulé ¿Terminará Typst con Markdown lo cierto es que subestimé y mucho a Typst. Sinceramente Typst es brutal. Estamos, o por lo menos, yo lo veo así, ante un auténtico LaTeX killer. Sin dudarlo. Yo iría mucho mas lejos, porque pienso que está muy por delante de cualquier otra alternativa, sin embargo, entiendo que para el común de los mortales es mas cómodo abrir un Word o un Writer que tener que aprender un lenguaje, aunque sea tan sencill como Markdown o Typst. Pero, es que realmente, Typst, tiene lo mejor de los dos mundos, Markdown y LaTeX, con la ventaja sobre este último de un sintaxis infinitamente mas sencilla. Así en este episodio del podcast te quiero explicar porque Typst es brutal y mi experiencia con este lenguaje de marcado ligero y formateo.
Typst es brutal
Mi experiencia con Typst
Como te decía en la introducción había subestimado y mucho a Typst. No me percaté del increíble potencial que tiene. Y es que es sinceramente espectacular. Y te cuento. Hace unos años, publiqué y algunos libros de libre distribución sobre Scripts en Bash, La Terminal y Docker.
Para crear los libros utilicé una combinación de Markdown y LaTeX. Los libros estaban escritos en Markdown, y utilizaba una plantilla en LaTeX, para generar el PDF resultante. Si estás en el grupo de telegram de atareao con Linux, habrás tenido la oportunidad de ver el resultado final, y si no siempre puedes entrar y verlo.
El resultado está muy bien, y es algo que depende en gran medida de la plantilla que utiliza para generarlo. Se trata de una plantilla de un tercero, que yo no tengo ni idea de como funciona.
Creando el libro con LaTeX
Para que vieras el resultado decidí volver a generar uno de los libros, en concreto el de Scripts en Bash. Esto, en su momento, lo hice en Ubuntu. Ahora con el cambio a ArchLinux, evidentemente no tenía el software necesario para hacerlo, así que me decidí a descargar la plantilla e instalar LaTeX… Madre mía que dolor. Lo primero es que se descargaron como 2 GB de software. Pero además con toda esa cantidad de paquetes es seguro que se actualizarán día si, día también.
Para crear el libro utilizo una herramienta externa que seguro conoces Pandoc. Pero como es necesario pasar todos los archivos que constituyen el libro, al final me tuve que hacer un script, eso si, muy sencillo.
Así, para construir el libro, he necesitado además de Markdown, LaTeX y Padoc, así como el script de composición.
Una vez hecho esto, es mas o menos fácil de mantener, pero de buenas a primeras, lleva un tiempo.
Creando el libro con Typst
Llegados a este punto, me planteé la posibilidad de crear el mismo libro pero en Typst. Claro, que lo primero era hacer la plantilla, algo que pensé que me llevaría mucho mas tiempo, del que finalmente me llevó. Lo cierto es que si bien, no conocía la sintaxis, la cuestión es que es bastante sencilla de aprender, y aunque tiene sus particularidades, las posibilidades que ofrece son increíbles.
La plantilla tiene 135 líneas, nada mas. Y en ella está definido las tipografías a utilizar el formato del documento, la portada y las páginas normales. Para que te hagas una idea, sin tener idea de Typst, me llevó un par de horas entender lo básico y preparar esta plantilla desde cero.
Además de la plantilla, está el propio documento, donde se indica que plantilla utilizo, y completa los campos necesarios, como el título, autor, imagen de portada, etc, y además se incluyen todos los capítulos del libro.
Y construir el libro es tan sencillo como ejecutar esta línea de terminal,
typst compile ./src/main.typ ./dist/scripts-en-bash.pdf
Es mas, dependiendo del editor que estés utilizando, es muy posible que ni siquiera tengas que compilarlo, que directamente se genere conforme estás escribiendo.
Conclusión
Llegados a este punto, ya casi he completado la migración del primer libro a Typst, y durante las próximas semanas comenzaré con los otros dos. A partir de este punto, la idea es ir creando los libros correspondientes a los tutoriales que puedes encontrar en atareao.es. Tanto los que ya están completos como los que estoy preparando.
Mi recomendación es que si escribes, si editas, lo pruebes y me digas si te vale o no te vale.
Lo primero darte la enhorabuena por la labor que realizas. Descubrir tus podcasts ha sido de lo mejor pues me amenizan los viajes cuando me traslado al trabajo y aprendo de ellos. Hacia años que tenia Linux y la programación parada (Desde 2008) y en parte gracias a ti me he vuelto a «enganchar» a la comunidad del pingüino, actualmente aprendiendo python para trabajar con archivos csv y typst para generar manuales de usuario de las aplicaciones que realizo. Sigue así mister, eres un crack!