diff options
Diffstat (limited to 'exercisesheets.sty')
| -rw-r--r-- | exercisesheets.sty | 43 |
1 files changed, 39 insertions, 4 deletions
diff --git a/exercisesheets.sty b/exercisesheets.sty index 2b6316a..859e775 100644 --- a/exercisesheets.sty +++ b/exercisesheets.sty @@ -1,4 +1,4 @@ -\def\fileversion{0.5f} +\def\fileversion{0.5g} \def\filedate{2008/11/25} % TODO: allow \and in author and solutionsby @@ -354,18 +354,53 @@ \clearpage \endgroup } +\listadd{\exsh@enums}{enumerate} +\listadd{\exsh@enums}{compactenum} +\listadd{\exsh@enums}{asparaenum} +\listadd{\exsh@enums}{inparaenum} +\listadd{\exsh@nonenums}{itemize} +\listadd{\exsh@nonenums}{compactitem} +\listadd{\exsh@nonenums}{asparaitem} +\listadd{\exsh@nonenums}{inparaitem} +\listadd{\exsh@nonenums}{description} +\listadd{\exsh@nonenums}{compactdesc} +\listadd{\exsh@nonenums}{asparadesc} +\listadd{\exsh@nonenums}{inparadesc} +\listadd{\exsh@nonenums}{asparablank} +\listadd{\exsh@nonenums}{inparablank} +\listadd{\exsh@nonenums}{list} \long\def\exsh@skipsheet#1{% \ifstrequal{#1}{\begin}{\exsh@skipsheet@begin}{% \ifstrequal{#1}{\end}{\exsh@skipsheet@end}{% \ifstrequal{#1}{\label}{\exsh@skipsheet@label}{% - \exsh@skipsheet}}}% + \ifstrequal{#1}{\setcounter}{\expandafter\exsh@skipsheet\setcounter}{% + \ifstrequal{#1}{\item}{\ifdef{\@enumctr}{\@hyper@itemtrue\refstepcounter{\@enumctr}}{}}{}% + \exsh@skipsheet}}}}% } \def\exsh@skipsheet@end#1{% - \ifstrequal{#1}{sheet}{\end{sheet}}{\exsh@skipsheet}% + \ifstrequal{#1}{sheet}{\end{sheet}}{\endgroup\exsh@skipsheet}% } \def\exsh@skipsheet@begin#1{% + \begingroup \ifstrequal{#1}{exercise}{\refstepcounter{section}}{}% - \exsh@skipsheet% + \ifinlist{#1}{\exsh@enums}{% + \exsh@skipsheet@beginenum + }{% + \ifinlist{#1}{\exsh@nonenums}{% + \undef\@enumctr + }{}% + \exsh@skipsheet + }% +} +\def\exsh@skipsheet@beginenum{% + \ifnum\@enumdepth>\thr@@ + \@toodeep + \else + \advance\@enumdepth\@ne + \edef\@enumctr{enum\romannumeral\the\@enumdepth}% + \setcounter{\@enumctr}{0}% + \fi + \@ifnextchar[{\@enumlabel@{\exsh@skipsheet}[}{\exsh@skipsheet}% } \def\exsh@skipsheet@label#1{% \label{#1}\exsh@skipsheet |
