Obsidian Typst
Renders typst
code blocks into images using Typst through the power of WASM! This is still very much in development, so suggestions/bugs are welcome!
NOTE: The plugin has to load fonts at startup, which on my machine takes about 20s but after that its heckin fast.
Example
```typst
#set page(width: 10cm, height: auto)
#set heading(numbering: "1.")
#set text(white)
= Fibonacci sequence
The Fibonacci sequence is defined through the
_recurrence relation_ $F_n = F_(n-1) + F_(n-2)$.
It can also be expressed in closed form:
$ F_n = floor(1 / sqrt(5) phi.alt^n), quad
phi.alt = (1 + sqrt(5)) / 2 $
#let count = 10
#let nums = range(1, count + 1)
#let fib(n) = (
if n <= 2 { 1 }
else { fib(n - 1) + fib(n - 2) }
)
The first #count numbers of the sequence are:
#align(center, table(
columns: count,
..nums.map(n => $F_#n$),
..nums.map(n => str(fib(n))),
))
```
Installation
Until this plugin is submitted to the community plugins please install it by copying main.js
, styles.css
, and manifest.json
from the releases tab to the folder .obsidian/plugins/obsidian-typst
.
TODO / Goals (In no particular order)
- Better font loading
- Fix Github Actions
- Fix output image scaling
- Use HTML output
- Override default equation rendering
- Custom editor for
.typ
files