From bad73f4f35da279f645c65a488ba7cc2065f3494 Mon Sep 17 00:00:00 2001 From: jorenchik Date: Sat, 28 Sep 2024 11:05:59 +0300 Subject: [PATCH] started documentation --- docs/abstract.typst | 49 +++++++++++ docs/layout.typst | 205 ++++++++++++++++++++++++++++++++++++++++++++ docs/main.pdf | Bin 0 -> 53581 bytes docs/main.typst | 69 +++++++++++++++ docs/utils.typst | 205 ++++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 528 insertions(+) create mode 100644 docs/abstract.typst create mode 100644 docs/layout.typst create mode 100644 docs/main.pdf create mode 100644 docs/main.typst create mode 100644 docs/utils.typst diff --git a/docs/abstract.typst b/docs/abstract.typst new file mode 100644 index 0000000..7526d93 --- /dev/null +++ b/docs/abstract.typst @@ -0,0 +1,49 @@ +#import "layout.typst": indent-par +#pagebreak() +#heading( + level: 1, + outlined: false, + numbering: none, + "Anotācija", +) + + +#indent-par([ + +// LV abstract + +]) + +#par( + first-line-indent: 0cm, + [*Atslēgvārdi:*], +) + + +// LV keywords + +#text( + hyphenate: auto, + lang: "en", + [ + #pagebreak() + #heading( + level: 1, + outlined: false, + numbering: none, + "Abstract", + ) + #indent-par([ + + // EN abstract + + ]) + #par( + first-line-indent: 0cm, + [*Keywords:*], + ) + + // EN keywords + + ], +) diff --git a/docs/layout.typst b/docs/layout.typst new file mode 100644 index 0000000..ca00705 --- /dev/null +++ b/docs/layout.typst @@ -0,0 +1,205 @@ +#import "@preview/i-figured:0.1.0" +#import "@preview/big-todo:0.2.0": * +#import "@preview/tablex:0.0.6": tablex + +#let indent = 1cm +#let indent-par( + body, +) = par(h(indent) + body) + +#let project( + university: "", + faculty: "", + title: [], + authors: (), + advisor: "", + date: "", + body, +) = { + set document(author: authors) + + set page( + margin: ( + left: 30mm, + right: 20mm, + top: 20mm, + bottom: 20mm, + ), + number-align: center, + paper: "a4", + ) + set text( + //font: "New Computer Modern", + font: "CMU", size: 12pt, hyphenate: auto, lang: "lv", region: "LV", + ) + show raw: set text(font: "New Computer Modern Mono") + + show math.equation: set text(weight: 400) + + // Formatting for regular text + set par( + justify: true, + leading: 1.5em, + first-line-indent: indent, + ) + show par: set block(spacing: 1.5em) // Set 1.5em gap between paragraphs + show heading: set block(spacing: 1.5em) + set terms(separator: [ -- ]) + + // Headings + set heading(numbering: "1.1.") + show heading: it => { + if it.level == 1 { + // pagebreak(weak: true) + text( + 14pt, + align( + center, + upper(it), + ), + ) + } else { + it + } + } + + /* Title page config start */ + align( + center, + upper( + text( + size: 16pt, + [ + #university\ + #faculty + ], + ), + ), + ) + + v(1fr) + + align( + center, + text( + 20pt, + weight: "bold", + title, + ), + ) + + v(1fr) + + // Author information + align( + right, + [ + #if authors.len() > 1 { + text( + weight: "bold", + "Darba autori:", + ) + } else { + text( + weight: "bold", + "Darba autors:", + ) + }\ + #authors.join("\n") + + #v(2em) + + #if advisor != "" { + text( + weight: "bold", + "Darba vadītājs:\n", + ) + advisor + } + ], + ) + + v(0.5fr) + + align( + center, + upper( + text(date), + ), + ) + /* Title page config end */ + + // WARNING: removove before sending + // todo_outline + + /* --- Figure/Table conf start --- */ + show heading: i-figured.reset-counters + show figure: i-figured.show-figure.with(numbering: "1.1.") + + show figure.where(kind: "i-figured-table"): set block(breakable: true) + show figure.where(kind: "i-figured-table"): set figure.caption(position: top) + + show figure: set par(justify: false) // disable justify for figures (tables) + + show figure.caption: it => { + if it.kind == "i-figured-table" { + align( + end, + emph(it.counter.display(it.numbering) + " tabula ") + text( + weight: "bold", + it.body, + ), + ) + } else if it.kind == "i-figured-image" { + align( + start, + emph(it.counter.display(it.numbering) + " att. ") + text( + weight: "bold", + it.body, + ), + ) + } else { + it + } + } + + set ref(supplement: it => { }) // disable default reference suppliments + /* --- Figure/Table conf end --- */ + + set list(marker: ( + [•], + [--], + [\*], + [·], + )) + set enum(numbering: "1aiA)") // TODO: make the same style as LaTeX: 1. | (a) | i. | A. + + // Abstract + include "abstract.typst" + + /* ToC config start */ + // Uppercase 1st level headings in ToC + show outline.entry.where(level: 1): it => { + upper(it) + } + + pagebreak() + outline( + depth: 3, + indent: 1cm, + title: text( + size: 14pt, + "SATURS", + ), + ) + /* ToC config end */ + + // Start page numering + set page( + numbering: "1", + number-align: center, + ) + + // Main bdy. + body +} diff --git a/docs/main.pdf b/docs/main.pdf new file mode 100644 index 0000000000000000000000000000000000000000..b065d97d2bdb07576ca96c5669bf16e1eb9d539b GIT binary patch literal 53581 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 0 { + custom-block( + text( + weight: "bold", + titles.at(i), + ), + ) + } + custom-block( + items.pos().at(i), + ) + } + ], + ) + linebreak() +} + +#let parameter-table( + caption: "", + ..items, +) = { + if caption == "" { + caption = items.pos().first() + } + longtable( + titles: ( + "Parametra nosaukums", + "Parametra identifikators", + "Parametra apraksts", + "Parametra prasības", + "Parametra piemērs (/-i)", + ), + caption: caption, + ..items, + ) +} + +#let procedure-table( + caption: "", + ..items, +) = { + if caption == "" { + caption = items.pos().first() + } + longtable( + titles: ( + "Procedūras nosaukums", + "Procedūras identifikators", + "Procedūras apraksts", + "Ievade", + "Apstrāde", + "Izvade", + ), + caption: caption, + ..items, + ) +} + +#let function-table( + caption: "", + ..items, +) = { + if caption == "" { + caption = items.pos().first() + } + longtable( + titles: ( + "Funkcijas nosaukums", + "Funkcijas identifikators", + "Ievads", + "Ievade", + "Apstrāde", + "Izvade", + "Paziņojumi", + ), + caption: caption, + ..items, + ) +} + + +#let entity-table-row( + ..items, +) = { + ( + items.pos().at(0), + upper( + raw( + items.pos().at(1), + block: false, + ), + ), + upper( + raw( + items.pos().at(2), + block: false, + ), + ), + items.pos().at(3), + ) +} + +#let entity-table( + caption: "", + id: (), + ..items, +) = { + if id == () { + id = ( + "id", + "serial8", + "primary key, not null", + "Unikālais identifikators", + ) + } + + figure( + caption: caption, + kind: table, + tablex( + columns: (4cm, 3cm, auto, auto), + repeat-header: true, + /* Header */ + [*Lauks*], [*Datu tips*], [*Lauka atribūti*], [*Apraksts*], + + ..entity-table-row(..id), // id row + + ..for i in range(items.pos().len(), step:4){ + entity-table-row(..items.pos().slice(i, i+4)) + }, + ), + ) +} + +#let todo( + ..body, +) = { + TODO( + ..body, + inline: true, + big_text: 14pt, + small_text: 12pt, + ) +} + +#let hyperlink-source( + author, + title, + link_str, + date, +) = { + if link_str == "" { + [#author #title Aplūkots #date.display("[day].[month].[year]")] + } else { + [#author #title Pieejams: #link(link_str) aplūkots #date.display("[day].[month].[year]")] + } +}