summaryrefslogtreecommitdiff
path: root/texmf-dist/source/latex/acrotex
diff options
context:
space:
mode:
Diffstat (limited to 'texmf-dist/source/latex/acrotex')
-rw-r--r--texmf-dist/source/latex/acrotex/exerquiz.dtx86
-rw-r--r--texmf-dist/source/latex/acrotex/insdljs.dtx21
-rw-r--r--texmf-dist/source/latex/acrotex/web.dtx14
3 files changed, 88 insertions, 33 deletions
diff --git a/texmf-dist/source/latex/acrotex/exerquiz.dtx b/texmf-dist/source/latex/acrotex/exerquiz.dtx
index f478c87f..e1adc713 100644
--- a/texmf-dist/source/latex/acrotex/exerquiz.dtx
+++ b/texmf-dist/source/latex/acrotex/exerquiz.dtx
@@ -4,7 +4,7 @@
%<*copyright>
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Exerquiz.sty package, %%
-%% Copyright (C) 1999-2020 D. P. Story %%
+%% Copyright (C) 1999-2021 D. P. Story %%
%% dpstory@uakron.edu %%
%% %%
%% This program can redistributed and/or modified under %%
@@ -22,7 +22,7 @@
%<randomize>\ProvidesFile{aebrandom.def}
%<sumrytbls>\ProvidesFile{aebsumrytbls.def}
%<template>\ProvidesFile{template.def}
-%<package|driver|aebjs|eqexam|randomize|sumrytbls|template> [2021/01/20 v8.6.2 %
+%<package|driver|aebjs|eqexam|randomize|sumrytbls|template> [2021/02/17 v8.6.4 %
%<package> Exerquiz: Exercises and Quizzes for LaTeX/PDF package (dps)]
%<driver> Exerquiz documentation driver file (dps)]
%<aebjs> Exerquiz document level JavaScript (dps)]
@@ -97,6 +97,8 @@
% {\PackageInfo{exerquiz}{aebdonotindex.def cannot be found}}
% \begin{macrocode}
% \end{macrocode}
+%\changes{v8.6.3}{2021/01/31}{Updated documentation, informing users of \string\app{Acrobat DC} that
+% it is necessary to change their \string\uif{Security (Enhanced)} preferences.}
%\changes{v8.2.8}{2018/12/13}{The SOL file is now written entirely when there is no solution option specified}
% (v8.0 dated 2017/08/08) This version introduces multi-letter variables and what I'll term `alternate appearances'.
% \changes{v8.0}{2017/08/08}{Introduce multi-letter variables and alternate appearances. Changes
@@ -1644,7 +1646,8 @@
% one optional parameter, the name of a counter \texttt{<ctr>} that is to
% be used.\medskip
%
-% \noindent With the exercises\DescribeMacro{\exerSolnInExtFile}, you have the option of including them in the main document, or putting them
+% \noindent With the exercises\DescribeMacro{\exerSolnInExtFile},
+% you have the option of including them in the main document, or putting them
% in an external document. The \cs{exerSolnsInExtFile} command lets you specify an external file name.
% Just use the \textit{basename}, hyperref will add the extension. If an external file is specified, all
% solution links are changed to links between documents. Usage:
@@ -4983,8 +4986,17 @@ else {
ProbType=[*ptypeArray];%
*if@inclkey
*curr@quiz.CorrAns=new Array(*corrAnsArray);*fi
+% \end{macrocode}
+% (2021/02/17) Pass a fourth argument to \texttt{DisplayQuizResults()}, its default
+% value is \texttt{bDisplaySilent=false}, but can be changed locally
+% to \texttt{true}. When \texttt{bDisplaySilent=true}, \texttt{DisplayQuizResults()}
+% does not write its results to any field (Score Field, Points Field, etc.).
+% \changes{v8.6.4}{2021/02/17}{We pass
+% a new \texttt{bDisplaySilent} argument to \texttt{DisplayQuizResults} for ``silent reporting''}
+% \begin{macrocode}
DisplayQuizResults("*curr@quiz",*theeqpointvalue,%
-*thequestionno);
+*thequestionno,bDisplaySilent);
+ bDisplaySilent=false;
var h=this.getField("ScoreData.*curr@quiz");
h.value=Score+";"+NQuestions+";"%
+ptScore+";"+NPointTotal;%
@@ -8517,6 +8529,8 @@ if(event.willCommit) {
\def\eqAppAlert{eqAppAlert}
% \end{macrocode}
% Keystroke action for \cs{RespBoxTxt}
+% \changes{v8.6.4}{2021/02/15}{Corrected coding of \string\cs{AAKqRespBoxTxt}, wrong
+% escape char}
% \begin{macrocode}
\begin{defineJS}[\makeesc\*\makecmt\%]{\AAKqRespBoxTxt}
if(event.willCommit){
@@ -8528,7 +8542,7 @@ if(event.willCommit){
ProcUserResp(retn,event.value,*thequestionno,0%
*ifx*grpquestions*eq@One,*thegrpquestionno*fi);
}
-if (!isQuizInitialized("!currQuiz")) {
+if (!isQuizInitialized("*currQuiz")) {
*eqObjAlert*eqAppAlert(InitMsg("*bqlabelISO"),3);
event.rc = false;
}
@@ -8547,10 +8561,10 @@ if (!isQuizInitialized("!currQuiz")) {
if(event.willCommit) {
var retn = ProcRespTxt(!rbTxtAlt);%
!ifx!@sqTurnOffAlerts!eq@One
- !RespBoxTxtOnBlur!fi%
-!ifx!eqAddAAKeystroke!@empty!else
-!eqAddAAKeystroke!fi
-}
+ !RespBoxTxtOnBlur!fi
+}%
+!ifx!eqAddAAKeystroke!@empty!else%
+!eqAddAAKeystroke!fi%
\end{defineJS}
\def\@@RespBoxTxtActions{%
\AA{\if\eqQuizType\isQZ
@@ -8689,6 +8703,16 @@ if(event.willCommit) {
% \end{macrocode}
% \end{macro}
% \end{macro}
+% \DescribeMacro{\txtRef}\hskip-\marginparsep\texttt{\darg{\ameta{label}}}
+% The \cs{RespBoxTxt} can be used for a matching-type question. We define a special
+% \cs{ref}-type command that produces plain text. Refer to demo file \texttt{qz-matching.tex} for
+% details.
+% \changes{v8.6.4}{2021/02/15}{Support for matching-type question based in
+% \string\cs{RespBoxTxt}}
+% \begin{macrocode}
+\def\txtRef#1{\@ifundefined{r@#1}
+ {??}{\aeb@exiii\@firstoffive\csname r@#1\endcsname}}
+% \end{macrocode}
% \begin{macro}{\RespBoxTxtPC}
% This is pretty much a copy of \cs{RespBoxTxt}, with slight modifications. Here,
% we attempt to award partial credit for words that appear in the answer.
@@ -10165,7 +10189,7 @@ aCorrectAns[!currQuiz.Grp["!thequestionno"].offset],!oField);!fi
%\end{flushleft}
% Define a special value (\cs{formatInitAltApprs}) for \cs{AddAAFormat} used in initializing \cs{RespBoxMath} problems,
% where there are alternate appearances.
-% See \url{http://www.acrotex.net/blog/?p=1335} for a discussion of the use of \cs{formatInitAltApprs}.
+% See the {Acro\!\TeX} Blog article \url{http://www.acrotex.net/blog/?p=1335} for a discussion of the use of \cs{formatInitAltApprs}.
% \changes{v8.1a}{2017/09/03}{Define a special value (\string\cs{formatInitAltApprs}) for \string\cs{AddAAFormat}}
% \begin{macrocode}
\def\formatInitAltApprs{\formatInitAltApprs}
@@ -10258,7 +10282,7 @@ aCorrectAns[!currQuiz.Grp["!thequestionno"].offset],!oField);!fi
%}
% \begin{macrocode}
\def\@eqAddAAKeystroke#1{\def\argi{#1}\ifx\argi\@empty
- \def\eqAddAAKeystroke{}\else\def\eqAddAAKeystroke{#1}\fi} %\r
+ \def\eqAddAAKeystroke{}\else\def\eqAddAAKeystroke{\r #1}\fi} %\r
\def\eqAddAAKeystroke{}
% \end{macrocode}
% \end{macro}
@@ -10379,6 +10403,7 @@ aCorrectAns[!currQuiz.Grp["!thequestionno"].offset],!oField);!fi
var exerquizLoaded = true;
this.disclosed = true;
app.runtimeHighlight=false;
+var bDisplaySilent=false; // dps
\end{newsegment}
\begin{newsegment}{Eq: Global Data}
var ok2Continue = true;
@@ -12153,15 +12178,24 @@ function DisplayQuizResults(qtfield,nPointTotal,nQuestions)
(typeof oQName.GradeScaleLoc=="undefined")%
?GradeScaleDefault:oQName.GradeScaleLoc;
quizGrade = GetGrade.apply(null,gradeScale);
-% quizGrade = GetGrade(\eqGradeScale);
- var f = this.getField("ScoreField."+qtfield);
- if ( f != null ) f.value=(\eqQuizTotalMsg);
- f = this.getField("PointsField."+qtfield);
- if ( f != null) f.value=(\eqQuizPointsMsg);
- f = this.getField("PercentField."+qtfield);
- if ( f != null) f.value=(\eqQuizPercentMsg);
- f = this.getField("GradeField."+qtfield);
- if ( f != null) f.value=(\eqQuizGradeMsg);
+% \end{macrocode}
+% (2021/02/17) If there is a fourth argument for this function, it should
+% be either \texttt{true} or \texttt{false}; if \texttt{true}, \texttt{DisplayQuizResults()}
+% does not display quiz results; the default is \texttt{false}. This feature is used in the
+% demo file \texttt{qz-pin-to-correct.tex} found on the {Acro\!\TeX} Blog.
+% \changes{v8.6.4}{2021/02/17}{Added conditional (\texttt{\_bSilent})}
+% \begin{macrocode}
+ var _bSilent=(arguments.length > 3 ) ? arguments[3] : false;
+ if (!_bSilent) {
+ var f = this.getField("ScoreField."+qtfield);
+ if ( f != null ) f.value=(\eqQuizTotalMsg);
+ f = this.getField("PointsField."+qtfield);
+ if ( f != null) f.value=(\eqQuizPointsMsg);
+ f = this.getField("PercentField."+qtfield);
+ if ( f != null) f.value=(\eqQuizPercentMsg);
+ f = this.getField("GradeField."+qtfield);
+ if ( f != null) f.value=(\eqQuizGradeMsg);
+ }
}
function GetGrade()
{
@@ -12261,7 +12295,12 @@ function ProcessQuestion (key,letterresp,probno,
if ( typeof fieldPopTbl == "function" ) fieldPopTbl(qtfield);
}
% \end{macrocode}
-% Dependencies: \texttt{RightWrong}, \texttt{ProbDist} (if \texttt{qMark} is present).
+% \leavevmode
+% \IndexJS{correctQuiz}\hskip-\marginparsep\texttt{(\ameta{fld-name},\ameta{num-ques})}
+% This function is called when the \uif{Correct} control is pressed on a quiz.
+% Dependencies: \texttt{RightWrong}, \texttt{ProbDist} (if \texttt{qMark} is present). Other dependencies
+% needed to save the state of the quiz after the \uif{End Quiz} control is pressed and before the
+% \uif{Correct} control is pressed:
% \begin{macrocode}
function correctQuiz(qtfield,nQuestions)
{
@@ -12275,6 +12314,9 @@ function correctQuiz(qtfield,nQuestions)
RightWrong=oRecordOfQuizData["RightWrong."+qtfield];
ProbDist=oRecordOfQuizData["ProbDist."+qtfield];
}
+% \end{macrocode}
+% Determine the color scheme to be used.
+% \begin{macrocode}
var oQName=eval(qtfield);
var defaultColor=(typeof oQName.DefaultColorJSLoc=="undefined")%
?\defaultColorJS:oQName.DefaultColorJSLoc;
@@ -12303,7 +12345,7 @@ function correctQuiz(qtfield,nQuestions)
% show the correct answer, but only the incorrect ones.}
% \begin{macrocode}
if ( f != null) {
- if (bFullyCorrect) { // dpsf07
+ if (bFullyCorrect) {
f.display = display.visible;
} else {
for (var n=1; n<=nQuestions; n++) {
diff --git a/texmf-dist/source/latex/acrotex/insdljs.dtx b/texmf-dist/source/latex/acrotex/insdljs.dtx
index d53aeb6b..a13d72c4 100644
--- a/texmf-dist/source/latex/acrotex/insdljs.dtx
+++ b/texmf-dist/source/latex/acrotex/insdljs.dtx
@@ -4,7 +4,7 @@
%<*copyright>
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% insdljs.sty package, %%
-%% Copyright (C) 2001-2020 D. P. Story %%
+%% Copyright (C) 2001-2021 D. P. Story %%
%% dpstory@uakron.edu %%
%% %%
%% This program can redistributed and/or modified under %%
@@ -16,7 +16,7 @@
%</copyright>
%<package>\NeedsTeXFormat{LaTeX2e}
%<package>\ProvidesPackage{insdljs}
-%<package> [2020/12/20 v2.5 Insert Document Level JavaScripts (dps)]
+%<package> [2021/02/07 v2.5.2 Insert Document Level JavaScripts (dps)]
%<*driver>
\documentclass{ltxdoc}
\usepackage[colorlinks,hyperindex=false]{hyperref}
@@ -73,6 +73,9 @@
% \textsf{dvips} or \textsf{dvipsone} to produce a postscript file,
% which is then distilled), you are required to have Acrobat~5.0 (or
% later).
+% \changes{v2.5.1}{2021/02/04}{Updated \string\texttt{aeb\_man.tex} and
+% \string\texttt{eformman.tex} to reflect additional security restriction
+% on \string\app{Acrobat}.}
%
% \section{Features of the \textsf{insdljs} package}
% We present a few of the several features of the package to get some feel for its
@@ -868,8 +871,9 @@
% is turned on by default, and may be turned off with \DescribeMacro\pdfSpacesOff\cs{pdfSpacesOff}
% and back on by \DescribeMacro\pdfSpacesOn\cs{pdfSpacesOn}.
% \begin{macrocode}
-\def\pdfSpacesOn{\let\pdfSP\pdfSPDef}
-\def\pdfSpacesOff{\let\pdfSP\dl@sp@ce}
+\newif\ifpdfspaces\pdfspacesfalse
+\def\pdfSpacesOn{\global\pdfspacestrue\let\pdfSP\pdfSPDef}
+\def\pdfSpacesOff{\global\pdfspacesfalse\let\pdfSP\dl@sp@ce}
\pdfSpacesOff
\ifpdf\else\ifxetex\else\pdfSpacesOn\fi\fi
\def\pdfLBr{\string\173}
@@ -2051,14 +2055,19 @@
% \end{macrocode}
% We \cs{let} \cs{space} to \cs{pdfSP}, and declare \cs{obeyspaces}, in this way, the space
% character is active and is equal to \cs{040} (space). Start the verbatim environment.
+% We expand \cs{obeyspaces} only if \cs{pdfSpacesOn} is in effect.
+% \changes{v2.5.2}{2021/02/07}{Modify \string\cs{b@vrbdfnJS}, remove \string\cs{global}
+% on \string\cs{let}}
% \begin{macrocode}
-\def\b@vrbdfnJS#1{\global\let\space\pdfSP\makeatletter\obeyspaces%
+\def\b@vrbdfnJS#1{\ifpdfspaces\let\space\pdfSP
+ \makeatletter\obeyspaces\fi%
% \end{macrocode}
% Pass the first argument here. If this environment is for typesetting,
% initialize the tokens \cs{JStoks} to be in a group, and such. The insertion
% of \cs{dl@paramlocal} is to support the \cs{bParams}/\allowbreak\cs{eParams} construct.
% \begin{macrocode}
- #1\ifdlfortypeset\global\JStoks={\bgroup\leavevmode\dl@paramlocal}\fi%
+ #1\ifdlfortypeset%
+ \global\JStoks={\bgroup\leavevmode\dl@paramlocal}\fi%
\verbatim@start}
% \end{macrocode}
% The end of the environment code
diff --git a/texmf-dist/source/latex/acrotex/web.dtx b/texmf-dist/source/latex/acrotex/web.dtx
index 0704cade..c143be3f 100644
--- a/texmf-dist/source/latex/acrotex/web.dtx
+++ b/texmf-dist/source/latex/acrotex/web.dtx
@@ -4,7 +4,7 @@
%<*copyright>
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Web package, %%
-%% Copyright (C) 1999-2019 D. P. Story %%
+%% Copyright (C) 1999-2021 D. P. Story %%
%% dpstory@uakron.edu %%
%% %%
%% This program can redistributed and/or modified under %%
@@ -21,7 +21,7 @@
%</copyright>
%<package>\NeedsTeXFormat{LaTeX2e}[1997/12/01]
%<package>\ProvidesPackage{web}
-%<package> [2019/12/16 v6.1.4 web: A Screen Design Package (dps)]
+%<package> [2021/02/06 v6.1.5 web: A Screen Design Package (dps)]
%<*driver>
\documentclass{ltxdoc}
\usepackage[colorlinks,hyperindex=false]{hyperref}
@@ -75,6 +75,8 @@
% \string\texttt{dnidefs} to format changes and index. Compile \string\texttt{web.ins}
% to obtain the files \string\texttt{aebdocfmt.def} and \string\texttt{aebdonotindex.def}.}
% \changes{v6.0l}{2016/08/17}{Switched over to \string\texttt{xkeyval} package}
+% \changes{v6.1.5}{2021/02/06}{Modified definitions of \string\cs{subsubsection}
+% to include usage of \string\cs{texorpdfstring}}
% \begin{macrocode}
\RequirePackage{xkeyval}
% \end{macrocode}
@@ -2725,7 +2727,8 @@
%<*websectioning>
\renewcommand*\thesection{\arabic{section}}
\renewcommand*\thesubsection{\thesection.\arabic{subsection}}
-\renewcommand*{\thesubsubsection}{\textbullet}
+\renewcommand*{\thesubsubsection}
+ {\texorpdfstring{$\bullet$}{\textbullet}}
\renewcommand{\section}{\renewcommand{\@seccntformat}[1]{%
\@nameuse{the##1}\web@finalDot\enspace}%
\@startsection{section}{1}{\z@}%
@@ -3240,7 +3243,7 @@
\@ifundefined{ddd@DingToc}{}{%
\if\aeb@use@section@numbers\web@Zero\ifx\ddd@DingToc\@empty\else
\def\numberline{\color{\ddd@DingTocColor}\strut\ddd@DingToc}%
- \fi\fi}\hyperlink{#3}{\numberline}~\web@title\
+ \fi\fi}\hyperlink{#3}{\numberline}~\web@title\enspace\allowbreak
}%
% \end{macrocode}
% \end{macro}
@@ -5032,7 +5035,8 @@
\aeb@subsection@fontsize\aeb@subsection@halign
\color{\aeb@subsectioncolor}\aeb@subsection@special}}
\def\subsubDefaultDing#1{\def\web@subsubDefaultDing{{#1}}}
-\subsubDefaultDing{\textrm\textbullet}
+%\subsubDefaultDing{\textrm\textbullet}
+\subsubDefaultDing{\texorpdfstring{$\bullet$}{\textbullet}}
\renewcommand\subsubsection{%
\renewcommand{\@seccntformat}[1]{\aeb@subsubsectionNum{##1}}%
\@startsection{subsubsection}{3}{\aeb@subsubsection@indent}%