From 61c4c1776a667a4952e8f9817d545c55e50b8009 Mon Sep 17 00:00:00 2001
From: Frank Fuhlbrück
Date: Fri, 7 Jan 2022 17:23:31 +0100
Subject: exsh v0.9: beamercomp.,better todo,points=sum

---
 exercisesheets.tex | 79 +++++++++++++++++++++++++++++++++++++++++++++---------
 1 file changed, 67 insertions(+), 12 deletions(-)

(limited to 'exercisesheets.tex')

diff --git a/exercisesheets.tex b/exercisesheets.tex
index 887e5b4..b1d0fff 100644
--- a/exercisesheets.tex
+++ b/exercisesheets.tex
@@ -53,7 +53,7 @@
 \usepackage[english,iso]{isodate}
 \title{The \exsh Package}
 \author{Sebastian Kuhnert\and Frank Fuhlbrück}
-\date{Version 0.8, \printdateTeX{2021/10/06}}
+\date{Version 0.9, \printdateTeX{2022/01/07}}
 
 \begin{document}
 \maketitle
@@ -66,7 +66,7 @@ This variant is called exercisesheets-beamer. Not all combinations of options ha
 
 
 \subsection*{Licence}
-Copyright \textcopyright{} 2008--2021 Sebastian Kuhnert and Frank Fuhlbrück.
+Copyright \textcopyright{} 2008--2022 Sebastian Kuhnert and Frank Fuhlbrück.
 Permission is granted to copy, distribute and/or modify this software under the
 terms of the \LaTeX{} Project Public Licence, version 1.3c or later. This
 package is maintained, the Current Maintainer is Sebastian
@@ -179,6 +179,46 @@ The following options are available:
  \item[\option{exercisespath}] Set the (relative) path of the 
   directory containing exercises to be included via 
   \verb|\includeexercise|.
+ \item[\option{showtodos} / \option{hidetodos}] 
+  \verb|\TODO| markers
+  are hidden by default, this option switches their behavior. This 
+  option is usually set within \verb|\ifsamplesolutions| or 
+  similar.
+ \item[\option{beamercompatibility}] 
+  This options (which only is effective in the non-beamer version)
+  defines several beamer macros with as trivial 
+  effects as possible, e.g., \verb|\pause| becomes \verb|\relax|
+  and overlay specifications are mostly ignored. Be careful to use 
+  this option after loading \verb|enumitem| etc. as the enumerate 
+  and itemize environment are defined to swallow overlay 
+  specifications without effect, this also holds for
+  \verb|\item<1->|. The current list of redefinitions is as 
+  follows:
+\begin{lstlisting}
+  \let\pause\relax
+  \def\frame{}
+  \renewcommand{\frame}[1][]{}
+  \let\endframe\relax
+  \def\onslide<#1>{}
+  \def\only<#1>{}
+  \def\uncover<#1>{}
+  \def\visible<#1>{}
+  \def\invisible<#1>{}
+  \long\def\alt<#1>#2#3{#2}
+  \long\def\temporal<#1>#2#3#4{#3}
+  \def\uncover<#1>{}
+  \let\exsh@origitem\item
+  \def\exsh@ovrlitem<#1>{\exsh@origitem}
+  \def\item{\@ifnextchar<\exsh@ovrlitem\exsh@origitem}
+  \let\exsh@origitemize\itemize
+  \def\exsh@ovrlitemize[#1]{\exsh@origitemize}
+  \def\itemize
+    {\@ifnextchar[\exsh@ovrlitemize\exsh@origitemize}
+  \let\exsh@origenumerate\enumerate
+  \def\exsh@ovrlenumerate[#1]{\exsh@origenumerate}
+  \def\enumerate
+    {\@ifnextchar[\exsh@ovrlenumerate\exsh@origenumerate}
+\end{lstlisting}
 
 \end{description}
 
@@ -278,8 +318,16 @@ supported:
   Useful for exercises that prove a famous theorem.
  \item[\option{firstline=\param{text}}] Save some space by text \param{text}
   behind the exercise title.
- \item[\option{points=\param{number}}] Assign this exercise \param{number}
-  points. By default, exercises are unlabelled.
+ \item[\option{points=\param{number/oral/sum}}] Assign this 
+  exercise \param{number} points. By default, exercises are 
+  unlabelled. \param{oral} works the same way as the option
+  \option{oral}. The value \param{sum} displays the sum of all 
+  occurrences of \verb|\points| within the exercise: Ordinary and 
+  bonus points are treated separately. If there are only bonus 
+  points, the option \option{bonus} is automatically triggered. To 
+  undo this, either delete the \verb|.aux| file or explicitly use 
+  \verb|\points[bonus=false]{\param{number}}| for at least one
+  subexercise.
  \item[\option{oral}] Label this exercise as \emph{oral}. This supersedes and is
   superseded by the option \option{points}.
  \item[\option{pointsinfo=\param{text}}] Supply \param{text} as additional
@@ -299,12 +347,13 @@ supported:
  \item[\option{beamersolution}] For \exsh-beamer only. If this option
  is set all normal solutions will not be included and only 
  \option{beamersolution}s are typeset.
- \item[\option{framed}] For \exsh-beamer only. If this option
- is set for a normal solution, its content will be put on one or more
- frames. Use \verb|\newframe| to start a new frame. This option is 
- especially helpful if you provide your own definitions of
- \verb|\only| etc. for non-beamer compilation. \verb|\newframe| is 
- already defined as \verb|\relax| in  non-beamer \exsh.
+ \item[\option{framed}] For \exsh-beamer only, simply ignored 
+ elsewhere. If this option
+ is set for a normal solution, its content will be put on one or 
+ more frames. Use \verb|\newframe| to start a new frame. This 
+ option is especially helpful if you provide your own definitions 
+ of \verb|\only| etc. for non-beamer compilation. \verb|\newframe| 
+ is already defined as \verb|\relax| in  non-beamer \exsh.
 \end{description}
 
 Solutions are only typeset, if the \option{solutions} option is in effect. There
@@ -351,10 +400,12 @@ starts a new paragraph, the second one puts the hint in parenthesis.
 
 You can use the following to include a red TODO marker in your document. This is
 useful to mark places where work is still in progress. A warning is issued at
-each place.
+each place. TODO markers can also contain an optional description
+of the task that needs to be done. If you switch off displaying
+TODO markers (s.a.) the warning will be issued nevertheless.
 
 \begin{lstlisting}
-\TODO
+\TODO[what needs to be done]
 \end{lstlisting}
 
 \subsection{Annotating Points for Sub-Exercises}
@@ -538,6 +589,10 @@ the environments defined by this package:
       false}\}}] Execute \param{options if true} if solutions for non-oral
   exercises are included in the current document, \param{options if false}
   otherwise.
+ \item[\option{ifsamplesolutions=\{\param{options if true}\}\{\param{options if
+      false}\}}] Execute \param{options if true} if sample solutions for marked
+  exercises are included in the current document, \param{options if false}
+  otherwise.
 \end{description}
 
 Example 1: Only include points for sub-exercises when solutions are typeset:
-- 
cgit v1.2.3

