94 lines
2.1 KiB
Typst
94 lines
2.1 KiB
Typst
#import "@preview/hei-synd-thesis:0.2.3": *
|
|
#import "@preview/wrap-it:0.1.1": *
|
|
|
|
#let iconbox(
|
|
width: 100%,
|
|
radius: 4pt,
|
|
border: 4pt,
|
|
inset: 10pt,
|
|
outset: -10pt,
|
|
linecolor: code-border,
|
|
icon: none,
|
|
iconheight: 1cm,
|
|
body
|
|
) = {
|
|
if body != none {
|
|
align(left,
|
|
rect(
|
|
stroke: (left:linecolor+border, rest:code-border+0.1pt),
|
|
radius: (left:0pt, right:radius),
|
|
fill: code-bg,
|
|
outset: (left:outset, right:outset),
|
|
inset: (left:inset*2, top:inset, right:inset*2, bottom:inset),
|
|
width: width)[
|
|
#if icon != none {
|
|
align(left,
|
|
table(
|
|
stroke:none,
|
|
align:left+horizon,
|
|
columns: (auto,auto),
|
|
image(icon, height:iconheight), [#body]
|
|
)
|
|
)
|
|
} else {
|
|
body
|
|
}
|
|
]
|
|
)
|
|
}
|
|
}
|
|
|
|
#let llm-proofread = iconbox(
|
|
icon:"/resources/img/logos/chatgpt.svg",
|
|
linecolor: hei-blue
|
|
)[
|
|
#text(size: small)[
|
|
Assistance for the reformulation and paraphrasing of this document was provided by Gemini 3.1.
|
|
Regardless of this assistance, all original code and text remain the work of the original author.
|
|
]]
|
|
|
|
#let ai-warning(txt) = grid(
|
|
columns: 2,
|
|
align: horizon,
|
|
column-gutter: 1em,
|
|
image("/resources/img/logos/chatgpt.svg", width: 2em),
|
|
[#txt]
|
|
)
|
|
|
|
#import "@preview/chronos:0.3.0"
|
|
|
|
#let actor(
|
|
name,
|
|
disp_name: none,
|
|
..args
|
|
) = {
|
|
let dn = name
|
|
if disp_name != none {
|
|
dn = align(center+horizon)[#disp_name]
|
|
}
|
|
let par = chronos._par(name, display-name: dn, ..args.named())
|
|
let actor = (
|
|
"display": par,
|
|
"name" : name
|
|
)
|
|
return actor
|
|
}
|
|
|
|
#let sync(actor1, actor2, comment, ..args) = {
|
|
return chronos._seq(
|
|
actor1.name, actor2.name,
|
|
comment: comment,
|
|
comment-align: "start",
|
|
..args.named()
|
|
)
|
|
}
|
|
#let async(actor1, actor2, comment, slant: auto, ..args) = {
|
|
return chronos._seq(
|
|
actor1.name, actor2.name,
|
|
comment: comment,
|
|
comment-align: "start",
|
|
end-tip: ">>",
|
|
slant: slant,
|
|
..args.named()
|
|
)
|
|
} |