1. 37

  2. 11

    This is so incredibly neat. It downloads all dependencies on the fly, so you don’t need a whole TeX Live installation, but you still have access to all of the goodies should you need them. The TeX engine itself is implemented in Rust. Only drawback right now is that it doesn’t support -shell-escape — I hope someone can hack that in at some point, to enable support for minted and other stuff like that (the authors have a rationale for not including that, in that they want reproducible builds, but it does mean some things can’t be generated right now). Hope someone else finds this as interesting as I did.

    1. 2

      The TeX engine itself is implemented in Rust.

      I was surprised by this claim (reimplementing a TeX engine is a huge amount of work!), so dug into the source a little. From what I can tell, at least for now, only the tectonic front-end is implemented in Rust. That includes stuff like the CLI, the glue that repeatedly calls latex/bibtex, the dependency-downloading code, etc. The actual typesetting is still done by the venerable TeX engine, written in C semi-automatically converted from Knuth’s WEB sources, and then improved by the TeX community over the years. Specifically, tectonic imports a fork of the XeTeX C sources.

      For example, this is tex.rs, which does some front-end work but mostly calls out to tex_simple_main in core-bridge.c, which in turn calls out to tt_run_engine in xetex-ini.c, which then calls into the rest of the XeTeX engine to do the typesetting.

    2. 5

      I’ve settled on Markdown documents + pandoc. Yes, even LaTeX turned out to be too fiddly for the pure english + no images writing I do nowadays for which Markdown is perfect.

      1. 2

        Do you have any formulas or graphs in your prose? Do you use references and footnotes?

        If not, then yes, LaTeX is pretty fiddly for simple use.

      2. 5

        Mandatory tangential fanboi mention: see also: https://sile-typesetter.org/what-is/

        1. 1

          Never heard of, but looks nice as well!

          Sometimes I miss tex/latex since the output can be so nice. But I rarely write anything these days so…