Hacker News new | ask | show | jobs
by WillAdams 46 days ago
Well, LaTeX3 was sort of what you describe, but has been dropped:

https://www.latex-project.org/latex3/

If nothing else, the support for Unicode via UTF-8 has been a big win, and the new programming model and Lua allow some pretty cool stuff, if I do say so myself --- I'm still impressed by Alan Xiang's solution here:

https://tex.stackexchange.com/questions/722886/how-to-write-...

I agree that the preamble stuff is kind of a trainwreck --- I've always held that someone needs to put together a templated version where quite a large number of options are available, but commented out, so that one could work up a version of a document by just uncommenting the appropriate lines --- it really feels like something which LyX should have done.

The problem of course is the old greybeards are accustomed to tomes such as:

https://ctan.math.washington.edu/tex-archive/macros/latex/co...

2 comments

> Well, LaTeX3 was sort of what you describe, but has been dropped

It depends on your perspective, since you could similarly argue that it's already here [0] [1].

> I've always held that someone needs to put together a templated version where quite a large number of options are available, but commented out, so that one could work up a version of a document by just uncommenting the appropriate lines

You can Google "LaTeX templates" and get tons of results; the problem is that most LaTeX templates are terrible, probably because making one that is general-purpose, robust, and gives high-quality output is really hard. But theses are probably one the most common reasons for people to use LaTeX, and there are already hundreds of options available on CTAN [2].

[0]: https://www.texdev.net/2024/11/11/the-mythical-latex3

[1]: https://tug.org/TUGboat/tb44-1/tb136mitt-history.pdf#page=5

[2]: https://www.ctan.org/topic/dissertation

Yeah, but imagine memman.pdf as a Literate .tex source program which had two possible outputs:

- memman.pdf

- memtemplate.tex

where to get the latter one would just iterate through all the possibilities and choose options until one arrived at the end and a template matching the selections which were made was generated.

Maybe a project for the next time I re-read that...

> Alan Xiang's solution here

Pure witchcraft!