HACKER Q&A
📣 iNic

LaTeX is great. Has anyone tried to build something better?


Basically the title. As a PhD student I am both astounded at the ease of using LaTeX and constantly annoyed at many of its idiosyncrasies. If I mistype something there is a close to 0 percent chance of the complier pointing me into the right direction. Thus the question, has anyone ever made a serious attempt at displacing LaTeX?


  👤 eddieh Accepted Answer ✓
The two that come to mind are ConTeXt https://en.wikipedia.org/wiki/ConTeXt (official: https://contextgarden.net) and DocBook https://en.wikipedia.org/wiki/DocBook (official: https://docbook.org). There are others, but they're less-serious and often not general purpose. Then there's the entire class of Markdown-based solutions (I personally wouldn't attempt academic work with any of those).

The other typesetting system is troff https://en.wikipedia.org/wiki/Troff (official: https://troff.org), but it isn't a "tried to build something better than TeX/LaTex" since it predates TeX by a few years. Arguably TeX is an attempt at something better than troff.

The case for troff is pretty strong: https://rkrishnan.org/posts/2016-03-07-how-is-gopl-typeset.h...

But honestly LaTeX is so ingrained in academia that it is probably worth sticking with it. You might even learn to love it.


👤 jbotz
Lout[1], Patoline[2], Sile[3], Pollen[4], and Ant[5]. Taken from the Wikipedia page on "Typesetting"[6].

[1] https://en.wikipedia.org/wiki/Lout_(software)

[2] http://patoline.org/ (seems to be defunct)

[3] http://sile-typesetter.org/

[4] https://docs.racket-lang.org/pollen/

[5] http://mirror.hmc.edu/ctan/systems/ant/

[6] https://en.wikipedia.org/wiki/Typesetting


👤 zaphar
I actually have really enjoyed SiLE[0] as a replacement. The only caveat being that it has no where near the ecosystem that LaTeX has built up over the years. I do think that it is better under the hood than LaTeX though and much easier to customize.

[0]: https://sile-typesetter.org/


👤 PaulHoule
This project (which has nothing to do with TeX or Emacs) is one attempt in that direction.

https://www.texmacs.org/tmweb/home/welcome.en.html


👤 sgt
Whatever it is, I think the key to the success of LaTeX is that it is source code based. Something that displaces LaTeX should not be WYSIWYG or UI based, in my opinion. Maybe some kind if multitree based DSL.

👤 istillwritecode
I've used TeX since the 80s. I also find it surprising that nothing has come along to replace it. The entire LaTeX ecosystem is showing its age, and one of the problems is that it is not designed for reading on variable width screens. TeX is all about typesetting on fixed-width pages. The real wizardry of LaTeX involves three things: 1. line and page breaks 2. hyphenation 3. mathematical typesetting.

The first two are much less important today than they were in the 80s, because an increasing amount of reading is done on screens that are not fixed width. It's noteworthy that bibtex is also showing its age, and biblatex has not been a completely successful replacement.


👤 baruchel
I have been using Troff for about 25 years. I migrated from GNU Troff (groff) to Heirloom Troff because the latter has a very great support for typography and micro-typography.

Not only does it use Knuth's algorithm for typesetting, but it also includes many features unknown to LaTeX (you can even typeset paragraphs with constant spacing between words if you agree to put your extra spaces between letters or even by hiding them in applying a tiny horizontal zoom to your glyphs!). Support for arbitrary OTF fonts is much easier than with LaTeX also.


👤 auxym
There is https://patoline.github.io/ but it's been in alpha / active development for years now.

I agree that TeX's errors is one of the worst things about it. Strongly suggest you track your changes in git, I found it was often easier to go back to some version that compiled and re-add the changes, rather than try and track down the missing bracket or extra backslash that broke it.


👤 AnimalMuppet
Lyx. It's a graphical front-end for LaTeX.

👤 derekja
We've been using overleaf in my lab. In my opinion a much better collaboration platform than word or Google docs, but still has a long way to go. It only very partially solves the LaTeX syntax discoverability problem though.

👤 bluepoint
Latex is there and it works. People learn how to create their favorite macros and style files and once you have that you can mostly focus on the text. If you are interested in note taking you can try markdown with equations and when you need to publish or share with others you can convert the relevant parts to latex with pandoc or manually. Actually the process of transcribing notes may sound like a waste but helps rephrase and improve things catch errors or sloppy logic so it is good if you have to do it imho.

👤 enriquto
> If I mistype something there is a close to 0 percent chance of the complier pointing me into the right direction.

Why do you say that? The first error points you to the bad line on your source code, with a short description of the error. I agree that the output is too cluttered and it's often difficult to find the first error. Many wrappers for latex (for example overleaf) show the errors in color boxes and then they are much easier to spot.


👤 dfdz
This does not directly address your question, but it does really help with finding errors:

https://ctan.org/pkg/texfot?lang=en

texfot – Filter clutter from the output of a TEX run

The package provides a small Perl script to filter the online output from a TEX run, attempting to show only those messages which probably deserve some change in the source. The TEX invocation itself need not change.

I would highly suggest using it!


👤 nailer
Your favourite word processor creates machine readable XML to an open spec, which can cleanly separate style from presentation through styles, much like TeX does. You can build documents entirely from the keyboard as code, or use Python or build your own higher level tools.

You have MathML for math, better defaults like OpenType rather than bitmap fonts, and more emphasis on handling variable screen sizes over single-size paper documents.


👤 auxym
It's been a while, but I wrote my master's thesis with LyX, exported to latex (luatex I think) for rendering.

👤 lordfosco
Not sure how far typst[1] already got with their public beta, but at least they are claiming to be a veritable alternative to LaTeX.

[1]: https://typst.app/


👤 jarbus
Pandoc Markdown, but it's error messages aren't any better than LaTex

👤 infamouscow
Pandoc allows you to work in a variety of input and output formats.

https://pandoc.org/


👤 CoolestBeans
In college I used pandoc to write in markdown and then use LaTeX math notation inline when it was needed.

👤 tomcam
Postscript, right?

👤 wrycoder
Lout

👤 tnelsond2
Groff