This small Typst package handles the typesetting of Wick contractions. Read docs.pdf
for more information.
#import "@preview/wicked:0.1.0": wick
$ :
wick(id: #1, overline(Psi))_alpha (x)
gamma^mu_(alpha beta)
wick(pos: #top, A)_mu (x)
wick(Psi)_beta (x)
wick(overline(Psi))_eta (y)
gamma^nu_(eta rho) (y)
wick(pos: #top, A)_nu
wick(id: #1, Psi)_rho (y)
: $