summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Master/texmf-dist/doc/latex/verifiche/Esempio.pdfbin174217 -> 0 bytes
-rw-r--r--Master/texmf-dist/doc/latex/verifiche/README.md9
-rw-r--r--Master/texmf-dist/doc/latex/verifiche/verifiche-example.tex (renamed from Master/texmf-dist/doc/latex/verifiche/Esempio.tex)32
-rw-r--r--Master/texmf-dist/doc/latex/verifiche/verifiche.pdfbin504635 -> 0 bytes
-rw-r--r--Master/texmf-dist/source/latex/verifiche/verifiche.dtx276
-rw-r--r--Master/texmf-dist/source/latex/verifiche/verifiche.ins2
-rw-r--r--Master/texmf-dist/tex/latex/verifiche/verifiche.sty113
7 files changed, 381 insertions, 51 deletions
diff --git a/Master/texmf-dist/doc/latex/verifiche/Esempio.pdf b/Master/texmf-dist/doc/latex/verifiche/Esempio.pdf
deleted file mode 100644
index 509d6e67beb..00000000000
--- a/Master/texmf-dist/doc/latex/verifiche/Esempio.pdf
+++ /dev/null
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/verifiche/README.md b/Master/texmf-dist/doc/latex/verifiche/README.md
index 348e4c9b587..75f142ca02e 100644
--- a/Master/texmf-dist/doc/latex/verifiche/README.md
+++ b/Master/texmf-dist/doc/latex/verifiche/README.md
@@ -1,7 +1,7 @@
# Package Verifiche
## Abstract
-The purpose of the package is to mange the exercises for a test, their points, the difficulty level and their solutions.
+The purpose of the package is to manage the exercises for a test, their points, the difficulty level and their solutions.
Some typical format of exercises are already implemented:
1. Plain exercise
2. Complete the Text - exercise
@@ -10,6 +10,11 @@ Some typical format of exercises are already implemented:
5. Open questtions
6. Find the Error - exercise
+## Informations
+Author: Francesco Raccanello
+Mail: raccanello.francesco@gmail.com
+License: LPPL 1.3
+
## Installation
To install the package run:
- `latex verifiche.ins`
@@ -21,7 +26,7 @@ To install the package run:
tree (e.g. \tex\latex\verifiche).
## Example
-Run `pdflatex Esempio.tex` to see some examples.
+Run `pdflatex verifiche-example.tex` to see some examples.
### To do
diff --git a/Master/texmf-dist/doc/latex/verifiche/Esempio.tex b/Master/texmf-dist/doc/latex/verifiche/verifiche-example.tex
index b84e48eef6e..361c7cd52ae 100644
--- a/Master/texmf-dist/doc/latex/verifiche/Esempio.tex
+++ b/Master/texmf-dist/doc/latex/verifiche/verifiche-example.tex
@@ -1,6 +1,6 @@
% compile 2 times
\documentclass[a4paper]{article}
-\usepackage[solutions
+\usepackage[solutions%show/hide the solutions
]{verifiche}
\usepackage[margin=3cm]{geometry}
\usepackage{lipsum}
@@ -16,6 +16,8 @@
\instruction{Risolvere il seguente esercizio nel più breve tempo possibile.\\}
\printheading
+\pagestyle{verifiche}
+
\begin{esercizio}
Risolvere il seguente problema.
@@ -69,6 +71,34 @@ Calcolare
\]
\end{esercizio*}
+\ptprefix{.../}
+\ptdelimiters{[]}
+\ptlabel{punti}
+\begin{esercizio}[pt=2]
+Calcolare la seguente derivata:
+\[
+\frac{d e^x}{dx} =
+\]
+\end{esercizio}
+
+\partialptprefix{.../}
+\partialptdelimiters{{}{}}
+\partialptlabel[punto]{punti}
+\begin{esercizio}
+Risolvere i seguenti quesiti:
+\begin{enumerate}[(i)]
+\item\partialpt{2}\noindent Calcolare il seguente integrale indefinito:
+\[
+\int e^x dx =
+\]
+\item\partialpt{1}\noindent Calcolare il seguente integrale definito:
+\[
+\int_0^1 e^x dx =
+\]
+\end{enumerate}
+\end{esercizio}
+
+
\begin{soluzione}
Questa è la soluzione dell'esercizio \ref{es:ferropiuma} a pagina \pageref{es:ferropiuma}.
\end{soluzione}
diff --git a/Master/texmf-dist/doc/latex/verifiche/verifiche.pdf b/Master/texmf-dist/doc/latex/verifiche/verifiche.pdf
deleted file mode 100644
index 25838a476d9..00000000000
--- a/Master/texmf-dist/doc/latex/verifiche/verifiche.pdf
+++ /dev/null
Binary files differ
diff --git a/Master/texmf-dist/source/latex/verifiche/verifiche.dtx b/Master/texmf-dist/source/latex/verifiche/verifiche.dtx
index 8bad5377772..405d7ec7323 100644
--- a/Master/texmf-dist/source/latex/verifiche/verifiche.dtx
+++ b/Master/texmf-dist/source/latex/verifiche/verifiche.dtx
@@ -16,7 +16,7 @@
%
% \iffalse
%<package>\NeedsTeXFormat{LaTeX2e}
-%<package>\ProvidesPackage{verifiche} [2020/07/01 v2.2 .dtx verifiche file]
+%<package>\ProvidesPackage{verifiche} [2021/02/14 v4.0 .dtx verifiche file]
%<*driver>
\documentclass{ltxdoc}
\usepackage[utf8]{inputenc}
@@ -25,10 +25,10 @@
\usepackage{listings}
\lstset{
language=[LaTeX]TeX,
- morekeywords={\institute, \asyear, \testtype, \instruction, \duration, \printheading,
- \institutefont, \asyearfont, \testtypefont, \instructiondelimiter, \instrunctionfont,
+ morekeywords={\setlength, \institute, \asyear, \testtype, \instruction, \duration, \printheading,
+ \institutefont, \asyearfont, \testtypefont, \instructiondelimiter, \headerfont, \instrunctionfont,
\durationfont, \eserciziolabel, \solutionfont, \diffsymb, \closedquestionitem,
- \inlinesol, \completetext, \truefalse, \openquestion, \linedopenquestion, \squaredopenquestion, \checked, \finderror, \textandimage, \partialpt},
+ \inlinesol, \completetext, \truefalse, \openquestion, \linedopenquestion, \squaredopenquestion, \headercandidatenamelabel, \checked, \finderror, \textandimage, \partialpt, \ptprefix, \ptlabel, \partialptlabel, \partialptdelimiters, \ptdelimiters},
keywordstyle=\color{blue},
escapeinside={*@}{@*},
inputencoding=utf8,
@@ -66,11 +66,13 @@
%</driver>
% \fi
%
-% \CheckSum{537}
+% \CheckSum{736}
% \changes{v1.0}{2020/06/14}{Initial version.}
% \changes{v2.0}{2020/06/26}{Better performance in exercise environment.}
% \changes{v2.1}{2020/06/30}{Introduced closedquestionitem to control |item| symbol.}
% \changes{v2.2}{2020/07/01}{Modify reference to points of an exercise.}
+% \changes{v3.0}{2021/02/14}{Remove fancyhdr and introduce a new page style. Improve the printheading command.}
+% \changes{v4.0}{2021/02/15}{Introduce comando to change the aspect of the exercise score.}
% \GetFileInfo{verifiche.sty}
% \DoNotIndex{\newcommand,\newenvironment,\def,\begin,\end,\par}
% \DoNotIndex{\DeclareOption,\ExecuteOptions,\ProcessOptions,\RequirePackage}
@@ -115,10 +117,11 @@
% \maketitle
%\begin{abstract}
%Il presente pacchetto si propone di gestire gli elementi che generalmente compongono
-%una prova scritta per le scuole secondarie di primo e secondo grado.
-%I comandi e gli ambienti implementati permettono di gestire l'intestazione della pagina
-% e alcuni strumenti utili alla stesura di test scolastici.
-% Il pacchetto, inoltre, permette di riportare soluzioni degli esercizi riportandoli, o meno, nello stesso documento in base ad un'apposita opzione.
+%una prova scritta per le scuole secondarie di primo e secondo grado:
+%l'intestazione della pagina, gli esercizi della verifica e le loro soluzioni.
+%Gli esercizi possono presentare una numerazione, un punteggio e un grado di difficoltà.
+%Alcuni comandi permettono di generare alcune tipologie di test: esercizi semplici, esercizi di completamento, vero o falso, domande aperte e chiuse e trova l'errore.
+%Ciascun esercizio può presentare la soluzione corretta che viene riportata nel documento in base ad un'apposita opzione del pacchetto.
%\end{abstract}
%
%\tableofcontents
@@ -141,7 +144,6 @@
%\item |amsmath|, |amssymb| per la gestione della matematica;
%\item |siunitx| per la gestione delle unità di misura;
%\item |graphicx|, |xcolor| e |tikz| per la gestione grafica;
-%\item |famcyhdr| per la gestione delle testatine.
%\end{itemize}
%
%\section{Come usare il pacchetto \textsf{verifiche}}
@@ -275,6 +277,17 @@
%\end{tabular}
%\end{center}
%
+% Il pacchetto definisce due stili di pagina \emph{ad hoc}: |mainverifiche| e |verifiche|. Il primo è evocato quando si definisce il comando |\institute| e stampa sulla prima pagina l'argomento di questo comando. \DescribeMacro{verifiche}Il secondo, invece, può essere utilizzato dall'utente tramite il comando:
+%\iffalse
+%<*example>
+%\fi
+\begin{lstlisting}
+\pagestyle{verifiche}
+\end{lstlisting}
+%\iffalse
+%</example>
+%\fi
+%e riproduce, nelle pagine dispari diversa dalla prima, l'intestazione per l'identificazione del candidato: il nome, la classe e la data.
%\section{Comandi ed ambienti per le \textsf{verifiche}}
%Nel seguito verranno presentati i comandi che permettono di strutturare un test.
%Il pacchetto fornisce un ambiente di esercizio in cui racchiudere le domande.
@@ -441,6 +454,8 @@ che voglio somministrare
%</example>
% \fi
%
+%Quando usato negli ambienti |enumerate| o |itemize|, il comando introduce uno spazio spurio che può essere rimosso posponendo il comando |\noindent|.
+%
%Quando viene esplicitata l'\emph{opzione} |partialpt| nella definizione dell'ambiente esercizio, il pacchetto si occupa della somma complessiva dei singoli punteggi parziali riportandola come punteggio totale del quesito. In questo caso il documento dev'essere compilato \emph{due volte} per ottenere correttamente il risultato finale.\\
%
% \iffalse
@@ -741,13 +756,24 @@ dell'esercizio somministrato
% \fi
%
%\section{Personalizzazione}
-%Il pacchetto prevede un certo numero di comandi definiti al fine di gestire l'aspetto del documento finale.\par
+%Il pacchetto prevede un certo numero di comandi definiti al fine di gestire l'aspetto del documento finale.
+%\subsection*{Font}
%Per l'intestazione tutti i font sono definiti secondo lo schema:
%\begin{center}
%\meta{comando intestazione}|font|
%\end{center}
%ed oltre a gestire l'aspetto del carattere, alcuni di questi, specificano la posizione occupata del testo ed eventuali prefissi.
-
+%
+%\DescribeMacro{\headerfont} Il font delle intestazioni quando viene usato lo stile di pagina |verifiche|.
+%\iffalse
+%<*example>
+%\fi
+\begin{lstlisting}
+\renewcommand{\headerfont}[1]*@\marg{...}@*
+\end{lstlisting}
+%\iffalse
+%</example>
+%\fi
%\DescribeMacro{\institutefont}Il font dell'istituto, generato dal comando |\institute|, è gestito dal comando |\institutefont|. Per variare le caratteristiche del font è necessario ridefinire il comando:
%\iffalse
%<*example>
@@ -792,6 +818,18 @@ dell'esercizio somministrato
%</example>
%\fi
%
+%\DescribeMacro{\solutionfont}Le soluzioni degli esercizi vengono stampate, quando viene esplicitata l'opzione |solutions| quando viene caricato il pacchetto, con un font più piccolo e in corsivo. Per modificare il font delle soluzioni è sufficiente ridefinire il comando |\solutionfont|:
+%\iffalse
+%<*example>
+%\fi
+\begin{lstlisting}
+\renewcommand{\solutionfont}*@\marg{...}@*
+\end{lstlisting}
+%\iffalse
+%</example>
+%\fi
+%
+%\subsection*{Intestazione}
%\DescribeMacro{\instructiondelimiter}Le istruzioni e la durata della prova sono racchiuse tra due delimitatori che normalmente sono due righe orizzontali. Per cambiare, o rimuovere, questi delimitatori è sufficiente ridefinire il seguente comando:
%\iffalse
%<*example>
@@ -803,6 +841,30 @@ dell'esercizio somministrato
%</example>
%\fi
%
+%\DescribeMacro{\headercandidatenamelabel}Quando viene composta l'intestazione principale nella prima pagina, compare una riga in cui il candidato può scrivere il proprio nome e cognome. L'etichetta di questa parte controllata dal comando |\headercandidatenamelabel|, che può essere opportunamente cambiata tramite il comando:
+%\iffalse
+%<*example>
+%\fi
+\begin{lstlisting}
+\renewcommand{\headercandidatenamelabel}*@\marg{...}@*
+\end{lstlisting}
+%\iffalse
+%</example>
+%\fi
+%Allo stesso modo è possibile modificare la descrizione della classe \DescribeMacro{\headerclasslabel} e della data\DescribeMacro{\headerdatelabel}.
+% Tutte queste tre voci prevedono, per ciascuna, una riga vuota ove scrivere l'informazione richiesta.\DescribeMacro{\candidatenamerulerlength}\DescribeMacro{\classrulerlength}\DescribeMacro{\daterulerlength} Le lunghezze delle tre righe possono essere modificate impostando le lunghezze desiderate
+%\iffalse
+%<*example>
+%\fi
+\begin{lstlisting}
+\setlength{\...rulerlength}*@\marg{dim}@*
+\end{lstlisting}
+%\iffalse
+%</example>
+%\fi
+%Attraverso questi comandi è possibile anche rimuovere una (o più) delle tre voci. Se ad esempio non si vuole visualizzare la classe d'appartenenza del candidato, sarà sufficiente ridefinire gli opportuni comandi nel seguente modo: |\renewcommand{\headerclasslabel}{}|, così da non visualizzare alcuna scritta, e |\setlength{\classrulerlength}{0pt}| per rimuovere la riga associata.
+%
+%\subsection*{Ambiente \texttt{esercizio}}
%\DescribeMacro{\eserciziolabel}Gli esercizi vengono inseriti anteponendo al loro testo la dicitura ‘‘Quesito’’ seguito (eventualmente) da un numero. Per cambiare questa dicitura, a livello globale, ovvero per ogni esercizio, è sufficiente ridefinire il comando |\eserciziolabel|.
%\iffalse
%<*example>
@@ -814,6 +876,34 @@ dell'esercizio somministrato
%</example>
%\fi
%
+%L'ambiente |esercizio| permette di riportare anche il punteggio complessivo e parziale per le sotto-domande. Di default il punteggio totale del quesito viene riportato anteponendo un tratto orizzontale seguito da uno slash, il valore del punteggio ed un'etichetta indicante la sigla \emph{pt}.
+% Per quanto riguarda il punteggio parziale, questo viene riportato racchiuso tra parentesi tonde.
+% È possibile modificare l'aspetto di entrambi i punteggio che sono strutturati nel seguente modo: \texttt{prefisso delimitatore punteggio label delimitatore}.
+%
+%\DescribeMacro{\ptprefix} Il comando |\ptprefix| permette di modificare il \texttt{prefisso} del punteggio. Di default traccia una linea di 1 cm ed uno slash. Se si vuole modificarne l'aspetto è sufficiente evocare il comando.
+%\iffalse
+%<*example>
+%\fi
+\begin{lstlisting}
+\ptprefix*@\marg{...}@*
+\end{lstlisting}
+%\iffalse
+%</example>
+%\fi
+%
+%\DescribeMacro{\partialptprefix} Allo stesso modo il comando |\partialptprefix| definisce un \texttt{prefisso} per il punteggio parziale.
+%
+%\DescribeMacro{\ptlabel}\DescribeMacro{\partialptlabel} Il punteggio viene riportato indicando anche una \texttt{label}. Questa di default è "pt" sia per il punteggio parziale che per quello totale. È possibile definire un nome alternativo usando il comando |\ptlabel| per il punteggio totale o |\partialptlabel| per quello parziale. I comandi prevedono un argomento obbligatorio che è valido per tutti i punteggi, ma anche uno facoltativo che viene usato quanto il valore del punteggio è pari a 1 e che necessita quindi di un sostantivo singolare al posto di quello plurale (i.e. "punto" al posto di "punti").
+%\iffalse
+%<*example>
+%\fi
+\begin{lstlisting}
+\ptlabel*@\oarg{sing.}\marg{plur.}@*
+\partialptlabel*@\oarg{sing.}\marg{plur.}@*
+\end{lstlisting}
+%\iffalse
+%</example>
+%\fi
%\DescribeMacro{\diffsymb}L'ambiente esercizi prevede di poter descrivere la difficoltà tramite un simbolo grafico. Di default questo è una stella ($\bigstar$), tuttavia è possibile cambiare il tipo di simbolo ridefinendo il comando |\diffsymb|:
%\iffalse
%<*example>
@@ -825,24 +915,24 @@ dell'esercizio somministrato
%</example>
%\fi
%
-%\DescribeMacro{\closedquestionitem}Il simbolo delle domande chiuse è controllato dal comando |\closedquestionitem| che di default è un quadrato ($\square$). Per modificare questo simbolo è sufficiente ridefinire il comando:
+%\DescribeMacro{\ptdelimiters}\DescribeMacro{\partialptdelimiters} Infine, i punteggi sono racchiusi tra due delimitatori. Il punteggio totale non presenta alcun simbolo, mentre quello parziale è racchiuso tra parentesi tonde. È possibile definire dei nuovi delimitatori utilizzando i comandi |\partialptdelimiters| e |\ptdelimiters| i quali argomenti contengono due caratteri che fungono da delimitatore dentro e sinistro.
%\iffalse
%<*example>
%\fi
\begin{lstlisting}
-\renewcommand{\closedquestionitem}*@\marg{codice del simbolo}@*
+\ptdelimiters*@\marg{coppia di caratteri}@*
+\partialptdelimiters*@\marg{coppia di caratteri}@*
\end{lstlisting}
%\iffalse
%</example>
%\fi
-
%
-%\DescribeMacro{\solutionfont}Le soluzioni degli esercizi vengono stampate, quando viene esplicitata l'opzione |solutions| quando viene caricato il pacchetto, con un font più piccolo e in corsivo. Per modificare il font delle soluzioni è sufficiente ridefinire il comando |\solutionfont|:
+%\DescribeMacro{\closedquestionitem}Il simbolo delle domande chiuse è controllato dal comando |\closedquestionitem| che di default è un quadrato ($\square$). Per modificare questo simbolo è sufficiente ridefinire il comando:
%\iffalse
%<*example>
%\fi
\begin{lstlisting}
-\renewcommand{\solutionfont}*@\marg{...}@*
+\renewcommand{\closedquestionitem}*@\marg{codice del simbolo}@*
\end{lstlisting}
%\iffalse
%</example>
@@ -865,7 +955,6 @@ dell'esercizio somministrato
\RequirePackage{xcolor}
\RequirePackage{tikz}
\RequirePackage{booktabs}
-\RequirePackage{fancyhdr}
\RequirePackage[normalem]{ulem}
\RequirePackage{xstring}
% \end{macrocode}
@@ -941,6 +1030,20 @@ dell'esercizio somministrato
\newcounter{exercisenumber}
\newcounter{partialpoints}[exercisenumber]
% \end{macrocode}
+%\subsection{Length}
+%\iffalse
+%%newlenght
+%\fi
+%In order to fine-tuning the dimension of the rulers in the headers and to leave the possibility to the user to redefine their dimensions, some length are introduced.
+% \begin{macrocode}
+\newlength{\candidatenamerulerlength}
+\newlength{\classrulerlength}
+\newlength{\daterulerlength}
+\setlength{\candidatenamerulerlength}{.35\textwidth}
+\setlength{\classrulerlength}{.1\textwidth}
+\setlength{\daterulerlength}{.15\textwidth}
+% \end{macrocode}
+%
%\subsection{Macro and environment}
%\iffalse
%%macro and environment
@@ -968,6 +1071,10 @@ dell'esercizio somministrato
%%fonts and aspects
%\fi
% \begin{macrocode}
+\newcommand{\headerfont}[1]{%
+ \sffamily\color{darkgray}#1}
+% \end{macrocode}
+% \begin{macrocode}
\newcommand{\institutefont}[1]{%
\large \sffamily\color{darkgray}#1}
% \end{macrocode}
@@ -992,6 +1099,15 @@ dell'esercizio somministrato
\hspace*{\fill}\@durationpreamble\space\bfseries #1\hspace*{\fill}}
% \end{macrocode}
% \begin{macrocode}
+\newcommand{\headercandidatenamelabel}{Nome e Cognome}
+\newcommand{\headerclasslabel}{Classe}
+\newcommand{\headerdatelabel}{Data}
+\newcommand{\@header@candidatename}{\headercandidatenamelabel\space\underline{\hspace{\candidatenamerulerlength}}}
+\newcommand{\@header@class}{\headerclasslabel\space\underline{\hspace{\classrulerlength}}}
+\newcommand{\@header@date}{\headerdatelabel\space\underline{\hspace{\daterulerlength}}}
+\newcommand{\@header}{\@header@candidatename\hfill\@header@class\hfill\@header@date}
+% \end{macrocode}
+% \begin{macrocode}
\newcommand{\eserciziolabel}{%
Quesito}
% \end{macrocode}
@@ -1007,6 +1123,106 @@ dell'esercizio somministrato
\newcommand{\closedquestionitem}{%
$\square$}
% \end{macrocode}
+%\iffalse
+%%pt prefix
+%\fi
+% \begin{macrocode}
+\newcommand{\@ptprefix}{\underline{\hspace{1cm}}/}
+\newcommand{\ptprefix}[1]{%
+ \renewcommand{\@ptprefix}{#1}}
+% \end{macrocode}
+%\iffalse
+%%partialpt prefix
+%\fi
+% \begin{macrocode}
+\newcommand{\@partialptprefix}{}
+\newcommand{\partialptprefix}[1]{%
+ \renewcommand{\@partialptprefix}{#1}}
+% \end{macrocode}
+%\iffalse
+%%pt label
+%\fi
+% \begin{macrocode}
+\newcommand{\@ptsinglabel}{pt}
+\newcommand{\@ptplurlabel}{pt}
+\NewDocumentCommand{\ptlabel}{o m}{%
+ \renewcommand{\@ptplurlabel}{#2}%
+ \renewcommand{\@ptsinglabel}{\IfNoValueTF{#1}{#2}{#1}}}%
+\newcommand{\@useptlabel}[1]{%
+ \ifnum#1=1 \@ptsinglabel \else \@ptplurlabel\fi}
+% \end{macrocode}
+%\iffalse
+%%partialpt label
+%\fi
+% \begin{macrocode}
+\newcommand{\@partialptsinglabel}{pt}
+\newcommand{\@partialptplurlabel}{pt}
+\NewDocumentCommand{\partialptlabel}{o m}{%
+ \renewcommand{\@partialptplurlabel}{#2}%
+ \renewcommand{\@partialptsinglabel}{\IfNoValueTF{#1}{#2}{#1}}}%
+\newcommand{\@usepartialptlabel}[1]{%
+ \ifnum#1=1 \@partialptsinglabel \else \@partialptplurlabel\fi}
+% \end{macrocode}
+%\iffalse
+%%partialpt delimiter
+%\fi
+% \begin{macrocode}
+\newcommand{\@lpartialpt@delimiter}{(}
+\newcommand{\@rpartialpt@delimiter}{)}
+\newcommand{\@definepartialptdelimiter}[2]{
+ \renewcommand{\@lpartialpt@delimiter}{#1}
+ \renewcommand{\@rpartialpt@delimiter}{#2}}
+\newcommand{\partialptdelimiters}[1]{%
+ \@definepartialptdelimiter#1}
+% \end{macrocode}
+%\iffalse
+%%pt delimiter
+%\fi
+% \begin{macrocode}
+\newcommand{\@lpt@delimiter}{}
+\newcommand{\@rpt@delimiter}{}
+\newcommand{\@defineptdelimiter}[2]{%
+ \renewcommand{\@lpt@delimiter}{#1}%
+ \renewcommand{\@rpt@delimiter}{#2}}
+\newcommand{\ptdelimiters}[1]{%
+ \@defineptdelimiter#1}
+% \end{macrocode}
+%\iffalse
+%% convert ref to num
+%\fi
+% \begin{macrocode}
+\newcommand*{\convertreftonum}[1]{%
+ \romannumeral
+ \@ifundefined{r@#1}{%
+ \expandafter\ltx@zero
+ \rc@default}{%
+ \expandafter\expandafter\expandafter\rc@extract@
+ \expandafter\expandafter\expandafter!%
+ \csname r@#1\expandafter\endcsname
+ \expandafter{\rc@default}\@nil}%
+}
+\def\rc@default{0}%
+\long\def\rc@extract@#1#2#3\@nil{%
+ \ltx@zero
+ #2}
+\chardef\ltx@zero=0%
+% \end{macrocode}
+
+%\paragraph{Page styles}
+%The package define two new pagestyle: \texttt{mainverifiche} and \texttt{verifiche}. The former is used if \verb|\@institute| is defined (or if \verb|noinstitute| is not declared) as \verb|\thispagestyle| mode. The latter can be used by the user and print, on the odd pages, the name, date and class of the candidate.
+%\iffalse
+%%pagestyles
+%\fi
+% \begin{macrocode}
+\newcommand{\ps@mainverifiche}{%
+ \renewcommand\@oddhead{\parbox{\textwidth}{\centering \institutefont{\@institute}}}%
+ \renewcommand\@evenhead{}%
+}
+\newcommand{\ps@verifiche}{%
+ \renewcommand\@oddhead{
+ \ifodd\thepage\parbox{\textwidth}{\headerfont\@header}\fi}%
+}
+% \end{macrocode}
%
%\paragraph{Print the heading}The purpose of |\printheading| macro is to typeset the headings of the page, printing the name of the institute (if included), the type of the test (if included) and so on.
%\iffalse
@@ -1014,14 +1230,12 @@ dell'esercizio somministrato
%\fi
% \begin{macrocode}
\newcommand{\printheading}{%
- \ifinstitute\pagestyle{fancy}\fi%
- {\ifinstitute\chead{\institutefont{\@institute}}\fi}%
- {\ifcandidatename\vspace*{.25em}Nome e Cognome \underline{\hspace{6cm}}%
- \hfill Classe \underline{\hspace{1.5cm}} \hfill Data \underline{\hspace{2.5cm}}\\[1em]\fi}%
- {\ifasyear \asyearfont{\@asyearpreamble\space\@asyear}\fi}%
- {\iftesttype\testtypefont{\@testtype}\fi}\\%
- {\ifinstruction\instructiondelimiter\\{\instrunctionfont{\@instruction}}\\%
- \ifduration{\durationfont\@duration\\}\fi\instructiondelimiter\fi}%
+ {\ifdefined\@institute\ifinstitute\thispagestyle{mainverifiche}\fi\else\thispagestyle{plain}\fi}%
+ {\ifcandidatename\@header\\[1em]\fi}%
+ {\ifdefined\@asyear\ifasyear \asyearfont{\@asyearpreamble\space\@asyear}\fi\fi}%
+ {\ifdefined\@testtype\iftesttype\testtypefont{\@testtype}\fi\fi}\\%
+ {\ifdefined\@instruction\ifinstruction\instructiondelimiter\\{\instrunctionfont{\@instruction}}\\%
+ \ifdefined\@duration\ifduration{\durationfont\@duration\\}\fi\fi\instructiondelimiter\fi\fi}%
}
% \end{macrocode}
@@ -1038,10 +1252,11 @@ dell'esercizio somministrato
\showmarginexercisetrue}%
\define@key{esercizio}{pt}[none]{
\def\pointes{#1}%
- \def\espoint{\hfill\underline{\hspace{1cm}}/\pointes pt}%
+ \def\espoint{\hfill\@ptprefix\@lpt@delimiter\pointes\space\@useptlabel{\pointes}\@rpt@delimiter}
\showmarginexercisetrue}%
\define@key{esercizio}{partialpt}[none]{%
- \def\sumpartialpt{\underline{\hspace{1cm}}/\ref{ptes@\theexercisenumber} pt}%
+ \def\@totalpartialpt{\convertreftonum{ptes@\theexercisenumber}}%
+ \def\sumpartialpt{\@ptprefix\@lpt@delimiter\@totalpartialpt\space\@useptlabel{\@totalpartialpt}\@rpt@delimiter}%
\showmarginexercisetrue}%
% \end{macrocode}
%
@@ -1125,8 +1340,9 @@ dell'esercizio somministrato
%\begin{macro}{\partialpt}The |partialpt| macro define the content of the margin note where it's used.
% \begin{macrocode}
\NewDocumentCommand{\partialpt}{m}{%
- \leavevmode\reversemarginpar\marginpar{\hfill(#1 pt)\addtocounter{partialpoints}{#1}}%
-}
+ \leavevmode\reversemarginpar\marginpar{%
+ \hfill\@partialptprefix\@lpartialpt@delimiter#1\space\@usepartialptlabel{#1}\@rpartialpt@delimiter%
+ \addtocounter{partialpoints}{#1}}}%
% \end{macrocode}
%\end{macro}
%\paragraph{Soluzione}
diff --git a/Master/texmf-dist/source/latex/verifiche/verifiche.ins b/Master/texmf-dist/source/latex/verifiche/verifiche.ins
index 8063f393f6c..de63841f732 100644
--- a/Master/texmf-dist/source/latex/verifiche/verifiche.ins
+++ b/Master/texmf-dist/source/latex/verifiche/verifiche.ins
@@ -16,7 +16,7 @@
\usedir{tex/latex/verifiche}
\preamble
This is a generated file.
-Copyright (C) 2020 by Francesco Raccanello
+Copyright (C) 2021 by Francesco Raccanello
This file may be distributed and/or modified under the
conditions of the LaTeX Project Public License, either
version 1.3 of this license or (at your option) any later
diff --git a/Master/texmf-dist/tex/latex/verifiche/verifiche.sty b/Master/texmf-dist/tex/latex/verifiche/verifiche.sty
index 13ca6420ddc..182f995f86c 100644
--- a/Master/texmf-dist/tex/latex/verifiche/verifiche.sty
+++ b/Master/texmf-dist/tex/latex/verifiche/verifiche.sty
@@ -6,7 +6,7 @@
%%
%% verifiche.dtx (with options: `package')
%% This is a generated file.
-%% Copyright (C) 2020 by Francesco Raccanello
+%% Copyright (C) 2021 by Francesco Raccanello
%% This file may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either
%% version 1.3 of this license or (at your option) any later
@@ -15,9 +15,7 @@
%% and version 1.3 or later is part of all distributions of
%% LaTeX version 2005/12/01 or later.
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{verifiche} [2020/07/01 v2.2 .dtx verifiche file]
-
-
+\ProvidesPackage{verifiche} [2021/02/14 v4.0 .dtx verifiche file]
\RequirePackage{xparse}
\RequirePackage{xkeyval}
\RequirePackage{amsmath}
@@ -29,7 +27,6 @@
\RequirePackage{xcolor}
\RequirePackage{tikz}
\RequirePackage{booktabs}
-\RequirePackage{fancyhdr}
\RequirePackage[normalem]{ulem}
\RequirePackage{xstring}
%%Forse si può cancellare questo
@@ -72,6 +69,13 @@
%%counters
\newcounter{exercisenumber}
\newcounter{partialpoints}[exercisenumber]
+%%newlenght
+\newlength{\candidatenamerulerlength}
+\newlength{\classrulerlength}
+\newlength{\daterulerlength}
+\setlength{\candidatenamerulerlength}{.35\textwidth}
+\setlength{\classrulerlength}{.1\textwidth}
+\setlength{\daterulerlength}{.15\textwidth}
%%macro and environment
%%global variable
\newcommand{\institute}[1]{%
@@ -85,6 +89,8 @@
\newcommand{\asyear}[2][Anno scolastico]{%
\gdef\@asyearpreamble{#1}\gdef\@asyear{#2}}
%%fonts and aspects
+\newcommand{\headerfont}[1]{%
+ \sffamily\color{darkgray}#1}
\newcommand{\institutefont}[1]{%
\large \sffamily\color{darkgray}#1}
\newcommand{\asyearfont}[1]{%
@@ -97,6 +103,13 @@
\sffamily#1}
\newcommand{\durationfont}[1]{%
\hspace*{\fill}\@durationpreamble\space\bfseries #1\hspace*{\fill}}
+\newcommand{\headercandidatenamelabel}{Nome e Cognome}
+\newcommand{\headerclasslabel}{Classe}
+\newcommand{\headerdatelabel}{Data}
+\newcommand{\@header@candidatename}{\headercandidatenamelabel\space\underline{\hspace{\candidatenamerulerlength}}}
+\newcommand{\@header@class}{\headerclasslabel\space\underline{\hspace{\classrulerlength}}}
+\newcommand{\@header@date}{\headerdatelabel\space\underline{\hspace{\daterulerlength}}}
+\newcommand{\@header}{\@header@candidatename\hfill\@header@class\hfill\@header@date}
\newcommand{\eserciziolabel}{%
Quesito}
\newcommand{\solutionfont}{%
@@ -105,16 +118,80 @@
$\bigstar$}
\newcommand{\closedquestionitem}{%
$\square$}
+%%pt prefix
+\newcommand{\@ptprefix}{\underline{\hspace{1cm}}/}
+\newcommand{\ptprefix}[1]{%
+ \renewcommand{\@ptprefix}{#1}}
+%%partialpt prefix
+\newcommand{\@partialptprefix}{}
+\newcommand{\partialptprefix}[1]{%
+ \renewcommand{\@partialptprefix}{#1}}
+%%pt label
+\newcommand{\@ptsinglabel}{pt}
+\newcommand{\@ptplurlabel}{pt}
+\NewDocumentCommand{\ptlabel}{o m}{%
+ \renewcommand{\@ptplurlabel}{#2}%
+ \renewcommand{\@ptsinglabel}{\IfNoValueTF{#1}{#2}{#1}}}%
+\newcommand{\@useptlabel}[1]{%
+ \ifnum#1=1 \@ptsinglabel \else \@ptplurlabel\fi}
+%%partialpt label
+\newcommand{\@partialptsinglabel}{pt}
+\newcommand{\@partialptplurlabel}{pt}
+\NewDocumentCommand{\partialptlabel}{o m}{%
+ \renewcommand{\@partialptplurlabel}{#2}%
+ \renewcommand{\@partialptsinglabel}{\IfNoValueTF{#1}{#2}{#1}}}%
+\newcommand{\@usepartialptlabel}[1]{%
+ \ifnum#1=1 \@partialptsinglabel \else \@partialptplurlabel\fi}
+%%partialpt delimiter
+\newcommand{\@lpartialpt@delimiter}{(}
+\newcommand{\@rpartialpt@delimiter}{)}
+\newcommand{\@definepartialptdelimiter}[2]{
+ \renewcommand{\@lpartialpt@delimiter}{#1}
+ \renewcommand{\@rpartialpt@delimiter}{#2}}
+\newcommand{\partialptdelimiters}[1]{%
+ \@definepartialptdelimiter#1}
+%%pt delimiter
+\newcommand{\@lpt@delimiter}{}
+\newcommand{\@rpt@delimiter}{}
+\newcommand{\@defineptdelimiter}[2]{%
+ \renewcommand{\@lpt@delimiter}{#1}%
+ \renewcommand{\@rpt@delimiter}{#2}}
+\newcommand{\ptdelimiters}[1]{%
+ \@defineptdelimiter#1}
+%% convert ref to num
+\newcommand*{\convertreftonum}[1]{%
+ \romannumeral
+ \@ifundefined{r@#1}{%
+ \expandafter\ltx@zero
+ \rc@default}{%
+ \expandafter\expandafter\expandafter\rc@extract@
+ \expandafter\expandafter\expandafter!%
+ \csname r@#1\expandafter\endcsname
+ \expandafter{\rc@default}\@nil}%
+}
+\def\rc@default{0}%
+\long\def\rc@extract@#1#2#3\@nil{%
+ \ltx@zero
+ #2}
+\chardef\ltx@zero=0%
+
+%%pagestyles
+\newcommand{\ps@mainverifiche}{%
+\renewcommand\@oddhead{\parbox{\textwidth}{\centering \institutefont{\@institute}}}%
+\renewcommand\@evenhead{}%
+}
+\newcommand{\ps@verifiche}{%
+\renewcommand\@oddhead{
+\ifodd\thepage\parbox{\textwidth}{\headerfont\@header}\fi}%
+}
%%print headings
\newcommand{\printheading}{%
- \ifinstitute\pagestyle{fancy}\fi%
- {\ifinstitute\chead{\institutefont{\@institute}}\fi}%
- {\ifcandidatename\vspace*{.25em}Nome e Cognome \underline{\hspace{6cm}}%
- \hfill Classe \underline{\hspace{1.5cm}} \hfill Data \underline{\hspace{2.5cm}}\\[1em]\fi}%
- {\ifasyear \asyearfont{\@asyearpreamble\space\@asyear}\fi}%
- {\iftesttype\testtypefont{\@testtype}\fi}\\%
- {\ifinstruction\instructiondelimiter\\{\instrunctionfont{\@instruction}}\\%
- \ifduration{\durationfont\@duration\\}\fi\instructiondelimiter\fi}%
+ {\ifdefined\@institute\ifinstitute\thispagestyle{mainverifiche}\fi\else\thispagestyle{plain}\fi}%
+ {\ifcandidatename\@header\\[1em]\fi}%
+ {\ifdefined\@asyear\ifasyear \asyearfont{\@asyearpreamble\space\@asyear}\fi\fi}%
+ {\ifdefined\@testtype\iftesttype\testtypefont{\@testtype}\fi\fi}\\%
+ {\ifdefined\@instruction\ifinstruction\instructiondelimiter\\{\instrunctionfont{\@instruction}}\\%
+ \ifdefined\@duration\ifduration{\durationfont\@duration\\}\fi\fi\instructiondelimiter\fi\fi}%
}
%%ambiente esercizio
@@ -125,10 +202,11 @@
\showmarginexercisetrue}%
\define@key{esercizio}{pt}[none]{
\def\pointes{#1}%
- \def\espoint{\hfill\underline{\hspace{1cm}}/\pointes pt}%
+ \def\espoint{\hfill\@ptprefix\@lpt@delimiter\pointes\space\@useptlabel{\pointes}\@rpt@delimiter}
\showmarginexercisetrue}%
\define@key{esercizio}{partialpt}[none]{%
- \def\sumpartialpt{\underline{\hspace{1cm}}/\ref{ptes@\theexercisenumber} pt}%
+ \def\@totalpartialpt{\convertreftonum{ptes@\theexercisenumber}}%
+ \def\sumpartialpt{\@ptprefix\@lpt@delimiter\@totalpartialpt\space\@useptlabel{\@totalpartialpt}\@rpt@delimiter}%
\showmarginexercisetrue}%
\newcommand{\exercisetitle}{%
\ifdefined\tempeserciziolabel\tempeserciziolabel%
@@ -179,8 +257,9 @@
\savepointsaux%print partial pt sum
}%
\NewDocumentCommand{\partialpt}{m}{%
- \leavevmode\reversemarginpar\marginpar{\hfill(#1 pt)\addtocounter{partialpoints}{#1}}%
-}
+ \leavevmode\reversemarginpar\marginpar{%
+ \hfill\@partialptprefix\@lpartialpt@delimiter#1\space\@usepartialptlabel{#1}\@rpartialpt@delimiter%
+ \addtocounter{partialpoints}{#1}}}%
\NewDocumentEnvironment{soluzione}{+b}{%
\ifsol%
\par\addvspace{\baselineskip}%