Symbols

Multiletter words in math refer either to local variables, functions, text operators, spacing or special symbols. The latter are very important for advanced math.

$
forall v, w in V, alpha in KK: alpha dot (v + w) = alpha v + alpha w
$
Rendered image

You can write the same with unicode:

$
v, wV, α𝕂: α(v + w) = α v + α w
$
Rendered image

Symbols naming

See all available symbols list there.

General idea

Typst wants to define some "basic" symbols with small easy-to-remember words, and build complex ones using combinations. For example,

$
// cont — contour
integral, integral.cont, integral.double, integral.square, sum.integral\

// lt — less than, gt — greater than
lt, lt.circle, lt.curly, lt.eq, lt.eq.curly, lt.not, lt.eq.not, lt.eq.not.curly, gt, lt.gt.eq, lt.gt.not
$
Rendered image

I highly recommend using WebApp/Typst LSP when writing math with lots of complex symbols. That helps you to quickly choose the right symbol within all combinations.

Sometimes the names are not obvious, for example, sometimes it is used prefix n- instead of not:

$
gt.nequiv, gt.napprox, gt.ntilde, gt.tilde.not
$
Rendered image

Common modifiers

  • .b, .t, .l, .r: bottom, top, left, right. Change direction of symbol.

    $arrow.b, triangle.r, angle.l$

    Rendered image
  • .bl, tr: bottom-left, top-right and so on. Where diagonal directions are possible.

  • .bar, .circle, .times, ...: adds corresponding element to symbol

  • .double, .triple, .quad: combine symbol 2, 3 or 4 times

  • .not crosses the symbol

  • .cw, .ccw: clock-wise and counter-clock-wise. For arrows and other things.

  • .big, .small:

    $plus.circle.big plus.circle, times.circle.big plus.circle$

    Rendered image
  • .filled: fills the symbol

    $square, square.filled, diamond.filled, arrow.filled$

    Rendered image

Greek letters

Lower case letters start with lower case letter, upper case start with upper case.

For different versions of letters, use .alt

$
alpha, Alpha, beta, Beta, beta.alt, gamma, pi, Pi,\
pi.alt, phi, phi.alt, Phi, omicron, kappa, kappa.alt, Psi,\
theta, theta.alt, xi, zeta, rho, rho.alt, kai, Kai,
$
Rendered image

Blackboard letters

Just use double of them. If you want to make some other symbol blackboard, use bb:

$bb(A), AA, bb(1)$
Rendered image

Fonts issues

Default font is New Computer Modern Math. It is a good font, but there are some inconsistencies.

Typst maps symbol names to unicode, so if the font has wrong symbols, Typst will display wrong ones.

Empty set

See example:

// nothing in default math font is something bad
$nothing, nothing.rev, diameter$

#show math.equation: set text(font: "Fira Math")

// Fira math is more consistent
$nothing, nothing.rev, diameter$
Rendered image

However, you can fix this with font feature:

#show math.equation: set text(features: ("cv01",))

$nothing, nothing.rev, diameter$
Rendered image

Or simply using "show" rule:

#show math.nothing: math.diameter

$nothing, nothing.rev, diameter$
Rendered image