我認為標題說明了一切。包含cleveref
在此 MWE 中會改變輸出的外觀:
\documentclass{IEEEtran}
% \usepackage{cleveref}
\begin{document}
\appendix[Appendix headline]
\end{document}
有沒有辦法可以防止這種情況發生?我已經看過cleveref
手冊,但還沒有找到任何東西。
答案1
我相信這個問題已在我的網站上提供的預發布版本 (0.21) 中得到修復,並且很可能也在先前的預發布版本 (0.20) 中得到修復:http://www.dr-qubit.org/latex.html
至少,無論有無 smartef,MWE 都會產生相同的輸出。
答案2
最快最簡單的方法肯定是保存\appendix
載入前的含義cleveref
並恢復到載入套件後的含義:
\documentclass{IEEEtran}
\let\ieeeappendix\appendix
\usepackage{cleveref}
\let\appendix\ieeeappendix
\begin{document}
\appendix[Appendix headline]
\end{document}
但請注意,這可能會限制 的功能cleveref
。
答案3
提供一個機會透過使用更強大的版本IEEEtran
來維護 的定義。\appendix
\AtBeginDocument{...}
\appendix
由於在代碼中IEEEtran
使用,將存儲此信息,因此將始終報告而不是.那就用吧。\refstepcounter{section}
\appendix
\label
cleveref
Section
Appendix
\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}