1

Following the comments of my previous question What is the limit number of \label in a document?

After analyzing the comments (@UlrikeFischer, @DavidCarlisle) on memory usage, especially the idea of preventing write 4000 lines in the auxiliary file and seeing the possibility that the science department will join the project and add some 4000 more lines. I have decided to change strategy by changing the use of label/ref.

My idea is to change (or adapt) the command \keych (which is basically a custom label) for xparse command \appenddata from Storing an array of strings in a command

Do not need to abuse label/ref for what i want, just keep the values and do not need to have reference to them.

I have tried to make some attempts with the use of lists, but, the solution that I tried to adapt works locally and I have not been able to achieve it (expl3 is very advanced for me:).

The MWE :

% file mchoice.tex
% arara: latex: {draft: yes}
% arara: latex
% arara: dvips
% arara: ps2pdf
% arara: clean: { files:[mchoice.aux, mchoice.log, mchoice.out,mchoice.dvi,mchoice.ps] }
\documentclass{article}
\usepackage{enumitem}
\usepackage{multicol}
\usepackage{pgffor}
\usepackage[colorlinks]{hyperref}
\usepackage{refcount}
\usepackage{tcolorbox}
\tcbuselibrary{many}

% Set key for multicols in enumitem
\SetEnumitemKey{columns}{before=\begin{multicols}{#1},after=\end{multicols}}%

% Custom label for save choice key
\makeatletter
\newcommand{\customlabel}[2]{%
   \protected@write \@auxout {}{\string \newlabel {#1}{{#2}{\thepage}{#2}{#1}{}} }%
   \hypertarget{#1}{}%
}
\makeatother

% Create a environment mchoice, scope enumerate and \keych
\NewDocumentEnvironment{mchoice}{m}{%
\label{#1}
% values for multicols 
\setlength{\multicolsep}{5.0pt plus 2.0pt minus 1.5pt}
% values for enumitem
\setenumerate{parsep=3.5pt,partopsep=3.5pt,topsep=3.5pt,labelsep=5pt, leftmargin=*, itemsep=0pt,widest=80}%
\setenumerate[1]{labelsep=5pt,itemsep=1pt,label=\arabic*.}
\setenumerate[2]{leftmargin=16pt,nosep,itemsep=0pt,label=\Alph*)}
% Command to save key choice
\NewDocumentCommand\keych{o}{%
\IfNoValueTF{##1}%
    {\customlabel{#1:\arabic{enumi}}{\Alph{enumii}}}%
    {\customlabel{#1:\arabic{enumi}}{##1}}}% close \keych
}%
{%
\customlabel{max:#1}{\arabic{enumi}}
}% close mchoice

% Create a command to all key for test
% #1 : pass to tcolorbox
% #2 : name
% #3 : ref
% #4 : columns
\newcounter{last}
\DeclareTotalTColorBox{\keytest}{ O{} m m O{4}}
{ size=small,top=-1mm, left=0mm,width=\columnwidth,%
  adjusted title=center,halign title=center,title filled,fontupper=\small,%
  fonttitle=\small\sffamily,adjusted title={#2},center title,#1}
  {% 
  \begin{enumerate}[columns=#4,leftmargin=15pt,labelsep=3pt,font=\small,nosep,widest=25]%
  \small
  \setlength{\columnsep}{0pt} 
   \setcounterref{last}{max:#3}
   \foreach \x in {1,...,\value{last}} {
    \item \ref{#3:\x}
    }
  \end{enumerate}
}%

\begin{document}
\section{National Prov}

\begin{mchoice}{paa-1985-a}
\begin{center}
\textbf{PAA 1985 (A)}
\end{center}
\begin{enumerate}
\item First type of questions
    \begin{enumerate}% 
        \item value 
        \item value 
        \item value
        \item correct \keych
        \item value 
    \end{enumerate}
\item Second type of questions
        \begin{enumerate}[leftmargin=3pc,label=\Roman*.]
            \item $2\alpha+2\delta=90^{\circ}$
            \item $\alpha=\delta$ 
            \item $\angle EDF=45^{\circ}$
        \end{enumerate}
\begin{enumerate}[columns=2]% 
        \item I only 
        \item II only \keych
        \item I and II only
        \item I and III only 
        \item I, II, and III
\end{enumerate}
\item Third type of questions
        \begin{enumerate}[leftmargin=3pc,label=(\arabic*)]
            \item $2\alpha+2\delta=90^{\circ}$
            \item $\angle EDF=45^{\circ}$
        \end{enumerate}
    \begin{enumerate}[columns=2]%  
        \item Altenativa A 
        \item Altenativa B \keych
        \item Altenativa C
        \item Altenativa D
        \item Altenativa E 
    \end{enumerate}
\item Fourth type of questions (these need manual tuning for alternatives, 
      usually carrying pictures or tables)
\begin{center}
\noindent
\hspace*{0.75cm}\includegraphics[scale=0.15]{example-image-b}
\end{center}

\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline A)
\end{minipage}
\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline B)
\end{minipage}
\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline C)
\end{minipage}
\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline D) \keych[D]
\end{minipage}
\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline E)
\end{minipage}
\item Fifth type of questions, a problem with numerical response \keych[\$2]

\end{enumerate}
\end{mchoice}


\begin{mchoice}{paa-1985-b}
\begin{center}
\textbf{PAA 1985 (B)}
\end{center}
\begin{enumerate}
\item First type of questions
    \begin{enumerate}% 
        \item value 
        \item correct \keych
        \item value 
        \item value
        \item value 
    \end{enumerate}
\item Second type of questions
        \begin{enumerate}[leftmargin=3pc,label=\Roman*.]
            \item $2\alpha+2\delta=90^{\circ}$
            \item $\alpha=\delta$ 
            \item $\angle EDF=45^{\circ}$
        \end{enumerate}
\begin{enumerate}[columns=2]% 
        \item I only 
        \item II only 
        \item I and II only
        \item I and III only \keych
        \item I, II, and III
\end{enumerate}
\item Third type of questions
        \begin{enumerate}[leftmargin=3pc,label=(\arabic*)]
            \item $2\alpha+2\delta=90^{\circ}$
            \item $\angle EDF=45^{\circ}$
        \end{enumerate}
    \begin{enumerate}[columns=2]%  
        \item Altenativa A 
        \item Altenativa B 
        \item Altenativa C
        \item Altenativa D \keych
        \item Altenativa E 
    \end{enumerate}
\item Fourth type of questions (these need manual tuning for alternatives, 
      usually carrying pictures or tables)
\begin{center}
\noindent
\hspace*{0.75cm}\includegraphics[scale=0.15]{example-image-b}
\end{center}

\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline A)
\end{minipage}
\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline B)
\end{minipage}
\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline C)
\end{minipage}
\begin{minipage}{0.2\textwidth} \centering
\includegraphics[scale=0.15]{example-image-a}\newline D) 
\end{minipage}
\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline E) \keych[E]
\end{minipage}
\item Fifth type of questions, a problem with numerical response \keych[\$3]

\end{enumerate}
\end{mchoice}

\section{Answer key}
\begin{multicols}{2}
\setlength{\columnsep}{0pt} 
\keytest{PAA 1985 (form A)}{paa-1985-a}[5]
\keytest{PAA 1985 (form B)}{paa-1985-b}[5]
\end{multicols}
\end{document} 

Grateful again

EDIT

In addition to the brilliant answer given by Master David C., I enclose an alternative answer:

% !file: mchoice.tex
% arara: pdflatex: {draft: yes}
% arara: clean: { files:[mchoice.aux, mchoice.log, mchoice.out] }
\documentclass{article}
\usepackage{enumitem}
\usepackage{multicol}
\usepackage{pgffor}
\usepackage[colorlinks]{hyperref}
\usepackage{tcolorbox}
\tcbuselibrary{many}

% Set key for multicols in enumitem
\SetEnumitemKey{columns}{before=\begin{multicols}{#1},after=\end{multicols}}%

% Some definition
\newtheorem{theorem}{Theorem}
\newtheorem{exercise}[theorem]{Exercise}

% Custom label for save choice key and hypertarget :)
\makeatletter
\newcommand{\customlabel}[2]{%
   \expandafter\xdef\csname#1\endcsname{#2}%
   \hypertarget{#1}{}%
}
\makeatother

% Adapted from https://tex.stackexchange.com/a/364763/7832
\ExplSyntaxOn
% Reporter macro, is expandable
\cs_new:Npn \reportnumberofseqitems #1{%
 \seq_count:c {l_bcp_data_#1_seq}%
}
\NewDocumentCommand{\storedata}{mm}
  {
   \bcp_store_data:nn { #1 } { #2 }
  }

\NewDocumentCommand{\appenddata}{mm}
 {
  \bcp_append_data:nn { #1 } { #2 }
 }

\DeclareExpandableDocumentCommand{\getdata}{O{1}m}
 {
  \bcp_get_data:nn { #1 } { #2 }
 }

\cs_new_protected:Npn \bcp_store_data:nn #1 #2
 {
  % create the sequence if it doesn't exist or clear it if it exists
  \seq_if_exist:cTF { l_bcp_data_#1_seq }
   { \seq_new:c { l_bcp_data_#1_seq } }
   { \seq_gclear:c { l_bcp_data_#1_seq } }
  % append the items
  \__bcp_append_data:nn { #1 } { #2 }
 }

\cs_new_protected:Npn \bcp_append_data:nn #1 #2
 {
  % create the sequence if it doesn't exist, do nothing if it exists
  \seq_if_exist:cF { l_bcp_data_#1_seq }
   { \seq_new:c { l_bcp_data_#1_seq } }
  % append the items
  \__bcp_append_data:nn { #1 } { #2 }
 }

\cs_new_protected:Npn \__bcp_append_data:nn #1 #2
 {
  % append items one at a time
  \tl_map_inline:nn { #2 }
   {
    \seq_gput_right:cn { l_bcp_data_#1_seq } { ##1 }
   }
 }

\cs_new:Npn \bcp_get_data:nn #1 #2
 {
  % retrieve the requested item
  \seq_item:cn { l_bcp_data_#2_seq } { #1 }
 }
\ExplSyntaxOff

% Create a environment mchoice, scope enumerate and \keych
\NewDocumentEnvironment{mchoice}{m}{%
% values for multicols 
\setlength{\multicolsep}{5.0pt plus 2.0pt minus 1.5pt}
% values for enumitem
\setenumerate{parsep=3.5pt,partopsep=3.5pt,topsep=3.5pt,labelsep=5pt, leftmargin=*, itemsep=0pt,widest=80}%
\setenumerate[1]{labelsep=5pt,itemsep=1pt,label=\arabic*.}
\setenumerate[2]{leftmargin=16pt,nosep,itemsep=0pt,label=\Alph*)}
% Command to save key choice
\NewDocumentCommand\keych{o}{%
\IfNoValueTF{##1}%
    {
        \customlabel{#1:\arabic{enumi}}{\Alph{enumii}}\appenddata{#1}{{\Alph{enumii}}}
        }%
    {
        \customlabel{#1:\arabic{enumi}}{XXX}\appenddata{#1}{{##1}}
        } % close custom
        }% close \keych
}%
{%
}% close mchoice

% Create a environment to encapsulate short answer
% #1 : short answer
\NewDocumentEnvironment{myenumerate}{m}{%
\NewDocumentCommand\sol{m}{%
    \appenddata{#1}{{##1}}% 
    }% close \sol{
}%
{%
}% close myenumerate


% Create a command to all key/answer for test
% #1 : pass to tcolorbox
% #2 : name
% #3 : list/ref
% #4 : columns
\DeclareTotalTColorBox{\keytest}{ O{} m m O{4}}
{ colback=white,size=small,top=0mm,bottom=1.5mm, left=0mm,width=\columnwidth,title filled,%
  fontupper=\small,fonttitle=\small\sffamily,adjusted title={#2},center title,#1}
  {% 
  \begin{enumerate}[columns=#4,leftmargin=15pt,labelsep=3pt,font=\small,nosep,widest=25]%
  \small
  \setlength{\columnsep}{0pt}%
   \edef\tmp{\noexpand\foreach \noexpand\x in {1,...,\reportnumberofseqitems{#3}}      }%
   \tmp{%
    \item \hyperlink{#3:\x}{\getdata[\x]{#3}}%
    }
  \end{enumerate}%
}%

\begin{document}
\section{National Prov}

\begin{mchoice}{paa-1985-a}
\begin{center}
\textbf{PAA 1985 (A)}
\end{center}
\begin{enumerate}
\item First type of questions
    \begin{enumerate}% 
        \item value 
        \item value 
        \item value
        \item correct \keych
        \item value 
    \end{enumerate}
\item Second type of questions
        \begin{enumerate}[leftmargin=3pc,label=\Roman*.]
            \item $2\alpha+2\delta=90^{\circ}$
            \item $\alpha=\delta$ 
            \item $\angle EDF=45^{\circ}$
        \end{enumerate}
\begin{enumerate}[columns=2]% 
        \item I only 
        \item II only \keych
        \item I and II only
        \item I and III only 
        \item I, II, and III
\end{enumerate}
\item Third type of questions
        \begin{enumerate}[leftmargin=3pc,label=(\arabic*)]
            \item $2\alpha+2\delta=90^{\circ}$
            \item $\angle EDF=45^{\circ}$
        \end{enumerate}
    \begin{enumerate}[columns=2]%  
        \item Altenativa A 
        \item Altenativa B \keych
        \item Altenativa C
        \item Altenativa D
        \item Altenativa E 
    \end{enumerate}
\item Fourth type of questions (these need manual tuning for alternatives, 
      usually carrying pictures or tables)
\begin{center}
\noindent
\hspace*{0.75cm}\includegraphics[scale=0.15]{example-image-b}
\end{center}

\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline A)
\end{minipage}
\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline B)
\end{minipage}
\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline C)
\end{minipage}
\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline D) \keych[D]
\end{minipage}
\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline E)
\end{minipage}
\item Fifth type of questions, a problem with numerical response \keych[$\sqrt{2}$]

\end{enumerate}
\end{mchoice}


\begin{mchoice}{paa-1985-b}
\begin{center}
\textbf{PAA 1985 (B)}
\end{center}
\begin{enumerate}
\item First type of questions
    \begin{enumerate}% 
        \item value 
        \item correct \keych
        \item value 
        \item value
        \item value 
    \end{enumerate}
\item Second type of questions
        \begin{enumerate}[leftmargin=3pc,label=\Roman*.]
            \item $2\alpha+2\delta=90^{\circ}$
            \item $\alpha=\delta$ 
            \item $\angle EDF=45^{\circ}$
        \end{enumerate}
\begin{enumerate}[columns=2]% 
        \item I only 
        \item II only 
        \item I and II only
        \item I and III only \keych
        \item I, II, and III
\end{enumerate}
\item Third type of questions
        \begin{enumerate}[leftmargin=3pc,label=(\arabic*)]
            \item $2\alpha+2\delta=90^{\circ}$
            \item $\angle EDF=45^{\circ}$
        \end{enumerate}
    \begin{enumerate}[columns=2]%  
        \item Altenativa A 
        \item Altenativa B 
        \item Altenativa C
        \item Altenativa D \keych
        \item Altenativa E 
    \end{enumerate}
\item Fourth type of questions (these need manual tuning for alternatives, 
      usually carrying pictures or tables)
\begin{center}
\noindent
\hspace*{0.75cm}\includegraphics[scale=0.15]{example-image-b}
\end{center}

\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline A)
\end{minipage}
\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline B)
\end{minipage}
\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline C)
\end{minipage}
\begin{minipage}{0.2\textwidth} \centering
\includegraphics[scale=0.15]{example-image-a}\newline D) 
\end{minipage}
\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline E) \keych[E]
\end{minipage}
\item Fifth type of questions, a problem with numerical response \keych[\$3]

\end{enumerate}
\end{mchoice}

\section{Exercices}

\begin{exercise}
Factoring next expression:
\end{exercise}

\begin{myenumerate}{exe:1}
\begin{enumerate}
\item $a^{2}-b^{2}$ \sol{$\left(a-b\right)\left(a+b\right)$}
\item $x^{2}-2x+1$  \sol{$\left(x-1\right)^{2}$}
\item $3x+3y+3z$    \sol{$3x+3y+3z$}
\item $3x+3y-6z$    \sol{$3\left(x+y-2z\right)$}
\end{enumerate}
\end{myenumerate}

\section{Answer key}
\begin{multicols}{2}
\setlength{\columnsep}{0pt} 
\keytest{PAA 1985 (form A)}{paa-1985-a}[5]
\keytest{PAA 1985 (form B)}{paa-1985-b}[5]
\end{multicols}
\keytest{Exercise 1}{exe:1}
\end{document} 
  • oh I just answered the previous question – David Carlisle Apr 9 '17 at 23:34
  • A thousand apologies, consider that it was a different question and to not mix things I preferred to formulate it separately – Pablo González L Apr 9 '17 at 23:50
  • no harm done:-) – David Carlisle Apr 9 '17 at 23:56
2
% file mchoice.tex
% arara: latex: {draft: yes}
% arara: latex
% arara: dvips
% arara: ps2pdf
% arara: clean: { files:[mchoice.aux, mchoice.log, mchoice.out,mchoice.dvi,mchoice.ps] }
\documentclass{article}
\usepackage{enumitem}
\usepackage{multicol}
\usepackage{pgffor}
\usepackage[colorlinks]{hyperref}
\usepackage{refcount}
\usepackage{tcolorbox}
\tcbuselibrary{many}

% Set key for multicols in enumitem
\SetEnumitemKey{columns}{before=\begin{multicols}{#1},after=\end{multicols}}%

% Custom label for save choice key
\makeatletter
\newcommand{\customlabel}[2]{%
   \expandafter\xdef\csname#1\endcsname{#2}%
   \hypertarget{#1}{}%
}
\makeatother

% Create a environment mchoice, scope enumerate and \keych
\NewDocumentEnvironment{mchoice}{m}{%
\label{#1}
% values for multicols 
\setlength{\multicolsep}{5.0pt plus 2.0pt minus 1.5pt}
% values for enumitem
\setenumerate{parsep=3.5pt,partopsep=3.5pt,topsep=3.5pt,labelsep=5pt, leftmargin=*, itemsep=0pt,widest=80}%
\setenumerate[1]{labelsep=5pt,itemsep=1pt,label=\arabic*.}
\setenumerate[2]{leftmargin=16pt,nosep,itemsep=0pt,label=\Alph*)}
% Command to save key choice
\NewDocumentCommand\keych{o}{%
\IfNoValueTF{##1}%
    {\customlabel{#1:\arabic{enumi}}{\Alph{enumii}}}%
    {\customlabel{#1:\arabic{enumi}}{\noexpand##1}}}% close \keych
}%
{%
\customlabel{max:#1}{\arabic{enumi}}%
}% close mchoice

% Create a command to all key for test
% #1 : pass to tcolorbox
% #2 : name
% #3 : ref
% #4 : columns
\newcounter{last}
\DeclareTotalTColorBox{\keytest}{ O{} m m O{4}}
{ size=small,top=-1mm, left=0mm,width=\columnwidth,%
  adjusted title=center,halign title=center,title filled,fontupper=\small,%
  fonttitle=\small\sffamily,adjusted title={#2},center title,#1}
  {% 
  \begin{enumerate}[columns=#4,leftmargin=15pt,labelsep=3pt,font=\small,nosep,widest=25]%
  \small
  \setlength{\columnsep}{0pt}%
   \edef\tmp{\noexpand\foreach \noexpand\x in {1,...,\csname max:#3\endcsname}}%
   \tmp{%
    \item \hyperlink{#3:\x}{\csname#3:\x\endcsname}%
    }
  \end{enumerate}%
}%

\begin{document}
\section{National Prov}

\begin{mchoice}{paa-1985-a}
\begin{center}
\textbf{PAA 1985 (A)}
\end{center}
\begin{enumerate}
\item First type of questions
    \begin{enumerate}% 
        \item value 
        \item value 
        \item value
        \item correct \keych
        \item value 
    \end{enumerate}
\item Second type of questions
        \begin{enumerate}[leftmargin=3pc,label=\Roman*.]
            \item $2\alpha+2\delta=90^{\circ}$
            \item $\alpha=\delta$ 
            \item $\angle EDF=45^{\circ}$
        \end{enumerate}
\begin{enumerate}[columns=2]% 
        \item I only 
        \item II only \keych
        \item I and II only
        \item I and III only 
        \item I, II, and III
\end{enumerate}
\item Third type of questions
        \begin{enumerate}[leftmargin=3pc,label=(\arabic*)]
            \item $2\alpha+2\delta=90^{\circ}$
            \item $\angle EDF=45^{\circ}$
        \end{enumerate}
    \begin{enumerate}[columns=2]%  
        \item Altenativa A 
        \item Altenativa B \keych
        \item Altenativa C
        \item Altenativa D
        \item Altenativa E 
    \end{enumerate}
\item Fourth type of questions (these need manual tuning for alternatives, 
      usually carrying pictures or tables)
\begin{center}
\noindent
\hspace*{0.75cm}\includegraphics[scale=0.15]{example-image-b}
\end{center}

\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline A)
\end{minipage}
\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline B)
\end{minipage}
\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline C)
\end{minipage}
\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline D) \keych[D]
\end{minipage}
\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline E)
\end{minipage}
\item Fifth type of questions, a problem with numerical response \keych[\$2]

\end{enumerate}
\end{mchoice}


\begin{mchoice}{paa-1985-b}
\begin{center}
\textbf{PAA 1985 (B)}
\end{center}
\begin{enumerate}
\item First type of questions
    \begin{enumerate}% 
        \item value 
        \item correct \keych
        \item value 
        \item value
        \item value 
    \end{enumerate}
\item Second type of questions
        \begin{enumerate}[leftmargin=3pc,label=\Roman*.]
            \item $2\alpha+2\delta=90^{\circ}$
            \item $\alpha=\delta$ 
            \item $\angle EDF=45^{\circ}$
        \end{enumerate}
\begin{enumerate}[columns=2]% 
        \item I only 
        \item II only 
        \item I and II only
        \item I and III only \keych
        \item I, II, and III
\end{enumerate}
\item Third type of questions
        \begin{enumerate}[leftmargin=3pc,label=(\arabic*)]
            \item $2\alpha+2\delta=90^{\circ}$
            \item $\angle EDF=45^{\circ}$
        \end{enumerate}
    \begin{enumerate}[columns=2]%  
        \item Altenativa A 
        \item Altenativa B 
        \item Altenativa C
        \item Altenativa D \keych
        \item Altenativa E 
    \end{enumerate}
\item Fourth type of questions (these need manual tuning for alternatives, 
      usually carrying pictures or tables)
\begin{center}
\noindent
\hspace*{0.75cm}\includegraphics[scale=0.15]{example-image-b}
\end{center}

\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline A)
\end{minipage}
\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline B)
\end{minipage}
\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline C)
\end{minipage}
\begin{minipage}{0.2\textwidth} \centering
\includegraphics[scale=0.15]{example-image-a}\newline D) 
\end{minipage}
\begin{minipage}{0.2\textwidth}
\centering
\includegraphics[scale=0.15]{example-image-a}\newline E) \keych[E]
\end{minipage}
\item Fifth type of questions, a problem with numerical response \keych[\$3]

\end{enumerate}
\end{mchoice}

\section{Answer key}
\begin{multicols}{2}
\setlength{\columnsep}{0pt} 
\keytest{PAA 1985 (form A)}{paa-1985-a}[5]
\keytest{PAA 1985 (form B)}{paa-1985-b}[5]
\end{multicols}
\end{document} 
|improve this answer|||||
  • Thanks Master David...too fast ... that's the idea i always had in mind, avoid writing to an auxiliary file unless it's a must ... A query, the keys \keych[\$3] and \keych[\$2] show "$3 and "$2, that is, place an extra double quotation mark at the beginning...thanks for all – Pablo González L Apr 9 '17 at 23:47
  • @PabloGonzálezL oh that \string is wrong (it's late and i was watching the masters golf at the same time, will fix:-) – David Carlisle Apr 9 '17 at 23:58
  • @PabloGonzálezL try now – David Carlisle Apr 9 '17 at 23:59
  • @DavidCarlise: Very fast again, now delete the last counter and refcount package, it is no longer used with this solution. Many thanks (muchísimas gracias). – Pablo González L Apr 10 '17 at 0:09
  • A last requirement, is there any way to modify \customlabel or \keych to be able to pass argument in math mode, for example \keych [$\sqrt{2}$] or \keych*[\sqrt{2}]. At the moment I can only enter simple expressions like \keych[$\frac{a}{b}] but fail whit \keych[$\dfrac{a}{b}] or other expresion. – Pablo González L Apr 13 '17 at 13:48

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.