I have used @typst to write an extended abstract and I still like it.
@typst They have a pretty large plugin system already, which they call universe. Including a package into your document is as easy as importing it:
```
#import "@preview/glossy:0.8.0": *
#import "@preview/scienceicons:0.0.6": orcid-icon
```
I needed a glossary and I wanted to include ORCID-Icons which I can click on.
@typst The scripting support is really nice on first sight: For example, creating including the ORCID-Icons is as easy as defining your own function:
```
#let orcid(orcid) = {
let color = rgb("#AECD54")
return link("https://orcid.org/" + orcid, orcid-icon(color: color, height: 0.9em, baseline: 10%)) }
```
and then we can use this function like this:
```
Janek Laudan#orcid("0000-0003-2443-9475"), Simunto GmbH, #link("mailto:laudan@simunto.com")
```
@typst Similarly, the layout functionality is quite easy to understand: Getting a bold, large, centered title works with the following block:
```
#align(center, text(17pt)[
DSim -- A distributed message-passing mobsim implementation
])
```
The system also supports features like tables and grids which are intuitive to use -- at least more intuitive compared to latex for example.
@typst I wanted to increase the vertical padding between section titles. This is as easy as defining a *show* function, which can be scoped to element types. This function is applied to all headings, receives a heading, prints it and then adds 0.2 line-height of vertical space:
```
#show heading: heading => [
#block(heading)
#v(0.2em)
]
```
@typst As long as one is familiar with scripting and possibly CSS, this is a great alternative to Latex, but because it renders so much faster, possibly also for WYSIWYG editors like Google Docs for example