Hi all,
I recently discovered Typst through an article in LWN and started toying with it. I’m looking for an alternative for Latex, which I kind of have been able to bend to my will, but not really. Whether you asked for it or not, here are some of my remarks and observations:
- Installing just one executable is really nice.
- The tutorial and reference documentation is nice.
- The intermixing of code and text feels natural but geared towards short documents. I miss clearly defined environments. As far as I can see, the idiomatic way to divide a document in large sections, is wrapping the sections in a function, which works nice in a short document but falls short in a long document. For instance, to kind of replicate Latex’s frontmatter, mainmatter and backmatter, I would encapsulate the front matter in a #frontmatter function, leave the main matter as is, and encapsulate the back matter in corresponding #backmatter function. Good luck hunting for the closing right angle bracket of #frontmatter. Am I overlooking something here?
- I’ve already been bitten by different required line endings between different modes. When you’re in a set-rule delimited by (), you need commas, but in a code block delimited by {}, you need semicolons. Surely this makes sense from a programming point of view, but why can’t one use commas or semicolons interchangeably?
- There is some confusion about significant whitespace or not. For instance in term lists, the amount of returns between terms overrules the setting for tightness. I would really like a concise overview about where whitespace and/or linebreaks are significant and where not. I would also expect that explicitly setting the tightness would overrule the source document layout.
- show rules feel like you’re overwriting a global function. Not being able to see the original definition makes it kind of scary. It also feels brittle.
Anyway, thanks for Typst and thanks for reading this far.
