diff options
Diffstat (limited to 'macros/latex/contrib/schulmathematik/schulma-mdlprf.cls')
-rw-r--r-- | macros/latex/contrib/schulmathematik/schulma-mdlprf.cls | 281 |
1 files changed, 281 insertions, 0 deletions
diff --git a/macros/latex/contrib/schulmathematik/schulma-mdlprf.cls b/macros/latex/contrib/schulmathematik/schulma-mdlprf.cls new file mode 100644 index 0000000000..429230d11a --- /dev/null +++ b/macros/latex/contrib/schulmathematik/schulma-mdlprf.cls @@ -0,0 +1,281 @@ +% schulmathematik bundle: document class schulma-mdlprf +% Version 1.0 +% 16. Februar 2020 +\NeedsTeXFormat{LaTeX2e} +\ProvidesClass{schulma-mdlprf}[2020-02-16 v1.0 Dokumentenklasse fuer muendliche Abiturpruefungen] + +\RequirePackage{xparse} + +\ExplSyntaxOn + +\bool_new:N \g_schulma_mdlprf_oesterreich_bool +\bool_new:N \g_schulma_mdlprf_pruefer_weiblich_bool + +\str_new:N \g_schulma_mdlprf_pnummer_str + +\tl_new:N \g_schulma_mdlprf_schulname_tl +\tl_new:N \g_schulma_mdlprf_fach_tl +\tl_new:N \g_schulma_mdlprf_vorbereitungsraum_tl +\tl_new:N \g_schulma_mdlprf_pruefungsraum_tl +\tl_new:N \g_schulma_mdlprf_pruefer_tl +\tl_new:N \g_schulma_mdlprf_aufgabe_tl +\tl_new:N \g_schulma_mdlprf_hilfsmittel_tl +\tl_new:N \g_schulma_mdlprf_erwartungshorizont_tl +\tl_new:N \g_schulma_mdlprf_weitere_themen_tl + +\int_new:N \g_schulma_mdlprf_dauer_vorbereitungszeit_int + +\DeclareOption {AT} + { + \bool_gset_true:N \g_schulma_mdlprf_oesterreich_bool + } + +\DeclareOption {Prueferin} + { + \bool_gset_true:N \g_schulma_mdlprf_pruefer_weiblich_bool + } + +\DeclareOption* + { + \PassOptionsToClass {\CurrentOption} {scrartcl} + } + +\ProcessOptions \relax + +\int_gset:Nn \g_schulma_mdlprf_dauer_vorbereitungszeit_int {30} + +\msg_new:nnn {schulma-mdlprf} {Schule~fehlt} + { + Bitte~geben~Sie~mit~Hilfe~des~Befehls~\Schule~den~ + Schulnamen~an. + } + +\msg_new:nnn {schulma-mdlprf} {Datum~fehlt} + { + Bitte~geben~Sie~mit~Hilfe~des~Befehls~\Datum~das~ + Prüfungsdatum~an. + } + +\msg_new:nnn {schulma-mdlprf} {Prüfungsfachnummer~fehlt} + { + Bitte~geben~Sie~mit~Hilfe~des~Befehls~\PNummer~die~ + Nummer~des~Prüfungsfachs~an. + } + +\msg_new:nnn {schulma-mdlprf} {Uhrzeit~fehlt} + { + Das~zweite~Argument~des~Befehls~\Pruefung~in~Zeile~ + \msg_line_number: + \c_space_tl + muss~eine~Uhrzeit~im~Format~SS:MM~sein. + } + +\NewDocumentCommand \Schule {m} + { + \tl_gset:Nn \g_schulma_mdlprf_schulname_tl {#1} + } + +\NewDocumentCommand \Datum {m} + { + \DTMsavedate {g_schulma_mdlprf_datum} {#1} + } + +\NewDocumentCommand \Fach {m} + { + \tl_gset:Nn \g_schulma_mdlprf_fach_tl {#1} + } + +\NewDocumentCommand \Vorbereitungsraum {m} + { + \tl_gset:Nn \g_schulma_mdlprf_vorbereitungsraum_tl {#1} + } + +\NewDocumentCommand \Vorbereitungszeit {m} + { + \int_gset:Nn \g_schulma_mdlprf_dauer_vorbereitungszeit_int {#1} + } + +\NewDocumentCommand \Pruefungsraum {m} + { + \tl_gset:Nn \g_schulma_mdlprf_pruefungsraum_tl {#1} + } + +\NewDocumentCommand \Pruefer {m} + { + \tl_gset:Nn \g_schulma_mdlprf_pruefer_tl {#1} + } + +\NewDocumentCommand \PNummer {m} + { + \str_gset:Nn \g_schulma_mdlprf_pnummer_str {#1} + } + +\NewDocumentCommand \Hilfsmittel {m} + { + \tl_gset:Nn \g_schulma_mdlprf_hilfsmittel_tl {#1} + } + +\NewDocumentCommand \Aufgabe {+m} + { + \tl_gset:Nn \g_schulma_mdlprf_aufgabe_tl {#1} + } + +\NewDocumentCommand \Erwartungshorizont {+m} + { + \tl_gset:Nn \g_schulma_mdlprf_erwartungshorizont_tl {#1} + } + +\NewDocumentCommand \WeitereThemen {+m} + { + \tl_gset:Nn \g_schulma_mdlprf_weitere_themen_tl {#1} + } + +\LoadClass [DIV=14] {scrartcl} + +\bool_if:NTF \g_schulma_mdlprf_oesterreich_bool + { + \RequirePackage [naustrian] {babel} + } + { + \RequirePackage [ngerman] {babel} + } + +\RequirePackage [ useregional=text, showseconds=false ] {datetime2} +\RequirePackage {schulma} +\RequirePackage {schulma-physik} + +\NewDocumentCommand \Pruefung {mm} + { + \tl_if_blank:nTF {#2} + { + \msg_warning:nn {schulma-mdlprf} {Uhrzeit~fehlt} + } + { + \str_set:Nx \l_tmpa_str { #2 \c_colon_str 00 } + \DTMsavetime {l_schulma_mdlprf_beginn_pruefung} {\l_tmpa_str} + \int_set:Nn \l_tmpa_int + { + \DTMfetchhour {l_schulma_mdlprf_beginn_pruefung} + } + \int_set:Nn \l_tmpb_int + { + \DTMfetchminute {l_schulma_mdlprf_beginn_pruefung} + } + \int_sub:Nn \l_tmpb_int + { + \g_schulma_mdlprf_dauer_vorbereitungszeit_int + } + \int_compare:nNnT \l_tmpb_int < {0} + { + \int_decr:N \l_tmpa_int + \int_add:Nn \l_tmpb_int {60} + } + \str_set:Nx \l_tmpa_str + { + \int_use:N \l_tmpa_int + \c_colon_str + \int_use:N \l_tmpb_int + \c_colon_str 00 + } + \DTMsavetime {l_schulma_mdlprf_beginn_vorbereitungszeit} {\l_tmpa_str} + } + + \newpage + \tl_if_empty:NTF \g_schulma_mdlprf_schulname_tl + { + \msg_warning:nn {schulma-mdlprf} {Schule~fehlt} + } + { + \g_schulma_mdlprf_schulname_tl + } + \hfill + Abiturpr\"ufung + \DTMifsaveddate {g_schulma_mdlprf_datum} + { + \c_space_tl + \DTMfetchyear {g_schulma_mdlprf_datum} + } + { + \msg_warning:nn {schulma-mdlprf} {Datum~fehlt} + } + + \vspace {2ex} + \begin {center} + \sffamily\bfseries\Large + Aufgabenblatt~f\"ur~die~m\"undliche~Pr\"ufung + \str_if_empty:NTF \g_schulma_mdlprf_pnummer_str + { + \msg_warning:nn {schulma-mdlprf} {Prüfungsfachnummer~fehlt} + } + { + \c_space_tl + ( P \, \g_schulma_mdlprf_pnummer_str ) + } + \end {center} + + \vspace {1ex} + \begin {tabbing} + Beginn~der~Vorbereitungszeit:~ \= + \hspace {4cm} \= + Vorbereitungsraum:~ \= \kill + Datum~der~Pr\"ufung: \> + \DTMifsaveddate {g_schulma_mdlprf_datum} + { + \DTMusedate {g_schulma_mdlprf_datum} + } + { + } + \> Pr\"uf \babelshorthand {"|} ling: \> #1 \\[2ex] + Fach: \> \g_schulma_mdlprf_fach_tl + \> + \bool_if:NTF \g_schulma_mdlprf_pruefer_weiblich_bool + { + Pr\"uferin: + } + { + Pr\"ufer: + } + \> \g_schulma_mdlprf_pruefer_tl \\[2ex] + Beginn~der~Vorbereitungszeit: \> + \tl_if_blank:nF {#2} + { + \DTMusetime {l_schulma_mdlprf_beginn_vorbereitungszeit} ~ Uhr + } + \> Vorbereitungsraum: \> \g_schulma_mdlprf_vorbereitungsraum_tl \\[2ex] + Beginn~der~Pr\"ufung: \> + \tl_if_blank:nF {#2} + { + \DTMusetime {l_schulma_mdlprf_beginn_pruefung} ~ Uhr + } + \> Pr\"ufungsraum: \> \g_schulma_mdlprf_pruefungsraum_tl + \end {tabbing} + \hrule + + \subsubsection* {Aufgabe:} + \g_schulma_mdlprf_aufgabe_tl + + \tl_if_empty:NF \g_schulma_mdlprf_hilfsmittel_tl + { + \par + \bigskip + Hilfsmittel:~ + \g_schulma_mdlprf_hilfsmittel_tl + } + + \newpage + \subsubsection* {Erwartungshorizont} + \g_schulma_mdlprf_erwartungshorizont_tl + + \tl_if_empty:NF \g_schulma_mdlprf_weitere_themen_tl + { + \bigskip + \subsubsection* {M\"ogliche~Themen~des~weiteren~Pr\"ufungsgespr\"achs} + \g_schulma_mdlprf_weitere_themen_tl + } + } + +\setlength \parindent {0em} + +\pagestyle {empty} + +\ExplSyntaxOff |