summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/schulmathematik/schulma-klausur.cls
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/schulmathematik/schulma-klausur.cls')
-rw-r--r--Master/texmf-dist/tex/latex/schulmathematik/schulma-klausur.cls142
1 files changed, 114 insertions, 28 deletions
diff --git a/Master/texmf-dist/tex/latex/schulmathematik/schulma-klausur.cls b/Master/texmf-dist/tex/latex/schulmathematik/schulma-klausur.cls
index 6026d0d8569..0589aca0128 100644
--- a/Master/texmf-dist/tex/latex/schulmathematik/schulma-klausur.cls
+++ b/Master/texmf-dist/tex/latex/schulmathematik/schulma-klausur.cls
@@ -1,23 +1,25 @@
% schulmathematik bundle: document class schulma-klausur
-% Version 1.0
-% 16. Februar 2020
+% Version 1.1
+% 13. März 2021
\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{schulma-klausur}[2020-02-16 v1.0 Dokumentenklasse fuer Klausuren]
+\ProvidesExplClass{schulma-klausur}{2021-03-13}{1.1}{Dokumentenklasse fuer Klausuren}
-\RequirePackage{xparse}
-\RequirePackage{etoolbox}
-
-\ExplSyntaxOn
+\RequirePackage {xparse}
+\RequirePackage {etoolbox}
+\str_new:N \g_schulma_klausur_datum_str
\str_new:N \g_schulma_klausur_titel_str
\str_new:N \g_schulma_klausur_teiltitel_str
\str_new:N \g_schulma_klausur_bearbeitungszeit_str
+\tl_new:N \g_schulma_klausur_kurs_tl
\tl_new:N \g_schulma_klausur_nummer_tl
\tl_new:N \g_schulma_klausur_untertitel_tl
\tl_new:N \g_schulma_klausur_hilfsmittel_tl
\tl_new:N \l_schulma_klausur_aufgabentitel_tl
+\bool_new:N \g_schulma_klausur_oesterreich_bool
+\bool_new:N \g_schulma_klausur_afuenfquer_bool
\bool_new:N \g_schulma_klausur_schriftliche_lernkontrolle_bool
\bool_new:N \g_schulma_klausur_zwei_gruppen_bool
\bool_new:N \g_schulma_klausur_gruppe_a_bool
@@ -78,7 +80,13 @@
\DeclareOption {A5quer}
{
- \PassOptionsToClass {A5quer} {schulma-ab}
+ \PassOptionsToClass {a5paper} {scrartcl}
+ \bool_gset_true:N \g_schulma_klausur_afuenfquer_bool
+ }
+
+\DeclareOption {AT}
+ {
+ \bool_gset_true:N \g_schulma_klausur_oesterreich_bool
}
\DeclareOption {GruppeA}
@@ -99,7 +107,7 @@
\DeclareOption*
{
- \PassOptionsToClass {\CurrentOption} {schulma-ab}
+ \PassOptionsToClass {\CurrentOption} {scrartcl}
\PassOptionsToClass {\CurrentOption} {schulma-praes}
}
@@ -120,6 +128,15 @@
\tl_gset:Nn \g_schulma_klausur_nummer_tl {#1}
}
+\newcounter {Aufgabe}
+\newcounter {Teilaufgabe} [Aufgabe]
+
+\newlength \Aufgabenabstand
+\setlength \Aufgabenabstand {24pt plus12pt minus8pt}
+
+\newlength \Teilaufgabenabstand
+\setlength \Teilaufgabenabstand {4.5pt plus2pt minus1pt}
+
\bool_if:NTF \g_schulma_klausur_musterloesung_bool
{
\LoadClass [t] {schulma-praes}
@@ -136,7 +153,7 @@
schriftlichen~Lernkontrolle
}
{
- Klausur
+ \g_schulma_klausur_titel_str
}
\DTMifsaveddate {g_schulma_klausur_klausurdatum}
{
@@ -145,9 +162,13 @@
\DTMusedate {g_schulma_klausur_klausurdatum}
}
{} % \DTMifsaveddate hat drei Argumente
+ \str_if_empty:NF \g_schulma_klausur_teiltitel_str
+ {
+ \\ [1ex]
+ \textit { \g_schulma_klausur_teiltitel_str }
+ }
}
- \newcounter {Aufgabe}
\resetcounteronoverlays {Aufgabe}
\NewDocumentCommand \Aufgabe {s o d()}
@@ -163,12 +184,8 @@
\FarbeAufgabe
}
- \newcounter {Teilaufgabe} [Aufgabe]
\resetcounteronoverlays {Teilaufgabe}
- \newlength \Teilaufgabenabstand
- \setlength \Teilaufgabenabstand {4.5pt plus2pt minus1pt}
-
\NewDocumentEnvironment {Teilaufgaben} { }
{
\begin {list} { \stepcounter {Teilaufgabe} \alph {Teilaufgabe} ) }
@@ -202,16 +219,62 @@
}
}
{
- \LoadClass {schulma-ab}
+ \LoadClass {scrartcl}
+ \RequirePackage {scrlayer-scrpage}
+
+ \BeforeClosingMainAux
+ {
+ \addtocounter{page}{-1}
+ \label{LastPage}
+ }
+
+ \NewDocumentCommand \Kurs {m}
+ {
+ \tl_gset:Nn \g_schulma_klausur_kurs_tl {#1}
+ }
+
+ \NewDocumentCommand \Datum {m}
+ {
+ \str_set:Nn \g_schulma_klausur_datum_str {#1}
+ }
+
+ \NewDocumentEnvironment {Teilaufgaben} { }
+ {
+ \renewcommand \labelenumi { ( \roman {enumi} ) }
+
+ \begin {list} { \stepcounter {Teilaufgabe} \alph {Teilaufgabe} ) }
+ {
+ \setlength \topsep {\Teilaufgabenabstand}
+ \setlength \itemsep {\Teilaufgabenabstand}
+ }
+ }
+ {
+ \end {list}
+ }
+
+ \AfterEndPreamble
+ {
+ \begin {list} { }
+ {
+ \setlength \leftmargin {0pt}
+ \setlength \partopsep {0pt}
+ \setlength \topsep {0.75\Aufgabenabstand}
+ \setlength \itemsep {\Aufgabenabstand}
+ }
+ % innerhalb der Liste Originalwert verwenden
+ \setlength \topsep {9pt plus3pt minus5pt}
+ }
+
+ \AtBeginDocument {\schulma_klausur_kopf:}
- \AfterEndPreamble { \begin {Aufgaben} }
\pretocmd {\enddocument}
{
- \end {Aufgaben}
+ \end {list}
\par
\int_compare:nNnT {\g_schulma_klausur_anzahl_hilfen_int} > {1}
{
\vfill
+ \noindent
\textsl {Hilfen:}
\begin {itemize}
@@ -236,6 +299,7 @@
\int_compare:nNnT {\g_schulma_klausur_anzahl_hilfen_int} = {1}
{
\vfill
+ \noindent
\textsl {Hilfe:} ~
\bool_if:NT \g_schulma_klausur_pqformel_bool
@@ -253,7 +317,7 @@
}
}{}{} % pretocmd hat vier Argumente
- \RenewDocumentCommand \Aufgabe {s o d()}
+ \NewDocumentCommand \Aufgabe {s o d()}
{
\item
\stepcounter {Aufgabe}
@@ -275,7 +339,7 @@
\peek_catcode:NF \c_space_token {\c_space_tl}
}
- \bool_if:NTF \g_schulma_ab_afuenfquer_bool
+ \bool_if:NTF \g_schulma_klausur_afuenfquer_bool
{
\RequirePackage [top=2.7cm, bottom=3cm, hmargin=2.5cm] {geometry}
}
@@ -291,6 +355,20 @@
\RequirePackage {comment}
\excludecomment {Lsg}
\RequirePackage {beamerarticle}
+ \RequirePackage {tasks}
+
+% tasks: j überspringen
+\newcommand*\@schulmaalph[1]{\ifnum #1>9 \@alph{\numexpr #1+1}\else \@alph{#1}\fi}
+\newcommand*\schulmaalph[1]{\@schulmaalph{\value{#1}}}
+
+\settasks{label-align=right,
+ item-indent=2.2em,
+ label-offset=0.5em,
+ label-width=1.3em,
+ label=\schulmaalph*),
+ after-skip=4.5pt plus2pt minus1pt}
+
+\settasks{before-skip=4.5pt plus2pt minus1pt}
}
\cs_new:Npn \schulma_klausur_notentabelle:n #1
@@ -349,9 +427,19 @@
\end {tabular}
}
-\RequirePackage [useregional=text] {datetime2}
+\RequirePackage {adjustbox}
+\RequirePackage {schulma}
+\RequirePackage {schulma-physik}
+
+\bool_if:NTF \g_schulma_klausur_oesterreich_bool
+ {
+ \RequirePackage [naustrian] {babel}
+ }
+ {
+ \RequirePackage [ngerman] {babel}
+ }
-% \DTMsetregional % Datum in Langform anzeigen (auskommentiert, da datetime2 z. Zt. erst in dieser Klasse geladen wird)
+\RequirePackage [useregional=text] {datetime2}
\NewDocumentCommand \Klausurtitel {m}
{
@@ -422,14 +510,14 @@
}
}
-\cs_set:Npn \schulma_ab_kopf:
+\cs_set:Npn \schulma_klausur_kopf:
{
\noindent
- \parbox [t] {5cm} {\g_schulma_ab_kurs_tl}
+ \parbox [t] {5cm} {\g_schulma_klausur_kurs_tl}
\hfill
- \str_if_empty:NF \g_schulma_ab_datum_str
+ \str_if_empty:NF \g_schulma_klausur_datum_str
{
- \DTMdate {\g_schulma_ab_datum_str}
+ \DTMdate {\g_schulma_klausur_datum_str}
}
\begin {center}
@@ -506,5 +594,3 @@
{
\bool_if:NT \g_schulma_klausur_musterloesung_bool {#1}
}
-
-\ExplSyntaxOff