Eine vorerst letzte Frage von mir zu diesem tollen Paket. Ich habe die Möglichkeit gefunden, einen Grading Table zu erstellen, der passt aber nicht zu dem angestrebten Layout weshalb ich eine eigene, händische Lösung suche. Bisher stehe ich hier:

Öffne in Overleaf
Code, hier editierbar zum Übersetzen:
\documentclass{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[most]{tcolorbox}
\usepackage{xsim}
\usepackage{tikz}
%Aufgabenumgebung
\DeclareExerciseEnvironmentTemplate{klausuraufgabe}
{%
\tcolorbox[standard jigsaw,
opacityback=0,
opacityframe=0,
coltitle=black,
breakable ,
drop shadow ,
beforeafter skip = .5\baselineskip ,
title =
\textbf{\GetExerciseName~\GetExerciseProperty{counter}}%
\GetExercisePropertyT{subtitle}{ \textit{\PropertyValue}}%
\IfInsideSolutionF{%
\GetExercisePropertyT{points}{ %
($\PropertyValue = \text{\points{\PropertyValue}}$%
)%
}%
}%
]%
}
{\endtcolorbox}
\DeclareExerciseType{klausuraufgabe}{
exercise-env = aufgabe ,
solution-env = loesung ,
exercise-name = Aufgabe ,
solution-name = Lösung ,
exercise-template = klausuraufgabe ,
solution-template = klausuraufgabe
}
\NewDocumentCommand\printcompletepoints{}{%
\TotalExerciseGoals{points}
{\,\XSIMtranslate{}}
{\,\XSIMtranslate{}}%
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Der Befehl \klauAufg gibt die Aufgabenanzahl an, anhand derer die Tabelle gezeichnet wird. Für die Anzeige der Gesamtpunktzahl ohne "Punkte" habe ich hier eine Lösung gefunden und modifiziert. Was mir noch fehlt ist die Eingabe der Gesamtpunktzahl jeder einzelnen Aufgabe in der zweiten Zeile. (Wie) Kann ich die Punkte jeder einzelnen Aufgabe in der foreach-Schleife gezielt abgreifen und als node eintragen?

gefragt 17 Okt '17, 22:00

Hirshy's gravatar image

Hirshy
73133745
Akzeptiert-Rate: 0%


Ich würde empfehlen, xsim's \gradingtable doch zu verwenden. Du kannst Dir nämlich auch da mit Hilfe sogenannter Templates ein eigenes Layout basteln. Das folgende Template geht davon aus, dass Du nur den Typ klausuraufgabe verwendest:

Code, hier editierbar zum Übersetzen:
\DeclareExerciseTableTemplate{punktetabelle}{%
\renewcommand*\arraystretch{2}
\XSIMputright\ExerciseTableCode{ \hline Aufgabe & }
\ForEachUsedExerciseByType{\XSIMputright\ExerciseTableCode{#3&}}
\XSIMputright\ExerciseTableCode{
\LARGE$\sum$ \\
\hline Maximalpunktzahl &
}
\ForEachUsedExerciseByType{
\XSIMputright\ExerciseTableCode
{\XSIMifblankTF{#5}{\printgoal{0}}{\printgoal{#5}} & }
}
\XSIMputright\ExerciseTableCode{
\TotalExerciseGoal{points}{}{} \\ \hline
erreichte Punktzahl &
}
\ForEachUsedExerciseByType{ \XSIMputright\ExerciseTableCode{&} }
\XSIMputright\ExerciseTableCode{\\\hline}
\XSIMifeqF{\numberofklausuraufgabes}{0}{
\begin {tabular} {|l|*{\numberofklausuraufgabes}{>{\centering\arraybackslash}p{7mm}|}c|}
\ExerciseTableCode
\end {tabular}
}
}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Mit \gradingtable[template=punktetabelle] kannst Du das dann verwenden.

Komplettes Beispiel:

Code, hier editierbar zum Übersetzen:
\documentclass{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[most]{tcolorbox}
\usepackage{xsim}
\usepackage{tikz}
\DeclareExerciseEnvironmentTemplate{klausuraufgabe}
{%
\tcolorbox[standard jigsaw,
opacityback=0,
opacityframe=0,
coltitle=black,
breakable ,
drop shadow ,
beforeafter skip = .5\baselineskip ,
title =
\textbf{\GetExerciseName~\GetExerciseProperty{counter}}%
\GetExercisePropertyT{subtitle}{ \textit{\PropertyValue}}%
\IfInsideSolutionF{%
\GetExercisePropertyT{points}{ ($\PropertyValue = \text{\points{\PropertyValue}}$)}%
}%
]%
}
{\endtcolorbox}
\DeclareExerciseType{klausuraufgabe}{
exercise-env = aufgabe ,
solution-env = loesung ,
exercise-name = Aufgabe ,
solution-name = Lösung ,
exercise-template = klausuraufgabe ,
solution-template = klausuraufgabe
}
\DeclareExerciseTableTemplate{punktetabelle}{%
\renewcommand*\arraystretch{2}
\XSIMputright\ExerciseTableCode{ \hline Aufgabe & }
\ForEachUsedExerciseByType{\XSIMputright\ExerciseTableCode{#3&}}
\XSIMputright\ExerciseTableCode{
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

alt text

Update 31.01.2021, xsim Version 0.20

Mit Version 0.20 oder neuer kann folgende Lösung verwendet werden, bei der eine Alias-Eigenschaft verwendet wird, um die „Punkteberechnung“ zu speichern:

Code, hier editierbar zum Übersetzen:
\documentclass{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[most]{tcolorbox}
\usepackage{xsim}
\usepackage{tikz}
\DeclareExerciseProperty{punkte}
\DeclareExercisePropertyAlias{punkte}{points}
\DeclareExerciseEnvironmentTemplate{klausuraufgabe}{%
\tcolorbox[standard jigsaw,
opacityback=0,
opacityframe=0,
coltitle=black,
breakable ,
drop shadow ,
beforeafter skip = .5\baselineskip ,
title =
\textbf{\GetExerciseName~\GetExerciseProperty{counter}}%
\GetExercisePropertyT{subtitle}{ \textit{\PropertyValue}}%
\IfInsideSolutionF{%
\GetExercisePropertyT{points}{ ($\GetExerciseProperty{punkte} = \text{\points{\PropertyValue}}$)}%
}%
]%
}{\endtcolorbox}
\DeclareExerciseType{klausuraufgabe}{
exercise-env = aufgabe ,
solution-env = loesung ,
exercise-name = Aufgabe ,
solution-name = Lösung ,
exercise-template = klausuraufgabe ,
solution-template = klausuraufgabe
}
\DeclareExerciseTableTemplate{punktetabelle}{%
\renewcommand*\arraystretch{2}
\XSIMputright\ExerciseTableCode{ \hline Aufgabe & }
\ForEachUsedExerciseByType{\XSIMputright\ExerciseTableCode{#3&}}
\XSIMputright\ExerciseTableCode{
\LARGE$\sum$ \\
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Permanenter link

beantwortet 18 Okt '17, 09:42

cgnieder's gravatar image

cgnieder
22.1k253463
Akzeptiert-Rate: 60%

bearbeitet 31 Jan '21, 12:12

Super, danke! Sobald ich Zeit habe, werde ich weiter damit spielen und überlegen ob und wie sich das für uns einsetzen lässt und lästige Arbeit abnimmt!

(19 Okt '17, 22:20) Hirshy

Hat sich mit der aktuellen Version (texlive 2020) etwas geändert? texlive 2018 kompiliert wie gewünscht durch und erstellt die Tabelle, mit 2020 macht zwar keinen Fehler, die Punktetabelle führt aber die einzelnen Aufgaben nicht mehr auf.

(06 Jun '20, 17:36) Hirshy

@cgnieder Hat sich da mittlerweile etwas ergeben, das Problem wurde in https://texwelt.de/fragen/26748/punkte-in-xsim-addieren#26750 ja bis zum Urlaub aufgeschoben? ;)

(19 Jan '21, 13:43) Hirshy
1

@Hirshy ich habe eben v0.20 veröffentlicht und die Antwort hier um die dann zu verwendende Lösung ergänzt

(31 Jan '21, 12:13) cgnieder

@cgnieder danke für das Update, leider funktionieren mit v0.20 andere Sachen nicht mehr so wie sie sollten (z.B. haben Aufgaben die in einer collection gesammelt und später ausgegeben werden keine Aufgabennummern mehr). Aus Zeitgründen bin ich daher vorerst auf texlive2018 zurückgegangen, bis ich meine Vorlage nochmal genauer angehen und das Problem identifizieren kann.

(19 Feb '21, 08:36) Hirshy

@Hirshy die Änderung an den Collections ist 1. dokumentiert und 2. seit Monaten angekündigt, auch schon in den vorherigen Manuals :|

(19 Feb '21, 09:36) cgnieder

@Hirshy und wenn Dinge nicht wie dokumentiert funktionieren, dann erstelle bitte einen Issue auf https://github.com/cgnieder/xsim/issues/ Kommentare hier bekomme ich nur durch Zufall mit und vor allem vergesse ich sie schnell wieder

(19 Feb '21, 09:40) cgnieder

@cgnieder das war auch nicht wirklich als Kritik am Paket bzw. den Änderungen daran gemeint, eher als grundsätzliche Rückmeldung zu diesem Punkteproblem. Ich habe die Vorlage vor 3 Jahren für unseren Lehrstuhl erstellt und seitdem nicht mehr verändert, da sie ihren Zweck sehr gut erfüllt. Ich habe dann nur von Kollegen von Problemen gehört, nachdem Sie zB auf texlive2020 gewechselt haben und die Vorlage trotzdem weiter nutzen wollen. Bisher habe ich aber keine Zeit gefunden mich damit zu befassen und zu korrigieren, daher der "Rückschritt" auf texlive2018

(19 Feb '21, 10:39) Hirshy

@Hirshy OK. Allerdings hat es mit diesem Beispiel gar nichts zu tun, da hier keine Collections verwendet werden. Abgesehen davon liest sich „leider funktionieren mit v0.20 andere Sachen nicht mehr so wie sie sollten“ durchaus, als ob das Paket Bugs hätte. Von Anfang an hat xsim übrigens diesen „Verwenden auf eigene Gefahr“-Satz gleich zu Beginn des Manuals drin: Please be aware that xsim is in an experimental state […]. Many aspects may change […] until a stable version~1 will be reached.

(20 Feb '21, 09:57) cgnieder
Ergebnis 5 von 9 show 4 more comments
Deine Antwort
[Vorschau ausblenden]

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Frage-Themen:

×19

gestellte Frage: 17 Okt '17, 22:00

Frage wurde gesehen: 7,842 Mal

zuletzt geändert: 20 Feb '21, 09:57

Willkommen, erstes Mal hier? Schau mal unter FAQ!

×