LaTeX. We have Microsoft Office. Then we have its lacking competitors. There's also InDesign for professional creatives.
There's a huge gap for LaTeX to fill, or to potentially fill, but it's not happening. The other day I saw it described as "a neckbeard knitting circle, not viable software". As a LaTeX "fan", that hurt but it's the truth.
Over the past months, I had to collaborate with various different people across various different organizations. Everything in MS Word. I don't even hate MS Word, it's useful and its dominant position isn't entirely undeserved. But holy cow was working together a gigantic pain in the behind. I really started to loathe it (Excel is far worse and did its part too).
This was all with technical people. They could potentially grasp WYSIWYM approaches like LaTeX. Slap git and CI/CD on top and you're where software developers have been 10 years ago. But my industry is still light years away.
Part of it is how Word "just works". But it takes 5 seconds of using it until it doesn't. If LaTeX was more modern and also approachable (very ugly syntax/language. Could learn from Markdown here), technical folk could ditch Word and really upgrade their workflows. I'm sick of Word templates from 2004.
As somebody who deals with converting documents a lot on a professional level I say: LaTeX is a dead end. It's a horrible format to convert LaTeX to something else except PDF/Print/Images (where it is near perfect of course). You cannot even interchange documents between Word and LaTeX in an easy automated round trip way AFAIK.
Btw. I linked before a link to usable Markdown variations for academic papers which use LaTeX as a mix in only when necessary.
LaTeX should indeed get a little more authoritative IMO. A good start (that comes to mind) would be a convention for "body text" allowing a parser to convert a document between formats, or building a good 'standard library' of common plugins. Its heavy use of macros and non-standard plugins definitely seems like a big problem for conversion, comprehension and even conserving documents. I do find it wonderful for what it is.
I wish there was a way to maintain git version control while still being able to send and receive files from attachments from people who struggle with the idea of reading or reviewing something in any way other than by getting an email attachment.
I used to work at a bank where we had to collaborate on Word documents stored in SharePoint. It was a nightmare. In SharePoint you are supposed to "check out" documents, edit them, and "check in" the document afterward. The problem was that SharePoint was slow, so it was more convenient to work from local copies. And many people couldn't resist the urge to send documents as attachments when requesting feedback from someone else, thus breaking the version control system. And if someone already had "checked out" the document, there was nothing stopping someone from just working from a local copy, making changes, emailing it to me, and saying "Incorporate these changes into the final version."
It was common for someone to work from an outdated version and accidentally overwrite someone else's changes. Even though SharePoint stored every version, it was still a lot of manual work on my part to be a human git, manually combine edits from multiple reviewers, and update revision history tables on the first few pages of every document because nobody else had the time to do that. There were a lot of manual, human errors introduced by me and others. Partly because sometimes people would make minor changes without updating the version of the document, and then you'd have no idea that you were looking at an older version.
I use git for docs version control now, and sometimes I think of ways to make documentation controlled by git while still making it user friendly for non-technical people to contribute to it. What if you could send someone a file as an attachment, they could edit it locally (perhaps in Markdown or similar, with a text editor that has a Markdown preview), then open it in a special text editor let them click a button that would make a pull request for them without them having to understand anything about git? Maybe the special text editor would also notify them as soon as the doc became outdated.
And if even that was too hard, maybe they could save changes, return it to the sender as an email attachment, then the recipient could quicky make a pull request.
I feel this so much. When my team started up we used latex/mercurial for all documents. It worked great for a year except for one person that used dropbox instead of mercurial. Eventually we reached a critical mass where convincing the whole team to not use word was impossible.
Google docs works pretty well, but I wish it had more friction to download documents in office formats. People are quick to start working on local copies as soon as they miss some minor feature in word and you end up with the same problem you described. I think my perfect tool would not even export to word.
I agree sharepoint is awful and it's even worse now that it's baked into teams and people are using it without even realizing it.
You can set up a GitHub repo and let people edit files there through the web interface. It doesn't show a preview unfortunately, but it does have syntax highlighting and makes it easy for a user to make a PR
The company I work for recently settled on Office for document management and I agree with you, the collaboration part of Office seems to be in it's infancy.
I was thinking about LaTeX and if it could solve a problem for us in in my search I came across this:
Word Online with online commenting and discussion features is a pretty slick workflow for virtual, document-based meetings though.
I considered trying to get us to standardize on LaTeX and git for document management, but delayed that decision in favor of "get started with Word first and get people used to writing at all". Once we went forced-remote and started using the online comment features, I don't see an equivalently accessible means to do that in tex.
Overleaf's commenting feature is decades behind Microsoft's. In online Word you can attach comments to anything, you can have comment threads, you can version comments, you can accept or reject edits and comments, etc.
Overleaf is very unlikely to be a good drop-in replacement for MS Office for your company because Word and LaTeX are very different tools (with different goals and different audiences in mind). The former is a user-friendly word processor and the latter is a fairly complex plaintext-based document preparation/typesetting tool.
I doubt that most offices would benefit from teaching their employees that instead of just hitting control-B to bold some text, they should now do \textbf{foo}, or that quotes should now be types ``like this''. If you need the huge array of features (which is typically only the case in the context of academic publishing), then it's worth making the investment to learn. But for 99% of corporate documents, Word likely can do what you need with much less pain.
Not just LaTeX, groff gets no love even though it can deliver nice output. The syntax is even more arcane, but on the other hand it doesn’t need GBs to install.
Asciidoctor is a good modern proposition that can handle more than markdown can, but it’s not without shortcomings. Unfortunately markdown, asciidoc, rst and friends have been focusing too much on publishing to the web. Conversion to PDF is mostly over html (in some cases by firing chromium in the background) and the results are not as great.
It is difficult to compete with Word for non-technical people, if the alternative is to install and learn multiple tools, configure a dev environment and setup build toolchains.
> groff gets no love even though it can deliver nice output. The syntax is even more arcane
I think you've answered it yourself. Also damning is that groff doesn't support UTF-8 directly.
Most groff guides only do very basic formatting. Complex math/equation layout can be awful. Image files apparently need to be ps/eps. I just keep running into issues.
There's also no accessible ecosystem for groff. CTAN. Code highlighting (ideally, I want to use pygments - i guess i could write a backend if i was really invested). TikZ is great and something I've invested in a lot. Bibliography management. Also, not an issue for me, but an issue for adoption is Windows support.
As for competing with Word's workflow, at least with some TeX variant I have a chance. Installer frameworks. Editors with previews. So a few GiB to not run into these limitations sounds worth it to me to be productive.
I'm not saying groff couldn't be used for complex stuff, but I wouldn't know where to begin, or want to work around all those limitations.
Plan 9 troff might work! It works with utf8 out of the box[0], and while I haven't used it for complex math typesetting, there is a command (eqn [1]) that was developed for it. I'd recommend Ali Rudi's port (neatroff [2][3]) for a minimalist implementation. There's also Heirloom Documentation Tools [4] which is an implementation of *roff-and-friends that uses Knuth's paragraph-at-once algorithm (instead of the original line-wise one) for typesetting, plus some other interesting features.
The authors of eqn wrote a paper about it: "Typesetting Mathematics" by Brian Kernighan and Lorinda Cherry. Kernighan also wrote two manuals (one in 1976 with a revision in 1992, and one in 2007 with updates for the Plan 9 version). [5].
thanks. i do appreciate the effort, but i feel like this just underscores my point how *roff isn't a viable ecosystem like TeX is.
this is maybe slightly unfair, since i don't use TeX or even LaTeX, but XeTeX/XeLaTeX. however, those work out of the box with MacTeX/MiKTeX. i just want pretty PDFs.
My apologies. I think I misunderstand what you mean by "ecosystem". All of your requirements are fulfilled by the tools I suggested. The guides I provided show complex typesetting (mathematics and otherwise), eqn does complex math expressions (more powerful than TeX according to Lorinda Cherry, the neateqn implementation by Ali Rudi allows for using TeX bracket syntax as well), pic and grap provide complex (2D) graphics, refer and bib2ref/ref2bib provide bibliography management, and all of it installed from a single repository and makefile (maybe this is different than an installer framework?) to under 43MB (including demos and acm fonts). XeTeX/XeLaTeX seem to only add support for utf8 (as I mentioned, natively supported by the plan9 *roffs) and various font formats (at least supported by neatroff, I haven't checked the others). Of course, pretty PDFs was the original point you quoted in the parent.
You should at least check out the neateqn guide for examples of math typesetting (even output in Computer Modern). But the original guide, as well as the others will show many more and different examples. These aren't groff guides. You might be surprised.
It's funny, I looked at the "Typesetting Mathematics -- User's Guide (Second Edition)" postscript document, and - at least with macOS' Preview - some big brackets are segmented (Neatroff brackets don't seem to do this, although I've seen it in other troff generated documents), and they even say this:
> Warning — square roots of tall quantities look lousy, because a root-sign big enough to cover the quantity is too dark and heavy
The solution is naturally to rewrite big roots as powers.
pic does seem close to Tikz, although I had to look in the GNU pic doco to figure out how to do colors. Even then, transparency didn't seem to be supported?
Heirloom actually looks the most useful/mature. At least the output looks pretty/someone cared enough to make the example files pretty, there's actual documentation. Limitations are still there (having to convert bitmaps to EPS?). I will say I'm at least slightly impressed by `gpresent`, which is like beamer (so for making presentations), and built-in hyphenation support.
I still don't get Neatroff. It's compatible with/implements a lot that Heirloom does, but then the font support is worse again? It's an impressive project though, the source is very readable, and RTL/LTR support. Less impressive is the lack of a license - I think it's ISC, based on a single comment, but who knows?
---
A repository and a makefile are distinctly different than an installer. Random macro packages that may or may not be on GitHub are different than `tlmgr`. Piping stuff around and having to convert images is different than just one command. GUI editors. Example documents (like https://texample.net/). That is what I mean by ecosystem.
XeTeX outputs PDFs by default (granted, via xdvipdfmx), and can also include bitmaps directly (again, granted it needs graphicx or something). All TeX stuff isn't without it's warts, and seems overly complex (pdfTeX/XeTeX/XeLaTex/LuaTeX/ConTeXt, etc). But in practice, it kinda somehow just works (until it doesn't).
I appreciate you having a look! I totally understand if it's not enough to make a switch, but I'm glad you were able to see that it's not so bad on this side of things. There's definitely not enough niceties for the average computer user (GUI editing and installing) and some missing for any user (package manager). I will stand by piping as a matter of taste (the biggest benefit for me is it allows for using the tools I'm already familiar with, awk and grep or plain c/zig).
---
My interest in neatroff is mostly the code itself. A tiny and opinionated project with readable source that still achieves quite a lot (all that I need anyways). But it's definitely not for everyone! The author doesn't use a windowing system, for example, and instead uses the framebuffer for pdf viewing and editing (both custom implementations). It is ISC, by the way. It's included in the bottom of the readme.
Wow, this is some really high quality piece of software that I did not knew it existed until now. Thank you for sharing it!
I don't really have a good, productive, use case for it right now but I really can't wait to try it out. It looks really user friendly, fast, responsive, has a CLI, and it produces some easy to version in git latex files.
A while ago I wanted to create my CV in latex from scratch and gave up after days of trying to get FontAwesome to work (I wanted brand icons and other nice things), so I switched to a setup where I have a HTML webpage that looks like a paper page, and using chromium headless to "print" it to PDF (only works properly with chrome as other browsers have CSS incompatibilities on PDF generation, never mind the bit fart Firefox is doing on android lol). I guess I could try to replace that setup with this tool, it seems to have a export to PDF/HTML and a CLI interface for exports. Fingers crossed all goes well and hopefully it's customizable enough for the job. This will keep me busy/entertained for a while :).
There's a huge gap for LaTeX to fill, or to potentially fill, but it's not happening. The other day I saw it described as "a neckbeard knitting circle, not viable software". As a LaTeX "fan", that hurt but it's the truth.
Over the past months, I had to collaborate with various different people across various different organizations. Everything in MS Word. I don't even hate MS Word, it's useful and its dominant position isn't entirely undeserved. But holy cow was working together a gigantic pain in the behind. I really started to loathe it (Excel is far worse and did its part too).
This was all with technical people. They could potentially grasp WYSIWYM approaches like LaTeX. Slap git and CI/CD on top and you're where software developers have been 10 years ago. But my industry is still light years away.
Part of it is how Word "just works". But it takes 5 seconds of using it until it doesn't. If LaTeX was more modern and also approachable (very ugly syntax/language. Could learn from Markdown here), technical folk could ditch Word and really upgrade their workflows. I'm sick of Word templates from 2004.