1 comments

  • maxloh3 days ago
    Background of the project:<p>Tectonic is forked from the XeTeX TeX engine. However, the build process for XeTeX (and all other mainstream TeX engines) is extremely baroque:<p>1. The original Knuth sources are written in a language called WEB (which is basically used by nobody else)<p>2. Those sources are then patched with a series of “change files” due to restrictions on distributing modified sources<p>3. These patched files are then converted to the Pascal language using some custom processing scripts<p>4. That Pascal code is then converted to C code using additional custom tools<p>5. Those C files are then compiled against a set of extension files and libraries written natively in C and C++<p>One of the big motivators for the launch of the Tectonic project was to break out of this ridiculously unwelcoming development process. Tectonic is based on the C&#x2F;C++ files that emerge from the XeTeX build process, and is gradually translating that code to modern Rust.<p>While the core TeX architecture and XeTeX are largely stable, they do, however, evolve with time. This repository recreates the final XeTeX C&#x2F;C++ files from their source, so that modifications can be ported into the main Tectonic codebase.<p><a href="https:&#x2F;&#x2F;github.com&#x2F;tectonic-typesetting&#x2F;tectonic-staging&#x2F;blob&#x2F;texlive-2022.0&#x2F;README.md#background" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;tectonic-typesetting&#x2F;tectonic-staging&#x2F;blo...</a>
    • ks20481 hour ago
      So what does this fork do? No more WEB? No more Pascal? Does it produce exact results as XeTeX?