cleveref bricht \appendix mit optionalem Argument ab, das in IEEEtran definiert ist

cleveref bricht \appendix mit optionalem Argument ab, das in IEEEtran definiert ist

Ich denke, der Titel sagt alles. Wenn Sie cleverefMWE in dieses Dokument aufnehmen, ändert sich das Aussehen der Ausgabe:

\documentclass{IEEEtran}
% \usepackage{cleveref}
\begin{document}
    \appendix[Appendix headline]
\end{document}

Gibt es eine Möglichkeit das zu verhindern? Ich habe im cleverefHandbuch nachgeschaut, aber bisher nichts gefunden.

Antwort1

Ich glaube, dass dies in den auf meiner Website verfügbaren Vorabversionen (0.21) und möglicherweise auch in der vorherigen Vorabversion (0.20) behoben ist:http://www.dr-qubit.org/latex.html

Zumindest erzeugt das MWE mit und ohne Cleveref die identische Ausgabe.

Antwort2

Der schnellste und einfachste Weg ist sicherlich, die Bedeutung \appendixvor dem Laden zu speichern cleverefund nach dem Laden des Pakets wiederherzustellen:

\documentclass{IEEEtran}
\let\ieeeappendix\appendix
\usepackage{cleveref}
\let\appendix\ieeeappendix

\begin{document}
\appendix[Appendix headline]
\end{document}

Beachten Sie jedoch, dass hierdurch die Funktionalität von eingeschränkt werden kann cleveref.

Antwort3

Geben Sie IEEEtraneine Chance, die Definition von beizubehalten, indem Sie eine robustere Version von \appendixverwenden .\AtBeginDocument{...}\appendix

Da im Code IEEEtranverwendet wird , werden diese Informationen gespeichert, sodass immer „report“ anstelle von verwendet wird . Verwenden Sie dann stattdessen.\refstepcounter{section}\appendix\labelcleverefSectionAppendix\label[appendix]{foo}

\documentclass{IEEEtran}

\usepackage{letltxmacro}

\usepackage{xparse}

\makeatletter
\LetLtxMacro\ieeetran@appendix\appendix
\AtBeginDocument{%
\RenewDocumentCommand{\appendix}{o}{%
  \IfValueTF{#1}{%
    \ieeetran@appendix[#1]%
  }{%
    \ieeetran@appendix%
  }%
}
}
\makeatother

\usepackage{cleveref}

\begin{document}
See \Cref{appone}

\appendix \label[appendix]{appone}

\appendix[Appendix headline] \label{apptwo}
\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen