Typst 0.15.0
Posted by schu 1 day ago
Comments
Comment by room271 1 day ago
https://github.com/typst/typst/pull/8147
Discursive footnotes do not really work when including bibliography references. I've also hit other issues, like footnotes appearing a page before the text they are linked from.
It's a real shame, as otherwise it's great software. I suspect footnotes are currently buggy because most users are currently from the science world and use inline referencing instead.
I'm really hoping this is fixed soon. (And once I hit my current deadline this week, I'll take a look at it myself.)
But at the moment, a big caveat for anyone working in the humanities / who uses e.g. Chicago-style footnotes.
Comment by davidpapermill 1 day ago
Comment by UncleOxidant 1 day ago
Comment by Kokouane 1 day ago
Comment by raybb 1 day ago
I have a pretty good workflow set up for publishing these books, which are mostly collections of student essays. I use Pandoc to convert the students' Word documents into Typst, then unify the formatting, styles, and headers (mostly via LLMs). From there, I generate both a nice digital PDF and a print-ready PDF using Typst, and then use Pandoc again to convert the Typst into what ultimately becomes an EPUB.
It all works quite beautifully. Most of the challenges I've run into are related to Typst features that don't map cleanly to Pandoc, so I end up adding a few funky conditionals so those features aren't hit when converting via Pandoc. sys.inputs makes that very easy https://github.com/jgm/pandoc/issues/11588
The books in question: https://thelabofthought.co/shop
Comment by weinzierl 1 day ago
My experience is the opposite. Especially when instructing the LLM to do very fine grained and detailed adjustments. Works like a charm.
Typst is my go-to format if I need more than plain text.
Comment by echoangle 1 day ago
Comment by frabera 23 hours ago
Comment by cagey 1 day ago
Comment by elsoja 1 day ago
Comment by __mharrison__ 1 day ago
Comment by wtb04 1 day ago
That said, LLMs have been noticeably better with LaTeX than with Typst for me. Typst works fine for the basics: loops, functions, small layout tweaks and that kind of thing. The problems mostly show up with more niche features.
What helped me was pointing the LLM to the current Typst docs, either the website or as they mention in their blog about the new update they also have a PDF export of the docs now (https://github.com/typst/typst/releases/download/v0.15.0/typ...). The docs are very good, and I suspect older training data plus Typst’s breaking changes are part of the problem.
One downside is that because I started using Typst with LLMs right away, I got a big head start but never became fully fluent in the language. I still find myself going back to the docs, the internet or an LLM more often than I’d like.
Comment by __mharrison__ 1 day ago
Comment by thomascountz 1 day ago
Mathematical equations are now automatically exported to MathML (thanks to @mkorje)[1]
[1]: https://github.com/typst/typst/pull/7436Comment by TimorousBestie 1 day ago
Comment by uniqueuid 1 day ago
"A single document can now contain multiple bibliographies"
Comment by Rochus 1 day ago
Comment by opto 1 day ago
Comment by mr_mitm 1 day ago
Pandoc probably uses latex under the hood, and Typst is order of magnitudes faster. Also, much better error messages.
Typst is vastly superior for usage in automation or when developing document classes.
If that's not your use case, don't bother.
Comment by aleks_me2 1 day ago
I use this command to create pdf from my md file.
Downloads/pandoc-3.9/bin/pandoc \
README.md \
-o "my-output.pdf" \
--pdf-engine=typst \
-V papersize=a4 \
-V fontsize=10pt \
-V margin-left=2.5cm \
-V margin-right=2.5cm \
-V margin-top=2.5cm \
-V margin-bottom=2.5cm \
-V title="My title" \
-V lang=de \
--include-in-header=typst-header.typ \
--toc --toc-depth=3 2>&1
That's the typst-header.typ #set figure(placement: none)
#show figure: set block(breakable: true)
#set table(
inset: 5pt,
stroke: 0.5pt + rgb("#cccccc"),
)
#show table: set text(size: 8pt)
#show table.cell: it => {
set text(hyphenate: true)
show raw: set text(size: 6.5pt)
it
}
#set par(justify: true)
#show heading: it => block(sticky: true, it)Comment by applicative 1 day ago
Comment by spudlyo 1 day ago
Comment by collabs 1 day ago
I use typst in visual studio code using tiny mist extension. I can generate PDF without installing any new software other than vscode which I already have and the tiny mist extension. The live preview is also nice.
The one thing that bothers me is the dollar sign and the hash sign so to write something like saved $50 million using c#, I write something like saved USD 50 million using #csharp
And near the top I add a variable like this
#let csharp = "C#"Comment by seanclayton 1 day ago
Comment by runarberg 1 day ago
I am an author of a fairly popular (and early) math plugin for markdown and I resisted (albeit not very hard). I made $$ the default delimiter but I noticed very soon that my users hated it, and finally I gave up and made $ the default delimiter.
What I would have preferred is for $ to behave exactly like backticks (except a minimum of two to start inline math) So you could do stuff like $$ f $ x $$ to render f $ x meaning function f applied with x. And write stuff like:
$$$optional-tag
f $ x
$$$
for block math. I even wrote a competing plugin to my older one where I do this, but I don‘t think anybody uses is, because most people writing math in markdown are expecting it to behave exactly like latex.Comment by paradox460 1 day ago
Gives you a nice, block level element, and it's easy to reason about
Comment by runarberg 1 day ago
Comment by paradox460 21 hours ago
Djot solves this with tagged literals, but no one seems to want to use djot
Comment by kryptiskt 1 day ago
Comment by applicative 1 day ago
pandoc -r markdown -w pdf --pdf-engine=typst input.md -o output.pdf
Comment by anuramat 1 day ago
- formatting math blocks is mostly not a thing; some formatters will straight up break the document depending on the flavor you use
- lsp
- live preview; you could use e.g. a neovim plugin for that, but it's built on top of mathjax
- pandoc isn't even a single flavor, as you have a bunch of feature flags and multiple ways to do the same thing
- rendering with pandoc is pretty slow even for a few pages of lecture notes (especially compared to typst)
- latex (required by pandoc) is huge, meanwhile typst binary was something like 50M last time I checked
- syntax highlighting: markdown treesitter grammar only supports the common extensions, e.g. the esoteric latex block variants break the entire document
I guess if I didn't need math rendering, the only major complaint I'd have is performance, but at that point .txt is enough
Comment by applicative 1 day ago
Latex is a typical route to produce pdfs according to your specification, but typst is what I use; occasionally groff. I use latex when what I am typesetting uses greek, arabic or hebrew text, but only because I haven't yet bothered to learn the typst approach to them.
Comment by anuramat 1 day ago
Comment by leephillips 1 day ago
No.
`--pdf-engine=typst`
Comment by anuramat 1 day ago
Comment by leephillips 1 day ago
applicative’s comment is correct. Every one of your bullet points is wrong, except perhaps the one about treesitter highlighting, but what should one expect? Why should a Markdown parser know anything about arbitrary Markdown extensions?
Comment by anuramat 1 day ago
why are you even talking to me?
Comment by JoshTriplett 1 day ago
Comment by jwr 1 day ago
Comment by jfb 1 day ago
Comment by __mharrison__ 1 day ago
Comment by almostjazz 1 day ago
Comment by subset 1 day ago
It's really nice having a decently powerful scripting component, it makes for some fun literate-style programming. You can package things up pretty easily for others to use, too[^2]. It even supports WASM plugins, if you want to go wild.
This package, conch[^3], renders a mini OS and terminal, based on Typst:
> A shell simulator that renders interactive terminal sessions in Typst, powered by a Rust WASM plugin.
> Type shell commands in your Typst document. Conch executes them against a virtual filesystem and renders a realistic terminal window — complete with colored output, syntax highlighting, and animation support.
[^1]: https://github.com/stochastical/distro
Comment by trostaft 1 day ago
However, I really dislike the 'magic' in the math mode syntax, and I think dropping backslashes (more generally, a delineator) for commands was a mistake. Those aren't blockers though, and I think the org is largely making good decisions. I'm really looking forward to the day I can write research in it!
I think all that's remaining is time in the community and stability. Once journals begin accepting it, I know I'll definitely try to submit in it.
Comment by afdbcreid 1 day ago
Comment by k2enemy 1 day ago
https://typst.app/docs/reference/foundations/path/
Referencing files somewhere in or below a document's root from a package has always been pretty convoluted. This should simplify setups like mine that depend on local custom packages.
Comment by bigfatkitten 1 day ago
I’m doing some postgraduate where I need to submit a paper written in the two column IEEE style. I’m pretty sure I spent 40% of my time last time fighting with a Word template, rather than producing content.
Comment by jeremyscanvic 1 day ago
Comment by vatsachak 1 day ago
Comment by __mharrison__ 1 day ago
Comment by boromi 1 day ago
Comment by CodesInChaos 1 day ago
The open-source solutions we tried before were annoying (Used LaTeX, wkhtmltopdf, weasyprint in production and evaluated several more). To avoid that pain we asked some commercial PDF generator software for a quote, but their per document pricing was insane.
Comment by Ametrin 1 day ago
Comment by vatsachak 1 day ago
Comment by d4rkp4ttern 1 day ago
Have conferences that traditionally accepted latex source (and specified latex templates) started accepting typst as well?
Comment by afdbcreid 1 day ago
Yes, https://typst.app/ is the official Typst app (part of how they make money).
> Have conferences that traditionally accepted latex source (and specified latex templates) started accepting typst as well?
Very few by now.
Comment by gucci-on-fleek 1 day ago
I wouldn't count on that happening any time soon. LuaLaTeX and XeLaTeX have been around since ~2008, are 95% backwards-compatible with classic LaTeX, and are significantly easier to use in many circumstances, yet most journals/conferences still only accept documents compiled with pdfLaTeX.
Comment by miki123211 1 day ago
Recent LaTeX versions started to be able to do it, it'd be a shame if people started switching over just when LaTeX finally started pulling their accessibility act together.
Comment by cbolton 1 day ago
Comment by lizimo 1 day ago
Comment by domoritz 1 day ago
Comment by lizimo 16 hours ago
Comment by Zariff 1 day ago
Comment by lizimo 16 hours ago
Comment by meling 1 day ago
It is so snappy and with great error messages. I encourage people to try it out. The typst tutorial is very approachable. Thanks to the Typst devs for this great piece of software.
Comment by memset 1 day ago
I use typst to format sheet music. Given a folder of PDFs, I currently have a script that generates a booklet of music for each person in the ensemble. Hopefully now I can just run a single typst file which outputs multiple PDFs.
Also using it to generate printable programs for concerts: https://concert-programs.projects.jaygoel.com/
Comment by paradox460 1 day ago
Comment by memset 1 day ago
In my case, I’m not actually arranging or writing music - I’m just taking existing music PDFs, separating pages, and creating new PDFs along with page numbers and table of contents. The use case is to have a nice booklet of music for an upcoming performance.
Comment by wtb04 1 day ago
I’m seriously considering rewriting it in Typst at some point. It probably would not be that hard, and I’d likely get much faster builds with far fewer dependencies.
Comment by memset 1 day ago
Comment by rayshan 1 day ago
I see many folks saying you're producing beautiful PDFs. How are you dealing with design?
Comment by mr_mitm 1 day ago
Comment by flossly 1 day ago
Comment by flossly 1 day ago
Much easier stack (I stopped installing Latex-stacks myself, and switched to Overleaf, because it was just too finicky). Much simpler language. Just works.
Comment by JuniperMesos 1 day ago
Comment by ravenical 1 day ago
Comment by satvikpendem 1 day ago
Comment by mamami 1 day ago
So imo in terms of scientific writing it's pretty off the mark
Comment by mr_mitm 1 day ago
Comment by ashton314 1 day ago
Comment by bean469 1 day ago
Comment by wps 1 day ago
I have been waiting on this one for years now. Great work.
Comment by swaits 1 day ago
Yes!
Comment by lejalv 1 day ago
Tree-structured documents in a live (WYSIWYG) typesetter with a programmable editor are possible, as is demonstrated by https://texmacs.org (https://www.texmacs.org/tmweb/home/videos.en.html if you don't have it installed).
Comment by leephillips 1 day ago
I don’t know what this is intended to mean.
“a live (WYSIWYG) typesetter”
I don’t like this mode of interaction. No, thanks.
Typst is fast enough to provide a live preview, and I can use Vim or any editor I want, along with my choice of PDF viewer.
Comment by adamnemecek 1 day ago
The ecosystem is not quite a mature as latex, however I can implement the things I need myself.
If you are on the fence, do yourself a favor and try it. There is a VS Code extension https://marketplace.visualstudio.com/items?itemName=myriad-d....
Comment by atoav 1 day ago
- Adobe Illustrator - Adobe InDesign - Markdown with and without custom themes - Markdown compiled to .idml to integrate into InDesign - HTML and CSS - LATeX
Typst is so far one of the most enjoyable ways of programmatically generating layouted stuff I ever used.
The only thing missing is a good Desktop editor that allows dumb users to double-click a .typ file and see/edit the file instead of having to setup VSCode, plugins etc.
Comment by foo42 1 day ago