diff --git a/README.md b/README.md index d1faef8..5d1b1bc 100644 --- a/README.md +++ b/README.md @@ -9,3 +9,5 @@ Namely, it contains: - Reports Everything is, and will always be written, in Typst. All praise be upon our mighty Typst overlords. + +New protocols should be created by copying the relevant template from `meta/blanks/` and filling in the required information. diff --git a/meta/blanks/protocol.typ b/meta/blanks/protocol.typ new file mode 100644 index 0000000..8016528 --- /dev/null +++ b/meta/blanks/protocol.typ @@ -0,0 +1,57 @@ +#import "/meta/templates/protocol.typ": protocol, signature + +#show: protocol.with( + "PR#", + datetime(year: 2000, month: 9, day: 12), + "" +) + += Formalia + +== Pull Requestens högtidliga öppnande + +== Val av mötesordförande + +== Val av mötessekreterare + +== Val av två justeringsmän, tillika rösträknare + +== Adjungeringar + +== Pull Requestens behöriga utlysande + +== Anmälan av övriga frågor + +== Godkännande av dagordning + +== Föregående mötesprotokoll + += Rapporter + +== Bootloader + +== Kernel + +== Övriga + += Bordlagda ärenden + += Besluts- och diskussionspunkter + += Övriga frågor + += Slutformalia + +== Nästa Pull Request + +== Pull Requestens avslutande + + +#grid( + columns: (1fr, 1fr), + gutter: 1cm, + signature("Ture Teknolog", "Ordförande"), + signature("Ture Teknolog", "Sekreterare"), + signature("Ture Teknolog", "Justerare / Rösträknare"), + signature("Ture Teknolog", "Justerare / Rösträknare") +) diff --git a/templates/sm.typ b/meta/blanks/sm.typ similarity index 65% rename from templates/sm.typ rename to meta/blanks/sm.typ index 6e89d56..60dd3e1 100644 --- a/templates/sm.typ +++ b/meta/blanks/sm.typ @@ -1,12 +1,9 @@ -#align(left, [ - #figure( - image("/assets/init.svg", width: 14%), - ) -]) - -#align(center, [ - *Rapport \SM\#\* -]) +#import "/meta/templates/sm.typ": sm + +#show: sm.with( + 999, + datetime(year: 2000, month: 9, day: 12), +) = Swedish diff --git a/meta/templates/protocol.typ b/meta/templates/protocol.typ new file mode 100644 index 0000000..6f292e8 --- /dev/null +++ b/meta/templates/protocol.typ @@ -0,0 +1,24 @@ +#let signature(signee, label) = stack( + spacing: 0.1cm, + signee, + box(line(length: 100%, stroke: 0.8pt)), + label +) + +#let protocol(title, date, location, body) = [ + #set text(font: "IBM Plex Mono", size: 9pt, region: "se", lang: "sv") + #set heading(numbering: "1.") + + #metadata(title) + #metadata(date.display("[year]-[month]-[day]")) <date> + #metadata(location) <location> + + #align(center)[ + #figure(image("/assets/init.svg", width: 14%)) + *#title* \ + *#date.display()* \ + *#location* + ] + + #body +] diff --git a/meta/templates/sm.typ b/meta/templates/sm.typ new file mode 100644 index 0000000..c6b725e --- /dev/null +++ b/meta/templates/sm.typ @@ -0,0 +1,16 @@ +#let sm(sm-nr, date, body) = [ + #set text(font: "IBM Plex Mono", size: 9pt, region: "se", lang: "sv") + + #let title = "Rapport SM#" + str(sm-nr) + + #metadata(title) <title> + #metadata(date.display("[year]-[month]-[day]")) <date> + + #align(center)[ + #figure(image("/assets/init.svg", width: 14%)) + *#title* \ + *#date.display()* + ] + + #body +] diff --git a/protocols/meeting-00/protocol.typ b/protocols/meeting-00/protocol.typ index 58015dd..b78ca0a 100644 --- a/protocols/meeting-00/protocol.typ +++ b/protocols/meeting-00/protocol.typ @@ -1,25 +1,10 @@ -#let today = datetime(year: 2025, month: 11, day: 28) -#set heading(numbering: "1.") -#set text(font: "IBM Plex Mono", size: 9pt) +#import "/meta/templates/protocol.typ": protocol, signature -#let signature = (signee) => { - box(line(length: 100%, stroke: 0.8pt)) - signee -} - -#align(left, [ - #figure( - image("/assets/init.svg", width: 14%), - ) -]) - -#align(center, [ - *PR\#0* - - *#today.display()* - - *Kistan 2.0* -]) +#show: protocol.with( + "PR#00", + datetime(year: 2025, month: 11, day: 28), + "Kistan 2.0" +) = Formalia diff --git a/protocols/meeting-01/protocol.typ b/protocols/meeting-01/protocol.typ index ea02e33..e058ace 100644 --- a/protocols/meeting-01/protocol.typ +++ b/protocols/meeting-01/protocol.typ @@ -1,28 +1,10 @@ -#let today = datetime(year: 2026, month: 2, day: 17) -#set heading(numbering: "1.") -#set text(font: "IBM Plex Mono", size: 9pt) - -#let signature(signee, label) = stack( - spacing: 0.1cm, - signee, - box(line(length: 100%, stroke: 0.8pt)), - label -) - - -#align(left, [ - #figure( - image("/assets/init.svg", width: 14%), - ) -]) - -#align(center, [ - *PR\#01* +#import "/meta/templates/protocol.typ": protocol, signature - *#today.display()* - - *Kistan 2.0* -]) +#show: protocol.with( + "PR#01", + datetime(year: 2026, month: 2, day: 17), + "Kistan 2.0" +) = Formalia @@ -151,9 +133,6 @@ Saffaraj with SMN. Projector would be good. We have a lot of time, but we should == Pull Requestens avslutande Mötes avslutades 19:00 -/* Hacky solution, should probably use pad() or something instead. */ -#linebreak() - #grid( columns: (1fr, 1fr), gutter: 1cm, diff --git a/protocols/meeting-02/protocol.typ b/protocols/meeting-02/protocol.typ index 453a7fe..f14827f 100644 --- a/protocols/meeting-02/protocol.typ +++ b/protocols/meeting-02/protocol.typ @@ -1,29 +1,11 @@ -#let today = datetime(year: 2026, month: 4, day: 28) -#set heading(numbering: "1.") -#set text(font: "IBM Plex Mono", size: 9pt) - -#let signature(signee, label) = stack( - spacing: 0.1cm, - signee, - box(line(length: 100%, stroke: 0.8pt)), - label -) - -#align(left, [ - #figure( - image("/assets/init.svg", width: 14%), - ) -]) - -#align(center, [ - *ePRstein\#02* +#import "/meta/templates/protocol.typ": protocol, signature - *#today.display()* - - *V01* -]) +#show: protocol.with( + "ePRstein#02", + datetime(year: 2026, month: 4, day: 28), + "V01" +) -#set text(region: "se", lang: "en") = Formalia == Pull Requestens högtidliga öppnande Pull Requesten öppnades 18:09 @@ -207,7 +189,6 @@ We have talked about setting up Proxmox. It's a big project bet it would be wort Merged 19:59 -#linebreak() #grid( columns: (1fr, 1fr), gutter: 1cm, diff --git a/reports/sm-2026-2/sm.typ b/reports/sm-2026-2/sm.typ index f95d6f0..f0bd76f 100644 --- a/reports/sm-2026-2/sm.typ +++ b/reports/sm-2026-2/sm.typ @@ -1,12 +1,9 @@ -#align(left, [ - #figure( - image("/assets/init.svg", width: 14%), - ) -]) - -#align(center, [ - *Rapport \SM\#2* -]) +#import "/meta/templates/sm.typ": sm + +#show: sm.with( + 2, + datetime(year: 2026, month: 3, day: 24), +) = Swedish diff --git a/templates/protocol.typ b/templates/protocol.typ deleted file mode 100644 index 25edcb4..0000000 --- a/templates/protocol.typ +++ /dev/null @@ -1,74 +0,0 @@ -#let today = datetime(year: 0000, month: 0, day: 00) -#set heading(numbering: "1.") -#set text(font: "IBM Plex Mono", size: 9pt) - -#let signature = (signee) => { - box(line(length: 100%, stroke: 0.8pt)) - signee -} - -#align(left, [ - #figure( - image("/assets/init.svg", width: 14%), - ) -]) - -#align(center, [ - *Möte \#X* - - *#today.display()* - - *Kistan 2.0* -]) - -= Formalia - -== Mötets högtidliga öppnande - -== Val av mötesordförande - -== Val av mötessekreterare - -== Val av två justeringsmän, tillika rösträknare - -== Adjungeringar - -== Mötets behöriga utlysande - -== Anmälan av övriga frågor - -== Godkännande av dagordning - -== Föregående mötesprotokoll - -= Rapporter - -== Bootloader - -== Kernel - -== Övriga - -= Bordlagda ärenden - -= Besluts- och diskussionspunkter - -= Övriga frågor - -= Slutformalia - -== Nästa möte - -== Mötets avslutande - -/* Hacky solution, should probably use pad() or something instead. */ -#linebreak() - -#grid( - columns: (1fr, 1fr), - gutter: 1cm, - signature("Ordförande"), - signature("Sekreterare"), - signature("Justerare / Rösträknare"), - signature("Justerare / Rösträknare") -)