texlive[63331] Master/texmf-dist: verifiche (18may22)
commits+karl at tug.org
commits+karl at tug.org
Wed May 18 21:51:02 CEST 2022
Revision: 63331
http://tug.org/svn/texlive?view=revision&revision=63331
Author: karl
Date: 2022-05-18 21:51:01 +0200 (Wed, 18 May 2022)
Log Message:
-----------
verifiche (18may22)
Modified Paths:
--------------
trunk/Master/texmf-dist/doc/latex/verifiche/verifiche-example.pdf
trunk/Master/texmf-dist/doc/latex/verifiche/verifiche-example.tex
trunk/Master/texmf-dist/doc/latex/verifiche/verifiche.pdf
trunk/Master/texmf-dist/source/latex/verifiche/verifiche.dtx
trunk/Master/texmf-dist/tex/latex/verifiche/verifiche.sty
Modified: trunk/Master/texmf-dist/doc/latex/verifiche/verifiche-example.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/verifiche/verifiche-example.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/verifiche/verifiche-example.tex 2022-05-18 19:50:49 UTC (rev 63330)
+++ trunk/Master/texmf-dist/doc/latex/verifiche/verifiche-example.tex 2022-05-18 19:51:01 UTC (rev 63331)
@@ -6,9 +6,9 @@
\usepackage[margin=3cm]{geometry}
\usepackage{lipsum}
+
\begin{document}
%\renewcommand{\institutefont}{\huge}
-\renewcommand{\closedquestionitem}{$\bigcirc$}
\institute{Scuola superiore di Paperopoli}
\asyear[Anno accademico]{2019/2020}
@@ -85,7 +85,7 @@
\ptprefix{.../}
\ptdelimiters{[]}
\ptlabel{punti}
-\begin{esercizio}[pt=2]
+\begin{esercizio}[pt=2]\label{es:derivata}
Calcolare la seguente derivata:
\[
\frac{d e^x}{dx} =
@@ -114,7 +114,12 @@
Questa è la soluzione dell'esercizio \ref{es:ferropiuma} a pagina \pageref{es:ferropiuma}.
\end{soluzione}
+\begin{soluzione}[label={Soluzione dell'esercizio \ref{es:ferropiuma}}]
+Soluzione dell'esercizio a pagina \pageref{es:ferropiuma}.
+\end{soluzione}
+
+
\begin{esercizio}
La branca della fisica che si occupa dello studio di \emph{come} si muovono i corpi è detta: \inlinesol{cinematica.}
\end{esercizio}
@@ -134,7 +139,7 @@
\end{esercizio}
\begin{esercizio}
-Quali delle seguenti equazioni descrive il moto rettilineo uniforme?\par
+Quali delle seguenti equazioni descrive il moto rettilineo uniforme?
\begin{closedquestion}
\item $a=\SI{5}{\m\per\s\squared}$
\item[\checked] $x(t) = v t + x_0$
@@ -143,7 +148,19 @@
\end{closedquestion}
\end{esercizio}
+\renewcommand{\closedquestionitem}{$\bigcirc$}
+\renewcommand{\checkmarker}{$\times$\,}
\begin{esercizio}
+Quali delle seguenti equazioni descrive il moto rettilineo uniforme?\par
+\begin{closedquestion*}
+\item $a=\SI{5}{\m\per\s\squared}$
+\item[\checked] $x(t) = v t + x_0$
+\item $x(t) = t^3$
+\item $t = a^2$
+\end{closedquestion*}
+\end{esercizio}
+
+\begin{esercizio}
\lipsum[2]\\[1em]
\openquestion[height=5cm]{\lipsum[1]}
\end{esercizio}
@@ -176,17 +193,49 @@
}
\end{esercizio}
+\begin{esercizio}[pt=3]\label{es:ultimo}
+\makecolumn{.5\textwidth}{%
+ Dato il seguente grafico indicare sul grafico i punti di massimo globale.
+}
+\makecolumn{.4\textwidth}{
+\hspace*{\fill}
+\fbox{
+ \begin{tikzpicture}[baseline=(current bounding box.north)]
+ \draw[latex-latex] (3,0) node[right] {$x$} -- (0,0) -- (0,3) node[above]{$y$};
+ \draw plot[domain=0:3, samples=100] (\x, {2.5*exp(-\x^2)});
+ \inlinesol{\draw[fill, red] (0,2.5) circle (2pt);}
+ \end{tikzpicture}}
+\hspace*{\fill}
+\\[1em]
+\lipsum[2]
+}
+\end{esercizio}
-\begin{center}
-%\begin{tabular}{| l | c | c | c |}
-\begin{tabular}{ | l | >{\centering}p{2cm} | >{\centering}p{2cm} | >{\centering\arraybackslash}p{2cm} | }
+
+\vfill
+\centering
+\begin{tabular}{|c|c|c|c|c|c|c|}
\hline
-Esercizio & \ref{es:ferropiuma} & \ref{es:grav} & \ref{es:meccanica} \\\hline
-Punteggio totale & \ref{ptes at 2} & \ref{ptes at 4} & \ref{ptes at 7}\\\hline
-Punteggio & & & \\\hline
+Esercizio & Quesito \ref{es:ferropiuma}
+ & Quesito \ref{es:grav}
+ & Quesito \ref{es:meccanica}
+ & Quesito \ref{es:derivata}
+ & Quesito \ref{es:ultimo}
+ & Totale
+ \\
+ & \ref{ptes at 2} pt
+ & \ref{ptes at 4} pt
+ & \ref{ptes at 7} pt
+ & \ref{ptes at 9} pt
+ & \ref{ptes at 20} pt
+ &
+ \\
+\hline
+Punteggio &&&&&&\\[1em]
+\hline
+\multicolumn{4}{c}{}&&Voto&\\[1em]
+\cline{6-7}
\end{tabular}
-\end{center}
-\end{document}
-
+\end{document}
\ No newline at end of file
Modified: trunk/Master/texmf-dist/doc/latex/verifiche/verifiche.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/source/latex/verifiche/verifiche.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/verifiche/verifiche.dtx 2022-05-18 19:50:49 UTC (rev 63330)
+++ trunk/Master/texmf-dist/source/latex/verifiche/verifiche.dtx 2022-05-18 19:51:01 UTC (rev 63331)
@@ -16,7 +16,7 @@
%
% \iffalse
%<package>\NeedsTeXFormat{LaTeX2e}
-%<package>\ProvidesPackage{verifiche} [2022/03/10 v4.4 .dtx verifiche file]
+%<package>\ProvidesPackage{verifiche} [2022/03/10 v5.0 .dtx verifiche file]
%<*driver>
\documentclass{ltxdoc}
\usepackage[utf8]{inputenc}
@@ -28,7 +28,10 @@
morekeywords={\setlength, \institute, \asyear, \testtype, \instruction, \duration, \printheading,
\institutefont, \asyearfont, \testtypefont, \instructiondelimiter, \headerfont, \instrunctionfont,
\durationfont, \exerciselabel, \solutionfont, \solutionlabel, \diffsymb, \closedquestionitem,
- \inlinesol, \completetext, \truefalse, \openquestion, \linedopenquestion, \squaredopenquestion, \headercandidatenamelabel, \checked, \finderror, \textandimage, \partialpt, \ptprefix, \ptlabel, \partialptlabel, \partialptdelimiters, \ptdelimiters, \partialptprefix},
+ \inlinesol, \completetext, \truefalse, \openquestion, \linedopenquestion, \squaredopenquestion,
+ \headercandidatenamelabel, \checked, \finderror, \textandimage, \partialpt, \ptprefix, \ptlabel,
+ \partialptlabel, \partialptdelimiters, \ptdelimiters, \partialptprefix, \checkmaker, \ref, \tikz, \makecolumn,
+ \columnseparation},
keywordstyle=\color{blue},
escapeinside={*@}{@*},
inputencoding=utf8,
@@ -60,6 +63,7 @@
\EnableCrossrefs
\CodelineIndex
\RecordChanges
+\parindent0pt
\begin{document}
\DocInput{verifiche.dtx}
\end{document}
@@ -66,7 +70,7 @@
%</driver>
% \fi
%
-% \CheckSum{820}
+% \CheckSum{863}
% \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.}
@@ -77,6 +81,7 @@
% \changes{v4.2}{2021/08/18}{Solved truefalse issue in solutionsmode. Add noexercisept global option to hide the score of each exercise.}
% \changes{v4.3}{2022/02/10}{Move |parindent{0pt}| inside the environment.}
% \changes{v4.4}{2022/03/10}{Minor update. Fixed labels issues.}
+% \changes{v5.0}{2022/05/18}{Major update. Remove some unnecessary packages. Remove spurious space in closedquestion environment. Add a starred version of closedquestion environment. Add the possibility to add local label to soluzione environment. Add a new command: makecolumn.}
% \GetFileInfo{verifiche.sty}
% \DoNotIndex{\newcommand,\newenvironment,\def,\begin,\end,\par}
% \DoNotIndex{\DeclareOption,\ExecuteOptions,\ProcessOptions,\RequirePackage}
@@ -110,7 +115,7 @@
% \DoNotIndex{\or, \overset, \PackageError, \PackageWarning, \parindent, \pgfmathparse, \pgfmathresult}
% \DoNotIndex{\ProcessOptionsX, \protected at write, \ref, \refstepcounter, \reversemarginpar, \rule}
% \DoNotIndex{\scshape, setkeys, \sffamily, \sisetup, \spacedim, \string, \tikz, \underline, \usetikzlibrary}
-% \DoNotIndex{\val, \xout, \y, \usebox, \romannumeral, \@ifundefined, \ltx at zero, \rc at default, \rc at extract@, \chardef}
+% \DoNotIndex{\val, \xout, \y, \usebox, \romannumeral, \@ifundefined, \ltx at zero, \rc at default, \rc at extract@, \chardef, \llap}
%
%
% \title{Il pacchetto \textsf{verifiche}
@@ -545,13 +550,13 @@
%
%
%\vspace{1em}
-%\DescribeEnv{soluzione}\label{sec:solutions}L'ambiente |soluzione| racchiude al suo interno tutto il materiale utile ad essere visualizzato solo in presenza dell'\emph{opzione} |solutions| del pacchetto \textsf{verifiche}. Quando il pacchetto è in modalità "test" il contenuto dell'ambiente |soluzione| viene ignorato.
+%\DescribeEnv{soluzione}\label{sec:solutions}L'ambiente |soluzione| racchiude al suo interno tutto il materiale utile ad essere visualizzato solo in presenza dell'\emph{opzione} |solutions| del pacchetto \textsf{verifiche}. Quando il pacchetto è in modalità "test" il contenuto dell'ambiente |soluzione| viene ignorato. L'etichetta che introduce l'ambiente può essere modificata localmente tramite l'opzione |label|.
%
% \iffalse
%<*example>
% \fi
\begin{lstlisting}
-\begin{soluzione}
+\begin{soluzione}[label=*@\meta{label}@*]
...
\end{soluzione}
\end{lstlisting}
@@ -631,10 +636,19 @@
% \iffalse
%</example>
% \fi
-%Il comando produce due riquadri quadrati allineati con le lettere \texttt V e \texttt F; l'argomento obbligatorio richiede di indicare la lettera |V| o |F| al fine di poter realizzare un segno di spunta ($\checkmark$) sulla casella giusta nella modalità |solutions| del pacchetto.
+%Il comando produce due riquadri quadrati allineati con le lettere \texttt V e \texttt F; l'argomento obbligatorio richiede di indicare la lettera |V| o |F| al fine di poter realizzare un segno di spunta ($\checkmark$) sulla casella giusta nella modalità |solutions| del pacchetto. Tale simbolo può essere modificato ridefinendo il comando \DescribeMacro{\checkmaker}|\checkmaker|. Il pacchetto ammette degli argomenti opzionali che possono essere tutti quelli descritti nel pacchetto |enumitem|.
% \iffalse
%<*example>
% \fi
+\begin{lstlisting}
+\renewcommand{\checkmaker}*@\marg{...}@*
+\end{lstlisting}
+% \iffalse
+%</example>
+% \fi
+% \iffalse
+%<*example>
+% \fi
\example{Vero o Falso? \truefalse{V}}{
\solfalse Vero o Falso? \truefalse{V}\\
\soltrue Vero o Falso? \truefalse{V}}
@@ -643,7 +657,28 @@
% \fi
%
%
-%\DescribeEnv{closedquestion}Le domande a scelta multipla possono essere realizzate tramite l'ambiente |closedquestion|. Ogni opzione deve essere anticipata dal comando \DescribeMacro{\item}|\item| che realizza un quadrato davanti ad ogni voce. Queste poi vengono spaziate orizzontalmente in modo da riempire tutto lo spazio disponibile. Eventuali elenchi verticali possono essere realizzati introducendo a mano una nuova linea (|\\|). La soluzione (o le soluzioni) possono essere segnate tramite il comando \DescribeMacro{\checked}|\checked| posto come argomento opzionale del comando |\item| e che, nella modalità |solutions|, produce un segno di spunta ($\checkmark$) sulla casella selezionata.
+%\DescribeEnv{closedquestion}Le domande a scelta multipla possono essere realizzate tramite l'ambiente |closedquestion|. Questo comando genera un elenco verticale di elementi ciascuno introdotto dal comando \DescribeMacro{\item}|\item| che realizza un quadrato davanti ad ogni voce.
+% \iffalse
+%<*example>
+% \fi
+\begin{lstlisting}
+\begin{closedquestion}[...]
+\item ...
+\end{closedquestion}
+\end{lstlisting}
+% \iffalse
+%</example>
+% \fi
+%La soluzione (o le soluzioni) possono essere segnate tramite il comando \DescribeMacro{\checked}|\checked| posto come argomento opzionale del comando |\item| e che, nella modalità |solutions|, produce un segno di spunta ($\checkmark$) sulla casella selezionata. Anche in questo caso tale simbolo può essere modificato ridefinendo il comando |\checkmaker|. Il pacchetto ammette degli argomenti opzionali che possono essere tutti quelli descritti nel pacchetto |enumitem|.
+% \iffalse
+%<*example>
+% \fi
+\begin{lstlisting}
+\renewcommand{\checkmaker}*@\marg{...}@*
+\end{lstlisting}
+% \iffalse
+%</example>
+% \fi
%
% \iffalse
%<*example>
@@ -651,7 +686,7 @@
\example
{\begin{closedquestion}
\item Primo
-\item[\checked] Secondo\\
+\item[\checked] Secondo
\item Terzo
\item Quarto
\end{closedquestion}}
@@ -658,7 +693,7 @@
{\begin{closedquestion}
\item Primo
\item[\checked] Secondo
-\end{closedquestion}\\
+\end{closedquestion}
\begin{closedquestion}
\item Terzo
\item Quarto
@@ -668,6 +703,20 @@
% \fi
%
%
+% L'ambiente \DescribeMacro{closeduestion}|closeduestion*| è analogo al precedente, fatto salvo che è adibito a produrre elenchi in linea; gli elementi vengono spaziati orizzontalmente in modo da riempire tutto lo spazio disponibile. Anche in questo caso i comandi del pacchetto |enumitem| possono essere usati tra le opzioni dell'ambiente.
+% \iffalse
+%<*example>
+% \fi
+\begin{lstlisting}
+\begin{closedquestion*}[...]
+\item ...
+\end{closedquestion*}
+\end{lstlisting}
+% \iffalse
+%</example>
+% \fi
+%
+%
%\DescribeMacro{\openquestion}Il comando produce una base di supporto per la scrittura, ovvero delle linee o dei quadretti. La sintassi del comando è la seguente:
% \iffalse
%<*example>
@@ -766,6 +815,39 @@
%</example>
% \fi
%
+%
+%\vspace{1em}
+%\DescribeMacro{\makecolumn} Il pacchetto |verifiche| definisce anche un proprio comando per produrre del testo in colonna tramite il comando |\makecolumn| che ha la seguente sintassi:
+% \iffalse
+%<*example>
+% \fi
+\begin{lstlisting}
+\makecolumn*@\marg{width}\marg{text}@*
+\end{lstlisting}
+% \iffalse
+%</example>
+% \fi
+% La larghezza è controllata tramite l'argomento opzionale \meta{width}, mentre il testo da mettere in colonne può risiedere, anche con paragrafi, entro il campo \meta{text}. La spaziatura tra le colonne può essere modificata ridefinendo la lunghezza |\columnseparation| (di default viene inizializzata col valore |\hfill|).
+% \iffalse
+%<*example>
+% \fi
+\begin{lstlisting}
+\setlength{\columnseparation}*@\marg{dim}@*
+\end{lstlisting}
+% \iffalse
+%</example>
+% \fi
+% \iffalse
+%<*example>
+% \fi
+\example
+{\makecolumn{.3\textwidth}{Colonna 1}
+\makecolumn{.3\textwidth}{Colonna 2}}
+{\makecolumn{2.5cm}{Colonna 1} \makecolumn{2.5cm}{Colonna 2}}% \iffalse
+%</example>
+% \fi
+%
+%
%\section{Personalizzazione}
%Il pacchetto prevede un certo numero di comandi definiti al fine di gestire l'aspetto del documento finale.
%\subsection*{Font}
@@ -979,7 +1061,6 @@
\RequirePackage{tikz}
\RequirePackage{booktabs}
\RequirePackage[normalem]{ulem}
-\RequirePackage{xstring}
% \end{macrocode}
%
%
@@ -1061,10 +1142,12 @@
\newlength{\classrulerlength}
\newlength{\daterulerlength}
\newlength{\ptrulerlength}
+\newlength{\columnseparation}
\setlength{\candidatenamerulerlength}{.35\textwidth}
\setlength{\classrulerlength}{.1\textwidth}
\setlength{\daterulerlength}{.15\textwidth}
\setlength{\ptrulerlength}{1cm}
+\setlength{\columnseparation}{\fill}
% \end{macrocode}
%
%\subsection{Labels}
@@ -1074,34 +1157,34 @@
%Some labels are define as a variable in order to leave the user the possibility of customization the predefine texts.
%If the package \textsf{babel} or \textsf{polyglossia} is loaded with the italian language specify, than the predefine labels are redefine:
% \begin{macrocode}
-\@ifpackageloaded{babel}{%
- \addto\captionsitalian{%
- \def\@verifiche at durationlabeldefault{Tempo della prova:}%
- \def\@verifiche at asyearlabeldefault{Anno scolastico}%
- \def\@verifiche at headercandidatenamelabel{Nome e Cognome}%
- \def\@verifiche at headerclasslabel{Classe}%
- \def\@verifichhe at headerdatelabel{Data}%
- \def\@verifiche at exerciselabel{Quesito}%
- \def\@verifiche at solutionlabel{Soluzione}%
- }}{%
-\@ifpackageloaded{polyglossia}{%
- \addto\captionsitalian{%
- \def\@verifiche at durationlabeldefault{Tempo della prova:}%
- \def\@verifiche at asyearlabeldefault{Anno scolastico}%
- \def\@verifiche at headercandidatenamelabel{Nome e Cognome}%
- \def\@verifiche at headerclasslabel{Classe}%
- \def\@verifichhe at headerdatelabel{Data}%
- \def\@verifiche at exerciselabel{Quesito}%
- \def\@verifiche at solutionlabel{Soluzione}%
- }}{
- \def\@verifiche at durationlabeldefault{Time:}%
- \def\@verifiche at asyearlabeldefault{School year}%
- \def\@verifiche at headercandidatenamelabel{Name and Surname}%
- \def\@verifiche at headerclasslabel{Class}%
- \def\@verifichhe at headerdatelabel{Date}%
- \def\@verifiche at exerciselabel{Exercise}%
- \def\@verifiche at solutionlabel{Solution}%
- }}%
+\newcommand{\@verifiche at durationlabeldefault}{Time:}%
+\newcommand{\@verifiche at asyearlabeldefault}{School year}%
+\newcommand{\@verifiche at headercandidatenamelabel}{Name and Surname}%
+\newcommand{\@verifiche at headerclasslabel}{Class}%
+\newcommand{\@verifichhe at headerdatelabel}{Date}%
+\newcommand{\@verifiche at exerciselabel}{Exercise}%
+\newcommand{\@verifiche at solutionlabel}{Solution}%
+\newcommand{\@verifiche at Tletter}{T}%
+\newcommand{\@verifiche at Fletter}{F}%
+%
+\newcommand{\italiandictiornary}{%
+ \renewcommand{\@verifiche at durationlabeldefault}{Tempo della prova:}%
+ \renewcommand{\@verifiche at asyearlabeldefault}{Anno scolastico}%
+ \renewcommand{\@verifiche at headercandidatenamelabel}{Nome e Cognome}%
+ \renewcommand{\@verifiche at headerclasslabel}{Classe}%
+ \renewcommand{\@verifichhe at headerdatelabel}{Data}%
+ \renewcommand{\@verifiche at exerciselabel}{Quesito}%
+ \renewcommand{\@verifiche at solutionlabel}{Soluzione}%
+ \renewcommand{\@verifiche at Tletter}{V}%
+ \renewcommand{\@verifiche at Fletter}{F}%
+}%
+\@ifpackageloaded{babel}{% if babel is loaded
+ \addto\captionsitalian{\italiandictiornary}%
+}{%else if polyglossia is loaded
+ \@ifpackageloaded{polyglossia}{%
+ \addto\captionsitalian{\italiandictiornary}%
+ }{}%
+}%
% \end{macrocode}
% \begin{macrocode}
\newcommand{\@durationlabeldefault}{\@verifiche at durationlabeldefault}%
@@ -1259,6 +1342,13 @@
\@defineptdelimiter#1}
% \end{macrocode}
%\iffalse
+%% checkmaker
+%\fi
+% \begin{macrocode}
+\newcommand{\checkmarker}{$\checkmark$}%
+\newcommand{\verifiche at checkmarker}{\bgroup\ifsolutionscolor\color{\solutionscolor}\fi\checkmarker\egroup}%
+% \end{macfrocode}
+%\iffalse
%% convert ref to num
%\fi
% \begin{macrocode}
@@ -1436,13 +1526,23 @@
%\begin{environment}{soluzione}
%The main element for the "solutions" mode is the |soluzione| environment.
% \begin{macrocode}
-\NewDocumentEnvironment{soluzione}{+b}{%
+\define at key{soluzione}{label}[\solutionlabel]{%
+ \def\verifiche at tempsoluzionelabel{#1}%
+}
+\newcommand{\verifiche at solutionlabel}{%
+ \ifdefined\verifiche at tempsoluzionelabel\verifiche at tempsoluzionelabel%
+ \else\solutionlabel\fi%
+}%
+\NewDocumentEnvironment{soluzione}{o +b}{%
+ \IfValueT{#1}{\setkeys{soluzione}{#1}}%
\ifsol%
\par\addvspace{\baselineskip}%
- {\noindent\bfseries \solutionlabel}%
+ {\noindent\bfseries%
+ \ifsolutionscolor\color{\solutionscolor}\fi%
+ \verifiche at solutionlabel}%
\par\nobreak\noindent\ignorespaces%
\setlength\parindent{0pt}%no parindent
- \solutionfont #1%
+ \solutionfont #2%
\fi%
}{%
\ifsol%
@@ -1485,16 +1585,21 @@
%The |\truefalse| is generated via |\tikz| macro.
% \begin{macrocode}
\newcommand{\truefalse}[1]{%
- \tikz[baseline=-.8ex]{%
- %true part
- \node[draw, rectangle, minimum size=1.5em] {V};%
- \ifsol\IfSubStr{#1}{V}{\node[inner sep=0pt, shift={(1pt,1pt)}]{%
- $\Large\ifsolutionscolor\color{\solutionscolor}\fi\checkmark$}}{};\fi%
- %false part
- \node[xshift=1cm, draw, rectangle, minimum size=1.5em]{F};%
- \ifsol\IfSubStr{#1}{F}{\node[inner sep=0pt, xshift=1cm, shift={(1pt,1pt)}]{%
- $\Large\ifsolutionscolor\color{\solutionscolor}\fi\checkmark$}}{};\fi%
- }%
+ %True
+ \fbox{\@verifiche at Tletter}%
+ \ifsol\llap{%
+ \if#1\@verifiche at Tletter%
+ \Large\verifiche at checkmarker%
+ \fi}%
+ \fi%
+ \quad%
+ %False
+ \fbox{\@verifiche at Fletter}%
+ \ifsol\llap{%
+ \if#1\@verifiche at Fletter%
+ \Large\verifiche at checkmarker%
+ \fi}%
+ \fi%%
}
% \end{macrocode}
%\end{macro}
@@ -1517,20 +1622,26 @@
%\begin{environment}{closedquestion}
%The |closedquestion| environment define a new list whose item elements are preceded by square symbol, and every item is |\hfill| spaced. The |\checked| symbol is controlled and generated (in the "solutions mode") via |\tikz|.
% \begin{macrocode}
-\newlist{crocette}{itemize*}{1}%
-\setlist[crocette]{label=\closedquestionitem, itemjoin={\hfill}}%
+\newlist{crocette}{itemize}{1}%
+\newlist{crocette*}{itemize*}{1}%
+\setlist[crocette]{label=\closedquestionitem, leftmargin=*, parsep=0pt }%
+\setlist[crocette*]{label=\closedquestionitem, itemjoin={\hfill}}%
\newcommand{\checked}{%
\ifsol%
- \closedquestionitem\tikz[remember picture, overlay, baseline=-1ex, xshift=-.7ex]
- {\node{\ifsolutionscolor\color{\solutionscolor}\fi$\checkmark$};}
- \else
- \closedquestionitem
+ \closedquestionitem\llap{\verifiche at checkmarker\hspace{-1pt}}%
+ \else%
+ \closedquestionitem%
\fi}
-\NewDocumentEnvironment{closedquestion}{+b}{%
- \begin{crocette}#1%
+\NewDocumentEnvironment{closedquestion}{O{}+b}{%
+ \begin{crocette}[#1]#2%
}{%
- \end{crocette}
-}
+ \end{crocette}%
+}%
+\NewDocumentEnvironment{closedquestion*}{O{} +b}{%
+ \begin{crocette*}[#1]#2%
+}{%
+ \end{crocette*}%
+}%
% \end{macrocode}
%\end{environment}
@@ -1602,5 +1713,17 @@
}
% \end{macrocode}
%\end{macro}
+%
+%
+%\begin{macro}{\makecolumn}
+%The |\makecolumn| give the possibility to create multiple column in the document.
+% \begin{macrocode}
+\NewDocumentCommand{\makecolumn}{O{t} m +m}{%
+ \parbox[#1]{#2}{#3}%
+ \@ifnextchar\makecolumn{\hspace*{\columnseparation}}{}%
+}%
+% \end{macrocode}
+%\end{macro}
+%
% \Finale
\endinput
\ No newline at end of file
Modified: trunk/Master/texmf-dist/tex/latex/verifiche/verifiche.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/verifiche/verifiche.sty 2022-05-18 19:50:49 UTC (rev 63330)
+++ trunk/Master/texmf-dist/tex/latex/verifiche/verifiche.sty 2022-05-18 19:51:01 UTC (rev 63331)
@@ -15,7 +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} [2022/03/10 v4.4 .dtx verifiche file]
+\ProvidesPackage{verifiche} [2022/03/10 v5.0 .dtx verifiche file]
\RequirePackage{xparse}
\RequirePackage{xkeyval}
\RequirePackage{amsmath}
@@ -28,7 +28,6 @@
\RequirePackage{tikz}
\RequirePackage{booktabs}
\RequirePackage[normalem]{ulem}
-\RequirePackage{xstring}
%%Forse si può cancellare questo
\usetikzlibrary{calc,shapes.geometric,patterns,positioning,angles,quotes}
\sisetup{
@@ -75,39 +74,40 @@
\newlength{\classrulerlength}
\newlength{\daterulerlength}
\newlength{\ptrulerlength}
+\newlength{\columnseparation}
\setlength{\candidatenamerulerlength}{.35\textwidth}
\setlength{\classrulerlength}{.1\textwidth}
\setlength{\daterulerlength}{.15\textwidth}
\setlength{\ptrulerlength}{1cm}
+\setlength{\columnseparation}{\fill}
%%labels
-\@ifpackageloaded{babel}{%
- \addto\captionsitalian{%
- \def\@verifiche at durationlabeldefault{Tempo della prova:}%
- \def\@verifiche at asyearlabeldefault{Anno scolastico}%
- \def\@verifiche at headercandidatenamelabel{Nome e Cognome}%
- \def\@verifiche at headerclasslabel{Classe}%
- \def\@verifichhe at headerdatelabel{Data}%
- \def\@verifiche at exerciselabel{Quesito}%
- \def\@verifiche at solutionlabel{Soluzione}%
- }}{%
-\@ifpackageloaded{polyglossia}{%
- \addto\captionsitalian{%
- \def\@verifiche at durationlabeldefault{Tempo della prova:}%
- \def\@verifiche at asyearlabeldefault{Anno scolastico}%
- \def\@verifiche at headercandidatenamelabel{Nome e Cognome}%
- \def\@verifiche at headerclasslabel{Classe}%
- \def\@verifichhe at headerdatelabel{Data}%
- \def\@verifiche at exerciselabel{Quesito}%
- \def\@verifiche at solutionlabel{Soluzione}%
- }}{
- \def\@verifiche at durationlabeldefault{Time:}%
- \def\@verifiche at asyearlabeldefault{School year}%
- \def\@verifiche at headercandidatenamelabel{Name and Surname}%
- \def\@verifiche at headerclasslabel{Class}%
- \def\@verifichhe at headerdatelabel{Date}%
- \def\@verifiche at exerciselabel{Exercise}%
- \def\@verifiche at solutionlabel{Solution}%
- }}%
+\newcommand{\@verifiche at durationlabeldefault}{Time:}%
+\newcommand{\@verifiche at asyearlabeldefault}{School year}%
+\newcommand{\@verifiche at headercandidatenamelabel}{Name and Surname}%
+\newcommand{\@verifiche at headerclasslabel}{Class}%
+\newcommand{\@verifichhe at headerdatelabel}{Date}%
+\newcommand{\@verifiche at exerciselabel}{Exercise}%
+\newcommand{\@verifiche at solutionlabel}{Solution}%
+\newcommand{\@verifiche at Tletter}{T}%
+\newcommand{\@verifiche at Fletter}{F}%
+\newcommand{\italiandictiornary}{%
+ \renewcommand{\@verifiche at durationlabeldefault}{Tempo della prova:}%
+ \renewcommand{\@verifiche at asyearlabeldefault}{Anno scolastico}%
+ \renewcommand{\@verifiche at headercandidatenamelabel}{Nome e Cognome}%
+ \renewcommand{\@verifiche at headerclasslabel}{Classe}%
+ \renewcommand{\@verifichhe at headerdatelabel}{Data}%
+ \renewcommand{\@verifiche at exerciselabel}{Quesito}%
+ \renewcommand{\@verifiche at solutionlabel}{Soluzione}%
+ \renewcommand{\@verifiche at Tletter}{V}%
+ \renewcommand{\@verifiche at Fletter}{F}%
+}%
+\@ifpackageloaded{babel}{% if babel is loaded
+ \addto\captionsitalian{\italiandictiornary}%
+}{%else if polyglossia is loaded
+ \@ifpackageloaded{polyglossia}{%
+ \addto\captionsitalian{\italiandictiornary}%
+ }{}%
+}%
\newcommand{\@durationlabeldefault}{\@verifiche at durationlabeldefault}%
\newcommand{\@asyearlabeldefault}{\@verifiche at asyearlabeldefault}%
\newcommand{\headercandidatenamelabel}{\@verifiche at headercandidatenamelabel}%
@@ -202,6 +202,9 @@
\renewcommand{\@rpt at delimiter}{#2}}
\newcommand{\ptdelimiters}[1]{%
\@defineptdelimiter#1}
+%% checkmaker
+\newcommand{\checkmarker}{$\checkmark$}%
+\newcommand{\verifiche at checkmarker}{\bgroup\ifsolutionscolor\color{\solutionscolor}\fi\checkmarker\egroup}%
%% convert ref to num
\newcommand*{\convertreftonum}[1]{%
\romannumeral
@@ -320,13 +323,23 @@
\@rpartialpt at delimiter%
\addtocounter{partialpoints}{#1}}%
\fi}%
-\NewDocumentEnvironment{soluzione}{+b}{%
+\define at key{soluzione}{label}[\solutionlabel]{%
+ \def\verifiche at tempsoluzionelabel{#1}%
+}
+\newcommand{\verifiche at solutionlabel}{%
+ \ifdefined\verifiche at tempsoluzionelabel\verifiche at tempsoluzionelabel%
+ \else\solutionlabel\fi%
+}%
+\NewDocumentEnvironment{soluzione}{o +b}{%
+ \IfValueT{#1}{\setkeys{soluzione}{#1}}%
\ifsol%
\par\addvspace{\baselineskip}%
- {\noindent\bfseries \solutionlabel}%
+ {\noindent\bfseries%
+ \ifsolutionscolor\color{\solutionscolor}\fi%
+ \verifiche at solutionlabel}%
\par\nobreak\noindent\ignorespaces%
\setlength\parindent{0pt}%no parindent
- \solutionfont #1%
+ \solutionfont #2%
\fi%
}{%
\ifsol%
@@ -350,16 +363,21 @@
$\overset{\relax}{\underline{\hspace{#1}}}$%
\fi}%
\newcommand{\truefalse}[1]{%
- \tikz[baseline=-.8ex]{%
- %true part
- \node[draw, rectangle, minimum size=1.5em] {V};%
- \ifsol\IfSubStr{#1}{V}{\node[inner sep=0pt, shift={(1pt,1pt)}]{%
- $\Large\ifsolutionscolor\color{\solutionscolor}\fi\checkmark$}}{};\fi%
- %false part
- \node[xshift=1cm, draw, rectangle, minimum size=1.5em]{F};%
- \ifsol\IfSubStr{#1}{F}{\node[inner sep=0pt, xshift=1cm, shift={(1pt,1pt)}]{%
- $\Large\ifsolutionscolor\color{\solutionscolor}\fi\checkmark$}}{};\fi%
- }%
+ %True
+ \fbox{\@verifiche at Tletter}%
+ \ifsol\llap{%
+ \if#1\@verifiche at Tletter%
+ \Large\verifiche at checkmarker%
+ \fi}%
+ \fi%
+ \quad%
+ %False
+ \fbox{\@verifiche at Fletter}%
+ \ifsol\llap{%
+ \if#1\@verifiche at Fletter%
+ \Large\verifiche at checkmarker%
+ \fi}%
+ \fi%%
}
\newcommand{\finderror}[2]{%
\ifsol%
@@ -368,20 +386,26 @@
#1%
\fi%
}
-\newlist{crocette}{itemize*}{1}%
-\setlist[crocette]{label=\closedquestionitem, itemjoin={\hfill}}%
+\newlist{crocette}{itemize}{1}%
+\newlist{crocette*}{itemize*}{1}%
+\setlist[crocette]{label=\closedquestionitem, leftmargin=*, parsep=0pt }%
+\setlist[crocette*]{label=\closedquestionitem, itemjoin={\hfill}}%
\newcommand{\checked}{%
\ifsol%
- \closedquestionitem\tikz[remember picture, overlay, baseline=-1ex, xshift=-.7ex]
- {\node{\ifsolutionscolor\color{\solutionscolor}\fi$\checkmark$};}
- \else
- \closedquestionitem
+ \closedquestionitem\llap{\verifiche at checkmarker\hspace{-1pt}}%
+ \else%
+ \closedquestionitem%
\fi}
-\NewDocumentEnvironment{closedquestion}{+b}{%
- \begin{crocette}#1%
+\NewDocumentEnvironment{closedquestion}{O{}+b}{%
+ \begin{crocette}[#1]#2%
}{%
- \end{crocette}
-}
+ \end{crocette}%
+}%
+\NewDocumentEnvironment{closedquestion*}{O{} +b}{%
+ \begin{crocette*}[#1]#2%
+}{%
+ \end{crocette*}%
+}%
\define at key{openquestion}{width}[\linewidth]{\def\openquestionwidth{#1}}
\define at key{openquestion}{height}[19cm]{\def\openquestionheight{#1}}
@@ -434,6 +458,10 @@
{#4}
\end{minipage}
}
+\NewDocumentCommand{\makecolumn}{O{t} m +m}{%
+ \parbox[#1]{#2}{#3}%
+ \@ifnextchar\makecolumn{\hspace*{\columnseparation}}{}%
+}%
\endinput
%%
%% End of file `verifiche.sty'.
More information about the tex-live-commits
mailing list.