-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtemplate.typ
90 lines (78 loc) · 1.81 KB
/
template.typ
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
#import "utils.typ": cerise, datagray
#let project(
organ: "",
author: "",
role: "",
coauthors: (),
type: "Proposition",
title: "",
full_title: "",
date: none,
sm: "",
meme: "",
draft: false,
body,
) = {
if full_title.len() == 0 {
full_title = [#type angående #title]
}
set text(lang: "sv")
set text(
font: "Lato",
size: 11pt
// Heading 22
// Subheading 18
)
// How text was meant to be
set par(justify: true)
show heading: it => {
set text(
size:
if it.level == 1
{22pt}
else if it.level == 2
{18pt}
else if it.level == 3
{14pt}
else {12pt},
fill: if it.level == 4 {black} else {cerise},
style: if it.level == 4 {"italic"} else {"normal"},
)
[#it]
}
set page(
margin: (top: 3.75cm, bottom: 3cm),
header-ascent: 6mm,
header: [
#set text(size: 10pt)
#grid(
columns: (1fr, 5cm, 1fr),
// date -> gray
align(left + horizon, [#type till #sm \ #set text(datagray); #date]),
align(center + horizon, image(
"pictures/dsekt.svg",
width: 1.5cm,
)),
align(right + horizon, [#set text(datagray); #if organ.len() == 0 {author} else {organ} \ #context counter(page).display("1/1", both: true)])
)
],
footer: [
#align(center, [
#set text(size: 10pt, datagray)
Konglig Datasektionen, THS 100 44, datasektionen.se
]
)
],
)
// Draft
set page(foreground: rotate(60deg, text(230pt, fill: gray.transparentize(80%), [#set par(justify: false); UTKAST]))) if draft
align(center, heading[#full_title])
body
v(1em)
if organ.len() > 0 [#organ via\ ]
[#author, #role]
if coauthors.len() > 0 [
\ #coauthors.join("\n")
]
meme
}