diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/eqexam/eqexam.def')
-rw-r--r-- | Master/texmf-dist/tex/latex/eqexam/eqexam.def | 774 |
1 files changed, 0 insertions, 774 deletions
diff --git a/Master/texmf-dist/tex/latex/eqexam/eqexam.def b/Master/texmf-dist/tex/latex/eqexam/eqexam.def deleted file mode 100644 index 273115a8f72..00000000000 --- a/Master/texmf-dist/tex/latex/eqexam/eqexam.def +++ /dev/null @@ -1,774 +0,0 @@ -%% -%% This is file `eqexam.def', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% exerquiz.dtx (with options: `eqexam') -%% -\newif\ifeq@noforms \eq@noformsfalse -\newif\ifeq@noquizsolutions \eq@noquizsolutionsfalse % dps new -\newif\ifeq@nocorrections \eq@nocorrectionsfalse -\newif\ifeq@nolink \eq@nolinkfalse -\def\eq@ckglobalhide{\ifeq@globalshowsolutions\eq@hidesolutionfalse\fi} -\def\hidesymbol{h}\def\Hidesymbol{H} -\newif\iftherearesolutions \therearesolutionsfalse -\def\SolutionsAfter{\eq@solutionsaftertrue\eq@nolinktrue} -\def\SolutionsAtEnd{\eq@solutionsafterfalse\eq@nolinkfalse} -\def\NoSpaceToWork{\let\eq@insertverticalspace=n} -\def\SpaceToWork{\let\eq@insertverticalspace=y} -\SpaceToWork -\newif\ifeq@randomizeChoices \eq@randomizeChoicesfalse -\newif\ifeq@randomizeallChoices \eq@randomizeallChoicesfalse -\def\turnOnRandomize{\eq@randomizeallChoicestrue} -\def\obeyLocalRandomize{\eq@randomizeallChoicesfalse} -\let\saveRandomSeed\relax -\let\inputRandomSeed\relax -\newcommand{\exsolafter}{\eq@exsolafterDefault} -\newcommand{\eq@exsolafterDefault}{\textit{Solution}:} -\newcommand{\renameSolnAfterTo}[1]{\def\exsolafter{#1}} -\newcommand{\resetSolnAfterToDefault}{% - \def\exsolafter{\eq@exsolafterDefault}} -\ifsolutionsonly\else -\newwrite \ex@solns \immediate\openout \ex@solns \jobname.sol -\fi -\newwrite \quiz@solns \immediate\openout \quiz@solns \jobname.qsl -\newcounter{eqexno} \setcounter{eqexno}{0} -\newcounter{@exno} \setcounter{@exno}{0} % running exno -\newcounter{quizno} \setcounter{quizno}{0} -\renewcommand\thequizno{\alph{quizno}} -\newcounter{eqpointvalue} \setcounter{eqpointvalue}{0} -\newlength\eq@tmplength -\newcounter{eqquestionnoi} -\newcounter{eqquestionnoii} -\newcounter{eqquestionnoiii} -\newcount\@eqquestiondepth \@eqquestiondepth=0 -\newcounter{questionno} -\newcounter{partno} -\renewcommand\thepartno{\alph{partno}} -\def\verbatimwrite{\@bsphack - \let\do\@makeother\dospecials - \catcode`\^^M\active \catcode`\^^I=12 - \def\verbatim@processline{% - \immediate\write\verbatim@out - {\the\verbatim@line}}% - \verbatim@start} -\def\endverbatimwrite{\@esphack} -\providecommand\PBS[1]{\let\temp=\\#1\let\\=\temp} -\newcommand{\eqexerskip}[1]{\def\eq@exerskip{\vskip#1}} -\eqexerskip{\medskipamount} -\newcommand{\priorexskip}[1]{\def\eq@priorexskip{\vspace{#1}}} -\priorexskip{\medskipamount} -\let\eq@postexerciseHook\relax -\newcommand\eqafterexersolnskip{\string\medskip} -\def\marginparpriorhook{} % used to material before the exercise -\def\marginparafterhook{} % used to material after the exercise -\let\afterlabelhskip=\space -\let\exersolnheadhook=\@empty -\newcommand{\eqexheader} -{% - \hbox{\color{\@nolinkcolor}\if\exerstar*\exlabelformatwp\else - \exlabelformat\fi}% -} -\def\eqexheader@wrapper{\hypertarget{qex.\the@exno}{\eqexheader}} -\newcommand{\partsformat}[1]{\def\eq@partsformat{#1}} -\partsformat{(\hfil\alph{partno}\hfil)} -\newcommand{\defaultpartsformat}{% - \partsformat{(\hfil\alph{partno}\hfil)}} -\newcommand{\eqexlisttabheader} -{% - \color{\@nolinkcolor}\eq@partsformat -} -\newenvironment{exercise} -{% - \par\eq@priorexskip\noindent%\begingroup % set defaults - \def\eq@argi{eqexno}% % use eqexno counter - \if\eq@exerstarEnv*\def\exerstar{*}\else\def\exerstar{x}\fi - \def\currhideopt{x}% - \@ifnextchar[{\exercise@}{% - \if\exerstar*% - \def\eq@next{\@exercise}% - \else - \def\eq@next{\exercise@@}% - \fi\eq@next}% -}{\eq@postexerciseHook\par\global\eq@exerciseheadingtrue\eq@exerskip} -\def\exercise@[#1]{\def\eq@arg{#1}% - \if\eq@arg h% - \def\currhideopt{h}% - \eq@hidesolutiontrue\eq@nolinktrue% - \ifeq@globalshowsolutions - \eq@hidesolutionfalse\eq@nolinkfalse - \fi - \def\eq@next{\@exercise}% h, no *, no counter - \else - \if\eq@arg H% - \edef\currhideopt{\Hidesymbol}% - \eq@hidesolutiontrue\eq@nolinktrue% - \ifeq@globalshowsolutions - \eq@hidesolutionfalse\eq@nolinkfalse - \fi - \def\eq@next{\@exercise}% h, no *, no counter - \else - \def\currhideopt{x}% - \if\exerstar*% - \def\eq@next{\def\eq@argi{#1}\@exercise}% - \else - \def\eq@next{\def\eq@argi{#1}\exercise@@}% - \fi - \fi - \fi -\eq@next} -\def\exercise@@{\@ifstar{\def\exerstar{*}\@exercise}% was \exercise@@@ - {\exercise@@@}}% -\def\exercise@@@{% -\@ifnextchar[{\exercise@@@@}{\@exercise}} -\def\exercise@@@@[#1]{\def\eq@arg{#1}% - \if\eq@arg h% - \def\currhideopt{h}% - \eq@hidesolutiontrue\eq@nolinktrue - \ifeq@globalshowsolutions - \eq@hidesolutionfalse\eq@nolinkfalse - \fi - \def\eq@next{\@exercise}% h, no *, no counter - \else - \if\eq@arg H% - \edef\currhideopt{\Hidesymbol}% - \eq@hidesolutiontrue\eq@nolinktrue% - \def\eq@next{\@exercise}% h, no *, no counter - \else - \def\currhideopt{x}% - \typeout{The option #1 is not recognized} - \let\eq@next=\relax - \fi - \fi -\eq@next} -\newif\ifeq@exerciseheading \eq@exerciseheadingtrue -\newcommand\exerSolnHeader[3] -{% - \ifeqforpaper\else\webnewpage\fi\markright{#1}\par\noindent% - #3% - \solnhspace -} -\let\eqEXt=\relax -\let\endeqEXt=\relax -\let\eq@writeexheader\@empty -\def\@exercise -{% - \let\verbatim@out=\ex@solns - \if\eq@argi0\else\refstepcounter{\eq@argi}\fi\stepcounter{@exno}% - \if\exerstar*% if exercise with parts - \eq@nolinktrue - \else - \if\currhideopt H% - \else - \ifeq@solutionsafter - \eq@nolinktrue % no link to solution - \else - \eq@ckglobalhide % - \ifeq@hidesolution\else - \gdef\eq@writeexheader{% - \set@display@protect - \immediate\write\verbatim@out{\protect\eqEXt - \protect\exerSolnHeader{\exsecrunhead}{ex.\the@exno}% - {\exsllabelformat}\exersolnheadhook\protect\relax}% - \set@typeset@protect}% - \fi - \fi - \fi - \fi - \ifvmode\ifdim\lastskip>\z@ - \vskip-\lastskip - \fi\fi - \if\exerstar*% - \let\solution=\solnexer@woparts - \let\endsolution=\endsolnexer@woparts - \let\parts=\exercise@parts - \let\endparts\endexercise@parts - \else - \let\solution=\solnexer@woparts - \let\endsolution=\endsolnexer@woparts - \let\parts=\relax - \let\endparts=\relax - \if\Hidesymbol h\eq@nolinkfalse\ifeq@solutionsafter - \eq@nolinktrue\fi\fi - \fi - \ifeq@exerciseheading - \prior@questionsHook\marginparpriorhook\noindent\eqexheader@wrapper - \afterlabelhskip\marginparafterhook\ignorespaces - \fi -} -\long\def\setsolnspace#1{% - \def\newsolnspace{#1}% - \let\solnhspace\newsolnspace -} -\let\solnhspace\space -\def\solnexer@woparts{\def\bLeaveVspace{x}% = no vertical space added - \def\next{\@ifnextchar[{\solnexer@@woparts}% - {\solnexer@@woparts[\null]}}% - \ifx\endparts\endexercise@parts@tabular - \def\next{\solnexer@@@woparts}% - \fi - \next} -\let\eqPriorVspace\@gobble -\def\solnexer@@woparts[#1]{% - \ifx#1\null - \else - \xdef\sameVspace{#1}% - \ifeq@nosolutions - \ifeq@solutionsafter\else - \let\bLeaveVspace=\@empty - \def\leavevspace{% - \ifx\eq@insertverticalspace y\par\eqPriorVspace{#1}% - {\nobreak\parbox[b][#1][t]{\linewidth}{\vfill}}% - \fi - }% - \fi - \fi - \fi - \solnexer@@@woparts -} -\def\solutionsafterSkip{\smallskip} -\def\solnexer@@@woparts -{% - \def\exerwparts@cols{x}% - \let\verbatim@out=\ex@solns - \if\currhideopt H% - \let\procsoln=\comment - \let\endprocsoln=\endcomment - \def\eq@next{\procsoln}% - \else - \eq@ckglobalhide - \ifeq@hidesolution - \let\procsoln=\comment - \let\endprocsoln=\endcomment - \else - \ifx\bLeaveVspace\@empty\leavevspace\fi - \let\procsoln=\verbatimwrite - \let\endprocsoln=\endverbatimwrite - \fi - \def\eq@next{% - \ifeq@solutionsafter - \ifx\exsolafter\@empty\else - \par\solutionsafterSkip - \noindent\exsolafter\space\ignorespaces\fi - \else - \eq@writeexheader % write the solution header 11/03/05 - \global\let\eq@writeexheader\@empty - \global\therearesolutionstrue\expandafter\procsoln - \fi - }% - \fi -\eq@next} -\def\endsolnexerhook{} -\def\endsolnexerhookaux{} -\def\eq@fititin{\noindent\unskip\nobreak\hfill\penalty50 - \hskip2em\hbox{}\nobreak\hfill} -\let\eqfititin=\eq@fititin -\newcommand\eqExerSolnTrailer -{% - \string\ReturnTo{page.\the\c@page}% - {\hbox{\if\exerstar*\exrtnlabelformatwp\else\exrtnlabelformat\fi}}% - \string\endeqEXt\ifeqforpaper\string\par\eqafterexersolnskip\fi^^J -} -\def\endsolnexer@woparts -{% - \if\currhideopt H% - \csname endprocsoln\endcsname - \else - \ifeq@solutionsafter - \eq@fititin\hbox{\exrtnlabelformat}% - \else - \endprocsoln - \eq@ckglobalhide - \ifeq@hidesolution\else - \endsolnexerhookaux - \set@display@protect - \immediate\write\verbatim@out{\eqExerSolnTrailer}% - \set@typeset@protect - \fi - \fi - \fi -\endsolnexerhook} -\let\eq@exerstarEnv\relax -\newenvironment{exercise*}{\def\eq@exerstarEnv{*}\exercise} -{\endexercise} -\def\exercise@parts{\@@par\ifdim\parskip>\z@\vskip-\parskip\fi - \def\exerwparts@cols{x}\@ifnextchar[% - {\let\endparts=\endexercise@parts@tabular\exercise@parts@tabular@}% - {\let\endparts=\endexercise@parts@list\exercise@parts@list}} -\def\eq@extralabelsep{0pt} -\newenvironment{exercise@parts@list} -{\settowidth{\eq@tmplength}{\normalfont(d)}% -\eq@nolinkfalse -\begin{list}{\normalfont - \if\Hidesymbol h\eq@nolinkfalse\ifeq@solutionsafter - \eq@nolinktrue\fi\fi - \if\currhideopt H% - \else - \ifeq@solutionsafter - \eq@nolinktrue % no link to solution - \else - \ifeq@nosolutions - \eq@nolinktrue % no link to solution - \else - \eq@ckglobalhide - \ifeq@hidesolution\eq@nolinktrue\else - \gdef\eq@writeexheader{% - \set@display@protect - \immediate\write\verbatim@out{\protect\eqEXt - \protect\exerSolnHeader{\exsecrunhead}% - {ex.\the@exno\alph{partno}}{\exsllabelformatwp}\relax}% - \set@typeset@protect - }% - \fi - \fi - \fi - \fi - \makebox[\eq@tmplength]{\eqexlisttabheader}% -}{% - \usecounter{partno}% - \setlength{\topsep}{3pt}% - \setlength{\partopsep}{0pt plus 1pt minus 1pt}% - \setlength{\parsep}{0pt}\setlength{\itemindent}{0pt}% - \setlength{\listparindent}{\parindent}% - \settowidth{\labelsep}{\normalfont\ }% - \addtolength{\labelsep}{\eq@extralabelsep}% - \settowidth{\labelwidth}{\normalfont(d)}% - \setlength{\leftmargin}{\labelwidth}% - \addtolength{\leftmargin}{\labelsep}% - \let\eq@item=\item - \def\item{\def\currhideopt{x}\eq@hidesolutionfalse\eq@nolinkfalse% - \@ifnextchar[\@ckhide\eq@item}}% -}{\end{list}} -\def\exercise@parts@tabular@[#1]{% - \def\exerwparts@cols{#1}\exercise@parts@tabular} -\newenvironment{exercise@parts@tabular} -{% - \setcounter{partno}{0}% - \settowidth{\eq@tmplength}{\normalfont(d)\ }\sbox{\eq@tmpbox}{(d)}% - \let\eq@item=\item@part@tabular - \def\item{\eq@hidesolutionfalse\eq@nolinkfalse - \@ifnextchar[\@ckhide\eq@item}\eq@nolinkfalse - \eq@tmpdima=\linewidth \divide\eq@tmpdima by\exerwparts@cols - \vskip\partopsep\noindent\normalbaselines\tabcolsep=0pt - \begin{tabular}{*{\exerwparts@cols}{p{\eq@tmpdima}}}% -}{\end{tabular}} -\def\item@part@tabular{\leavevmode\refstepcounter{partno}% - \eq@solutionsafterfalse % no solutionsafter are allowed - \ifeq@solutionsafter - \eq@nolinktrue % no link to solution - \else\ifeq@nosolutions - \eq@nolinktrue % no link to solution - \else - \eq@ckglobalhide - \ifeq@hidesolution\eq@nolinktrue\else - \gdef\eq@writeexheader{% - \set@display@protect - \immediate\write\verbatim@out{% - \protect\eqEXt\string\exerSolnHeader{\exsecrunhead}% - {ex.\the@exno\alph{partno}}{\exsllabelformatwp}\relax}% - \set@typeset@protect - }% - \fi\fi\fi - \PBS\raggedright - \settowidth{\eq@tmplength}{\normalfont(d)\ }% - \sbox{\eq@tmpbox}{\normalfont(d)}% - \eq@tmpdima=\wd\eq@tmpbox - \addtolength\eq@tmplength{\eq@extralabelsep}% - \hangindent=\eq@tmplength\hangafter=1\relax - \makebox[\eq@tmpdima]{\eqexlisttabheader}\ \ignorespaces -} -\def\@ckhide[#1]{\def\eq@arg{#1}% - \def\currhideopt{x}% - \if\eq@arg H% - \eq@hidesolutiontrue\eq@nolinktrue% - \edef\currhideopt{\Hidesymbol}% - \else - \ifeq@globalshowsolutions\else - \if\eq@arg h% - \eq@hidesolutiontrue\eq@nolinktrue% - \def\currhideopt{h}% - \fi - \fi - \fi - \eq@item -} -\def\includeexersolutions -{% - \include@solutions\let\include@solutions\relax -} -\let\eqsolutionshook\@empty -\let\priorexsectitle\@empty -\let\priorexslinput\@empty -\def\exerSolnsHeadnToc{\section*{\exsectitle}% - \addcontentsline{toc}{section}{% - \@ifundefined{web@latextoc}{}{% - \ifx\web@latextoc y\else - \protect\numberline{}\fi}\exsectitle}} -\newcommand{\exerSolnInput} -{% - \let\webnewpage=\relax - \ifsolutionsonly\else\immediate\closeout\ex@solns\fi - \ifeq@nosolutions\else - % changed from \exsecrunhead, 6/1/05 - \iftherearesolutions\ifsolutionsonly\else\newpage\fi - \markright{\exsectitle}% - \ifx\webnewpage\relax - \def\webnewpage{\let\webnewpage\newpage}% - \fi - \priorexsectitle\exerSolnsHeadnToc\priorexslinput - \InputIfFileExists{\jobname.sol}{}{\PackageWarning{exerquiz} - {!!! Solutions to exercises not found}}% - \eqsolutionshook - \fi - \fi -} -\def\include@solutions -{% - \exerSolnInput -} -\newcommand{\prior@questionsHook}{} -\let\qMark@Hook\@empty -\let\aeb@titleQuiz\@empty -\newcommand{\post@questionsHook}{} -\renewcommand{\theeqquestionnoi}{\arabic{eqquestionnoi}} -\newcommand{\labeleqquestionnoi}{% - \color{blue}\bfseries\theeqquestionnoi.} -\renewcommand{\theeqquestionnoii}{\alph{eqquestionnoii}} -\newcommand{\labeleqquestionnoii}{% - \color{blue}\bfseries(\theeqquestionnoii)} -\renewcommand{\theeqquestionnoiii}{\roman{eqquestionnoiii}} -\newcommand{\labeleqquestionnoiii}{% - \color{blue}\bfseries(\theeqquestionnoiii)} -\newenvironment{questions} -{% - \ifnum\@eqquestiondepth>\tw@\@toodeep\else - \advance\@eqquestiondepth\@ne\fi - \def\@quesctr{eqquestionno\romannumeral\the\@eqquestiondepth}% - \begin{list}{\qMark@Hook\prior@questionsHook\gdef\eqPTs{1}% - \global\let\eqQT=\eq@na\makebox[\labelwidth][r]{\normalfont\bfseries - \csname label\@quesctr\endcsname}% - \post@questionsHook}% - {\usecounter{\@quesctr}% - \settowidth{\labelwidth}{\normalfont\bfseries00.\ }% - \setlength{\topsep}{3pt}\setlength{\parsep}{0pt}% - \setlength{\itemindent}{0pt}\setlength{\itemsep}{3pt}% - \setlength{\leftmargin}{\labelwidth}% - \settowidth{\labelsep}{\ }}% -}{\end{list}} -\def\pushquestions{% - \expandafter\xdef\csname save\@quesctr\endcsname{% - \expandafter\the\csname c@\@quesctr\endcsname}% - \end{questions}} -\def\popquestions{% - \begin{questions} - \setcounter{\@quesctr}{\csname save\@quesctr\endcsname}} -\def\sq@priorhook{\medskip\noindent} -\def\@shortquizCnt{0} -\def\@sqGenBaseName{eqSqBn\@shortquizCnt} -\newenvironment{shortquiz} -{% - {\count0=\@shortquizCnt \advance\count0by1\relax - \xdef\@shortquizCnt{\the\count0}}% - \goodbreak\@ifstar{\gdef\sqstar{*}\@shortquiz}% - {\gdef\sqstar{}\@shortquiz}% -}{\aeb@endshortquiz} -\newenvironment{shortquiz*} -{% - {\count0=\@shortquizCnt\advance\count0by1\relax - \xdef\@shortquizCnt{\the\count0 }}% - \gdef\sqstar{*}\@shortquiz -}{\aeb@endshortquiz} -\def\@shortquiz{\@ifnextchar[% - {\@@shortquiz}{\@@shortquiz[\@sqGenBaseName]}} -\def\@@shortquiz[#1]{%\begingroup - \gdef\oField{#1}\gdef\curr@quiz{#1}\gdef\currQuiz{#1}% - \global\let\eqQuizType=s\let\@qzsolndest\@empty - \if\sqstar*\relax - \let\@Ans\Ans@sq@f - \ifx\oField\@empty - \typeout{^^JExerquiz: Base field name required when using - shortquiz with '*' option} - \typeout{Exerquiz: Assuming link style^^J} - \let\@Ans\Ans@sq@l - \fi - \else - \let\@Ans\Ans@sq@l - \fi - \setcounter{questionno}{0}% - \let\answers\answers@sq - \let\endanswers\endanswers@sq - \let\manswers\manswers@sq - \let\endmanswers\endmanswers@sq - \let\solution\solution@sq - \let\endsolution\endsolution@sq - \sq@priorhook\sqlabel\space\ignorespaces -} -\def\aftershortquizskip{\medskip} -\def\aeb@endshortquiz{\setcounter{quizno}{0}% - \global\let\sqlabel=\eq@sqlabel - \global\let\sqslrtnlabel=\eq@sqslrtnlabel - \global\let\sqsllabel=\eq@sqsllabel - \par\aftershortquizskip -} -\def\sqLinks{\gdef\sqstar{}}\sqLinks{} -\def\sqForms{\gdef\sqstar{*}} -\let\eq@tq@star\relax -\def\solution@sq{\let\eq@next=\relax - \ifx\@qzsolndest\@empty - \typeout{exerquiz: * Solutions unexpected here *}% - \typeout{exerquiz: * Will assume 'solutionsafter' option *}% - \eq@solutionsaftertrue - \fi - \ifeq@solutionsafter - \par\smallskip\noindent - \sqsolafter - \else - \global\therearequizsolutionstrue\let\verbatim@out=\quiz@solns - \set@display@protect - \immediate\write\verbatim@out{% - \ifx\eqQuizType q\string\eqQt\else\string\eqSQt\fi% - \string\quizSolnHeader\ifx\eqQuizType q\ifx\allow@peek n% - [{\curr@quiz}{\currQuizStartPage}]\fi\fi% - {\@qzsolndest}{\sqsllabel}\relax}% - \set@typeset@protect - \expandafter\verbatimwrite\fi -} -\def\solutionsAfterSkip{\par\bigskip} -\def\endsolution@sq -{% - \ifeq@solutionsafter - \eq@fititin\hbox{\sqslrtnlabel}\solutionsAfterSkip - \else - \endverbatimwrite - \ifx\@qzsolndest\@empty\else\set@display@protect - \immediate\write\verbatim@out{\eqSqSolnTrailer}% - \set@typeset@protect - \fi - \fi - \global\let\@qzsolndest=\@empty -} -\def\fpAfterSolutionsSkip{\par\medskip} -\newcommand\eqSqSolnTrailer{% - \ifx\eqQuizType q% - \string\ReturnTo{page.\the\c@page}% - {\hbox{\sqslrtnlabel}}\string\endeqQt - \else - \string\ReturnTo{page.\the\c@page}% - {\hbox{\sqslrtnlabel}}\string\endeqSQt - \fi - \ifeqforpaper\string\fpAfterSolutionsSkip\fi^^J% -} -\let\eqSQt\relax -\let\endeqSQt\relax -\let\eqQt\relax -\let\endeqQt\relax -\newcommand\quizSolnHeader[3][]{% - \ifeqforpaper\else\webnewpage\fi\noindent - #2% - \solnhspace -} -\newif\iftherearequizsolutions \therearequizsolutionsfalse -\let\aeb@FLOverride\relax -\def\includequizsolutions -{% - \include@quizsolutions - \let\include@quizsolutions=\relax -} -\def\answers@sq{\stepcounter{questionno}% - \if\sqstar*\relax - \if\aeb@FLOverride l - \let\@Ans\Ans@sq@l - \else - \let\@Ans\Ans@sq@f - \fi - \else - \if\aeb@FLOverride f - \let\@Ans\Ans@sq@f - \else - \let\@Ans\Ans@sq@l - \fi - \fi - \def\aeb@answerType{r}\@ifnextchar[{\answers@@sq}% - {\@ifstar{\answers@@sq[\curr@quiz.\thequestionno]}{\answers@@sq[]}}} -\def\manswers@sq{\stepcounter{questionno}% - \if\sqstar*\relax - \if\aeb@FLOverride l - \let\@An\Ans@ck@sq@f - \fi - \else - \if\aeb@FLOverride f - \let\@An\Ans@ck@sq@f - \else - \let\@Ans\Ans@ck@sq@l - \fi - \fi - \def\aeb@answerType{c}\@ifnextchar[{\answers@@sq}% - {\@ifstar{\answers@@sq[\curr@quiz.\thequestionno]}{\answers@@sq[]}}} -\let\sq@hwdest\@empty % hard-wired destination -\def\answers@@sq[#1]#2{% - \gdef\aeb@numCols{#2}% - \ifx\sq@hwdest\@empty - \xdef\@qzsolndest{#1}% - \else - \gdef\@qzsolndest{\sq@hwdest}% - \fi - \ifx#21\gdef\eq@listType{1}\expandafter\answers@sq@list\else - \gdef\eq@listType{0}\expandafter\answers@@sq@tabular\fi{#2}% -} -\def\eq@hspanner{\ } -\def\eq@hspanner@default{\ } -\def\eq@lw@l{\eq@l@l\eq@hspanner} -\def\setMClabelsep#1{\def\eq@hspanner{#1}} -\def\resetMClabelsep{\let\eq@hspanner\eq@hspanner@default} -\def\eq@l@l{\normalsize\normalfont(d)} -\def\eq@lw@f{\kern\RadioFieldSize\eq@hspanner} -\newcommand\Ans@list[2][0]{\gdef\eq@pPTs{#1}% - \xdef\Ans@choice{#2}\item\relax\if\eq@listType1% - \addtocounter{quizno}{-1}\refstepcounter{quizno}\fi} -\newenvironment{answers@sq@list}[1] -{% - \if\aeb@answerType r - \let\endanswers=\endanswers@sq@list - \else - \let\endmanswers=\endanswers@sq@list - \fi - \vskip\aboveanswersSkip - \begin{list}{\strut\@Ans}%\begin{list}{\strut\@Ans\ } - {% - \if\sqstar*\relax - \settowidth{\labelwidth}{\eq@lw@f}% - \else - \settowidth{\labelwidth}{\eq@lw@l}% - \fi - \setlength{\parsep}{0pt}\setlength{\itemindent}{0pt}% - \setlength{\topsep}{0pt}\setlength{\partopsep}{0pt}% - \setlength{\listparindent}{\parindent}% - \setlength{\leftmargin}{\labelwidth}% - \setlength{\labelsep}{0pt}% - \def\Ans{\Ans@list}% - }% -}% -{\end{list}\setcounter{quizno}{0}} -\newcommand\Ans@tabular[2][0]{\gdef\eq@pPTs{#1}% - \xdef\Ans@choice{#2}\leavevmode\@Ans -} -\def\answers@@sq@tabular#1{% - \vskip\aboveanswersSkip\noindent\tabcolsep=0pt - \eq@tmpdima=\linewidth \divide \eq@tmpdima by#1 % - \def\Ans{\Ans@tabular}% - \begin{tabular}{*{#1}{p{\eq@tmpdima}}}}% -\def\endanswers@sq{\end{tabular}\setcounter{quizno}{0}}% -\def\endmanswers@sq{\end{tabular}\setcounter{quizno}{0}}% -\def\popiiictm{\special{CTM: pop pop pop}} -\def\linkContentFormat{% - \if\probstar*\arabic{quizno}\else\alph{quizno}\fi} -\def\linkContentWrapper{(\hfil\linkContentFormat\hfil)}% -\def\Ans@sq@l{% - \leavevmode\if\eq@listType1\stepcounter{quizno}% - \else\refstepcounter{quizno}\fi\PBS\raggedright - \settowidth{\eq@tmplength}{\eq@lw@l}\sbox{\eq@tmpbox}{\eq@l@l}% - \eq@tmpdima=\wd\eq@tmpbox - \def\link@@Content{\linkContentWrapper}% - \hangindent=\eq@tmplength\hangafter=1\relax - \Ans@sq@l@driver -\eq@hspanner\ignorespaces} -\let\Ans@ck@sq@l=\Ans@sq@l -\def\Ans@sq@f{% - \if\eq@listType1\stepcounter{quizno}% - \else\refstepcounter{quizno}\fi\PBS\raggedright - \settowidth{\eq@tmplength}{\eq@lw@f}% - \eq@tmpdima=\wd\eq@tmpbox% - \hangindent=\eq@tmplength\hangafter=1\relax - \insertGrayLetters % 6.3d - \Ans@sq@f@driver -\eq@hspanner\ignorespaces} -\let\Ans@ck@sq@f=\Ans@sq@f -\newskip\aboveanswersSkip -\setlength\aboveanswersSkip{3pt} -\def\insertGrayLetters{\ifaebshowgrayletters - \rlap{\makebox[\RadioFieldSize]% - {\textcolor{gray}{\Alph{quizno}}}}\else\relax\fi} -\newcount\eq@tabColCnt -\define@key{bchoice}{nCols}{\def\bChoiceNumCols{#1}} -\@for\eqi:=1,2,3,4,5,6,7,8,9,10 \do{\edef\temp@expand@def{% - \noexpand\define@key{bchoice}{\eqi}[\eqi]{% - \noexpand\def\noexpand\bChoiceNumCols{\eqi}}% - }\temp@expand@def -} -\def\bChoiceNumCols{\aeb@numCols} -\define@key{bchoice}{random}[true]{% - \csname if#1\endcsname\eq@randomizeChoicestrue - \else\eq@randomizeChoicesfalse\fi -} -\def\bChoices{\@ifnextchar[{\@ansChoices}{\@ansChoices[\aeb@numCols]}} -\def\@ansChoices[#1]% -{% - \setkeys{bchoice}{#1}% - \global\eq@tabColCnt=0 - \ifnum\aeb@numCols=1 % list mode - \def\eq@next{\@layoutListAns}% - \else % tabular mode - \def\eq@next{\@layoutTabularAns{\bChoiceNumCols}}% - \fi - \eq@next -} -\let\eChoices\relax -\def\@layoutListAns{\@ifnextchar\Ans{\@getListAns}% - {\@lookforendansChoices{\@layoutListAns}}% -} -\long\def\@getListAns\Ans#1\eAns{% - \Ans#1\vspace{\@rowskip}% - \@layoutListAns -} -\long\def\@lookforendansChoices#1{% - \@ifnextchar\eChoices{\rowsep{\rowsep@default}% - \expandafter\@findendans\@gobble}{\expandafter#1\@gobble}% -} -\def\@layoutTabularAns#1{% - \let\eq@tabSep=\@empty - \xdef\numShortCols{#1}% - \ifnum#1>\aeb@numCols \xdef\numShortCols{\aeb@numCols}\fi - \@@layoutTabularAns -} -\def\@@layoutTabularAns{% - \@ifnextchar\Ans{\@getTabAns}% - {\@lookforendansChoices{\@@layoutTabularAns}}% -} -\def\rowsep#1{\gdef\@rowsep{[#1]}\gdef\@rowskip{#1}}% - \rowsep{\rowsep@default} -\def\rowsepDefault#1{\def\rowsep@default{#1}} -\def\rowsep@default{0pt} -\long\def\@getTabAns\Ans#1\eAns{% - \global\advance\eq@tabColCnt1 - \let\@save@tabSep=\eq@tabSep - \ifnum\eq@tabColCnt=\numShortCols - \global\eq@tabColCnt=0 - \xdef\eq@tabSep{\noexpand\\\noalign{\kern\@rowskip\relax}}% - \else - \gdef\eq@tabSep{&}% - \fi - \@ifnextchar\eChoices{\@save@tabSep\Ans#1\rowsep{\rowsep@default} - \expandafter\@findendans\@gobble}% - {\@save@tabSep\Ans#1\@@layoutTabularAns}% -} -\def\@findendans{\@ifnextchar\end{}{\expandafter\@findendans\@gobble}} -\def\graylettersOn{\aebshowgrayletterstrue} -\def\graylettersOff{\aebshowgraylettersfalse} -\def\aeb@exiii{\expandafter\expandafter\expandafter} -\def\REF{\@ifstar{\aeb@REFstar}{\aeb@REF}} -\def\aeb@REFstar#1{\@ifundefined{r@#1}{\hbox{\reset@font\bfseries ??}} - {\ifaebshowgrayletters\aeb@buildUpperCaseRef{#1}% - \else\ref*{#1}\fi}% -} -\def\aeb@REF#1{\@ifundefined{r@#1}{\hbox{\reset@font\bfseries ??}} - {\ifaebshowgrayletters\aeb@buildUpperCaseRef{#1}% - \else\ref{#1}\fi}% -} -\def\aeb@buildUpperCaseRef#1{% - \xdef\tmp@expand{\aeb@exiii\@firstoftwo\csname r@#1\endcsname}% - \xdef\tmp@expand{\uppercase{\tmp@expand}}\tmp@expand -} -\endinput -%% -%% End of file `eqexam.def'. |