this post was submitted on 19 Oct 2024
99 points (100.0% liked)

Rust

6025 readers
1 users here now

Welcome to the Rust community! This is a place to discuss about the Rust programming language.

Wormhole

!performance@programming.dev

Credits

  • The icon is a modified version of the official rust logo (changing the colors to a gradient and black background)

founded 1 year ago
MODERATORS
 

Typst is a new markup-based typesetting system that is designed to be as powerful as LaTeX while being much easier to learn and use

Typst is awesome, in particular if you want to generate documents programmatically.

top 15 comments
sorted by: hot top controversial new old
[–] 2xsaiko@discuss.tchncs.de 13 points 1 month ago (1 children)

This is a great project. The way it handles mixing markup and code is on point. Also, for drawing its CeTZ is so much nicer than TiKZ, the LaTeX equivalent. I made some great graphics with it for a seminar presentation and paper that I couldn’t have done anywhere near as easily with LaTeX. (The presentation slides I made entirely with Typst, the paper had a LaTeX template that I didn’t feel like remaking because it was huge so I just embedded the graphics I made with Typst)

[–] wisha@lemmy.ml 5 points 1 month ago (1 children)

There are a few typst packages for making presentation slides. Which one did you use?

[–] 2xsaiko@discuss.tchncs.de 4 points 1 month ago

Polylux, with a custom theme. Tbh, I wasn't aware there were others until now!

[–] biber 9 points 1 month ago (1 children)

Using typst since some months - way saner than latex

[–] zabby@lemmy.blahaj.zone 1 points 1 month ago (1 children)

Do you mind sharing your experience? What kind of documents have you been writing and how easy has it been to adopt? Any frustrations or issues?

[–] biber 3 points 1 month ago (1 children)

I use typst.app mostly, but used typst for formulas in quarto and in Makie.jl for combining scientific figures with complex formulas.I wrote some smaller documents and one paper collaboratively as of yet. Speed is amazing, error messages are interpretable.

The git integration works ok, once we had an issue with a weird branch problem but more on our side, but there is no way to fix it from typst.app right now.

What is missing is a suggestion-feature, mimicking track changes in word. E.g. overleaf has this (but not super nice imho).

Coming from a hacky-latex experience (not a latex dev in any way) of >10 years, the switch was immediate and easy. All that arcane knowledge I can now forget, figure, captions etc. just work.

I don't have experience with super crazy long formulas, not a mathematician.

But yeah, I was super sceptical at first - I mean, the promise to replace latex is a bit insane. But for my stuff, it just works.

Just try it at typst.app, maybe you don't even need to register, I don't remember.

[–] zabby@lemmy.blahaj.zone 1 points 1 month ago

Woah, that sounds insanely promising. Thanks for sharing!

[–] muhyb@programming.dev 5 points 1 month ago

Looks great.

[–] pohart@programming.dev 4 points 1 month ago

I haven't used latex in 20+ years, so it's not real fresh for me but this looks like a great alternative.

[–] NanoooK@sh.itjust.works 3 points 1 month ago

I didn't know about this project, it looks promissing.

[–] Cpo@lemm.ee 1 points 2 weeks ago (1 children)

I am currently using it from a backend to generate pdfs.

One thing that prevents me from letting users build their own templates is the scripting capabilities. A joker creating an endless loop could block the whole server.

What would be nice is a "safe" mode in which no access to the file system (include and sorts) and limited runtime makes it safe to let users build their own templates.

[–] KillTheMule@programming.dev 3 points 1 week ago (1 children)

One thing that prevents me from letting users build their own templates is the scripting capabilities. A joker creating an endless loop could block the whole server.

I know little about servers, but can't you run the generation in a thread with a timeout or so? Or maybe compile to wasm and let the generation run on the users machines? I also know little about wasm, but I'd have guessed it has facilities to keep runtime and load under control.

What would be nice is a “safe” mode in which no access to the file system (include and sorts) and limited runtime makes it safe to let users build their own templates.

Ah, are you by chance shelling out to the typst binary? You can actually use typst as a library, and then you've got full control over the files involved, so it's "safe" in that respect.

[–] Cpo@lemm.ee 1 points 1 week ago (1 children)

DUDE!

You are the man!

I did know it was built in rust but never realized I could also use it as a library!

🎉

[–] KillTheMule@programming.dev 3 points 1 week ago (1 children)

Yeah I was very happy to find that out. I was calling latex externally before, and there was a lot of pain interacting with the filesystem and temporary files. Now it all happens in-memory :)

[–] Cpo@lemm.ee 1 points 1 week ago

Exactly the same. Kicking of the binary now, but library could solve a lot of the security issues I was worried about.