summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/verifica/verifica.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/verifica/verifica.dtx')
-rw-r--r--macros/latex/contrib/verifica/verifica.dtx101
1 files changed, 94 insertions, 7 deletions
diff --git a/macros/latex/contrib/verifica/verifica.dtx b/macros/latex/contrib/verifica/verifica.dtx
index bea8de85b7..38c9d521f2 100644
--- a/macros/latex/contrib/verifica/verifica.dtx
+++ b/macros/latex/contrib/verifica/verifica.dtx
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-% verifica.cls. Version: 1.1 - January 19, 2020.
+% verifica.cls. Version: 1.2 - February 7, 2020.
% Author: Riccardo DOSSENA <riccardo.dossena@gmail.com>
%
% Questa è una classe per comporre le verifiche
@@ -29,7 +29,7 @@
%<class>\ProvidesClass{verifica}
%<package>\ProvidesPackage{ver-doc}
%<*class|package>
- [2020/01/19 v1.1 Riccardo Dossena]
+ [2020/02/07 v1.2 Riccardo Dossena]
%</class|package>
%
%<*driver>
@@ -86,7 +86,7 @@
morekeywords=[3]{intestazione,tipologia,disciplina,istituto,
data,classe,tempo,intestazionesemplice,
intestazionerighe,dss,vf,verofalso,fattorevf,punti,
- puntiadestra,puntipt,totpunti,vartotpunti,
+ puntiadestra,puntipt,totpunti,vartotpunti,puntiman,
riga,dotword,dotrule,ddfrac,numfrac,denfrac,
arc,vararc,eps,del,Del,R,N,Z,Q,tsa,tso,
restorephi,restoretheta,abs,labeltest,labelbox,
@@ -132,7 +132,7 @@
%</driver>
% \fi
%
-% \CheckSum{0}
+% \CheckSum{806}
%
% \CharacterTable
% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
@@ -179,7 +179,8 @@
% \DoNotIndex{\nolinebreak,\null,\textsc,\ifx,\tmp,\mbox,\vfill,\LARGE,\Huge}
% \DoNotIndex{\enitkv@key,\item,\@ifpackageloaded,\@ifpackagewith}
%
-% \title{La classe \pack{verifica}}
+% \title{La classe \pack{verifica}\thanks{Versione \fileversion\ del
+% \filedate.}}
% \author{Riccardo Dossena\thanks{%
% E-mail: \href{mailto:riccardo.dossena@gmail.com}%
% {\ttfamily riccardo.dossena@gmail.com}}}
@@ -1474,6 +1475,57 @@
%
% \makeatother
%
+% \subsection{Un piccolo bug del punteggio (e soluzione)}
+%
+% Se la prima parola di una riga dove si intende stampare il punteggio è
+% sillabata, il comando \lstinline|\punti| sposta il punteggio nella riga
+% vuota successiva, quindi in una posizione non corretta, come mostra il
+% prossimo esempio.
+%\iffalse
+%<*example>
+%\fi
+\begin{lstlisting}
+\begin{esercizi}
+ \item Scrivi in forma implicita l'equazione della retta parallela
+ all'asse~$x$ e precipitevolissimevolmente passante
+ per $P(0, 1)$. \punti{12}
+\end{esercizi}
+\end{lstlisting}
+%\iffalse
+%</example>
+%\fi
+% \begin{riquadro}
+% \begin{esercizi}
+% \item Scrivi in forma implicita l'equazione della retta parallela
+% all'asse~ $x$ e precipitevolissimevolmente passante per $P(0, 1)$.
+% \punti{12}
+% \end{esercizi}
+% \end{riquadro}
+% Qualora si presentasse una situazione del genere, è possibile risolvere
+% sostituendo localmente al comando \lstinline|\punti| il comando
+% \lstinline|\puntiman| (che sta per ``punteggio manuale'' e ha la stessa
+% sintassi di \lstinline|\punti|).
+%\iffalse
+%<*example>
+%\fi
+\begin{lstlisting}
+\begin{esercizi}
+ \item Scrivi in forma implicita l'equazione della retta parallela
+ all'asse~$x$ e precipitevolissimevolmente passante
+ per $P(0, 1)$. \puntiman{12}
+\end{esercizi}
+\end{lstlisting}
+%\iffalse
+%</example>
+%\fi
+% \begin{riquadro}
+% \begin{esercizi}
+% \item Scrivi in forma implicita l'equazione della retta parallela
+% all'asse~$x$ e precipitevolissimevolmente passante per $P(0, 1)$.
+% \puntiman{12}
+% \end{esercizi}
+% \end{riquadro}
+%
% \subsection{Il riquadro del punteggio totale}
%
% Se lo si desidera, è possibile stampare un riquadro in cui inserire il
@@ -2512,6 +2564,27 @@ Di default sono definiti $\phi$ e $\theta$, ma si possono ripristinare
}
% \end{macrocode}
% \end{macro}
+% \begin{macro}{\puntiman}
+% \changes{v1.2}{2020/02/07}{Added the \cs{puntiman} command, which prints the
+% score at the end of the line when the \cs{punti} command fails.}
+% Unfortunately, there is a bug: if the first word of the line where the
+% score has to be printed is part of a hyphenated word, the score will not
+% be printed on the same line, but on the next (empty). To solve
+% this issue ``manually'', the \cs{puntiman} command can be used instead of
+% \cs{punti}.
+% \begin{macrocode}
+\newcommand{\puntiman}[2][\@nil]{%
+ \hfill%
+ [\textsc{\@punteggio~#2%
+ \def\tmp{#1}%
+ \ifx\tmp\@nnil
+ \relax
+ \else
+ ~\mbox{#1}%
+ \fi}]%
+}
+% \end{macrocode}
+% \end{macro}
% \begin{macro}{\puntiadestra}
% This command can be placed anywhere in the document and simply prints
% the word ``Punti'' after the score.
@@ -2526,14 +2599,28 @@ Di default sono definiti $\phi$ e $\theta$, ma si possono ripristinare
~\mbox{#1}%
\fi}]%
}
-\def\puntiadestra{\renewcommand{\punti}{\punti@dx}}
+\newcommand{\puntiman@dx}[2][\@nil]{%
+ \hfill%
+ [\textsc{#2~\@punteggio%
+ \def\tmp{#1}%
+ \ifx\tmp\@nnil
+ \relax
+ \else
+ ~\mbox{#1}%
+ \fi}]%
+}
+\def\puntiadestra{%
+ \renewcommand{\punti}{\punti@dx}
+ \renewcommand{\puntiman}{\puntiman@dx}
+}
% \end{macrocode}
% \end{macro}
% \begin{macro}{\puntipt}
% This command can also be placed anywhere in the document and replaces
% the word ``Punti'' with the abbreviation ``Pt.''
% \begin{macrocode}
-\def\puntipt{\renewcommand{\@punteggio}{Pt.}}
+\def\puntipt{%
+ \renewcommand{\@punteggio}{Pt.}}
% \end{macrocode}
% \end{macro}
% \begin{macro}{\totpunti}