Problema con \tagged dentro de \cventry. Produce error (solo en algunos argumentos)

Problema con \tagged dentro de \cventry. Produce error (solo en algunos argumentos)

Tengo la intención de usar el taggingpaquete para organizar mi CV dependiendo, por ejemplo, en qué idioma lo necesito. El problema con \tagged{}inside \cventryes que funciona bien en el segundo y sexto argumento, pero no en el tercero, cuarto, quinto... extraño.

En el MWE adjunto, el primero cventry{2016}funciona bien, pero el segundo {2015}no. ¿Alguien puede idear el problema? ¡gracias!

\documentclass[11pt,a4paper,sans]{moderncv}
\moderncvstyle{classic}
\usepackage{tagging}
\firstname{John}
\familyname{Doe}
\title{MWE}
%-----------------------------------------------
\begin{document}
\makecvtitle

\usetag{EN} %Three possible tags: EN, DE, SP

\section{Education}

\cventry{2016}
{\tagged{EN}{Mathematics}\tagged{DE}{Mathematik}\tagged{SP}{Matem\'aticas}}
{University}
{USA}
{(unfinished)}
{\tagged{EN}{Research}\tagged{DE}{Forschung} \tagged{SP}{Investigaci\'on}}

\cventry{2015}
{Pilot}
{\tagged{EN}{Academy}\tagged{DE}{Pilotschule} \tagged{SP}{Academia}} %uncommenting THIS LINE causes error
{}
{}
{}
{}

\end{document}

Respuesta1

La definición predeterminada de \cventryusos \ifthenelseque no pueden manejar su entrada:

definición predeterminada

\renewcommand*{\cventry}[7][.25em]{%
  \cvitem[#1]{#2}{%
    {\bfseries#3}%
    \ifthenelse{\equal{#4}{}}{}{, {\slshape#4}}%
    \ifthenelse{\equal{#5}{}}{}{, #5}%
    \ifthenelse{\equal{#6}{}}{}{, #6}%
    .\strut%
    \ifx&#7&%
    \else{\newline{}\begin{minipage}[t]{\linewidth}\small#7\end{minipage}}\fi}}

Úselo \ifxen su lugar y funciona:

\makeatletter
\renewcommand*{\cventry}[7][.25em]{%
  \cvitem[#1]{#2}{%
    {\bfseries#3}%
    \ifx&#4&\else{, {\slshape#4}}\fi%
    \ifx&#5&\else{, #5}\fi%
    \ifx&#6&\else{, #6}\fi%
    .\strut%
    \ifx&#7&%
    \else{\newline{}\begin{minipage}[t]{\linewidth}\small#7\end{minipage}}\fi%
  }%
}
\makeatother

Código completo:

\documentclass[11pt,a4paper,sans]{moderncv}

\moderncvstyle{classic}
\usepackage{tagging} 

\makeatletter
\renewcommand*{\cventry}[7][.25em]{%
  \cvitem[#1]{#2}{%
    {\bfseries#3}%
    \ifx&#4&\else{, {\slshape#4}}\fi%
    \ifx&#5&\else{, #5}\fi%
    \ifx&#6&\else{, #6}\fi%
    .\strut%
    \ifx&#7&%
    \else{\newline{}\begin{minipage}[t]{\linewidth}\small#7\end{minipage}}\fi%
  }%
}
\makeatother


\firstname{John}
\familyname{Doe}
\title{MWE}


%-----------------------------------------------
\begin{document}
\makecvtitle

\usetag{EN} %Three possible tags: EN, DE, SP

\section{Education}

\cventry{2016}
{\tagged{EN}{Mathematics}\tagged{DE}{Mathematik}\tagged{SP}{Matem\'aticas}}
{University}
{USA}
{(unfinished)}
{\tagged{EN}{Research}\tagged{DE}{Forschung} \tagged{SP}{Investigaci\'on}}

\cventry{2015}
{Pilot}
{\tagged{EN}{Academy}\tagged{DE}{Pilotschule} \tagged{SP}{Academia}} %uncommenting THIS LINE causes error
{}
{}
{}
{}

\end{document}

información relacionada