diff options
Diffstat (limited to 'Master/texmf-dist/doc/latex/tuda-ci/DEMO-TUDaExercise.tex')
-rw-r--r-- | Master/texmf-dist/doc/latex/tuda-ci/DEMO-TUDaExercise.tex | 469 |
1 files changed, 258 insertions, 211 deletions
diff --git a/Master/texmf-dist/doc/latex/tuda-ci/DEMO-TUDaExercise.tex b/Master/texmf-dist/doc/latex/tuda-ci/DEMO-TUDaExercise.tex index 7b39c7fc3f7..56c16f66a15 100644 --- a/Master/texmf-dist/doc/latex/tuda-ci/DEMO-TUDaExercise.tex +++ b/Master/texmf-dist/doc/latex/tuda-ci/DEMO-TUDaExercise.tex @@ -1,9 +1,9 @@ -%% This is file `DEMO-TUDaExercise-de.tex' version 3.41 (2024-07-02), +%% This is file `DEMO-TUDaExercise.tex' version 4.00 (2025-01-26), %% it is part of %% TUDa-CI -- Corporate Design for TU Darmstadt %% ---------------------------------------------------------------------------- %% -%% Copyright (C) 2018--2024 by Marei Peischl <marei@peitex.de> +%% Copyright (C) 2018--2025 by Marei Peischl <marei@peitex.de> %% %% ============================================================================ %% This work may be distributed and/or modified under the @@ -16,10 +16,10 @@ %% %% This work has the LPPL maintenance status `maintained'. %% -%% The Current Maintainers of this work are +%% The current maintainer of this work is %% Marei Peischl <tuda-ci@peitex.de> %% -%% The development respository can be found at +%% The development repository can be found at %% https://github.com/tudace/tuda_latex_templates %% Please use the issue tracker for feedback! %% @@ -31,317 +31,364 @@ %% % !TeX program = lualatex %% +%% In case you need PDF/A +% \DocumentMetadata{ +% pdfstandard=a-2b, +% pdfversion=1.7,% 2.0 is possible as well, but PDF/A-2b requires < 2.0 +% lang=en, +%} \documentclass[ - german, - points=true,% für die Aktivierung der Punktereferenzen funktioniert nicht für TeX Versionen vor 2020 - ]{tudaexercise} + english,% Main language as global option + accentcolor=9c,% Choose accent color: For a list of available colors see the full tudapub documentation + points=true, to activate referencing task properties +% accept-missing-logoes=true,% No error in case logo files are not available +% logofile=example-image,% In case logo should be replaced +]{tudaexercise} -\usepackage[english, main=german]{babel} -\usepackage[autostyle]{csquotes} +%%%%%%%%%%%%%%%%%%% +% Language setup +%%%%%%%%%%%%%%%%%%% +\usepackage[english]{babel} +\usepackage[autostyle]{csquotes}% \enquote, to simplify use of quotation marks +%%%%%%%%%%%%%%%%%%% +% Bibliography +%%%%%%%%%%%%%%%%%%% \usepackage{biblatex} -\bibliography{DEMO-TUDaBibliography} - -%Formatierungen für Beispiele in diesem Dokument. Im Allgemeinen nicht notwendig! -\let\file\texttt -\let\code\texttt -\let\pck\textsf -\let\cls\textsf -\let\tbs\textbackslash +\addbibresource{DEMO-TUDaBibliography.bib}% File name of BibTeX database -\usepackage{booktabs}% Erweiterte möglichkeiten beim Spacing um Linien in Tabellen -\renewcommand*{\creditformatsum}[1]{\creditformat{Gesamt: #1}} +%%%%%%%%%%%%%%%%%%% +% Document specific setup for demonstration, generally not needed! +%%%%%%%%%%%%%%%%%%% +\usepackage{booktabs}% Improved horizontal rules for use in tables +\renewcommand*{\creditformatsum}[1]{\creditformat{Total: #1}} \ConfigureHeadline{ headline={title-name-id} } -\begin{document} +\newcommand*{\file}[1]{\texttt{#1}} +\newcommand*{\code}[1]{\texttt{#1}} +\newcommand*{\pkg}[1]{\textsf{#1}} +\newcommand*{\cls}[1]{\textsf{#1}} +\newcommand*{\option}[1]{\texttt{#1}} +\newcommand*{\environment}[1]{\texttt{#1}} +\let\tbs\textbackslash +%%%%%%%%%%%%%%%%%%% +% End of demo specific setup +%%%%%%%%%%%%%%%%%%% -\title[Übung TUDaExercise]{Übung zur Benutzung der TUDaExercise-Klasse} +\title[TUDaExercise]{Tasksheet to practice use of TUDaExercise class} \author{Marei Peischl} -\term{Sommersemester 2042 -- v\fileversion\space(\filedate)} +\term{Spring 2042} \sheetnumber{5} +\begin{document} + \maketitle -\begin{task}{Titelei} -Im Gegensatz zu den ganzen Titelseiten bei TUDaPub benötigt TUDaExercise eine platzsparende Möglichkeit für die Titelerzeugung. Daher verfügt TUDaexercise nur über einen Titelkopf. Für die Übergabe der Daten werden die folgenden Makros ausgewertet: +\begin{task}{Title} + TUDaExercise does not support the \code{titlepage} option. + To save space the setting is enforced to \code{titlepage=false}. + The title material supports some additional commands, a full example is shown below: + \begin{verbatim} -\title[Kurztitel für die Kopfzeile]{Titel} -\subtitle{Untertitel} -\author{Autor*in/Dozent*in} -\term{Semester} -\date{Datum} -\sheetnumber{Nummer des Übungsblatts} +\title[Short title to be used in running headers]{Title} +\subtitle{Subtitle} +\author{Author/Professor} +\term{Term} +\date{Date} +\sheetnumber{Sheetnumber} \end{verbatim} -Mit Ausnahme des Titels können alle Felder auch leer bleiben . Sofern keine Blattnummer übergeben wird, werden die Übungsaufgaben beginnend mit 1, fortlaufend nummeriert. + + All fields but the title may be kept empty. + In case no sheetnumber is used the tasks will be numbered starting at 1. \end{task} -\begin{task}{Farbgebung} - Die Farbgebung nutzt die selben Mechanismen wie die übrigen Klassen des TUDa-CI-Bundles. Die Optionen \code{color}, \code{accentcolor}, \code{textaccentcolor}, \code{identbarcolor} funktionieren wie gewohnt (vgl. TUDaPub). Darüber hinaus ist es auch hier möglich den farbigen Titelblock zu deaktivieren. Die Option \code{colorback=false} ermöglicht es für Versionen zum Ausdrucken die Tonersparende Variante einzustellen. +\begin{task}{Coloring} + The coloring uses the same mechanisms as the other classes of the TUDa-CI bundle. The options \option{color}, + \option{accentcolor}, \option{textaccentcolor}, \option{identbarcolor} work as usual \cite[see][]{tuda-ci}. It is also possible to + deactivate the colored title block. + The option \option{colorback=false} makes it possible to set the toner-saving variant for + versions for printing \end{task} -\begin{task}{Eine Aufgabe erstellen} -Aufgaben werden bei \cls{tudaexercise.cls} durch die Umgebung \code{task} definiert. Das Notwendige Argument übernimmt dabei eine Überschrift. Es kann leer bleiben. +\begin{task}{Create a task} + + Tasks are defined in \cls{tudaexercise} using the \environment{task} environment. The required argument is used as a title. It may remain empty. \begin{verbatim} - \begin{task}[<Optionen>]{Überschrift} - Text der Aufgabe - \end{task} + \begin{task}[<options>]{title} + Text describing the task + \end{task} \end{verbatim} -Querverweise zwischen den Aufgaben sind wie üblich mit \code{\tbs{}label} und \code{\tbs{}ref} möglich. + Cross-references between the tasks are possible as usual (\code{\tbs{}label} and \code{\tbs{}ref}). +\end{task} -\minisec{Die Verwendung des Makros \code{\tbs{}task}} -Neben der Umgebungsstruktur, verfügt \cls{tudaexercise} auch über die Möglichkeit eine Aufgabe nur mit \code{\tbs{}task} einzuleiten. Dieser Mechanismus existiert um zu älteren Versionen Kompatibel zu bleiben. Sie sollte jedoch nach Möglichkeit nicht mehr verwendet werden! -\end{task} +\begin{task}{Subtasks} + \begin{subtask}[title={Basic structure}] + \cls{tudaexercise} provides the \code{subtask} environment to subdivide tasks into subtasks. + Currently inly one level is supported. + For further subdivision, it is also possible to divide the document into sections using \code{\tbs{}section}. -\begin{task}{Teilaufgaben} -\begin{subtask}[title=Grundsturktur] - \cls{tudaexercise} unterstützt mit der \code{subtask}-Umgebung Aufgaben in Teilaufgaben zu untergliedern. Es wird derzeit nur eine Ebene unterstützt. Für weitere Untergliederung ist es möglich das Dokument zusätzlich mit \code{\tbs{}section} in Abschnitte zu unterteilen. - - \begin{verbatim} - \begin{subtask}[title=Titel,points=5] - - \end{subtask} - \end{verbatim} - - Teilaufgaben benötigen – im Gegensatz zu Aufgaben – keine Überschrift. Daher unterscheidet sich die Syntax für die Übergabe von der der \code{task}-Umgebung. Es gibt jedoch eine Variante um diese Unterscheidung zu umgehen, vergleiche Aufgabe \ref{task-subtask-syntax}. -\end{subtask} +\begin{verbatim} +\begin{subtask}[title={title},points=5] -\begin{subtask}[title=Anpassung der Überschriften] - Ab Version 3.13 unterstützt \cls{tudaexercise} zusätzlich eine Umschaltung bezüglich des Layouts der Subtask-Überschriften. Es existieren drei Optionswerte für die Dokumentenklasse: - \begin{description} - \item[subtask=ruled] Voreinstellung, die Überschriften sind durch Linien vom Fließtext abgetrennt. (vgl. dieses Dokument) - \item[subtask=plain] Keine Linien um die Überschrift. - \item[subtask=runin] Falls sehr kleine Aufgaben gesetzt werden, kann der Umbruch nach der Überschrift unterbunden werden. In diesem Fall ist die Nutzer:in selbst dafür verantwortlich, dass eine ggf. notwendige Optische Abtrennung zwischen Titel und Aufgabentext stattfindet, z.B. durch Hervorhebung des Titeltextes. - \end{description} \end{subtask} +\end{verbatim} + + In contrast to tasks, subtasks do not require a heading. + Therefore, the syntax for the transfer differs from that of the task environment. However, there is a variant to avoid this distinction, see task \ref{task-subtask-syntax}. + \end{subtask} + + \begin{subtask}[title={Layout modification of the headings}] + From version 3.13, \cls{tudaexercise} also supports switching the layout of subtask headings. + There are three option values for the document class: + subtask=ruled + subtask=plain + subtask=runin If very small tasks are set, the break after the title can be prevented . In this case, the user is responsible + for ensuring that any necessary visual separation between the title and task text takes place, e.g. by + highlighting the title text + Ab Version 3.13 unterstützt \cls{tudaexercise} zusätzlich eine Umschaltung bezüglich des Layouts der Subtask-Überschriften. Es existieren drei Optionswerte für die Dokumentenklasse: + \begin{description} + \item[subtask=ruled] Default setting, the headings are separated from the body text by lines (As shown in this document). + \item[subtask=plain] No rules around the headings + \item[subtask=runin] If very small tasks are set, the break after the title can be prevented . In this case, the user is responsible + for ensuring that any necessary visual separation between the title and task text takes place, e.g. by highlighting the title text. + \end{description} + \end{subtask} \end{task} -\begin{task}{Kopfzeilenanpassungen} -Der Mechanismus für die Kopfzeilen wurde angepasst, sodass sein Inhalt frei wählbar ist. + +\begin{task}{Headline customization} + The mechanism for the headers has been adapted so that its content can be freely selected. \begin{verbatim} \ConfigureHeadline{ - headline={Inhalt der Kopfzeile} +headline={content of the headline} } \end{verbatim} -Es existiert nun eine Unterscheidung zwischen linken und rechten Seiten, sofern \code{twoside=true}. - + There is now a distinction between left and right pages (in case \option{twoside=true}). \begin{verbatim} \ConfigureHeadline{ - even={Inhalt der Kopfzeile für linke Seiten}, - odd={Inhalt der Kopfzeile für rechte Seiten}, - oneside={Inhalt der Kopfzeile im einseitigen Modus} +even={content of the header for left pages}, +odd={content of the header for right pages}, +oneside={content of the header in single-page mode} } \end{verbatim} -Einstellungen, die gleiche Felder betreffen, überschreiben sich gegenseitig. + Settings that affect the same pages overwrite each other. -\begin{subtask}[Freie Inhalte] -Die Inhalte sind frei wählbar und werden automatisch in einer Box mit der gleichen Breite, wie der Text gesetzt. Der Inhalt wird linksbündig platziert. Es ist möglich Grafiken oder Tabellen innerhalb dieser Box zu platzieren. -\end{subtask} + \begin{subtask}[title={Custom content for headlines}] + The content can be any \LaTeX{} code which will be placed within a box as wide as the text. + Content will be typeset left aligned. + It is possible to place graphics or tables within this box. -\begin{subtask}[Vorgefertigte Elemente] -Für die Kopfzeilen existieren einige vorgefertigte Elemente, die dort platziert werden können. + There are some ready-made elements for the headers that can be placed in the header. \begin{verbatim} - \ShortTitle - \StudentID - \StudentName +\ShortTitle +\StudentID +\StudentName \end{verbatim} -Darüber hinaus kann auch jeglicher \LaTeX-Content dort eingefügt werden. + \end{subtask} -Zusätzlich sind einige Werte vorbelegt und platzieren die Einträge nach dem selbsterklärenden Namensschema: -\code{title-name-id}, \code{title-name}, \code{title}, \code{name-id}, \code{name} -\end{subtask} + \begin{subtask}[title={Predefined header options}] + In addition, the \option{headline} option acceps some pre-defined values which will place the entries entries according to the self-explanatory naming scheme: + \option{title-name-id}, \option{title-name}, \option{title}, \option{name-id}, \option{name} + \end{subtask} -\begin{subtask}[Kopfzeile auch auf der Titelseite] -Da die Kopfzeile häufig für die Angabe von Studentendaten genutzt wird, ist es mit der Klassenoption \code{headontitle} auch möglich die Kopfzeile ebenfalls auf der Titelseite einzufügen. -\end{subtask} + \begin{subtask}[title={Enable the header for the title page}] + As the header may be used to specify student data, it is possible to use the class option \option{headontitle}. This will enable the header for the title page. + \end{subtask} \end{task} +\begin{task}[solution=true]{Solutions} + \cls{tudaexercise} has a mechanism for managing solution proposals within the files. + The \environment{solution} environment exists for this purpose. + To enable the output of solutions it's possible to use the class option (global) -\begin{task}[solution=true]{Lösungen} -tudaexercise verfügt über einen Mechanismus um Lösungsvorschläge innerhalb der Dateien mit zu verwalten. Hierfür existiert die Umgebung \code{solution}. - -Die Ausgabe der Lösungen wird entweder global \begin{verbatim} \documentclass[..., solution=true, ]{tudaexercise} \end{verbatim} -oder lokal für einzelne Aufgaben konfiguriert: + or configure it locally for individual tasks: \begin{verbatim} -\begin{task}[solution=true]{Überschrift} -Aufgabentext +\begin{task}[solution=true]{Heading} +Task description \begin{solution} - Lösungstext + Solution \end{solution} \end{task} \end{verbatim} -Die Voreinstellung ist \code{solution=false}. -\begin{solution} -Beispiel für einen Lösungsvorschlag -\end{solution} + + The default setting is solution=false. + + \begin{solution} + This is an example for a solution block. + \end{solution} + + There also exists a \environment{solution*} environment. Which behaves the same way, but does not automatically add a title to the block. \end{task} -\begin{task}{Abfrage der Einstellung \enquote{solution}} -Ab Version 3.04 existiert zusätzlich die Möglichkeit die Einstellung \code{solution} abzufragen. +\begin{task}{Query the \option{solution} setting} -Die Umgebung \code{solution*} verhält sich wie \code{solution} ohne die Beschriftung. Darüber Hinaus wurden die Makros \code{\IfSolutionTF} ergänzt. + As of version 3.04, it is also possible to query the solution setting using the following structures: \begin{verbatim} -\IfSolutionT{<falls solution=true>} -\IfSolutionF{<falls solution=false>} -\IfSolutionTF{<falls solution=true>}{<falls solution=false>} +\IfSolutionT{<if solution=true>} +\IfSolutionF{<if solution=false>} +\IfSolutionTF{<if solution=true>}{<if solution=false>} \end{verbatim} + In the current setting (solution=false), the above block generates the following output: -In der aktuellen Einstellung (\code{solution=false}) erzeugt der obige Block die folgende Ausgabe: - -\IfSolutionT{<falls solution=true>} -\IfSolutionF{<falls solution=false>} -\IfSolutionTF{<falls solution=true>}{<falls solution=false>} + \IfSolutionT{<if solution=true>} + \IfSolutionF{<if solution=false>} + \IfSolutionTF{<if solution=true>}{<if solution=false>} \end{task} -\begin{task}[credit=10]{Punkte} -Punkteangaben sind über den Optionsschlüssel \code{credit} möglich. Der Wert wird hinter den Aufgabentitel in runde Klammern gesetzt. Dies geschieht mithilfe des Makros \code{\tbs{}creditformat} +\begin{task}[credit=10]{Points} + Points can be specified using the \option{credit} key. -Alternativ existiert der Schlüssel \code{points} dieser ergänzt zusätzlich zur Angabe auch den Text \code{\tbs{}PointName} bzw. \code{\tbs{PointsName}} je nachdem ob der Wert gleich 1. Der Schlüssel \code{points} akzeptiert daher nur numerische Werte ab Version 3.13 werden Gleitkommazahlen unterstützt. Das Dazimaltrennzeichen ist hierbei ein Punkt. Korrektur auf ein Komma ist über eine Umdefinition von \code{\tbs{}pointformat} möglich. + using the macro \creditformat option key. + The value is placed after the task title within parentheses. + This is internally done using the \code{\tbs{}creditformat} command which can be redefined to archieve different formats. -\begin{subtask}[points=1,title=Beispiel für den Schlüssel points] -Da ältere Versionen von TUDaExercise keine Optionsverarbeitung für subtask erlaubten, ist hier ein zusätzlicher Mechanismus enthalten. Falls sowohl ein Titel, als auch spezifische Angaben notwendig sind, existiert hier zusätzlich der Schlüssel \code{title}. -Geprüft wird darauf, ob das Argument ein Gleichheitszeichen enthält, ist dies der Fall, so wird davon ausgegangen, dass Optionen nach Schlüssel=Wert-Struktur übergeben werden. -\end{subtask} + Alternatively, there is the \option{points} key which, in addition to the specification, also adds the text \code{\tbs{}PointName} or + \code{\tbs{PointsName}} depending on whether the value equals 1. The points key therefore only accepts numerical + values (from version 3.13 floating point numbers are supported). + The decimal separator here is a period. + Correction to a comma is possible by redefining \code{\tbs{}pointformat}. -\begin{subtask}[Fallback-Modus, falls ein = im Titel detektiert wird, aber keine Zuweisung möglich ist.] -Falls bei der Optionsverarbeitung Unstimmigkeiten festgestellt werden, so wird das gesamte Argument als Titel verarbeitet. -\end{subtask} + \begin{subtask}[points=1,title={Example for the using \option{points}}] + As older versions of TUDaExercise did not allow option processing for subtask, an additional mechanism is + included here. + If both a title and specific information are required, the title key is also included here. + A check is made to see whether the argument contains an equals sign; if this is the case, it is assumed that options are passed according to the key=value structure. + \end{subtask} \end{task} -\begin{task}[points=auto]{Automatismen für Punktetabellen} -\label{task:refPoints} -Mit Version 3.13 erhält \cls{tudaexercise} die Funktionalität für automatische Punktetabellen und Referenzen auf die Punkteangaben. +\begin{task}[points=auto]{Automatisms for grading tables} + \label{task:refPoints} -\begin{subtask}[points=3,title=Referenzen aktivieren] -\cls{tudaexercise} hat diese Funktionalität grundsätzlich deaktiviert, sie kann jedoch über die Klassenoption \code{points=true} eingeschaltet werden. + At version 3.13 \cls{tudaexercise} received the functionality for automatic grading tables and references to the point data. -Der Mechanismus für die Referenzierung funktioniert ähnlich, wie die Objektreferenzen bei \LaTeX{}. Dadurch ist es notwendig das Dokument zweimal zu kompilieren. Falls \cls{tudaexercise} im Durchlauf feststellt, dass sich die Werte des letztes Durchlaufes von den aktuellen unterscheiden, wird eine entsprechende Warnung erzeugt. + \begin{subtask}[points=3,title={Activate references}] + \cls{tudaexercise} has generally deactivated this functionality, but it can be activated via the class option \option{points=true} be switched on. -Für die Referenz stehen zwei Makros zur Verfügung. Eines funktioniert über den Aufruf der Aufgabennummer, der andere über labels: + The referencing mechanism works in a similar way to the object references in \LaTeX. + This makes it necessary to compile the document twice. + If \cls{tudaexercise} detects different values between begin and end of the compilation process, a corresponding warning is generated. + Two macros are available for the reference. + One works by calling up the task number, the other via labels: -\verb+\getPoints{+\thetask\verb+}+\\ -\verb+\refPoints{task:refPoints}% benötigt das \label{task:refPoints}, vgl. Quellcode+ + \verb+\getPoints{+\thetask\verb+}+\\ + \verb+\refPoints{task:refPoints}% requires the \label{task:refPoints}, see source code+ + In this case, both macros return the same value: \refPoints{task:refPoints}. + As {\tbs{}refPoints} works independently of hte structure of the task numbers, this variant is generally preferable. + In addition to references to individual tasks, \verb+\getPointsTotal+ returns the total of all tasks of the last compilation. + \end{subtask} -Beide Makros geben in diesem Fall den gleichen Wert: \refPoints{task:refPoints}. Da die Variante code{\tbs{}refPoints} dynamisch von den Aufgabennummern abhängig ist diese Variante im Allgemeinen zu bevorzugen. + \begin{subtask}[points=2,title={Summation among subtasks}] + The new mechanism also allows automatic calculation of the total points of all subtasks within a task. + To enable this mechanism the option \option{points=auto} has to be set. + If it's set as a class option, it will be activated for all tasks. + If the class option points=auto is set, this is automatically activated for all tasks. -Neben der Referenz auf einzelne Aufgaben gibt \code{\tbs{}getPointsTotal} die Summe der aller Aufgaben im letzten \LaTeX-Lauf zurück. + However, the automatic value can be overwritten by manually entering a value, e.\,g. if a task does not onldy consist of subtasks. -\end{subtask} + There is currently no automatic check that the sum of the subtasks matches the total. -\begin{subtask}[points=2,title=Punkte aus Teilaufgaben aufsummieren] - Der neue Mechanismus ermöglicht auch, dass der Punktewert einer Aufgabe aus der Summe der Punkte der enthaltenen Teilaufgaben berechnet wird. - - Hierfür ist die Verwendung der Umgebungen zwingend notwendig. \code{\tbs{}task} erlaubt es nicht die Teilaufgaben entsprechend einzugrenzen. Selbiges gilt für die Subtask-Umgebung. - - Die Summe der Punkte wird nicht automatisch bei der Aufgabenbezeichnung eingetragen, jedoch existiert mit dem Optionswert \code{points=auto} eine entsprechende Funktionalität. - Falls die Klassenoption \code{points=auto} gesetzt ist, wird diese automatisch für alle Aufgaben aktiviert. Der automatische Wert kann jedoch über eine manuelle Angabe eines Wertes überschrieben werden, z.\,B. falls eine Aufgabe nicht aus Teilaufgaben besteht. - - Es erfolgt derzeit keine automatische Prüfung auf die Übereinstimmung zwischen der Summe der Teilaufgaben und der Gesamtpunktzahl. - - Um die Unterscheidung der Angabe zwischen aufsummierten Werten und manuell gesetzten Werten zu ermöglich existiert intern eine weitere Variante des Makros \code{\tbs{}creditformat}. - - \begin{verbatim} - \newcommand*{\creditformatsum}[1]{\creditformat{#1}} - \end{verbatim} - - Es ruft intern lediglich das Makro \code{\tbs{}creditformat} auf. Für dieses Beispieldokument wurde jedoch die Bedeutung überschrieben, sodass im Titel dieser Aufgabe gekennzeichnet wird, dass der Punktewerte eine Summe der Teilaufgaben entspricht: - - \begin{verbatim} - \renewcommand*{\creditformatsum}[1]{\creditformat{Gesamt: #1}} - \end{verbatim} -\end{subtask} + There is another internal variant of the macro \code{\tbs{}creditformat} to allow a distinction between summed values + and manually set values. + +\begin{verbatim} +\newcommand*{\creditformatsum}[1]{\creditformat{#1}} +\end{verbatim} -\begin{subtask}[points=3,title=Automatische Punktetabellen] - \cls{tudaexercise} stellt mit der Möglichkeit der Referenz auf die Aufgabenwerte auch die Auflistung aller Punkte zur Verfügung. - - Da die Struktur einer Punktetabelle nach persönlichen Vorlieben stark variiert ist das Makro sehr abstrakt konstruiert. - - \begin{verbatim} - \mapPoints{<Code, der für jede Aufgabe ausgeführt werden soll>} - \end{verbatim} - - \code{\tbs{}mapPoints} iteriert über alle Aufgaben und erlaubt als Argument beliebige Code-Elemente. Innerhalb des Codes können \code{\#1} (Nummer der Aufgabe) und \code{\#2} (zugehöriger Punktwert) verwendet werden. - Aufgaben, deren Wert Null beträgt werden übersprungen. - - Zum Beispiel erzeugt: - \begin{verbatim} - \begin{tabular}{@{}lr@{}} - \toprule - \mapPoints{Aufgabe #1 Punkte\\} - \midrule - Gesamt&\getPointsTotal{} Punkte\\ - \bottomrule - \end{tabular} - \end{verbatim} - die Ausgabe:\\ - \begin{tabular}{@{}lr@{}} - \toprule - \mapPoints{Aufgabe #1 Punkte\\} - \midrule - Gesamt&\getPointsTotal{} Punkte\\ - \bottomrule - \end{tabular} - - Falls auch Aufgaben mit einem Wert von 0 verarbeitet werden sollen, existiert noch eine gesternte Version \code{\tbs{}mapPoints*}. + By default it is the same but could be overwritten like the following example: + +\begin{verbatim} +\renewcommand*{\creditformatsum}[1]{\creditformat{Total: #1}} +\end{verbatim} \end{subtask} -\end{task} + \begin{subtask}[points=3,title={Automatic grading tables}] + \cls{tudaexercise} also provides a list of all points with the option of referencing the task values. + As the structure of a grading table varies greatly depending on personal preferences, the macro is designed in a very + abstract way. +\begin{verbatim} +\mapPoints{<code to be executed for each task>} +\end{verbatim} -\begin{task*}{Einheitliche Syntax für Task/Subtask} - \label{task-subtask-syntax} - TUDaExercise unterscheidet in der Standardeinstellung zwischen \code{task} und \code{subtask}. Dies ist dadurch begründet, dass \code{subtask} keine Angabe eines Titels erfordert. - - Es wurde der Bedarf nach einer einheitlichen Syntax geäußert (siehe \url{https://github.com/tudace/tuda_latex_templates/issues/189}). - - \begin{subtask*}{Die gesternten Varianten der task/subtaks-Umgebungen} - Die mit Version 3.0 implementierten Varianten \code{task*} und \code{subtask*} ermöglichen dies. - - Beide Varianten stehe nur als Umgebung und nicht als Makro zur Verfügung: + \code{\tbs{}mapPoints} iterates over all tasks and allows any code elements as arguments. + Within the code, \code{\#1} (Task Number) and \code{\#2} (associated point value) can be used. + Tasks with a value of zero are skipped by default. + For example: \begin{verbatim} -\begin{task*}{Aufgabentitel} - \begin{subtask*}{Titel der Teilaufgabe} - Beschreibung - \end{subtask*} -\end{task*} +\begin{tabular}{@{}lr@{}} + \toprule + \mapPoints{Task #1 Points\\} + \midrule + Total&\getPointsTotal{} Points\\ + \bottomrule +\end{tabular} \end{verbatim} + creates the following output:\\ + \begin{tabular}{@{}lr@{}} + \toprule + \mapPoints{Task #1 Points\\} + \midrule + Total&\getPointsTotal{} Points\\ + \bottomrule + \end{tabular} + + \end{subtask} -\end{subtask*} + \begin{subtask}[points=5,title={Detailed grading tables including subtasks}] + With version 4.00 there is also the option using \verb+\mapPoints*+. + This variant also iterates over subtasks. + In addition, the mechanism has been expanded to include a more general variant. + This can be used to interact with all tasks. + The documentation will be extended! + \end{subtask} +\end{task} -\begin{subtask*}{Vertauschen der beiden Varianten} -Zusätzlich erlaubt die Klassenoption \code{match-task-subtask-syntax} das Vertauschen von \code{subtask} und \code{subtask*}. +\begin{task*}{Uniform syntax for task/subtask} + \label{task-subtask-syntax} + By default, TUDaExercise distinguishes between task and subtask. This is due to the fact that subtask does + not require a title to be specified. -Die Umgebungen \code{task*} und \code{task} sind identisch. -\end{subtask*} + The need for a uniform syntax was expressed (see \url{https://github.com/tudace/tuda_latex_templates/issues/189}). + + \begin{subtask*}{Starred variants of the task/subtaks environments} + The task* and subtask* variants implemented with version 3.0 make this possible: + +\begin{verbatim} +\begin{task*}{Task heading} +\begin{subtask*}{subtask heading} +Description + \end{subtask*} \end{task*} +\end{verbatim} + \end{subtask*} -\begin{task}{Kompatibilitätsmodus} -Die Klasse \cls{tudaexercise} verfügt über einen Kompatibilitätsmodus, um den Umstieg von zuvor existierenden Templates, wie TUDexercise zu erleichtern. -Um den Kompatibilitätsmodus zu aktivieren, existiert die Option \code{compat=true}. + \begin{subtask*}{Swapping both variants} + The class option \code{match-task-subtask-syntax} allows subtask and subtask* to be swapped. The task* and task environments are identical anyway. + \end{subtask*} +\end{task*} -Damit können Strukturen wie \code{examheader}, \code{examheaderdefault} und die Erzeugung von Aufgaben mitilfe von \code{\tbs{}subsection} wie gewohnt verwendet werden. Da einige dieser Mechanismen jedoch der Philosophie der semantischen Auszeichnung widersprechen wird ihre Verwendung hier nicht genauer erklärt. Nutzer, denen diese Mechanismen nicht vertraut sind, wird empfohlen die durch TUDaExercise zur Verfügung gestellten Varianten zu nutzen. -Beim zugehörigen Release im Development Repository findet sich auch eine Beispieldatei, die die alten Mechanismen verwendet und spezielle Hinweise für Umsteiger enthält: \url{https://github.com/tudace/tuda_latex_templates/blob/master/example/Examples-TUDexercise-compat.tex} -\end{task} \end{document} +%% End of file `DEMO-TUDaExercise.tex'. |