diff options
Diffstat (limited to 'Master/texmf-dist/doc/latex/schule/Module/Aufgaben')
11 files changed, 607 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/code.tex b/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/code.tex new file mode 100644 index 00000000000..00fc23880d5 --- /dev/null +++ b/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/code.tex @@ -0,0 +1,314 @@ +% ******************************************************************** +% * Aufgaben * +% ******************************************************************** + +% Konfiguration des xSim-Pakets +% ******************************************************************** + +\xsimsetup{ + file-extension=xsim + % Bezeichnungen +% points/name=Punkt, +% points/name-plural=Punkte, +% points/bonus-name=Zusatzpunkt, +% points/bonus-plural=Zusatzpunkte, +% % Noten +% grades/half=true, % Auf halbe Punkte runden +% grades/round=1, % Eine Dezimalstelle +% % Darstellung der Punkte +% question/headings=schule-standard, +} + +% Übersetzungen +% **************************************************** **************** +\DeclareExerciseTranslations{bonusquestion}{ + Fallback = bonus question, + German = Zusatzaufgabe, +} +\DeclareExerciseTranslations{bonusquestions}{ + Fallback = bonus questions, + German = Zusatzaufgaben, +} + +\DeclareExerciseTranslations{total}{ + Fallback = total, + German = $\Sigma$, %oder: gesamt %war: %insgesamt +} + +% Metadaten +% ******************************************************************** +\DeclareExerciseProperty{bearbeitungshinweis} +\DeclareExerciseProperty{symbol} + +% Aufgabenstile +% ******************************************************************** + +% Makro zum Setzen des Symbols von Aufgaben +\newcommand{\setzeSymbol}[1]{\SetExerciseProperty{symbol}{#1}} + +% Aufgabenstile und Tabellenstile laden (einzelne Files) + +\loadxsimstyle{schule-default,schule-keinepunkte,schule-tcolorbox, schule-binnen, schule-randpunkte,schule-keintitel, schule-keinenummer, schule-tabelle-kurz} + +% Umgebungen +% ******************************************************************** + +% Definiton der Aufgaben- und Lösungsumgebungen des xsim-Pakets +% -------------------------------------------------------------------- +\DeclareExerciseType{aufgabe}{ + exercise-env = aufgabe, + solution-env = loesung, + exercise-name = \XSIMtranslate{question}, + solution-name = \XSIMtranslate{solution}, + exercise-template = schule-default, + solution-template = schule-default, +} + + +\DeclareExerciseType{zusatzaufgabe}{ + exercise-env = aufgabe*, + solution-env = loesung*, + exercise-name = \XSIMtranslate{bonusquestion}, + solution-name = \XSIMtranslate{solution}, + exercise-template = schule-default, + solution-template = schule-default, +} + +\DeclareExerciseTranslation{German}{default-heading}{% + \XSIMmixedcase{\GetExerciseParameter{solution-name}}en zu den + \XSIMmixedcase{\GetExerciseParameter{exercise-name}}% + \XSIMifeqF{\GetExerciseParameter{exercise-name}}{Aufgabe}{}n% +} + +\DeclareExerciseTranslation{German}{collection-heading}{% + \XSIMmixedcase{\GetExerciseParameter{solution-name}}en zu den + \XSIMmixedcase{\GetExerciseParameter{exercise-name}}% + \XSIMifeqF{\GetExerciseParameter{exercise-name}}{Zusatzaufgaben}{e}n% +} + + +%Setzten des Aufgabentemplates +\NewDocumentCommand{\setzeAufgabentemplate}{m}{ + \xsimsetup{aufgabe/template=#1} +} + + +% Teilaufgaben +% -------------------------------------------------------------------- +\newcounter{teilpunkte} +\@ifclassloaded{beamer}{ + \newenvironment{teilaufgaben}{\begin{enumerate}[a)] + }{\end{enumerate}} +}{ + \setcounter{teilpunkte}{0} + \newlist{teilaufgaben}{enumerate}{1} + \setlist[teilaufgaben]{ + label=\textbf{\alph{teilaufgabeni})}, + topsep=0.2em, + itemsep=-0.1em, + } +} + +\xsimsetup{ + aufgabe/begin-hook={\setcounter{teilpunkte}{0}}, + aufgabe/end-hook={% + \ifnum\theteilpunkte>0% + \SetExpandedExerciseProperty{points}{\theteilpunkte}% + \fi% + }% +} + +\newcommand{\Teilpunkte}{\arabic{teilpunkte}} + +\makeatletter +\NewDocumentCommand{\teilaufgabe}{o}{ + \IfInsideSolutionTF{ + % In Lösungen + \item% + }{ + % In Aufgaben + \item% + \IfNoValueF{#1}{\addtocounter{teilpunkte}{#1}(#1)\xspace} + } +} + +% Gedacht, wenn es bei Teilaufgaben kein Lösung angegeben werden soll +\newcommand{\teilaufgabeOhneLoesung}{\addtocounter{teilaufgabeni}{1}} + +% Spezielle Aufgabentypen +% ******************************************************************** + +% Lücken +% -------------------------------------------------------------------- +\newcommand{\verstecke}[1]{ + \IfInsideSolutionTF{#1}{} +} +\newcommand{\luecke}[2][]{% + % Feste Lücke + \blank[width=#2,#1]{}% +} + +\newcommand{\textluecke}[2][]{% + % Textabhängige Lücke + % Default: Doppelte Textlänge als Lückenlänge + % Param: 'nichts' für keine Linie o.ä. + % (Korrekturfaktor für Handschrift) + \ifthenelse{\equal{\detokenize{#1}}{\detokenize{nichts}}} + {\IfInsideSolutionTF{#2}{ }} % TRUE + {\blank[scale=2,#1]{#2}}% FALSE +} + +%%%% Mit xsim nicht möglich +% \aufgabeLueckentext +% [Optionen für die Aufgabenumgebung] +% {Lückentext} +% {Extras} +% [Symbol] +% \NewDocumentCommand{\aufgabeLueckentext}{ O{} m m O{} O{} }{% +% \begin{aufgabe}[#1,symbol=#4]% +% %\setzeSymbol{#4}% +% #2% +% \begin{loesung}% +% #2% +% \end{loesung}% +% #3% +% \end{aufgabe}% +% } + + +% Multiple Choice +% -------------------------------------------------------------------- +\NewTasks[style=multiplechoice]{mcumgebung}[\choice](3) +\newcommand*{\mcrichtig}{% + \IfInsideSolutionTF{\checkedchoicebox}{\choicebox}% +} + +%%%%% Mit xsim nicht möglich +% \aufgabeMC +% [Punkte] +% {Auswahlmöglichkeiten} +% [Spaltenzahl] +% {Extras} +% [Symbol] +% [Optionen für die Aufgabenumgebung] +% \NewDocumentCommand{\aufgabeMC}{ O{} m O{3} m O{} O{} }{ +% \begin{aufgabe}[#6]{#1} +% \setzeSymbol{#5} +% \begin{mcumgebung}(#3) +% #2 +% \end{mcumgebung} +% \begin{loesung} +% \begin{mcumgebung}(#3) +% #2 +% \end{mcumgebung} +% \end{loesung} +% #4 +% \end{aufgabe} +% } + +% ******************************************************************** +% * Lösungen * +% ******************************************************************** + +% Markierung für Seitenzahlen setzen, ACHTUNG: Wird nur ausgeführt, +% falls noch etwas kommt, d.h. Lösungen oder EWH. Sonst undefiniert! +\AtEndDocument{\label{LetzteInhaltsseite}} +\newboolean{schule@ende@inhalt@gesetzt} +\setboolean{schule@ende@inhalt@gesetzt}{false} + +% Welche Art von Lösung? +\ifthenelse{\equal{\schule@loesungen}{seite}}{ + % Lösungsseite + \AtEndDocument{ + \clearpage + \ifthenelse{\boolean{schule@ende@inhalt@gesetzt}}{}{% + \pagenumbering{Roman}% + \setboolean{schule@ende@inhalt@gesetzt}{true}% + } + \chead{\Titel\schule@kopfUmbruch} + \ohead{Lösung\schule@kopfUmbruch} + \cfoot{\thepage} + %\section*{Lösungen} % mit XSIM: Lösungen zu den Aufgaben in printsolutions drin? + \printsolutions + } +}{ + \ifthenelse{\equal{\schule@loesungen}{folgend}}{ + % auf Aufgaben folgend + \xsimsetup{ + solution/print, + loesung/print, + loesung*/print, + } + }{ + % nichts + } +} + +% ******************************************************************** +% * Bewertung und Punkte * +% ******************************************************************** + +\newcommand{\punkteAufgabe}{% +\GetExerciseProperty{points}\xspace% +\IfExerciseGoalSingularTF{points} + {\,\XSIMtranslate{point}} + {\,\XSIMtranslate{points}} +} + +\newcommand{\punkteTotal}{% +\TotalExerciseGoals{points}%+ bonus-points + {\,\XSIMtranslate{point}} + {\,\XSIMtranslate{points}}% +} + +% Punktübersicht +% ******************************************************************** + +\NewDocumentCommand{\punktuebersicht}{O{kurz}}{ + \gradingtable[template=#1]%kurz oder: default* oder: default +} + +% ******************************************************************** +% Hinweise * +% ******************************************************************** +% Zur Speicherung der Hinweise werden die Eigenschaften von xsim +% Aufgaben erweitert. Hierzu ist es erforderlich dem +% "SetExerciseProperty"-Makro als Wert für den Schlüssel +% "hinweise" übergeben werden. +% Um den folgenden Quelltext halbwegs lesbar zu halten, wird auf +% das environ-Paket zurückgegriffen. + +% Hinweise-Umgebung +% ******************************************************************** + +\ExplSyntaxOn +\NewEnviron{bearbeitungshinweis}{ + \exp_args:Nno \SetExerciseProperty {bearbeitungshinweis} {\BODY} +} +\ExplSyntaxOff + +% Ausgabe von Hinweisen +% ******************************************************************** + +% Vollständige Liste +\newcommand{\bearbeitungshinweisliste}{ + \begin{description} + \ForEachUsedExerciseByID{% + \def\ExerciseType{##1}% + \def\ExerciseID{##2}% + \GetExercisePropertyT{bearbeitungshinweis}{% + \item[\XSIMmixedcase{\GetExerciseName}~##3] + ####1% + }% + }% + \end{description} +} + +% Für eine Aufgabe +\NewDocumentCommand{\bearbeitungshinweisZuAufgabe}{O{aufgabe} m}{ + \ifthenelse{\equal{#2}{}}{ + \GetExerciseProperty{bearbeitungshinweis}% + }{% + \ExercisePropertyGet{#1}{#2}{bearbeitungshinweis}% + } +} diff --git a/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/optionen.tex b/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/optionen.tex new file mode 100644 index 00000000000..a7ac1b049e1 --- /dev/null +++ b/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/optionen.tex @@ -0,0 +1,14 @@ +% ******************************************************************** +% * Paketoptionen * +% ******************************************************************** + + +% Standardwerte +% ******************************************************************** +\newcommand{\schule@loesungen}{keine} + +% Optionsdefinitionen +% ******************************************************************** +\pgfkeys{ + /schule/.cd, + loesungen/.store in=\schule@loesungen,} diff --git a/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/pakete.tex b/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/pakete.tex new file mode 100644 index 00000000000..23601ca2af7 --- /dev/null +++ b/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/pakete.tex @@ -0,0 +1,5 @@ +% Aufgaben +\RequirePackage[verbose,clear-aux]{xsim}%verbose für entwicklung, %final,clear-aux +\RequirePackage{tcolorbox} +% Symbole +\RequirePackage{utfsym}
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/xsim.style.schule-binnen.code.tex b/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/xsim.style.schule-binnen.code.tex new file mode 100644 index 00000000000..aa47e556f71 --- /dev/null +++ b/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/xsim.style.schule-binnen.code.tex @@ -0,0 +1,29 @@ +% Standardstil für inline Aufgaben (gesellschaftswissenschaften) + +\xsimstyle{schule-binnen} %todo: Besser: schule-liste ? + + +\DeclareExerciseEnvironmentTemplate{schule-binnen} + { \par\noindent% + \ifthenelse{\equal{\ExerciseType}{zusatzaufgabe}}{\llap{\GetExerciseProperty{symbol}$\bigstar$}~}{\llap{\GetExerciseProperty{symbol}~}}% + \textbf{\GetExerciseProperty{counter}}.) % das will man ja gerade nicht haben + %\renewenvironment{teilaufgaben}{\begin{enumerate}}{\end{enumerate}} + %\RenewDocumentCommand{\teilaufgabe}{o}{ + % \IfInsideSolutionTF + % {\item% + % } + % {\item% + % \IfNoValueF{#1}{(\addpoints{#1})\xspace} + % } + % } + } + {\IfInsideSolutionTF{}{ % Punkteanzeige + \GetExercisePropertyT{points}{(\PropertyValue + \nobreakspace + \IfExerciseGoalSingularTF{points} + {\XSIMtranslate{point}} + {\XSIMtranslate{points}}) + } + } + \par} + diff --git a/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/xsim.style.schule-default.code.tex b/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/xsim.style.schule-default.code.tex new file mode 100644 index 00000000000..a9393dc2a1f --- /dev/null +++ b/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/xsim.style.schule-default.code.tex @@ -0,0 +1,41 @@ +% Standardstil für normale Aufgaben (und Zusatzaufgaben) mit Punkten neben der Subsection + +\xsimstyle{schule-default} + +\DeclareExerciseEnvironmentTemplate{schule-default} {% + \addpenalty{-3000}\smallskip\noindent\textbf{% + % Falls Zusatzaufgabe: + \ifthenelse{\equal{\ExerciseType}{zusatzaufgabe}}{\llap{\GetExerciseProperty{symbol}$\bigstar$}~}{\llap{\GetExerciseProperty{symbol}~}}% + \XSIMmixedcase{\GetExerciseName}\nobreakspace + \GetExerciseProperty{counter}% + \IfInsideSolutionF{% + \IfExercisePropertySetT{subtitle}{ + {\nobreakspace\GetExercisePropertyT{subtitle}{\normalfont \itshape \PropertyValue}}}% Subtitle setzten + }% + % Stil für Punkteanzeige + \GetExercisePropertyTF{points}{% + \normalfont% Punkte in normal font/Shape aber auf Ebene der Subsection + \nobreakspace(\PropertyValue + \GetExercisePropertyT{bonus-points} + {\nobreakspace\small(+\PropertyValue)}% Kleinere Bonuspunkte? + \nobreakspace% + \IfExerciseGoalSingularTF{points} + {\XSIMtranslate{point}} + {\XSIMtranslate{points}}% + ) + }{%Keine Punkte + \GetExercisePropertyT{bonus-points}{ + \normalfont% Punkte in normal font/Shape aber auf Ebene der Subsection + \nobreakspace(0\nobreakspace\small(+\PropertyValue)% Kleinere Bonuspunkte? + \nobreakspace% + \IfExerciseGoalSingularTF{bonus-points} + {\XSIMtranslate{point}} + {\XSIMtranslate{points}}% + ) + } + } + }\par\smallskip + % + % +} +{\IfInsideSolutionT{\par}}% diff --git a/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/xsim.style.schule-keinenummer.code.tex b/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/xsim.style.schule-keinenummer.code.tex new file mode 100644 index 00000000000..e7b1c2896cf --- /dev/null +++ b/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/xsim.style.schule-keinenummer.code.tex @@ -0,0 +1,30 @@ +% Standardstil für normale Aufgaben (und Zusatzaufgaben) mit Punkten neben der Subsection + +\xsimstyle{schule-keinenummer} + +\DeclareExerciseEnvironmentTemplate{schule-keinenummer} {% + \addpenalty{-3000}\smallskip\noindent\textbf{% + % Falls Zusatzaufgabe: + \ifthenelse{\equal{\ExerciseType}{zusatzaufgabe}}{\llap{\GetExerciseProperty{symbol}$\bigstar$}~}{\llap{\GetExerciseProperty{symbol}~}}% + \XSIMmixedcase{\GetExerciseName}\nobreakspace + \IfInsideSolutionF{% + \IfExercisePropertySetT{subtitle}{ + {\nobreakspace\GetExercisePropertyT{subtitle}{\normalfont \itshape \PropertyValue}}}% Subtitle setzten + }% + % + % Stil für Punkteanzeige + \GetExercisePropertyT{points}{% + \normalfont % Punkte in normal font/Shape aber auf Ebene der Subsection + \nobreakspace(\PropertyValue + \GetExercisePropertyT{bonus-points} + {\nobreakspace\small(+\PropertyValue)}% Kleinere Bonuspunkte? + \nobreakspace% + \IfExerciseGoalSingularTF{points} + {\XSIMtranslate{point}} + {\XSIMtranslate{points}}% + ) + } + }\par\smallskip + % +} +{\IfInsideSolutionT{\par}}% diff --git a/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/xsim.style.schule-keinepunkte.code.tex b/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/xsim.style.schule-keinepunkte.code.tex new file mode 100644 index 00000000000..cd218c7e81d --- /dev/null +++ b/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/xsim.style.schule-keinepunkte.code.tex @@ -0,0 +1,18 @@ +% Stil ohne Punktanzeige bei der Aufgabe + +\xsimstyle{schule-keinepunkte} + +\DeclareExerciseEnvironmentTemplate{schule-keinepunkte} {% + \addpenalty{-300}\smallskip\noindent\textbf{% + % Falls Zusatzaufgabe: + \ifthenelse{\equal{\ExerciseType}{zusatzaufgabe}}{\llap{\GetExerciseProperty{symbol}$\bigstar$}~}{\llap{\GetExerciseProperty{symbol}~}}% + \XSIMmixedcase{\GetExerciseName}\nobreakspace + \GetExerciseProperty{counter}% + \IfInsideSolutionF{% + \IfExercisePropertySetT{subtitle}{ + {\nobreakspace\GetExercisePropertyT{subtitle}{\normalfont \itshape \PropertyValue}}}% + }% + }\smallskip\\ + % Stil für Punkteanzeige +} +{\IfInsideSolutionT{\par}} diff --git a/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/xsim.style.schule-keintitel.code.tex b/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/xsim.style.schule-keintitel.code.tex new file mode 100644 index 00000000000..a879a00d020 --- /dev/null +++ b/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/xsim.style.schule-keintitel.code.tex @@ -0,0 +1,19 @@ +% Stil für gar keine Formatierung, aber Punkte am Rand +% z.B. für Vokabeltests + +\xsimstyle{schule-keintitel} + +\DeclareExerciseEnvironmentTemplate{schule-keintitel}{% + % Stil für Punkteanzeige + \GetExercisePropertyT{points}{% + \marginpar + {% + \IfInsideSolutionF{\rule{0.8cm}{1pt}\slash}% + \PropertyValue + \GetExercisePropertyT{bonus-points} + {\nobreakspace(+\PropertyValue)}% + \nobreakspace\XSIMtranslate{point-abbr}% + }% + }% +} +{} diff --git a/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/xsim.style.schule-randpunkte.code.tex b/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/xsim.style.schule-randpunkte.code.tex new file mode 100644 index 00000000000..d45cd2f0729 --- /dev/null +++ b/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/xsim.style.schule-randpunkte.code.tex @@ -0,0 +1,28 @@ +% Aufgabenstil für Aufgaben (und Zusatzaufgaben) mit Punkten am Rand + +\xsimstyle{schule-randpunkte} + +\DeclareExerciseEnvironmentTemplate{schule-randpunkte} {% + \addpenalty{-300}\smallskip\noindent\textbf{% + % Falls Zusatzaufgabe: + \ifthenelse{\equal{\ExerciseType}{zusatzaufgabe}}{\llap{\GetExerciseProperty{symbol}$\bigstar$}~}{\llap{\GetExerciseProperty{symbol}~}}% + \XSIMmixedcase{\GetExerciseName}\nobreakspace + \GetExerciseProperty{counter}% + \IfInsideSolutionF{% + \IfExercisePropertySetT{subtitle}{ + {\nobreakspace\GetExercisePropertyT{subtitle}{\normalfont \itshape \PropertyValue}}}% + }% + }\smallskip\\ + % Stil für Punkteanzeige + \GetExercisePropertyT{points}{% + \marginpar + {% + \IfInsideSolutionF{\rule{0.8cm}{1pt}\slash}% + \PropertyValue + \GetExercisePropertyT{bonus-points} + {\nobreakspace(+\PropertyValue)}% + \nobreakspace\XSIMtranslate{point-abbr}% + }% + }% +} +{\IfInsideSolutionT{\par}} diff --git a/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/xsim.style.schule-tabelle-kurz.code.tex b/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/xsim.style.schule-tabelle-kurz.code.tex new file mode 100644 index 00000000000..d25f4e0c9bd --- /dev/null +++ b/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/xsim.style.schule-tabelle-kurz.code.tex @@ -0,0 +1,77 @@ +\ExplSyntaxOn + +\DeclareExerciseTableTemplate{kurz} +{ \renewcommand{\arraystretch}{1.5} + \XSIMputright \ExerciseTableCode + { + \hline % toprule + \XSIMifblankTF {\ExerciseType} + {Aufgabe } + { \XSIMmixedcase { \GetExerciseParameter {exercise-name} } } + & + } + \ForEachUsedExerciseByType + { + \XSIMifeqTF {#1} { \ExerciseTableType {#1} } + { + \XSIMifblankTF { \ExerciseType } + { + \XSIMputright \ExerciseTableCode + { + { % Kurzfassung für Aufgabe, Zusatzaufgabe und Übung + \XSIMifeqT{\ExerciseParameterGet {#1} {exercise-name}}{Aufgabe}{A\,} + \XSIMifeqT{\ExerciseParameterGet {#1} {exercise-name}}{Zusatzaufgabe}{Z\,} + \XSIMifeqT{\ExerciseParameterGet {#1} {exercise-name}}{Übung}{Ü\,} + } + } + } + {} + \XSIMputright \ExerciseTableCode { #3 & } + } + {} + } + \XSIMputright \ExerciseTableCode + { + \XSIMtranslate {total} \\ \hline %midrule + + \XSIMmixedcase { \XSIMtranslate {points} } & + } + \ForEachUsedExerciseByType + { + \XSIMifeqTF {#1} { \ExerciseTableType {#1} } + { + \XSIMputright \ExerciseTableCode + { \XSIMifblankTF {#5} {\printgoal{0}} {\printgoal{#5}} & } + } + {} + } + \XSIMputright \ExerciseTableCode + { + \XSIMifblankTF {\ExerciseType} + { \TotalExerciseGoal {points} {} {} } + { \TotalExerciseTypeGoal {\ExerciseType} {points} {} {} } + \\ \hline %midrule + \XSIMtranslate {reached} & + } + \ForEachUsedExerciseByType + { + \XSIMifeqTF {#1} { \ExerciseTableType {#1} } + { \XSIMputright \ExerciseTableCode {&} } + {} + } + \XSIMputright \ExerciseTableCode { \\ \hline %\bottomrule + } + \def\numberofcolumns{ + \XSIMifblankTF {\ExerciseType} + {\numberofusedexercises} + {\csname numberof \ExerciseType s\endcsname} + } + \XSIMifeqF{\numberofcolumns}{0} + { + \begin {longtable} {l|*{\numberofcolumns}{c}|c} + \ExerciseTableCode + \end {longtable} + } +} + +\ExplSyntaxOff diff --git a/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/xsim.style.schule-tcolorbox.code.tex b/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/xsim.style.schule-tcolorbox.code.tex new file mode 100644 index 00000000000..899754470c9 --- /dev/null +++ b/Master/texmf-dist/doc/latex/schule/Module/Aufgaben/xsim.style.schule-tcolorbox.code.tex @@ -0,0 +1,32 @@ +% Stil mit tcolorbox, inkl. Anzeige von Bonuspunkten + +\xsimstyle{schule-tcolorbox} + +\DeclareExerciseEnvironmentTemplate{schule-tcolorbox} +{% +\lstset{basicstyle=\ttfamily, numbersep=0.5em,numbers=left,numberstyle=\color{black!55}} % Quellcode passend formatieren +\tcolorbox[ + colback = white, + title = + \sffamily + \textbf{\ifthenelse{\equal{\ExerciseType}{zusatzaufgabe}}{\llap{\GetExerciseProperty{symbol}$\bigstar$}}{\llap{\GetExerciseProperty{symbol}}} + \GetExerciseName~\GetExerciseProperty{counter}}\xspace% + \GetExercisePropertyT{subtitle}{\textit{\PropertyValue}}% + \IfInsideSolutionF{% + \GetExercisePropertyT{points}{ % notice the space + \hfill + % ohne ( + \printgoal{\PropertyValue} + % + \GetExercisePropertyT{bonus-points} + {(+\PropertyValue)\xspace}% + \IfExerciseGoalSingularTF{points} + {\XSIMtranslate{point}} + {\XSIMtranslate{points}}% +% \nobreakspace\XSIMtranslate{point-abbr} + % ohne ) + }% + }% + ]% +} +{\endtcolorbox} |