Compare commits
3 Commits
415fafc7f4
...
ba72a81c78
Author | SHA1 | Date |
---|---|---|
Sven Vogel | ba72a81c78 | |
Sven Vogel | a796f5ecfb | |
Sven Vogel | 9b90660353 |
34
src/conf.typ
34
src/conf.typ
|
@ -18,16 +18,28 @@
|
|||
// Adds preleminarry note page and watermark
|
||||
draft: true,
|
||||
// information about author(s)
|
||||
author: (
|
||||
name: "Sven Vogel",
|
||||
semester: 4,
|
||||
university: (
|
||||
program: "Informationtechnology",
|
||||
course: "TINF19IT1",
|
||||
faculty: "Technik",
|
||||
university: "DHBW Mannheim",
|
||||
company: "ABB AG",
|
||||
supervisor: "Benny Goodman",
|
||||
matriculation-number: 123456789),
|
||||
name: "dualen Hochschule Baden-Württemberg",
|
||||
campus: "Eppelheim"
|
||||
),
|
||||
authors: (
|
||||
(
|
||||
name: "Sven Vogel",
|
||||
course: "TINF19IT1",
|
||||
company: "ABB AG",
|
||||
supervisor: "Benny Goodman",
|
||||
matriculation-number: 123456789
|
||||
),
|
||||
(
|
||||
name: "Kurt Jammer",
|
||||
course: "TINF24AI2",
|
||||
company: "Siemens",
|
||||
supervisor: "Henry Badman",
|
||||
matriculation-number: 478568763
|
||||
),
|
||||
),
|
||||
// information about thesis
|
||||
thesis: (
|
||||
title: "Unofficial ABB/DHBW Typst template",
|
||||
|
@ -47,7 +59,7 @@
|
|||
header: (
|
||||
content-padding: 1.5em,
|
||||
underline-top-padding: 0pt,
|
||||
logo-height: 3em,
|
||||
logo-height: 5em,
|
||||
logo-image: "res/ABB.svg"),
|
||||
footer: (
|
||||
content-padding: 1.5em),
|
||||
|
@ -87,7 +99,9 @@
|
|||
if key in update {
|
||||
let update_val = update.at(key)
|
||||
|
||||
if type(val) == dictionary and type(update_val) == dictionary {
|
||||
if type(val) == array {
|
||||
// ignore checking arraay
|
||||
} else if type(val) == dictionary and type(update_val) == dictionary {
|
||||
base.insert(key, deep-insert-checked(val, update_val))
|
||||
} else if val == none or type(val) == type(update_val) {
|
||||
base.insert(key, update_val)
|
||||
|
|
|
@ -71,7 +71,7 @@
|
|||
|
||||
// set document properties
|
||||
#set document(
|
||||
author: config.author.name,
|
||||
// author: config.author.name,
|
||||
keywords: config.thesis.keywords,
|
||||
title: config.thesis.title,
|
||||
)
|
||||
|
|
|
@ -12,7 +12,6 @@
|
|||
pagebreak(weak: true)
|
||||
|
||||
let thesis = config.thesis
|
||||
let author = config.author
|
||||
|
||||
if text.lang == "de" [
|
||||
#heading(level: 1, "Sperrvermerk")
|
||||
|
|
|
@ -12,7 +12,6 @@
|
|||
pagebreak(weak: true)
|
||||
|
||||
let thesis = config.thesis
|
||||
let author = config.author
|
||||
|
||||
if text.lang == "de" [
|
||||
#heading("Selbständigkeitserklärung")
|
||||
|
|
|
@ -10,7 +10,25 @@
|
|||
context [
|
||||
|
||||
#let thesis = config.thesis
|
||||
#let author = config.author
|
||||
|
||||
// logo of ABB and DHBW
|
||||
#v(-config.style.header.content-padding)
|
||||
#grid(
|
||||
// set width of columns
|
||||
// we need two, so make both half the page width
|
||||
columns: (50%, 50%),
|
||||
// left align logo of ABB
|
||||
if config.style.header.logo-image == none {
|
||||
// error
|
||||
} else if config.style.header.logo-image.len() > 0 {
|
||||
align(left, image(config.style.header.logo-image, height: config.style.header.logo-height))
|
||||
} else {
|
||||
align(left, image("../res/DHBW.svg", height: config.style.header.logo-height))
|
||||
},
|
||||
// right align logo of DHBW
|
||||
if config.style.header.logo-image.len() > 0 {
|
||||
align(right, image("../res/DHBW.svg", height: config.style.header.logo-height))
|
||||
})
|
||||
|
||||
#set align(center)
|
||||
|
||||
|
@ -31,13 +49,9 @@
|
|||
// faculty
|
||||
#pad()[
|
||||
#if text.lang == "de" [
|
||||
Praxisphase des #author.semester Semesters an der Fakultät für #author.faculty
|
||||
#linebreak()
|
||||
im Studiengang #author.program
|
||||
aus dem Studiengang #config.university.program | #config.university.faculty
|
||||
] else if text.lang == "en" [
|
||||
Practical phase of the #author.semester semester at the Faculty of #author.faculty
|
||||
#linebreak()
|
||||
in the degree program #author.program
|
||||
from the course of studies #config.university.program | #config.university.faculty
|
||||
] else [
|
||||
#context panic("no translation for language: ", text.lang)
|
||||
]
|
||||
|
@ -52,41 +66,82 @@
|
|||
] else [
|
||||
#context panic("no translation for language: ", text.lang)
|
||||
]
|
||||
#config.university.name
|
||||
#linebreak()
|
||||
#author.university
|
||||
#config.university.campus
|
||||
]
|
||||
|
||||
#pad(top: 1em)[
|
||||
#let names = ()
|
||||
#for author in config.authors {
|
||||
names.push(author.name)
|
||||
}
|
||||
#if text.lang == "de" [
|
||||
von
|
||||
] else if text.lang == "en" [
|
||||
by
|
||||
] else [
|
||||
#context panic("no translation for language: ", text.lang)
|
||||
]
|
||||
#set text(size: 16pt)
|
||||
#grid(columns: 1, row-gutter: 1em, ..names)
|
||||
]
|
||||
|
||||
#pad(top: 1em)[
|
||||
#thesis.timeframe
|
||||
]
|
||||
|
||||
#set align(bottom + left)
|
||||
|
||||
#if text.lang == "de" [
|
||||
#table(
|
||||
#grid(
|
||||
columns: 2,
|
||||
column-gutter: 1cm,
|
||||
align: left,
|
||||
row-gutter: 0.5cm,
|
||||
align: top + left,
|
||||
stroke: none,
|
||||
[*Verfasser:*], author.name,
|
||||
[*Bearbeitungszeitraum:*], thesis.timeframe,
|
||||
[*Matrikelnummer, Kurs:*],
|
||||
str(author.matriculation-number) + ", " + author.course,
|
||||
[Matrikelnummer, Kurs:],
|
||||
par(
|
||||
leading: 0.5em,
|
||||
for author in config.authors {
|
||||
str(author.matriculation-number) + ", " + author.course
|
||||
linebreak()
|
||||
},
|
||||
),
|
||||
|
||||
[*Ausbildungsbetrieb:*], author.company,
|
||||
[*Betrieblicher Betreuer:*], author.supervisor,
|
||||
[*Abgabedatum:*], thesis.submission-date,
|
||||
[Betrieb, Betreuer:],
|
||||
par(
|
||||
leading: 0.5em,
|
||||
for author in config.authors {
|
||||
author.company + ", " + author.supervisor
|
||||
linebreak()
|
||||
},
|
||||
),
|
||||
)
|
||||
] else if text.lang == "en" [
|
||||
#table(
|
||||
#grid(
|
||||
columns: 2,
|
||||
column-gutter: 1cm,
|
||||
align: left,
|
||||
row-gutter: 0.5cm,
|
||||
align: top + left,
|
||||
stroke: none,
|
||||
[*Author:*], author.name,
|
||||
[*Editing period:*], thesis.timeframe,
|
||||
[*Matriculation number, course:*],
|
||||
str(author.matriculation-number) + ", " + author.course,
|
||||
[Student ID, Course:],
|
||||
par(
|
||||
leading: 0.5em,
|
||||
for author in config.authors {
|
||||
str(author.matriculation-number) + ", " + author.course
|
||||
linebreak()
|
||||
},
|
||||
),
|
||||
|
||||
[*Training company:*], author.company,
|
||||
[*Company supervisor:*], author.supervisor,
|
||||
[*Submission date:*], thesis.submission-date,
|
||||
[Company, Supervisor:],
|
||||
par(
|
||||
leading: 0.5em,
|
||||
for author in config.authors {
|
||||
author.company + ", " + author.supervisor
|
||||
linebreak()
|
||||
},
|
||||
),
|
||||
)
|
||||
] else [
|
||||
#context panic("no translation for language: ", text.lang)
|
||||
|
|
|
@ -294,19 +294,7 @@
|
|||
let current-page = here().page()
|
||||
|
||||
if current-page == 1 {
|
||||
// logo of ABB and DHBW
|
||||
grid(
|
||||
// set width of columns
|
||||
// we need two, so make both half the page width
|
||||
columns: (50%, 50%),
|
||||
// left align logo of ABB
|
||||
if style.header.logo-image == none {
|
||||
[]
|
||||
} else if style.header.logo-image.len() > 0 {
|
||||
align(left, image(style.header.logo-image, height: style.header.logo-height))
|
||||
},
|
||||
// right align logo of DHBW
|
||||
align(right, image("res/DHBW.svg", height: style.header.logo-height)))
|
||||
// logo moved to content
|
||||
|
||||
} else if query(<end-of-content>)
|
||||
.first()
|
||||
|
|
Loading…
Reference in New Issue