updated style
This commit is contained in:
parent
25692f0bde
commit
ca168bdd79
|
@ -0,0 +1,3 @@
|
||||||
|
% Bibliography based on BibTeX
|
||||||
|
% format: https://www.bibtex.com/g/bibtex-format/
|
||||||
|
% possible entry types: https://www.bibtex.com/e/entry-types/
|
|
@ -0,0 +1,8 @@
|
||||||
|
|
||||||
|
language: de
|
||||||
|
ligratures: true
|
||||||
|
hyphenate: true
|
||||||
|
paragraph-spacing: 1.5 # relative to line height
|
||||||
|
line-spacing: 0.75 # relative to line height
|
||||||
|
first-line-indent: 1 # in centimetres
|
||||||
|
font-size: 12 # in point
|
|
@ -0,0 +1,9 @@
|
||||||
|
|
||||||
|
glossary:
|
||||||
|
|
||||||
|
# Example:
|
||||||
|
|
||||||
|
# - short: PLC
|
||||||
|
# long: Programmable Logic Controller
|
||||||
|
# desc: Industrial computer for controlling automation devices
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,47 @@
|
||||||
|
|
||||||
|
#let TitleSize = 24pt
|
||||||
|
#let SubtitleSize = 18pt
|
||||||
|
#let LargetextSize = 14pt
|
||||||
|
|
||||||
|
// titles are bold and twice the size of normal text
|
||||||
|
// also they are centered and not justified
|
||||||
|
#let title(x) = {
|
||||||
|
align(center, par(justify: false, text(weight: "regular", size: TitleSize)[#x]))
|
||||||
|
}
|
||||||
|
|
||||||
|
// subtitles are 1.5x the size of normal text
|
||||||
|
// also they are centered and not justified
|
||||||
|
#let subtitle(x) = {
|
||||||
|
par(justify: false, text(size: SubtitleSize)[#x])
|
||||||
|
}
|
||||||
|
|
||||||
|
#let largetext(x) = {
|
||||||
|
par(justify: false, text(size: LargetextSize)[#x])
|
||||||
|
}
|
||||||
|
|
||||||
|
#let signature = {
|
||||||
|
set align(bottom)
|
||||||
|
|
||||||
|
grid(
|
||||||
|
// set width of columns
|
||||||
|
// we need two, so make both half the page width
|
||||||
|
columns: (50%, 50%),
|
||||||
|
row-gutter: 0.75em,
|
||||||
|
align(left, {line(length: 6cm)}),
|
||||||
|
align(left, {line(length: 6cm)}),
|
||||||
|
align(left, "Ort, Datum"),
|
||||||
|
align(left, "Unterschrift")
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
#let to_em(x) = {
|
||||||
|
x * 1em
|
||||||
|
}
|
||||||
|
|
||||||
|
#let to_cm(x) = {
|
||||||
|
x * 1cm
|
||||||
|
}
|
||||||
|
|
||||||
|
#let to_pt(x) = {
|
||||||
|
x * 1pt
|
||||||
|
}
|
155
src/main.typ
155
src/main.typ
|
@ -1,73 +1,190 @@
|
||||||
|
|
||||||
// style text
|
#import "prelude.typ" as prelude
|
||||||
#set text(
|
|
||||||
ligatures: true,
|
|
||||||
size: 12pt // global font size
|
|
||||||
)
|
|
||||||
|
|
||||||
// page geometry
|
// set page geometry:
|
||||||
|
// paper format of A4
|
||||||
#set page(
|
#set page(
|
||||||
margin: (left: 3cm, right: 2cm, top: 2cm + 2em + 2em, bottom: 2cm),
|
margin: (left: 3cm, right: 2cm, top: 2cm + 2em, bottom: 2cm),
|
||||||
paper: "a4",
|
paper: "a4",
|
||||||
)
|
)
|
||||||
|
|
||||||
#let info = yaml("info.yaml")
|
// set global text parameter
|
||||||
|
#set text(
|
||||||
|
font: "Times New Roman",
|
||||||
|
size: prelude.to_pt(prelude.format.font-size),
|
||||||
|
ligatures: prelude.format.ligratures,
|
||||||
|
hyphenate: prelude.format.hyphenate,
|
||||||
|
alternates: prelude.format.ligratures,
|
||||||
|
discretionary-ligatures: prelude.format.ligratures,
|
||||||
|
lang: prelude.format.language
|
||||||
|
)
|
||||||
|
|
||||||
|
// set the text properties of verbatim/raw text blocks
|
||||||
|
#show raw: set text(
|
||||||
|
font: "FiraCode Nerd Font",
|
||||||
|
size: prelude.to_pt(prelude.format.font-size),
|
||||||
|
ligatures: prelude.format.ligratures,
|
||||||
|
hyphenate: prelude.format.hyphenate,
|
||||||
|
alternates: prelude.format.ligratures,
|
||||||
|
discretionary-ligatures: prelude.format.ligratures,
|
||||||
|
lang: prelude.format.language
|
||||||
|
)
|
||||||
|
|
||||||
|
// use block element as paragraph
|
||||||
|
// set block settings for every paragraph
|
||||||
|
#show par: set block(
|
||||||
|
below: prelude.to_em(prelude.format.paragraph-spacing), // paragraph spacing
|
||||||
|
)
|
||||||
|
|
||||||
|
// set global paragraph settings
|
||||||
|
#set par(
|
||||||
|
leading: prelude.to_em(prelude.format.line-spacing),
|
||||||
|
justify: true,
|
||||||
|
first-line-indent: prelude.to_cm(prelude.format.first-line-indent)
|
||||||
|
)
|
||||||
|
|
||||||
// set PDF meta information
|
// set PDF meta information
|
||||||
#set document(
|
#set document(
|
||||||
author: info.autor,
|
author: prelude.info.autor,
|
||||||
date: datetime.today(),
|
date: datetime.today(),
|
||||||
keywords: info.stichwörter
|
keywords: prelude.info.stichwörter
|
||||||
)
|
)
|
||||||
|
|
||||||
|
#set heading(numbering: none)
|
||||||
|
#set page(numbering: "I.", footer: "")
|
||||||
|
|
||||||
|
#show heading.where(
|
||||||
|
level: 1
|
||||||
|
): it => block(width: 100%)[
|
||||||
|
#set align(center)
|
||||||
|
#set text(prelude.to_pt(prelude.format.font-size) * 2, weight: "regular")
|
||||||
|
#it.body
|
||||||
|
#v(0.5cm)
|
||||||
|
]
|
||||||
|
|
||||||
#include "pages/titel.typ"
|
#include "pages/titel.typ"
|
||||||
#include "pages/selbständigkeitserklärung.typ"
|
#include "pages/selbständigkeitserklärung.typ"
|
||||||
#include "pages/sperrvermerk.typ"
|
#include "pages/sperrvermerk.typ"
|
||||||
#include "pages/gender-hinweis.typ"
|
|
||||||
#include "pages/übersicht-arbeitspakete.typ"
|
|
||||||
|
|
||||||
#set page(
|
#set page(
|
||||||
binding: left,
|
binding: left,
|
||||||
header-ascent: 2em,
|
header-ascent: 1em,
|
||||||
header: locate(loc => {
|
header: locate(loc => {
|
||||||
|
smallcaps(prelude.info.titel)
|
||||||
|
v(-2em)
|
||||||
align(right, counter(page).display("I."))
|
align(right, counter(page).display("I."))
|
||||||
v(-0.75em)
|
v(-1em)
|
||||||
line(length: 100%)
|
line(length: 100%)
|
||||||
}),
|
}),
|
||||||
footer: ""
|
footer: ""
|
||||||
)
|
)
|
||||||
|
|
||||||
// vorwort
|
#show heading.where(
|
||||||
|
level: 1
|
||||||
|
): it => block(width: 100%)[
|
||||||
|
#set align(left)
|
||||||
|
#set text(prelude.to_pt(prelude.format.font-size) * 2, weight: "regular")
|
||||||
|
#v(0.25cm)
|
||||||
|
#it.body
|
||||||
|
#v(0.5cm)
|
||||||
|
]
|
||||||
|
|
||||||
#outline(title: "Inhaltsverzeichnis")
|
#include "pages/gender-hinweis.typ"
|
||||||
|
#include "pages/übersicht-arbeitspakete.typ"
|
||||||
|
|
||||||
|
#outline(title: "Inhaltsverzeichnis", indent: auto)
|
||||||
|
|
||||||
#pagebreak()
|
#pagebreak()
|
||||||
|
|
||||||
#outline(
|
#outline(
|
||||||
title: [Abbildungsverzeichnis],
|
title: "Abbildungsverzeichnis",
|
||||||
target: figure.where(kind: image),
|
target: figure.where(kind: image),
|
||||||
)
|
)
|
||||||
|
|
||||||
#pagebreak()
|
#pagebreak()
|
||||||
|
|
||||||
#outline(
|
#outline(
|
||||||
title: [Tabellensverzeichnis],
|
title: "Tabellensverzeichnis",
|
||||||
target: figure.where(kind: table),
|
target: figure.where(kind: table),
|
||||||
)
|
)
|
||||||
|
|
||||||
#pagebreak()
|
#pagebreak()
|
||||||
|
|
||||||
#outline(
|
#outline(
|
||||||
title: [Quelltextverzeichnis],
|
title: "Quelltextverzeichnis",
|
||||||
target: figure.where(kind: raw),
|
target: figure.where(kind: raw),
|
||||||
)
|
)
|
||||||
|
|
||||||
#pagebreak()
|
#pagebreak()
|
||||||
|
|
||||||
|
// for creating glossary
|
||||||
|
#import "@preview/glossarium:0.2.6": make-glossary, print-glossary, gls, glspl
|
||||||
|
#show: make-glossary
|
||||||
|
|
||||||
|
= Glossar
|
||||||
|
|
||||||
|
// read all entries from config file
|
||||||
|
#let glossary = yaml("../conf/glossary.yaml")
|
||||||
|
// destination array
|
||||||
|
#let glossary_entries = ()
|
||||||
|
|
||||||
|
// parse TOML entries into correct format
|
||||||
|
#if glossary.glossary != none {
|
||||||
|
for entry in glossary.glossary {
|
||||||
|
let short = entry.at("short", default: none)
|
||||||
|
let long = entry.at("long", default: none)
|
||||||
|
let desc = entry.at("desc", default: none)
|
||||||
|
|
||||||
|
if short == none {
|
||||||
|
panic("Key of glossary term must be specified")
|
||||||
|
}
|
||||||
|
|
||||||
|
glossary_entries.push((key: short, short: short, long: long, desc: desc))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#print-glossary(glossary_entries)
|
||||||
|
|
||||||
|
#pagebreak()
|
||||||
|
|
||||||
|
// reset page counter
|
||||||
|
#counter(page).update(0)
|
||||||
|
|
||||||
|
= Abteilung
|
||||||
|
|
||||||
|
#show heading.where(
|
||||||
|
level: 1
|
||||||
|
): it => block(width: 100%)[
|
||||||
|
#set align(left)
|
||||||
|
#set text(prelude.to_pt(prelude.format.font-size) * 2, weight: "regular")
|
||||||
|
#v(0.25cm)
|
||||||
|
#it.numbering
|
||||||
|
#it.body
|
||||||
|
#v(0.5cm)
|
||||||
|
]
|
||||||
|
|
||||||
|
#set heading(numbering: "1.")
|
||||||
#set page(
|
#set page(
|
||||||
|
binding: left,
|
||||||
|
header-ascent: 1em,
|
||||||
header: locate(loc => {
|
header: locate(loc => {
|
||||||
align(right, counter(page).display("1."))
|
align(right, counter(page).display("1."))
|
||||||
|
v(-1em)
|
||||||
line(length: 100%)
|
line(length: 100%)
|
||||||
}),
|
}),
|
||||||
footer: ""
|
footer: ""
|
||||||
)
|
)
|
||||||
|
|
||||||
|
#set page(numbering: "1.")
|
||||||
|
|
||||||
|
= Kapitel
|
||||||
|
#lorem(100)
|
||||||
|
|
||||||
|
#pagebreak()
|
||||||
|
|
||||||
|
#set heading(numbering: none)
|
||||||
|
|
||||||
|
#bibliography(
|
||||||
|
style: "ieee",
|
||||||
|
"../conf/bibliography.bib"
|
||||||
|
)
|
|
@ -1,21 +1,13 @@
|
||||||
|
|
||||||
// load general information from YAML
|
#import "../prelude.typ" as prelude
|
||||||
#let info = yaml("../info.yaml")
|
|
||||||
|
|
||||||
#v(8em)
|
|
||||||
|
|
||||||
// title
|
// title
|
||||||
#text(size: 2em, weight: "semibold", align(center, "Gender-Hinweis"))
|
= Gender-Hinweis
|
||||||
|
|
||||||
#v(3em)
|
#prelude.largetext()[
|
||||||
|
Zur besseren Lesbarkeit wird in dieser Arbeit das generische Maskulinum verwendet.
|
||||||
#set par(justify: true)
|
Die in dieser Arbeit verwendeten
|
||||||
|
Personenbezeichnungen beziehen sich - sofern nicht anders kenntlich gemacht - auf alle Geschlechter.
|
||||||
#text(size: 1.25em)[
|
|
||||||
Zur besseren Lesbarkeit wird in dieser Hausarbeit das gene-
|
|
||||||
rische Maskulinum verwendet. Die in dieser Arbeit verwendeten
|
|
||||||
Personenbezeichnungen beziehen sich - sofern nicht anders kennt-
|
|
||||||
lich gemacht - auf alle Geschlechter.
|
|
||||||
]
|
]
|
||||||
|
|
||||||
#pagebreak()
|
#pagebreak()
|
||||||
|
|
|
@ -1,46 +1,29 @@
|
||||||
|
#import "../prelude.typ" as prelude
|
||||||
// load general information from YAML
|
|
||||||
#let info = yaml("../info.yaml")
|
|
||||||
|
|
||||||
#set align(center)
|
#set align(center)
|
||||||
|
|
||||||
// title
|
// title
|
||||||
#pad(top: 7em, text(size: 2em, weight: "semibold", "Selbständigkeitserklärung"))
|
= Selbständigkeitserklärung
|
||||||
|
|
||||||
#pad(top: 7em, text(size: 1.25em)[
|
#v(1cm)
|
||||||
|
#prelude.largetext()[
|
||||||
Ich versichere hiermit, dass ich meine #linebreak() Prüfung mit dem Thema
|
Ich versichere hiermit, dass ich meine #linebreak() Prüfung mit dem Thema
|
||||||
])
|
]
|
||||||
|
|
||||||
#pad(
|
#v(1cm)
|
||||||
top: 4em,
|
#prelude.title(prelude.info.titel)
|
||||||
{
|
|
||||||
text(size: 1.5em, weight: "semibold", info.titel)
|
|
||||||
linebreak()
|
|
||||||
text(size: 1.5em, info.untertitel)
|
|
||||||
}
|
|
||||||
)
|
|
||||||
|
|
||||||
#pad(top: 6em, text(size: 1.5em)[
|
// subtitle
|
||||||
|
#prelude.subtitle(prelude.info.untertitel)
|
||||||
|
|
||||||
|
#v(1cm)
|
||||||
|
#prelude.largetext()[
|
||||||
selbständig verfasst und keine anderen als die angegebenen
|
selbständig verfasst und keine anderen als die angegebenen
|
||||||
Quellen und Hilfsmittel benutzt habe. Ich versichere zudem, dass die
|
Quellen und Hilfsmittel benutzt habe. Ich versichere zudem, dass die
|
||||||
eingereichte elektronische Fassung mit der gedruckten Fassung
|
eingereichte elektronische Fassung mit der gedruckten Fassung
|
||||||
übereinstimmt.
|
übereinstimmt.
|
||||||
])
|
]
|
||||||
|
|
||||||
#set align(bottom)
|
#prelude.signature
|
||||||
|
|
||||||
#pad(
|
|
||||||
top: 3em,
|
|
||||||
grid(
|
|
||||||
// set width of columns
|
|
||||||
// we need two, so make both half the page width
|
|
||||||
columns: (50%, 50%),
|
|
||||||
row-gutter: 0.75em,
|
|
||||||
align(left, {line(length: 16em)}),
|
|
||||||
align(left, {line(length: 16em)}),
|
|
||||||
align(left, "Ort, Datum"),
|
|
||||||
align(left, "Unterschrift")
|
|
||||||
)
|
|
||||||
)
|
|
||||||
|
|
||||||
#pagebreak()
|
#pagebreak()
|
|
@ -1,34 +1,17 @@
|
||||||
|
#import "../prelude.typ" as prelude
|
||||||
// load general information from YAML
|
|
||||||
#let info = yaml("../info.yaml")
|
|
||||||
|
|
||||||
#box(height: 7em)
|
|
||||||
|
|
||||||
// title
|
// title
|
||||||
#text(size: 2em, weight: "semibold", align(center, "Sperrvermerk"))
|
= Sperrvermerk
|
||||||
|
|
||||||
#box(height: 2em)
|
#v(1cm)
|
||||||
|
|
||||||
#set par(justify: true)
|
#prelude.largetext()[
|
||||||
|
|
||||||
#text(size: 1.25em)[
|
|
||||||
Der Inhalt dieser Arbeit darf weder als Ganzes noch in
|
Der Inhalt dieser Arbeit darf weder als Ganzes noch in
|
||||||
Auszügen Personen außerhalb des Prüfungsprozesses
|
Auszügen Personen außerhalb des Prüfungsprozesses
|
||||||
und des Evaluationsverfahrens zugänglich gemacht werden,
|
und des Evaluationsverfahrens zugänglich gemacht werden,
|
||||||
sofern keine anders lautende Genehmigung der Ausbildungsstätte vorliegt.
|
sofern keine anders lautende Genehmigung der Ausbildungsstätte vorliegt.
|
||||||
]
|
]
|
||||||
|
|
||||||
#box(height: 7em)
|
#prelude.signature
|
||||||
|
|
||||||
#grid(
|
|
||||||
// set width of columns
|
|
||||||
// we need two, so make both half the page width
|
|
||||||
columns: (50%, 50%),
|
|
||||||
row-gutter: 0.75em,
|
|
||||||
align(left, {line(length: 16em)}),
|
|
||||||
align(left, {line(length: 16em)}),
|
|
||||||
align(left, "Ort, Datum"),
|
|
||||||
align(left, "Unterschrift")
|
|
||||||
)
|
|
||||||
|
|
||||||
#pagebreak()
|
#pagebreak()
|
||||||
|
|
|
@ -1,49 +1,46 @@
|
||||||
|
#import "../prelude.typ" as prelude
|
||||||
|
|
||||||
// load general information from YAML
|
#let LogoHeight = 1.5cm
|
||||||
#let info = yaml("../info.yaml")
|
|
||||||
|
|
||||||
#set align(center)
|
#set align(center)
|
||||||
|
|
||||||
// logo of ABB and DHBW
|
// logo of ABB and DHBW
|
||||||
#pad(
|
#grid(
|
||||||
top: 3em,
|
// set width of columns
|
||||||
grid(
|
// we need two, so make both half the page width
|
||||||
// set width of columns
|
columns: (50%, 50%),
|
||||||
// we need two, so make both half the page width
|
// left align logo of ABB
|
||||||
columns: (50%, 50%),
|
align(left, image("../../res/svg/ABB.svg", height: LogoHeight)),
|
||||||
// left align logo of ABB
|
// right align logo of DHBW
|
||||||
align(left, image("../../res/svg/ABB.svg", height: 35pt)),
|
align(right, image("../../res/svg/DHBW.svg", height: LogoHeight))
|
||||||
// right align logo of DHBW
|
|
||||||
align(right, image("../../res/svg/DHBW.svg", height: 40pt))
|
|
||||||
)
|
|
||||||
)
|
)
|
||||||
|
|
||||||
// title
|
// title
|
||||||
#pad(top: 4em, text(size: 2em, weight: "semibold", info.titel))
|
#v(2cm)
|
||||||
|
#prelude.title(prelude.info.titel)
|
||||||
|
|
||||||
// subtitle
|
// subtitle
|
||||||
#pad(top: 1em, text(size: 1.5em, info.untertitel))
|
#prelude.subtitle(prelude.info.untertitel)
|
||||||
|
|
||||||
// subtitle
|
// type of paper
|
||||||
#pad(top: 4em, text(size: 1.5em, weight: "bold", info.typ))
|
#v(1cm)
|
||||||
|
#prelude.largetext(prelude.info.typ)
|
||||||
|
|
||||||
// number of semester
|
// number of semester
|
||||||
#pad(top: 2em)[
|
Praxisphase des #prelude.info.semester Studienjahrs
|
||||||
Praxisphase des #info.semester Studienjahrs
|
|
||||||
]
|
|
||||||
|
|
||||||
// fakulty
|
// fakulty
|
||||||
#pad(top: 0.5em)[
|
#pad(top: 0.5cm)[
|
||||||
an der Fakultät für #info.fakultät
|
an der Fakultät für #prelude.info.fakultät
|
||||||
#linebreak()
|
#linebreak()
|
||||||
im Studiengang #info.studiengang
|
im Studiengang #prelude.info.studiengang
|
||||||
]
|
]
|
||||||
|
|
||||||
// university
|
// university
|
||||||
#pad(top: 1.5em)[
|
#pad(top: 0.5cm)[
|
||||||
an der
|
an der
|
||||||
#linebreak()
|
#linebreak()
|
||||||
#info.universität
|
#prelude.info.universität
|
||||||
]
|
]
|
||||||
|
|
||||||
#set align(bottom + left)
|
#set align(bottom + left)
|
||||||
|
@ -54,32 +51,32 @@
|
||||||
stroke: none,
|
stroke: none,
|
||||||
|
|
||||||
"Verfasser:",
|
"Verfasser:",
|
||||||
info.autor,
|
prelude.info.autor,
|
||||||
|
|
||||||
"Bearbeitungszeitraum:",
|
"Bearbeitungszeitraum:",
|
||||||
info.bearbeitungszeitraum,
|
prelude.info.bearbeitungszeitraum,
|
||||||
|
|
||||||
"Matrikelnummer, Kurs:",
|
"Matrikelnummer, Kurs:",
|
||||||
str(info.matrikelnummer) + ", " + info.studiengang,
|
str(prelude.info.matrikelnummer) + ", " + prelude.info.studiengang,
|
||||||
|
|
||||||
"Ausbildungsbetrieb:",
|
"Ausbildungsbetrieb:",
|
||||||
info.betrieb,
|
prelude.info.betrieb,
|
||||||
|
|
||||||
"Betr. Betreuer:",
|
"Betrieblicher Betreuer:",
|
||||||
info.betreuer,
|
prelude.info.betreuer,
|
||||||
|
|
||||||
"Abgabedatum:",
|
"Abgabedatum:",
|
||||||
info.abgabe
|
prelude.info.abgabe
|
||||||
)
|
)
|
||||||
|
|
||||||
#pad(
|
#pad(
|
||||||
top: 3em,
|
top: 1cm,
|
||||||
grid(
|
grid(
|
||||||
// set width of columns
|
// set width of columns
|
||||||
// we need two, so make both half the page width
|
// we need two, so make both half the page width
|
||||||
columns: (50%, 50%),
|
columns: (50%, 50%),
|
||||||
align(left, "Unterschrift des betrieblichen Betreuers"),
|
align(left, "Unterschrift des betrieblichen Betreuers"),
|
||||||
align(right, {line(length: 16em)})
|
align(right, {line(length: 6cm)})
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
@ -1,22 +1,19 @@
|
||||||
|
#import "../prelude.typ" as prelude
|
||||||
#box(height: 7em)
|
|
||||||
|
|
||||||
// title
|
// title
|
||||||
#text(size: 2em, weight: "semibold", align(center, "Übersicht Arbeitspakete"))
|
= Übersicht Arbeitspakete
|
||||||
|
|
||||||
#box(height: 5em)
|
Folgende Tabelle zeigt die Aktivtäten welche im Zeitraum vom #prelude.info.bearbeitungszeitraum abgehandelt wurden.
|
||||||
|
|
||||||
#let info = yaml("../info.yaml")
|
|
||||||
|
|
||||||
#figure(
|
#figure(
|
||||||
kind: table,
|
kind: table,
|
||||||
caption: "Übersicht Arbeitspakete",
|
caption: "Übersicht Arbeitspakete",
|
||||||
table(
|
table(
|
||||||
columns: 3,
|
columns: (1fr, auto, auto),
|
||||||
align: right,
|
align: center,
|
||||||
inset: 1em,
|
inset: 0.25cm,
|
||||||
[*Thema*], [*Zeitraum*], [*Dauer (Wochen)*],
|
[*Thema*], [*Zeitraum*], [*Dauer (Wochen)*],
|
||||||
..for packet in info.arbeits-pakete {
|
..for packet in prelude.info.arbeits-pakete {
|
||||||
|
|
||||||
let start_split = packet.start.split(".")
|
let start_split = packet.start.split(".")
|
||||||
let start = datetime(day: int(start_split.at(0)), month: int(start_split.at(1)), year: int(start_split.at(2)))
|
let start = datetime(day: int(start_split.at(0)), month: int(start_split.at(1)), year: int(start_split.at(2)))
|
||||||
|
|
|
@ -0,0 +1,9 @@
|
||||||
|
|
||||||
|
// import extras
|
||||||
|
#import "extra/util.typ": title, subtitle, largetext, signature, to_cm, to_pt, to_em
|
||||||
|
|
||||||
|
// import document information
|
||||||
|
#let info = yaml("../info.yaml")
|
||||||
|
|
||||||
|
// general document information
|
||||||
|
#let format = yaml("../conf/format.yaml")
|
Loading…
Reference in New Issue