Also, typst is just really good.
Though I ended being a graphic designer so LaTeX felt rather limiting very quickly, but fortunately found ConTeXt.
Hoped Typst was going to be great for my use case but alas it's got the same "problem" as LaTeX - modularity. Still it seems to be a great alternative for people doing standard documents.
I'm sure you remember that quite clearly.
Yeah - typst has a bunch of features that I really want for blog posts and rich documentation, where markdown isn't a powerful enough tool. For example:
- Boxes & named figures
- Footnotes
- Variables, functions (incl populated from nearby files)
- Comments
- Chapter / Section headings (& auto generated table of contents)
- Custom formatting rules (For example, typst lets you define your own "warning box". Stuff like that.)
I don't know of a better tool to write my blog posts today. Markdown doesn't have enough features. And I'm obviously not writing blog posts in latex or a rich text editor. I could use actual javascript / JSX or something - but those tools aren't designed well for long form text content. (I don't want to manually add <p> tags around my paragraphs like a savage.)
Pity the html output is still a work in progress. I'm eagerly awaiting it being ready for use!
I filed a bug (this was a few years ago) and I was told commonmark compatibility was an explicit non goal for the project. Meh.
[^0]: it doesn't matter where this is placed, just that this one has a colon.
The table of contents thing is annoying but it's not hard to write a little bash script. Sed and regex are all you need.
> Markdown doesn't have enough features
Markdown has too many featuresThe issue is you're using the wrong tool. Markdown is not intended for making fancy documents or blogs, it's meant to be a deadass simple format that can be read in anything. Hell, its goal is to be readable in a text editor so its more about styling. If you really want to use it and have occasional fanciness, you can use html.
But don't turn a tool that is explicitly meant to be simple into something complicated just because it doesn't have enough features. The lack of features is the point.
Yes, I think we're in violent agreement that markdown is the wrong tool for the job. That's why I find it baffling how so many blogging & documentation tools lock you in to using markdown, with its anaemic feature set (eg mdbook).
Even markdown + inline HTML is wildly inadequate. For example, you can't make automatically numbered sections. Or figures with links in the text. Or a ToC. And so on. Try and attach a caption to an image and you're basically hand authoring your document in crappy HTML.
So I agree with you. I don't think the answer is "markdown++" with comments, templating and scripting support. I think the answer is something else. Something which has considered the needs of authoring documents from the start. Something like typst.
> That's why I find it baffling how so many blogging & documentation tools lock you in to using
I feel this about so many things and it boggles my mind why people often choose to do things the hardest way possible.Honestly, I think a good portion of it of the unwillingness to toss something aside and write something new. If it's just a hack on a hack on a hack on a hack then no wonder it's shit. It's funny that often it's quicker to rewrite than force your way through.
I'm worried that with LLMs and vibe coding on the rise we're just going to get more. Because people will be asking "how do I make X do Y" when in reality you shouldn't ever make X do Y, you need to find a different tool.
I'm hoping the opposite, at least eventually. I think before long it'll be easy to get chatgpt to build your own version of whatever you want, from scratch.
Eg, "Hey, I want something kinda like markdown but with these other features. Write me the spec. Implement a renderer for documents in Go - and write a vs code extension + language server for it."
But if that happens, we'll get way more fragmentation of the computing ecosystem. Maybe to the point that you really need the memory of a LLM to even know what's out there - let alone understand how to glue everything together.
When you are losing your semester's 25-page seminal work an hour before deadline because Word had that weird little bug about long documents and random CJK characters (and whether or not the moon was currently in the House of Aquarius supposedly), you develop a ... healthy dislike for it.
LaTeX back in the day didn't need zealots - Word did all the heavy lifting in demolishing itself for anything more involved than 'Secretary writes a letter', 'grandma Jones writes down her secret butterball recipe' or 'suits need a text, and only text, on paper, quickly".
(Yes, that was snarky. I am still bitter about that document being eaten.)
Word still has a closed format. It supposedly standardized OOXML, but - it doesn't follow that standard; Microsoft apparently managed to warp the XML standard to accommodate its weirdness; and all sorts of details encoded by MSO in that format are not actually documented.
There also used to be the problem of different renderings on different machines (even if you had all the relevant fonts installed): You opened a document on another person's computer and things were out-of-place, styling and spacing a bit different, page transitions not at same point etc. I don't know if that's the case today.
Granted, though, hangs and crashes and weird gibberish on opening a document are rare today.
In two years I hardly met anyone still doing pure LaTeX publications, unless the publishing body only accepted LaTeX as submission format.
I would suspect (based on my own experience) is that the reason folks shout "typst!" anytime they hear latex is that the user experience is 1000x better than latex.
That and Computer Modern. I bet a significant number of users use it because of that!
Personally I would just use LyX. Its equation editor is actually fantastic.
Many people say that they use LaTeX because it produces more beautiful output. Microtypography is one of the reasons for that. It's especially noticeable when microtype pushes hyphens or quotes at the end of a line slightly into the margin. (A nearby comment mentions that Typst has this feature, too.)
And there's another microtype PR open, by the reporter of the linked issue (nice!)
The microtype user manual shows how much thought has gone into it: https://mirror.foobar.to/CTAN/macros/latex/contrib/microtype...
What doesn't work?
Ah yes, this definitely is the “Modern” approach.
There does seem to be an open source, non-SAAS part, but information about it looks pretty deliberately buried.
They developed the main face of the product first - the online webapp which has live collaboration - which sounds like a sane choice for a new company.
It does, but this is actually part of the critique. Typst is developed by a company, while LaTeX is not.
So... yeah.
That is an overly broad generalization.
> no hesitation to pay AWS, Netflix, Amazon, etc.
Again, an overly broad generalization.
I am unsure what kind of conclusion you can objectively make out of such generic statements.
The non-control characters of ASCII are largely characters you might actually want to put in a document. TeX uses some of these as markup, e.g., the dollar sign to bracket maths mode and the ampersand as a column separator in tables. Typst takes this much further, using plus and minus signs to introduce list items, at signs for references, and so on.
Ideally, all visible characters should produce themselves in the printed output, except for the backslash introducing control sequences that represent all of the markup and braces for delimiting the extent of parameters to those control sequences. This would produce a very predictable and easily-parsed syntax.
- the cryptic error messages and infinite logs
- the unintuitive ways to do stuff like store a value for later use or sum two lengths
- the very long compile times
- the amount of reliance on global state from various packages, which contributes to even more cryptic errors or weird behavior when something goes wrong
- various other quirks, e.g. the fact you often need to end a line with a comment or the newline will skrew up your content.
Are people looking seriously at shortcomings of latex and moved towards modern replacements?
Major problems include:
- Tables are a huge pain.
- Customized formatting like chapter headings, footers, etc is painful.
- Latex as a language somehow felt like it was having issues with composability of functions, the details of the problem eludes me now, but it was something like if you have a function to make text bold, and if you have another function to make it italic, then if apply one to the output of another, it should give you bold and italic, but such composability was not happening for a some functions.
-Mixing of physical and logical formatting.
-Lot of fine tuning require to get passable final output.
These days I usually default to pandoc's markdown, mostly because the raw text is very readable.
Most students, and many researchers use Overleaf nowadays, though.
Usage level is not correlated to "rate". Sometimes people use stuff because they have to, not only because they like it. See the Microsoft Word case.
I'd agree that LaTeX has fell a bit in popularity this days against Typst - but not much in its usage. It is still the de facto standard of scientific and technical document typesetting.
Perhaps it's a programmer thing.
Don't you need to insert tons of `frame` environments to get anything worth looking at?
I don't know, if your slides are just a few keywords in a few bullet points and the occasional picture / diagram, WYSIWYM is great.
I agree that you shouldn't turn an actual article into a presentation though.
LaTeX has all the tooling to write high-quality ones.
Have you considered writing pandoc-style Markdown that's converted to TeX for typesetting? If not, have a peek at my text editor:
* https://keenwrite.com/screenshots.html
* https://www.youtube.com/playlist?list=PLB-WIt1cZYLm1MMx2FBG9... (see tutorials 4 and 9)
KeenWrite basically transforms Markdown -> X(HT)ML -> TeX -> PDF, although it uses ConTeXt instead of LaTeX for typesetting because ConTeXt makes separating content from presentation a lot easier.
$ sudo apt install quarto
E: Unable to locate package quarto
yeah, hard passMy 20 year-old .tex documents still compile today. Will the same happen with quarto? (or typst, for that matter?) The fact that they offer no packages in the debian standard distribution signals they have likely succumbed to the awful trend of version churning, where you need to use the last version of the software or else. Thus, probably, in 20 years my documents will be un-compilable. For legacy things like typeset documents, it's reasonable to prefer legacy solutions like latex.
Once quarto and typst have stabilized enough to appear in debian stable, I'll consider them as viable alternatives.
https://github.com/quarto-dev/quarto-cli/releases/tag/v1.8.1
The problems are quite similar, "How do I center a div?" vs "How do I keep this float on this page?" Has latex really modernized? I don't hear a lot about new layouts or style mechanisms.
Most people are probably reading articles online these days, although there is a lot to be said about printing an article to read. It seems to me that adding responsiveness to journal articles instead of using a fixed paper layout regardless of media might be a good improvement for many readers in many situations.
With a fixed medium in mind, you can be extremely particular on where on this canvas you want a piece of text/graphic or whatever.
Without a fixed medium, you have to have logic to address the different mediums and compromises have to be made.
Yes, sometimes, but I would say that one of the benefits of latex is how easy you can switch to another layout. But I guess the point is that you typically render to a set of outputs with fixed dimensions (pdf)
Last time I looked into it, a while ago, my impression was that it would get rickety too soon. It’d be a good place to be, I think, if web and “document” tech stacks could have nice and practical convergence.
As an old hand with PDF-in-browser production, I expected much worse of Paged.js than I found. It's powerful and mostly enjoyable to use! Oh, you end up with a large set of CSS rules, and it is not without bugs and gotchas (failing to specify a bleed rule somewhere at least once in every @page context subtly breaks layout; footnote layout is functional but automatic call numbering isn't always perfect, etc.)
You should definitely not expect to take Paged.js out of the box, slap a theme on it, and go; it comes as a box of parts with a mostly complete machine inside, and if it breaks you get to keep all the pieces. I imagine the publisher who uses it must have some prior interest in web technologies, for example.
Nor is Paged.js remotely as capable or flexible as InDesign or a comparable tool, especially for the deeply rudimentary condition of web typography overall - something even as elaborate a tool as this can't really approach fixing.
But Paged.js is also unlike InDesign in having a much shallower (days vs months) learning curve for folks like us with prior web experience, and however equivocal a review I may now be giving of its technical merits, I do actually like working with Paged.js quite a lot.
You can change that as you go along.
that's not the point they were trying to make. you may need to change the display target for every viewer.
I don't want to manually type (or read past) HTML tags littered around the place. I don't want to manually put <p> tags on my text, or worry about how indentation will affect my rendered output. (For example, <p>foo</p> and <p> foo </p> render differently).
If I'm writing a blog post, I also don't want my post's text to get mixed up with site specific stuff, like meta tags and layout elements.
Are there any good "literate HTML" type tools which first and foremost let me type text, but still let me break into HTML? That I could get behind.
In other words, SGML is complementing the HTML vocabulary with authoring affordances, as originally intended (HTML is based on it).
At the very least, because those are the two popular software systems used for creating documents. HTML+CSS isn't; and Javascript is irrelevant for print.
It embeds almost anywhere, including via client-side WASM, and someone even made a nice TypeScript lib [0]. If you dislike `typst`, it even has a package that transpiles LaTeX strings into native typst, which somehow doesn't seem to make `typst` any less fast [1]. WASM plugin magic will do that!
The curious consequence is that the fastest and most portable way to render lightwight LaTeX code might actually be... To transpile LaTeX to embedded `typst`? Sure, sure, not all of LaTeX will map. But from an 80/20 mindset it might just be enough.
- [0] https://github.com/Myriad-Dreamin/typst.ts - [1] https://typst.app/universe/package/mitex/
It's partly because I love the simplicity/power of Org and I do all my writing in it nowadays, the other part is to separate the content from the presentation so I can have the content in two different languages but still end up with the same formatted document for both.
Anyone have experience with this or have favorite LaTeX templates for CVs?
I'm currently experimenting with this:
I never got into emacs. Is Org worth it?
My cv is an adaptation of one of the templates there: https://drive.google.com/file/d/1woxVNcJ4AmT7dD2WEnYr9BHEEY7...
EDIT: ahahahahaha I just came across this cv: https://www.overleaf.com/latex/templates/resume-slash-cv-tem...
I'm totally stealing that.
I tried to avoid custom commands and environments to keep it simple. Your content in org text should fit nicely with this.
It also has a template where the preamble is stored in different file such that you can try a different look by just un/commenting a different preamble file.
It's published under GPL so relatively protected from corporate nuisances. Takes five minutes to teach someone how to mark headlines, add content listing and change document type, then a little more to teach how to add tables and images.
It's a document engine that ingests Markdown (particularly the MyST superset) and builds upon "structured data" for sharing.
E.g. SciPy's proceedings: https://proceedings.scipy.org/articles/XHDR4700
> Feel free to try lualatex instead—there are a few differences between the two that we will discuss later, but either is fine for now
I've migrated all of my latex (book layout and invoicing) usage to typst and couldn't be happier.
pros:
- one small compiler that can output: pdf, png, svg, html
- compilation is fast (see below)
- syntax is much cleaner than Latex
- few ways of to a thing
- already has all the templates most people need
- tooling is good enough with VS Code
- supports SVG images
cons:
- less users?
time typst compile cv.typ
________________________________________________________
Executed in 126.21 millis fish external
usr time 93.66 millis 0.07 millis 93.58 millis
sys time 37.97 millis 1.51 millis 36.46 millis
The real problem is acceptance of non-word/latex papers
So its a mass and momentum problem. Typst not only has to be better/easier/faster than latex, but to a degree that it justifies all of the labor and time to learn it and change all that existing template and utility infrastructure built up over decades. A high bar.
If Typst (or some other new contender) could also read and compile latex code and packages alongside its own syntax then that would be a game-changer. Then I can use all my old stuff and gradually change things over to typst (or whatever).
My main selling points is that with LaTeX, it is easy to create typography shines beauty for a distance. (Often way better that most of books you find in stores.) With other typesetting systems, usually it is not the case. Yet, I am waiting for new things that offer simplicity, yet have same (or better!) visuals that LaTeX.
Typst apparently uses Knuth-Plass, but I don't see any information about microtypography.
Things like default margins, in my opinion, are a lot easier to fix than these other issues.
cadamsdotcom•5h ago
Knuth & friends were on a roll naming things - the 80s must've been quite a time.
As always wiki knows all: https://en.wikipedia.org/wiki/LaTeX
seanhunter•5h ago
The "La" in latex is Leslie Lamport. https://lamport.azurewebsites.net/
TheAceOfHearts•5h ago
The great thing about language is that you can just change things if enough people play along. Call it gif or jif, arxiv or archive, latex or laytek.
josephg•4h ago
mariusor•4h ago
IshKebab•3h ago
n2h4•1h ago
kashunstva•5h ago
Or “lah-tek”, the Wikipedia article doesn’t seem to address which, if either is preferred. And I think Leslie Lamport said that he didn’t want to impose any particular pronunciation.
mcv•4h ago
mturmon•4h ago
mturmon•4h ago
Knuth, on the other hand, has a whole rationale on why it’s pronounced “tech”. (“Your keyboard should become slightly moist”, iirc).
kaoD•3h ago