aboutsummaryrefslogtreecommitdiff
path: root/book/book.typ
diff options
context:
space:
mode:
Diffstat (limited to 'book/book.typ')
-rw-r--r--book/book.typ81
1 files changed, 0 insertions, 81 deletions
diff --git a/book/book.typ b/book/book.typ
deleted file mode 100644
index 6ceca284..00000000
--- a/book/book.typ
+++ /dev/null
@@ -1,81 +0,0 @@
-#let lang = sys.inputs.at("lang", default: "en")
-#set par(justify: true)
-#set page("a4")
-#set text(lang: lang.split("_").at(0), size: 15pt, font: "FreeSans")
-#show list: set text(font: "Gluten", fill: rgb(46, 73, 0), size: 20pt)
-#show heading.where(level: 2): set text(font: "Great Vibes", size: 40pt)
-
-#let document_flags = ("image_attribution",)
-
-#let load_locale(name) = {
- read("locale/" + name + ".ini")
- .split("\n")
- .filter(l => l != "[hurrycurry]")
- .filter(l => l != "")
- .map(l => l.split("="))
- .map(((x, y)) => (x.trim(), y.trim().replace("%n", "\n")))
-}
-#let translations = {
- let d = (a: 1)
- for (k, v) in load_locale("en") {
- d.insert(k, v)
- }
- for (k, v) in load_locale(lang) {
- d.insert(k, v)
- }
- d
-}
-#let tr(s) = translations.at(s, default: text(fill: red)[TRANSLATION: #s])
-
-#let msgstr(o) = if "translation" in o { tr(o.translation.id) } else { o.text }
-
-#let element(elem) = if elem.t == "document" [
- #for e in elem.es [
- #element(e)
- ]
-] else if elem.t == "page" [
- #page(background: if "background" in elem {
- image(
- "assets/" + elem.background + ".jpeg",
- fit: "cover",
- height: 100%,
- width: 100%,
- )
- } else { none }, [
- #for e in elem.es [
- #element(e)
- ]
- ])
-] else if elem.t == "text" [
- #text(
- font: elem.font,
- size: elem.size * 1pt,
- fill: rgb(elem.color),
- weight: if "bold" in elem { "bold" } else { "regular" },
- msgstr(elem.s),
- )
-] else if elem.t == "list" [
- #list(..elem.es.map(element))
-] else if elem.t == "par" [
- #par[#for x in elem.es.map(element) [#x]]
-] else if elem.t == "table" [
- #table(columns: elem.es.at(0).len(), ..elem.es.flatten().map(element))
-] else if elem.t == "conditional" [
- #if (elem.cond in document_flags) == elem.value [
- #element(elem.e)
- ]
-] else if elem.t == "ref" [
- #link(label(elem.id), element(elem.e))
-] else if elem.t == "label" [
- #element(elem.e) #label(elem.id)
-] else if elem.t == "align" [
- #h(1fr) #align(if elem.dir == "flow_end" { right } else { bottom }, element(elem.e))
-] else if elem.t == "container" [
- #for e in elem.es [
- #element(e)
- ]
-] else [
- #elem
-]
-
-#element(json("book.json"))