Gallery
The 81 formulas of the paired corpus, each written in Typst and in LaTeX to compare renderers, as Typlet renders them. Typlet refuses 2, which use features it doesn't support.
Basics
| Typst | Typlet |
|---|---|
$a+b^2 - x_(i,j)^2$ | |
$e^(i pi)+1=0$ | |
$f'(x) + f''(x) + g'''$ | |
$ x = (-b plus.minus sqrt(b^2-4a c))/(2a) $ | |
$ฮฑ+ฮฒ=ฮณ$ |
Fractions
| Typst | Typlet |
|---|---|
$ 1/(1+1/(1+1/x)) $ | |
$ display(1/(1+display(1/(1+display(1/x))))) $ | |
$binom(n, k) = (n!)/(k!(n-k)!)$ | |
$root(3, x+1) + sqrt(sqrt(sqrt(x)))$ | |
$ (partial^2 u)/(partial t^2) = c^2 nabla^2 u $ |
Big operators
| Typst | Typlet |
|---|---|
$ sum_(i=1)^n i^2 = (n(n+1)(2n+1))/6 $ | |
$ integral_0^infinity e^(-x^2) dif x = sqrt(pi)/2 $ | |
$ integral.cont_C arrow(F) dot dif arrow(r) $ | |
$ integral.triple_V f dif V $ | |
$ product_(p "prime") 1/(1-p^(-s)) $ | |
$ lim_(n -> infinity) (1+1/n)^n = e $ | |
$ sum_(0<i<m \ 0<j<n) P(i,j) $ | |
$ attach(limits(sum), tl: b, bl: a, tr: d, br: c) $ | |
$ integral.surf_S bold(E) dot dif bold(A) $ |
Delimiters
| Typst | Typlet |
|---|---|
$ (a/b)^2 [sum_i x_i] $ | |
$ lr(chevron.l psi/2 mid(|) H mid(|) phi chevron.r) $ | |
$lr(size: #120%, ( lr(size: #150%, ( lr(size: #190%, ( lr(size: #240%, (x)) )) )) ))$ | |
$floor(x) + ceil(y)$ | |
$norm(bold(v)) <= abs(x) + abs(y)$ | |
$chevron.l phi|psi chevron.r$ | |
$ lr(zws (dif f)/(dif x) |)_(x=0) $ |
Matrices
| Typst | Typlet |
|---|---|
$ mat(a, b; c, d) $ | |
$ mat(delim: "[", 1,0,dots.c,0; 0,1,dots.c,0; dots.v,dots.v,dots.down,dots.v; 0,0,dots.c,1) $ | |
$ det mat(delim: "|", a, b; c, d) = a d - b c $ | |
$ vec(x, y, z) $ | |
$ mat(augment: #2, 1, 2, 3; 4, 5, 6) $ | |
$ mat(delim: #none, augment: #(hline: 1, vline: 1), a, b; c, d) $ | |
$script(mat(a, b; c, d))$ | |
$ f(x) = cases(x^2 & x >= 0, -x & x < 0) $ | |
$ cases(reverse: #true, a & x>0, b & x<0) => c $ |
Alignment
| Typst | Typlet |
|---|---|
$ (a+b)^2 &= (a+b)(a+b) \ &= a^2 + 2a b + b^2 $ | |
$ a = b + c \ d = e $ | |
$ 10 & x + & 3 & y = 2 \ 3 & x + & 13 & y = 4 $ | |
#set math.equation(numbering: "(1)")
$ E = m c^2 $ | (1) |
Accents
| Typst | Typlet |
|---|---|
$hat(x) thin tilde(y) thin macron(z) thin arrow(v) thin dot(a) thin dot.double(b) thin caron(c) thin breve(d) thin circle(A)$ | |
$hat(a b c) space tilde(x y z) space arrow(A B) space accent(C D, arrow.l.r)$ | |
$overline(A B) space underline(C D)$ | |
$ overbrace(a+dots.c+a, n) space underbrace(1+2+dots.c+100, 5050) $ | |
$a attach(limits(=), t: "def") b attach(limits(<=), t: ?) c$ | |
$dot.triple(x)$ |
Fonts
| Typst | Typlet |
|---|---|
$RR thin NN thin ZZ thin bb(1)$ | |
$cal(L) thin scr(F) thin frak(g)$ | |
$bold(x) dot bold(alpha)$ | |
$upright(d) thin italic(x) thin sans(A) thin mono(B)$ | |
$x = 1 "if" y > 0 "and" #strong[bold]$ | |
$ op("argmax", limits: #true)_x f(x) + op("tr")(A) $ |
Symbols
| Typst | Typlet |
|---|---|
$alpha beta gamma Gamma epsilon.alt theta.alt phi Omega$ | |
$nabla thin partial thin infinity thin aleph_0 thin planck thin ell thin Re thin pee$ | |
$A => B <=> C <- D |-> E arrow.r.hook F arrow.r.squiggly G$ | |
$a <= b != c approx d equiv e (mod n)$ | |
$A subset.eq B supset.neq C, space x in A without B, space y in.not A union B inter emptyset$ | |
$forall x thin exists y space not(p and q) or r tack.r s models t$ | |
$a equiv.not b, space c lt.eq.not d, space e subset.eq.not f$ | |
$A stretch(->)^"over"_"under" B stretch(<-)^f C$ |
Layout
| Typst | Typlet |
|---|---|
$a thin b med c thick d quad e wide f #h(-1em/6) g$ | |
$a + #hide[$x y z$] + b$ | |
$display(sum_(i=1)^n) inline(sum_(i=1)^n) script(x)$ | |
$cancel(x) + cancel(inverted: #true, y) + cancel(cross: #true, z)$ | |
$#box(stroke: 0.5pt, inset: 3pt, $E=m c^2$)$ | |
$#text(fill: red, $x$) + #text(fill: blue, $y$) + #box(fill: yellow, $z$)$ | |
$ sum_(1<=i<=j<=n) x_(i j) $ |
Real formulas
| Typst | Typlet |
|---|---|
$ nabla times arrow(E) = -(partial arrow(B))/(partial t) $ | |
$ f(x) = sum_(n=0)^infinity (f^((n))(a))/(n!) (x-a)^n $ | |
$ i planck partial/(partial t) Psi(bold(r),t) = [-planck^2/(2m) nabla^2 + V(bold(r),t)] Psi(bold(r),t) $ | |
$ hat(f)(xi) = integral_(-infinity)^infinity f(x) e^(-2 pi i x xi) dif x $ | |
$ P(A mid(|) B) = (P(B mid(|) A) P(A))/P(B) $ | |
$ R_(mu nu) - inline(1/2) R g_(mu nu) + Lambda g_(mu nu) = (8 pi G)/c^4 T_(mu nu) $ | |
$ n! tilde.op sqrt(2 pi n) (n/e)^n $ |
Extensions
| Typst | Typlet |
|---|---|
$ mat(delim: #none, A, stretch(->)^f, B; stretch(arrow.b) g, , stretch(arrow.b) h; C, stretch(->)_k, D) $ | |
$2"H"_2 + "O"_2 -> 2"H"_2"O"$ | |
#let Real = $bb(R)$
$ f: Real^n -> Real $ | |
$#link("https://typst.app", $x^2$)$ |
Only in Typst
| Typst | Typlet |
|---|---|
#let m = range(1, 5).map(i => range(1, 5).map(j => $a_(#i #j)$))
$ mat(..#m) $ | Refused: Typlet does not support the `range` function |
#let fib(n) = if n < 2 { n } else { fib(n - 1) + fib(n - 2) }
$ F_20 = #fib(20) $ | |
#show math.equation: set text(fill: blue)
#show "x": $xi$
$ x + y $ | Refused: Typlet does not support `show` rules for text |
#show math.equation: set text(font: "Cambria Math")
$ sum_(i=1)^n x_i^2 $ |