Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: LaTeX is great. Has anyone tried to build something better?
35 points by iNic on Sept 26, 2022 | hide | past | favorite | 23 comments
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?



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.


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


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/


This is interesting. I tried out SILE as a LaTeX alternative a few months ago and I had many more issues with it (kerning, line spacing) than with LaTeX. Perhaps it has gotten better in that while? (Or perhaps I am just dense and I wasn't doing something right)


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


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.


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.


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.


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.


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


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.


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.


> 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.


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!


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.


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


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/


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


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

https://pandoc.org/


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


Postscript, right?


Lout


Groff




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: