summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/stex/problem
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2012-01-09 22:43:47 +0000
committerKarl Berry <karl@freefriends.org>2012-01-09 22:43:47 +0000
commit66a28e0c48dbe5e98f85c13320d4c1aa27deed16 (patch)
tree1ca760c6b187045518083dfbdd4d75f12c54d2fe /Master/texmf-dist/source/latex/stex/problem
parent2038d0a63142b83600256230a480cfc39a984c63 (diff)
rm stex, cannot get right: bin programs, xml, etc.
git-svn-id: svn://tug.org/texlive/trunk@25063 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/stex/problem')
-rw-r--r--Master/texmf-dist/source/latex/stex/problem/problem.dtx578
1 files changed, 0 insertions, 578 deletions
diff --git a/Master/texmf-dist/source/latex/stex/problem/problem.dtx b/Master/texmf-dist/source/latex/stex/problem/problem.dtx
deleted file mode 100644
index 7661efe7906..00000000000
--- a/Master/texmf-dist/source/latex/stex/problem/problem.dtx
+++ /dev/null
@@ -1,578 +0,0 @@
-% \iffalse meta-comment
-% An Infrastructure for Problems
-% $URL: https://svn.kwarc.info/repos/stex/trunk/sty/problem/problem.dtx $
-% $Rev: 1671 $; last modified by $Author: kohlhase $
-% $Date: 2010-11-06 08:05:15 +0100 (Sat, 06 Nov 2010) $
-% Copyright (c) 2006-2008 Michael Kohlhase, all rights reserved
-% this file is released under the
-% LaTeX Project Public License (LPPL)
-% \fi
-%
-% \iffalse
-%<package>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
-%<package>\ProvidesPackage{problem}[2010/06/25 v0.9c Semantic Markup for Problems]
-%
-%<*driver>
-\documentclass{ltxdoc}
-\usepackage{url,float,latexml}
-\usepackage[solutions,hints,notes]{problem}
-\usepackage[show]{ed}
-\usepackage[hyperref=auto,style=alphabetic]{biblatex}
-\bibliography{kwarc}
-\usepackage[eso-foot,today]{svninfo}
-\svnInfo $Id: problem.dtx 1671 2010-11-06 07:05:15Z kohlhase $
-\svnKeyword $HeadURL: https://svn.kwarc.info/repos/stex/trunk/sty/problem/problem.dtx $
-\usepackage{stex-logo}
-\usepackage{../ctansvn}
-\usepackage{hyperref}
-\makeindex
-\floatstyle{boxed}
-\newfloat{exfig}{thp}{lop}
-\floatname{exfig}{Example}
-\def\tracissue#1{\cite{sTeX:online}, \hyperlink{http://trac.kwarc.info/sTeX/ticket/#1}{issue #1}}
-\begin{document}\DocInput{problem.dtx}\end{document}
-%</driver>
-% \fi
-%
-% \iffalse\CheckSum{365}\fi
-%
-% \changes{v0.9}{2006/09/18}{First Version with Documentation}
-% \changes{v0.9a}{2007/01/02}{Renamed to \texttt{problem.sty}}
-% \changes{v0.9b}{2008/10/01}{added extraction}
-% \changes{v0.9c}{2010/01/03}{based on \texttt{omd.sty} now}
-%
-% \GetFileInfo{problem.sty}
-%
-% \MakeShortVerb{\|}
-%
-% \title{\texttt{problem.sty}: An Infrastructure for formatting Problems\thanks{Version {\fileversion} (last revised
-% {\filedate})}}
-% \author{Michael Kohlhase\\
-% Jacobs University, Bremen\\
-% \url{http://kwarc.info/kohlhase}}
-% \maketitle
-%
-% \begin{abstract}
-% The |problem| package supplies an infrastructure that allows specify problems and to
-% reuse them efficiently in multiple environments.
-% \end{abstract}
-% \setcounter{tocdepth}{2}\tableofcontents\newpage
-%
-%\section{Introduction}\label{sec:intro}
-%
-% The |problem| package supplies an infrastructure that allows specify problem. Problems
-% are text fragments that come with auxiliary functions: hints, notes, and
-% solutions\footnote{for the momenet multiple choice problems are not supported, but may
-% well be in a future version}. Furthermore, we can specify how long the solution to a
-% given problem is estimated to take and how many points will be awarded for a perfect
-% solution.
-%
-% Finally, the |problem| package facilitates the management of problems in small files,
-% so that problems can be re-used in multiple environment.
-%
-% \section{The User Interface}\label{sec:ui}
-%
-% \subsection{Package Options}
-% The |problem| package takes the options \DescribeMacro{solutions}|solutions| (should
-% solutions be output?), \DescribeMacro{notes}|notes| (should the problem notes be
-% presented?), \DescribeMacro{hints}|hints| (do we give the hints?),
-% \DescribeMacro{pts}|pts| (do we display the points awarded for solving the problem?),
-% \DescribeMacro{min}|min| (do we display the estimated minutes for problem soling). If
-% theses are specified, then the corresponding auxiliary parts of the problems are output,
-% otherwise, they remain invisible.
-%
-% The \DescribeMacro{boxed}|boxed| option specifies that problems should be formatted in
-% framed boxes so that they are more visible in the text. Finally, the
-% \DescribeMacro{test}|test| option signifies that we are in a test sitution, so this
-% option does not show the solutions (of course), but leaves space for the students to
-% solve them.
-%
-% The \DescribeMacro{extract}|extract| option can be set if we want to extract a problems
-% file, e.g. to display the solutions, see Section~\ref{sec:user:includeproblem} for a
-% discussion.
-%
-% Finally, if the \DescribeMacro{showmeta}|showmeta| is set, then the metadata keys are
-% shown (see~\cite{Kohlhase:metakeys:ctan} for details and customization options).
-%
-% \subsection{Problems and Solutions}\label{sec:user:probsols}
-%
-% \DescribeEnv{problem} The main enviornment provided by the |problem| package is
-% (surprise surprise) the |problem| environment. It is used to mark up problems and
-% excercises. The environment takes an optional KeyVal argument with the keys
-% \DescribeMacro{id}|id| as an identifier that can be reference later,
-% \DescribeMacro{pts}|pts| for the points to be gained from this exercise in homework or
-% quiz situations, \DescribeMacro{min}|min| for the estimated minutes needed to solve the
-% problem, and finally \DescribeMacro{title}|title| for an informative title of the
-% problem. For an example of a marked up problem see Figure~\ref{fig:problem} and the
-% resulting markup see Figure~\ref{fig:result}.
-%
-%\begin{exfig}
-% \begin{verbatim}
-% \usepackage[solutions,hints,pts,min]{problem}
-% \begin{document}
-% \begin{problem}[id=elefants,pts=10,min=2,title=Fitting Elefants]
-% How many Elefants can you fit into a Volkswagen beetle?
-% \begin{hint} Think positively, this is simple!\end{hint}
-% \begin{exnote}Justify your answer\end{exnote}
-% \begin{solution}[for=elefants,height=3cm]
-% Four, two in the front seats, and two in the back.
-% \end{solution}
-% \end{problem}
-% \end{document}
-% \end{verbatim}
-% \caption{A marked up Problem}\label{fig:problem}
-% \end{exfig}
-%
-% \DescribeEnv{solution} The |solution| environment can be to specify a solution to a
-% problem. If the \DescribeMacro{solutions}|solutions| option is set or |\solutionstrue|
-% is set in the text, then the solution will be presented in the output. The |solution|
-% environment takes an optional KeyVal argument with the keys \DescribeMacro{id}|id| for
-% an identifier that can be reference \DescribeMacro{for}|for| to specify which problem
-% this is a solution for, and \DescribeMacro{height}|height| that allows to specify the
-% amount of space to be left in test situations (i.e. if the \DescribeMacro{test}|test|
-% option is set in the |\usepackage| statement).
-%
-%\begin{exfig}
-% \begin{minipage}{.9\linewidth}
-% \begin{problem}[id=elefants.prob,title=Fitting Elefants]
-% How many Elefants can you fit into a Volkswagen beetle?
-% \begin{hint} Think positively, this is simple!\end{hint}
-% \begin{exnote}Justify your answer\end{exnote}
-% \begin{solution}%[for=elefants.prob,height=3cm]
-% Four, two in the front seats, and two in the back.
-% \end{solution}
-% \end{problem}
-% \end{minipage}
-% \caption{The Formmatted Problem from Figure~\ref{fig:problem}}\label{fig:result}
-% \end{exfig}
-%
-% \DescribeEnv{hint}\DescribeEnv{note}, the |hint| and |exnote| environments can be used
-% in a |problem| enviroment to give hints and to make notes that elaborate certain aspects
-% of the problem.
-%
-% \subsection{Including Problems}\label{sec:user:includeproblem}
-%
-% The \DescribeMacro{\includeproblem}|\includeproblem| macro can be used to include a
-% problem from another file. It takes an optional KeyVal argument and a second argument
-% which is a path to the file containing the problem (the macro assumes that there is only
-% one problem in the include file). The keys \DescribeMacro{title}|title|,
-% \DescribeMacro{min}|min|, and \DescribeMacro{pts}|pts| specify the problem title, the
-% estimated minutes for solving the problem and the points to be gained, and their values
-% (if given) overwrite the ones specified in the |problem| environment in the included
-% file.
-%
-% Sometimes we want to collect all the included problems into a separate file that can be
-% typeset independently. The main application is to have course notes into which the
-% problems are included (usually in boxed form to distinguish them from the rest of the
-% text and without solutions) and to have the problems with solutions in a separate file
-% (to encourage students to try and solve the problems before looking up solutions). In
-% this situation set the \DescribeMacro{extract}|extract| option on the notes file
-% \meta{notes}|.tex|, which causes a file \meta{notes}|-solutions.tex| to be generated
-% that has the |\includeproblem| statements with the respective numbers from the main
-% document. This can then be imported into a document with the respective front and
-% backmatter. In particular the frontmatter of the importing will ususlly specify the
-% \DescribeMacro{solutions}|solutions| option to generate solutions.
-%
-% \subsection{Reporting Metadata}\label{sec:user:reporting}
-%
-% The sum of the points and estimated minutes (that we specified in the |pts| and |min|
-% keys to the |problem| environment or the |\includeproblem| macro) to the log file and
-% the screen after each run. This is useful in preparing exams, where we want to make sure
-% that the students can indeed solve the problems in an alotted time period.
-%
-% The |\min| and |\pts| macros allow to specify (i.e. to print to the margin) the
-% distribution of time and reward to parts of a problem, if the |pts| and |pts| package
-% options are set. This allows to give students hints about the estimated time and the
-% points to be awarded.
-%
-% \section{Limitations}\label{sec:limitations}
-%
-% In this section we document known limitations. If you want to help alleviate them,
-% please feel free to contact the package author. Some of them are currently discussed in
-% the \sTeX TRAC~\cite{sTeX:online}.
-% \begin{compactenum}
-% \item none reported yet
-% \end{compactenum}
-%
-% \StopEventually{\newpage\PrintChanges}
-% \newpage
-%
-% \section{The Implementation}\label{sec:implementation}
-%
-% The |problem| package generates two files: the {\LaTeX} package (all the code between
-% {\textsf{$\langle$*package$\rangle$}} and {\textsf{$\langle$/package$\rangle$}}) and the
-% {\LaTeXML} bindings (between {\textsf{$\langle$*ltxml$\rangle$ and
-% $\langle$/ltxml$\rangle$}}). We keep the corresponding code fragments together,
-% since the documentation applies to both of them and to prevent them from getting out of
-% sync.
-%
-% \subsection{Package Options}\label{sec:impl:options}
-%
-% The first step is to declare (a few) package options that handle whether certain
-% information is printed or not. They all come with their own conditionals that are set by
-% the options.
-%
-% \begin{macrocode}
-%<*package>
-\DeclareOption{showmeta}{\PassOptionsToPackage{\CurrentOption}{metakeys}}
-\newif\ifexnotes\exnotesfalse\DeclareOption{notes}{\exnotestrue}
-\newif\ifhints\hintsfalse\DeclareOption{hints}{\hintstrue}
-\newif\ifsolutions\solutionsfalse\DeclareOption{solutions}{\solutionstrue}
-\newif\ifpts\ptsfalse\DeclareOption{pts}{\ptstrue}
-\newif\ifmin\minfalse\DeclareOption{min}{\mintrue}
-\newif\ifboxed\boxedfalse\DeclareOption{boxed}{\boxedtrue}
-\newif\ifextract\extractfalse\DeclareOption{extract}{\extracttrue}
-\ProcessOptions
-%</package>
-% \end{macrocode}
-%
-% On the {\LaTeXML} side we only make sure that the switches are defined
-% \begin{macrocode}
-%<*ltxml>
-RawTeX('
-\newif\ifexnotes\exnotesfalse
-\newif\ifhints\hintsfalse
-\newif\ifsolutions\solutionsfalse
-\newif\ifpts\ptsfalse
-\newif\ifmin\minfalse
-\newif\ifboxed\boxedfalse
-\newif\ifextract\extractfalse
-');
-%</ltxml>
-% \end{macrocode}
-% Then we make sure that the necessary packages are loaded (in the right versions).
-% \begin{macrocode}
-%<*package>
-\RequirePackage{keyval}[1997/11/10]
-\RequirePackage{xcomment}
-\RequirePackage{sref}
-%</package>
-% \end{macrocode}
-%
-% Here comes the equivalent header information for {\LaTeXML}, we also initialize the
-% package inclusions. Since {\LaTeXML} currently does not process package options, we have
-% nothing to do.
-% \begin{macrocode}
-%<*ltxml>
-# -*- CPERL -*-
-package LaTeXML::Package::Pool;
-use strict;
-use LaTeXML::Package;
-RequirePackage('sref');
-%</ltxml>
-% \end{macrocode}
-%
-% Then we register the namespace of the requirements ontology
-% \begin{macrocode}
-%<*ltxml>
-RegisterNamespace('prob'=>"http://omdoc.org/ontology/problems#");
-RegisterDocumentNamespace('prob'=>"http://omdoc.org/ontology/problems#");
-%</ltxml>
-% \end{macrocode}
-%
-% \subsection{Problems and Solutions}\label{sec:impl:probsols}
-%
-% We now prepare the KeyVal support for problems. The key macros just set appropriate
-% internal macros.
-%
-% \begin{macrocode}
-%<*package>
-\srefaddidkey[prefix=prob.]{problem}
-\addmetakey{problem}{pts}
-\addmetakey{problem}{min}
-\addmetakey*{problem}{title}
-\addmetakey{problem}{refnum}
-% \end{macrocode}
-%
-% Then we set up a box and a counter for problems
-%
-% \begin{macrocode}
-\newsavebox{\probbox}
-\newcounter{problem}[section]
-% \end{macrocode}
-%
-% \begin{macro}{\prob@number}
-% We consolidate the problem number into a reusable internal macro
-% \begin{macrocode}
-\def\prob@number{\ifx\inclprob@refnum\@empty
-\ifx\problem@refnum\@empty\thesection.\theproblem\else\problem@refnum\fi
-\inclprob@refnum\fi}
-% \end{macrocode}
-% \end{macro}
-%
-% We consolidate the problem header line into a separate internal macro that can be reused
-% in various settings.
-%
-% \begin{macro}{\prob@heading}
-% We consolidate the problem header line into a separate internal macro that can be
-% reused in various settings.
-% \begin{macrocode}
-\def\prob@heading{Problem \prob@number%
-\ifx\sref@id\@empty\else{\sref@label@id{Problem \thesection.\theproblem}}\fi%
-\ifx\inclprob@title\@empty% if there is no outside title
-\ifx\problem@title\@empty{:\quad}\else{\quad(\problem@title)\hfill\\}\fi
-\else\quad(\inclprob@title)\hfill\\\fi}% else show the outside title
-% \end{macrocode}
-% \end{macro}
-%
-% With this in place, we can now define the |problem| environment. It comes in two shapes,
-% depending on whether we are in boxed mode or not. In both cases we increment the problem
-% number and output the points and minutes (depending) on whehter the respective options
-% are set.
-% \begin{environment}{problem}
-% \begin{macrocode}
-\ifboxed
-\newenvironment{problem}[1][]{\metasetkeys{problem}{#1}\sref@target%
-\stepcounter{problem}\show@pts\show@min\record@problem%
-\begin{lrbox}{\probbox}\begin{minipage}{.9\textwidth}\ignorespaces}
-{\end{minipage}\end{lrbox}
-\setbox0=\hbox{\begin{minipage}{.9\textwidth}%
-\noindent\textbf\prob@heading\rm%
-\end{minipage}}
-\smallskip\noindent\fbox{\vbox{\box0\vspace*{.2em}\usebox\probbox}}\smallskip}
-\else
-\newenvironment{problem}[1][]{\metasetkeys{problem}{#1}\sref@target%
-\stepcounter{problem}\show@pts\show@min\record@problem%
-\par\noindent\textbf\prob@heading\rm\ignorespaces}
-{\smallskip}
-\fi%boxed
-%</package>
-% \end{macrocode}
-% \end{environment}
-%
-% Note that we allow hints and solutions in the body of a |problem| environment so we have
-% to allow the |omdoc:CMP| and |omdoc:p| elements to autoclose.
-%
-% \begin{macrocode}
-%<*ltxml>
-DefCMPEnvironment('{problem} OptionalKeyVals:problem',
- "<omdoc:exercise ?&KeyVal(#1,'id')(xml:id='&KeyVal(#1,'id')')()"
- . "?#locator(stex:srcref='#locator')()>"
- . "?&KeyVal(#1,'title')(<dc:title ?#locator(stex:srcref='#locator')()>&KeyVal(#1,'title')</dc:title>)()"
- . "?&KeyVal(#1,'min')(<omdoc:meta property='prob:solvedinminutes' prob:dummy='for the namespace' "
- . "?#locator(stex:srcref='#locator')()>&KeyVal(#1,'min')</omdoc:meta>)()"
- . "?&KeyVal(#1,'pts')(<omdoc:meta property='prob:points' prob:dummy='for the namespace' "
- . "?#locator(stex:srcref='#locator')()>&KeyVal(#1,'pts')</omdoc:meta>)()"
- . "<omdoc:CMP ?#locator(stex:srcref='#locator')()><omdoc:p>#body"
- ."</omdoc:exercise>\n");
-%</ltxml>
-% \end{macrocode}
-%
-% \begin{macro}{\record@problem}
-% This macro records information about the problems in the |*.aux| file.
-% \begin{macrocode}
-%<*package>
-\def\record@problem{\protected@write\@auxout{}%
-{\string\@problem{\prob@number}%
-{\ifx\inclprob@pts\@empty\problem@pts\else\inclprob@pts\fi}%
-{\ifx\inclprob@min\@empty\problem@min\else\inclprob@min\fi}}}
-%</package>
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{\@problem}
-% This macro acts on a problem's record in the |*.aux| file. It does not have any
-% functionality here, but can be redefined elsewhere (e.g. in the |assignment|
-% package).
-% \begin{macrocode}
-%<*package>
-\def\@problem#1#2#3{}
-%</package>
-% \end{macrocode}
-% \end{macro}
-%
-% The |solution| environment is similar to the |problem| environment, only that it is
-% independent of the boxed mode. It also has it's own keys that we need to define first.
-%
-% \begin{macrocode}
-%<*package>
-\define@key{soln}{id}{\def\soln@id{#1}}
-\define@key{soln}{for}{\def\soln@for{#1}}
-\define@key{soln}{height}{\def\soln@height{#1}}
-\ifsolutions
-\newenvironment{solution}[1][]%
-{\hrule\smallskip{\bf Solution: }\begin{small}}%
-{\hrule\end{small}}
-\else\newxcomment[]{solution}\fi
-% \newsavebox{\solution@box}
-% \newlength{\solution@width}
-% \setlength{\solution@width}{14cm}
-% \newenvironment{solution}[1][]%
-% {\begin{lrbox}{\solution@box}\begin{minipage}{\solution@width}
-% \hrule\smallskip{\bf Solution: }\small}
-% {\smallskip\hrule\end{minipage}\end{lrbox}
-% \ifsolutions\begin{center}\usebox{\solution@box}\end{center}\fi}
-%</package>
-%<*ltxml>
-DefKeyVal('soln','id','Semiverbatim');
-DefKeyVal('soln','height','Semiverbatim');
-DefKeyVal('soln','for','Semiverbatim');
-DefCMPEnvironment('{solution} OptionalKeyVals:soln',
- "<omdoc:solution ?&KeyVals(#1,'for')(for='&KeyVal(#1,'for')')() ?#locator(stex:srcref='#locator')()>"
- . "#body"
- . "</omdoc:solution>");
-%</ltxml>
-% \end{macrocode}
-%
-% \begin{macrocode}
-%<*package>
-\ifexnotes
-\newenvironment{exnote}[1][]%
-{\par\noindent\hrule\smallskip{\bf Note: }\small}
-{\smallskip\hrule}
-\else%ifexnotes
-\newxcomment[]{exnote}
-\fi%ifexnotes
-\ifhints
-\newenvironment{hint}[1][]%
-{\par\noindent\hrule\smallskip{\bf Hint: }\small}
-{\smallskip\hrule}
-\else%ifhints
-\newxcomment[]{hint}
-\fi%ifhints
-%</package>
-%<*ltxml>
-DefCMPEnvironment('{exnote}',
- "<omdoc:hint ?#locator(stex:srcref='#locator')()>"
- . "<omdoc:CMP ?#locator(stex:srcref='#locator')()>"
- . "<omdoc:p>#body"
- ."</omdoc:hint>");
-DefCMPEnvironment('{hint}',
- "<omdoc:hint ?#locator(stex:srcref='#locator')()>"
- . "<omdoc:CMP ?#locator(stex:srcref='#locator')()>"
- . "<omdoc:p>#body"
- ."</omdoc:hint>");
-DefConstructor('\pts{}',"");
-DefConstructor('\min{}',"");
-%</ltxml>
-% \end{macrocode}
-%
-% \subsection{Including Problems}\label{sec:impl:includeproblem}
-%
-% The first action is to make a \meta{jobname}|-problems.tex| file, if the |extract|
-% option is set.
-%
-% \begin{macrocode}
-%<*package>
-\ifextract
-\newwrite\problem@file
-\immediate\openout\problem@file=\jobname-problems.tex
-\AtEndDocument{\closeout\problem@file}
-\fi
-%</package>
-% \end{macrocode}
-%
-% \begin{macro}{\includeproblem}
-% The |\includeproblem| command is essentially a glorified |\input| statement, it sets
-% some internal macros first that overwrite the local points. After that (so that the
-% included problem had time to step the problem number) it writes the |\includeproblem|
-% statement to the problems file, if the |extract| option is set. Here we add a key
-% |refnum=\prob@num| to the inlcudeproblem, so that we can remember the number from the
-% main document.\ednote{do something about the overwriting of problem metadata in the
-% {\LaTeXML} binding.}
-%
-% \begin{macrocode}
-%<*package>
-\addmetakey{inclprob}{pts}
-\addmetakey{inclprob}{min}
-\addmetakey*{inclprob}{title}
-\addmetakey{inclprob}{refnum}
-\clear@inclprob@keys
-\newcommand{\includeproblem}[2][]{%
-\bgroup\metasetkeys{inclprob}{#1}\input{#2}\ifsolutions\newpage\fi\egroup
-\ifextract\def\@test{#1}
-\def\prob@num{\ifx\inclprob@refnum\@empty\thesection.\theproblem\else\inclprob@refnum\fi}
-\def\inclprob@keys{#1\ifx\@test\@empty\else,\fi refnum=\prob@num}
-\protected@write\problem@file{}{\string\includeproblem[\inclprob@keys]{#2}}
-\fi}
-%</package>
-%<*ltxml>
-DefKeyVal('prob','pts','Semiverbatim');
-DefKeyVal('prob','min','Semiverbatim');
-DefKeyVal('prob','title','Semiverbatim');
-DefConstructor('\includeproblem OptionalKeyVals:prob Semiverbatim',
- "<omdoc:ref type='cite' xref='#2' ?#locator(stex:srcref='#locator')()>"
- . "?&KeyVal(#1,'title')(<dc:title ?#locator(stex:srcref='#locator')()>&KeyVal(#1,'title')</dc:title>)()"
- . "?&KeyVal(#1,'min')(<omdoc:meta property='prob:solvedinminutes' prob:dummy='for the namespace' "
- . "?#locator(stex:srcref='#locator')()>&KeyVal(#1,'min')</omdoc:meta>)()"
- . "?&KeyVal(#1,'pts')(<omdoc:meta property='prob:points' prob:dummy='for the namespace' "
- . "?#locator(stex:srcref='#locator')()>&KeyVal(#1,'pts')</omdoc:meta>)()"
- ."</omdoc:ref>");
-%</ltxml>
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macrocode}
-%<*ltxml>
-Tag('omdoc:exercise',afterOpen=>\&numberIt);
-Tag('omdoc:solution',afterOpen=>\&numberIt);
-Tag('omdoc:hint',afterOpen=>\&numberIt);
-%</ltxml>
-% \end{macrocode}
-%
-% \subsection{Reporting Metadata}
-%
-% \begin{macrocode}
-%<*package>
-\def\pts#1{\ifpts\marginpar{#1 pt}\fi}
-\def\min#1{\ifmin\marginpar{#1 min}\fi}
-%</package>
-%<*ltxml>
-%</ltxml>
-% \end{macrocode}
-%
-% \begin{macrocode}
-%<*package>
-\AtEndDocument{\ifpts\message{Total: \arabic{pts} points}\fi
-\ifmin\message{Total: \arabic{min} minutes}\fi}
-%</package>
-%<*ltxml>
-%</ltxml>
-% \end{macrocode}
-%
-% \begin{macro}{\show@pts}
-% The |\show@pts| shows the points: if no points are given from the outside and also no
-% points are given locally do nothing, else show and add. If there are outside points
-% then we show them in the margin.
-% \begin{macrocode}
-%<*package>
-\newcounter{pts}
-\def\show@pts{\ifx\inclprob@pts\@empty%
-\ifx\problem@pts\@empty\else%
-\ifpts\marginpar{\problem@pts pt\smallskip}\addtocounter{pts}{\problem@pts}\fi%
-\fi\else%
-\ifpts\marginpar{\inclprob@pts pt\smallskip}\addtocounter{pts}{\inclprob@pts}\fi%
-\fi}
-% \end{macrocode}
-% \end{macro}
-% and now the same for the minutes
-% \begin{macro}{\show@min}
-% \begin{macrocode}
-\newcounter{min}
-\def\show@min{\ifx\inclprob@min\@empty%
-\ifx\problem@min\@empty\else%
-\ifmin\marginpar{\problem@min min}\addtocounter{min}{\problem@min}\fi%
-\fi\else%
-\ifmin\marginpar{\inclprob@min min}\addtocounter{min}{\inclprob@min}\fi
-\fi}
-%</package>
-% \end{macrocode}
-% \end{macro}
-%
-% \subsection{Finale}
-% Finally, we need to terminate the file with a success mark for perl.
-% \begin{macrocode}
-%<ltxml>1;
-% \end{macrocode}
-% \Finale
-\endinput
-
-% \iffalse
-% LocalWords: GPL structuresharing STR dtx pts keyval xcomment CPERL DefKeyVal
-%%% Local Variables:
-%%% mode: doctex
-%%% TeX-master: t
-%%% End:
-% \fi
-% LocalWords: RequirePackage Semiverbatim DefEnvironment OptionalKeyVals soln
-% LocalWords: exnote DefConstructor inclprob