summaryrefslogtreecommitdiff
path: root/texmf-dist/tex/latex/acrotex/contsolns.def
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2017-07-12 23:26:39 +0900
committerNorbert Preining <norbert@preining.info>2017-07-12 23:26:39 +0900
commit01c9ee84c09adfc3efe1cd93191a9c0473f985fe (patch)
tree6fe7c1648fa25e3dcc9b4c67657b89ac1525f289 /texmf-dist/tex/latex/acrotex/contsolns.def
parent542c5a785f8db8d4469e296c69c86bc030285f68 (diff)
add acrotex
Diffstat (limited to 'texmf-dist/tex/latex/acrotex/contsolns.def')
-rw-r--r--texmf-dist/tex/latex/acrotex/contsolns.def87
1 files changed, 87 insertions, 0 deletions
diff --git a/texmf-dist/tex/latex/acrotex/contsolns.def b/texmf-dist/tex/latex/acrotex/contsolns.def
new file mode 100644
index 00000000..84759e04
--- /dev/null
+++ b/texmf-dist/tex/latex/acrotex/contsolns.def
@@ -0,0 +1,87 @@
+%%
+%% This is file `contsolns.def',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% contsolns.dtx (with options: `package')
+%%
+\@ifpackageloaded{web}{}{\PackageError{exerquiz}
+ {The consolns option of exerquiz requires\MessageBreak
+ the web package}{Use the web package.}}
+
+\def\setQNum{\Qlabel\ifcase\@eqquestiondepth\or\arabic{eqquestionnoi}%
+ \or\arabic{eqquestionnoi}(\alph{eqquestionnoii})%
+ \or\arabic{eqquestionnoi}(\alph{eqquestionnoii})%
+ (\roman{eqquestionnoiii})\fi}
+\def\setENum{\Elabel\if\exerstar*\theeqexno(\alph{partno})\else
+ \theeqexno\fi}
+\def\Qlabel{Q}\def\Elabel{E}
+\def\SolContMrk#1#2{\gdef\solContMarks{{#1}{#2}}}
+\def\solContMarks{{}{}}
+\def\eq@sqPostHeaderHook{%
+ \string\SolContMrk{Q\@shortquizCnt}{\setQNum}\relax}
+\def\eq@qPostHeaderHook{%
+ \string\SolContMrk{Q\@quizCnt}{\setQNum}\relax}
+\def\exer@solnheadhook{%
+ \string\SolContMrk{Ex}{\setENum}}
+\newlength{\promoteNPHskip}
+\setlength{\promoteNPHskip}{.1\textheight}
+\ifeqforpaper
+\def\redefForContSolns{%
+ \def\prior@quizSolnHeaderHook{\promoteNewPageHere{\promoteNPHskip}}
+ \def\prior@exerSolnHeaderHook{\promoteNewPageHere{\promoteNPHskip}}
+ \eq@scratchtoks=\expandafter{\fpAfterSolutionsSkip\SolContMrk{}{}}
+ \edef\@tempExp{\noexpand\promoteNewPageHere{%
+ \noexpand\promoteNPHskip}\the\eq@scratchtoks}
+ \eq@scratchtoks=\expandafter{\@tempExp}
+ \edef\fpAfterSolutionsSkip{\the\eq@scratchtoks}
+ \eq@scratchtoks=\expandafter{%
+ \belowexsolnskip\protect\SolContMrk{}{}}
+ \edef\belowexsolnskip{\noexpand\noexpand
+ \string\promoteNewPageHere{%
+ \noexpand\noexpand\string\promoteNPHskip}\the\eq@scratchtoks}
+}
+\else
+\def\redefForContSolns{%
+ \let\endeqSQtSAVE\endeqSQt
+ \def\endeqSQt{\endeqSQtSAVE\par\SolContMrk{}{}}
+ \let\endeqQtSAVE\endeqSQt
+ \def\endeqQt{\endeqQtSAVE\par\SolContMrk{}{}}
+ \let\endeqEXtSAVE\endeqEXt
+ \def\endeqEXt{\endeqEXtSAVE\par\SolContMrk{}{}}
+}
+\fi % \ifeqforpaper
+\AtBeginDocument{\redefForContSolns}
+\newcommand{\getSolContMarks}[2]{\ifcontSoln
+ \rfootContStr{#1}{#2}\fi}
+\newcommand{\rfootContStr}[2]{Solution to {#2} continues next page}
+\newif\ifcontSoln \contSolnfalse
+\newcommand{\bSolContMarks}[2]{%
+ \def\eq@argi{#1}\def\eq@argii{#2}%
+ \ifx\eq@argi\@empty\global\contSolnfalse\else
+ \global\contSolntrue\fi}
+\def\lFootbCont{\expandafter\bSolContMarks\solContMarks}
+\def\rFootCont{\makebox[0pt][r]{%
+ \expandafter\getSolContMarks\solContMarks}}
+\@ifundefined{web@footerprivate}{%
+ \def\addtolfooter{\expandafter
+ \lfooter\expandafter{\expandafter\lFootbCont\web@lfoot}}%
+}{%
+ \def\addtolfooter{\def\web@footerprivate{\lFootbCont}}%
+}
+\def\addtorfooter{\expandafter
+ \rfooter\expandafter{\web@rfoot\rFootCont}}
+\def\cs@testWH#1#2{\ifx\webfootwrapper#1
+ \def\cs@next{\AtBeginDocument{\addtolfooter\addtorfooter}}\else
+ \def\cs@next{\PackageError{contsoln.def}{%
+ webheadings of the web package are NOT\MessageBreak
+ in effect. The contsoln.def file requires\MessageBreak
+ webheadings}{Use the default webheadings pagestyle
+ from the web package.}}\fi
+ \cs@next
+}
+\AtBeginDocument{\expandafter\cs@testWH\@oddfoot}
+\endinput
+%%
+%% End of file `contsolns.def'.