typst-law/lib.typ

40 lines
697 B
Typst

#let law(
symbol: "§",
cols:3,
title: none,
toc_show: true,
toc_header: "Inhaltsverzeichnis",
body,
)={
set page(
paper: "a4",
margin: (
top: .5cm,
bottom: .5cm,
left: 1.5cm,
right: .5cm
),
)
set par(justify: true)
set text(font: "New Computer Modern", size: 7pt, lang: "de", region: "AT")
set par(leading: 2pt)
if title != none {
heading(level: 1)[#title]
}
columns(cols, gutter: 1em)[
#if toc_show [
#outline(title: toc_header)
]
// Show rule for article headers
#show regex("^" + symbol + " \d+.*"): it => {
heading(level: 5, numbering: none, it, outlined: false)
}
#body
]
}