
과학 출판물의 경우, 나는 리뷰어의 의견을 고려하여 기사를 수정한 버전을 작성하고 있습니다. 어느 리뷰어가 어떤 수정을 했는지 확인해야 하므로 패키지를 사용합니다 changes
. 분명히 내 기사에 참고 자료가 있으므로 패키지를 사용합니다 cite
.
PDFLaTeX(TexLive 2014)는 패키지 의 또는 명령 cite
내에서 명령을 사용할 때 오류를 발생시킵니다 . 다음은 최소한의 작업 예입니다.deleted
replaced
changes
\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}
다음과 같은 오류가 발생합니다.
! 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.}
패키지 를 제거하면 cite
모든 것이 정상으로 돌아옵니다. 안타깝게도 이 패키지가 필요합니다.
질문이 정말 가깝네요이 답이 없는 것. 어떻게 해야 하나요?
답변1
답변2
@Neraste님 말씀이 맞습니다. 방금 같은 문제를 발견했고 모든 참조에서 이 문제를 피하고 싶었습니다 \mbox{\cite{someref}}
.... 그래서,이것, 방금 다음을 사용했습니다.
\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}}}
완벽하게 작동했어요
답변3
\mbox
나에게 효과가 없었습니다.
\cite
그러나 inside \remove
또는 track 변경 명령을 사용할 때 LaTeX가 충돌하는 문제를 다소 만족스럽게 해결했습니다 \add
. 해결 방법은 참조가 표시되는 것을 무시합니다.
라텍스 문서 상단에서 사용한 명령은 다음과 같습니다.
\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)
그것은 나를 위해 일했습니다.