Conflicto con cita y cambios.

Conflicto con cita y cambios.

Para una publicación científica, estoy escribiendo una versión modificada de mi artículo que tiene en cuenta los comentarios de mis revisores. Necesito identificar qué modificación se debe a qué revisor, así que uso el changespaquete. Obviamente, tengo referencias en mi artículo, así que uso el citepaquete.

PDFLaTeX (TexLive 2014) me da errores cuando uso el citecomando dentro de los comandos deletedo replaceddel changespaquete. Aquí hay un ejemplo de trabajo mínimo:

\documentclass{article}

\usepackage{cite}
\usepackage{changes}

\begin{document}

As previously observed \deleted{in \cite{someref}, there is no banana here.}

\begin{thebibliography}{9}
\bibitem{someref} 
Some ref here.
\end{thebibliography}

\end{document}

Recibo los siguientes errores:

! Extra }, or forgotten \endgroup.
\UL@stop ...alty \ifnum \lastkern =\thr@@ \egroup
\egroup \ifdim \wd \UL@box...
l.8 ...n \cite{someref}, there is no banana here.}


! Extra }, or forgotten \endgroup.
\UL@stop ...num \lastkern =\thr@@ \egroup \egroup
\ifdim \wd \UL@box =\z@ \e...
l.8 ...n \cite{someref}, there is no banana here.}


! Missing } inserted.
<inserted text>
}
l.8 ...n \cite{someref}, there is no banana here.}


! Missing } inserted.
<inserted text>
}
l.8 ...n \cite{someref}, there is no banana here.}

Si elimino los citepaquetes, todo vuelve a la normalidad. Desafortunadamente, necesito este paquete.

La pregunta está muy cerca deeste sin respuesta. ¿Qué tengo que hacer?

Respuesta1

Como señaló daleif en los comentarios, el problema se debe al ulempaquete utilizado para realizar cambios eliminados en el changespaquete. Se sabe que se comporta de manera extraña con algunos elogios, entre ellos cite.

Como se indica en eldocumentación, tienes que envolverlo citeen algo mboxasí:

As previously observed \deleted{in \mbox{\cite{someref}}, there is no banana here.}

Y funciona.

Un problema bastante similar se resolvió de la misma manera.aquí.

Respuesta2

@Neraste lo dijo bien. Acabo de encontrar el mismo problema y quería evitarlo \mbox{\cite{someref}}en cada referencia... Entonces, segúneste, solo usé:

\let\oldcitep\citep
\renewcommand{\citep}[1]{\mbox{\oldcitep{#1}}}
\let\oldcitet\citet
\renewcommand{\citet}[1]{\mbox{\oldcitet{#1}}}
\let\oldcite\cite
\renewcommand{\cite}[1]{\mbox{\oldcite{#1}}}

Funcionó perfectamente

Respuesta3

\mboxno funcionó para mí.

Sin embargo, tengo una solución algo satisfactoria al problema del bloqueo de LaTeX al utilizar comandos \citeinternos \removeo \addde seguimiento de cambios. La solución alternativa simplemente ignora la visualización de la referencia.

Estos son los comandos que utilicé en la parte superior del documento de látex:

\usepackage[ignoremode,inline]{trackchanges} % use the "ignoremode" option here

\tcignore{\cite}{1}{0}  % To ignore parenthetical citation (previously used to be \citep)

\tcignore{\citeA}{1}{0} % To ignore in-text citation (previously used to be \citet)

Funcionó para mí.

información relacionada