章节标题中的“附录 A”,但在一行上

章节标题中的“附录 A”,但在一行上

我有以下文档。我希望附录标题标有“附录”字样,如下所示:

\documentclass[
chapterprefix=false,
appendixprefix=true, % Appendix 
numbers=noenddot
]{scrreprt}

\begin{document}
\chapter{One}
\appendix
\chapter{AAA}
XX
\end{document}

但我希望标题与“附录 A”等位于同一行。我知道如何对整个文档的章节标题实现这一点:

\makeatletter
\renewcommand*{\chapterformat}{%
  \mbox{\chapapp~\thechapter\autodot:\enskip}%
}
\makeatother

但这会覆盖chapterprefix=false。我怎样才能让其\chapterformat仅适用于附录?

答案1

一种可能性是(重新)定义\appendixmore

\documentclass[
    numbers=noenddot,
]{scrreprt}

\providecommand*\appendixmore{}
\renewcommand*\appendixmore{%
    \renewcommand*{\chapterformat}{%
      \mbox{\appendixname~\thechapter\autodot:\enskip}%
    }%
}

\begin{document}
\chapter{One}
\appendix
\chapter{AAA}
XX
\end{document}

在此处输入图片描述

注意 option也appendixprefix定义和使用\appendixmore。因此重新定义会\appendixmore禁用 option appendixprefix=true

另一种可能性是修补\appendix

\documentclass[
    numbers=noenddot
]{scrreprt}

\usepackage{xpatch}
\xapptocmd{\appendix}{%
    \renewcommand*{\chapterformat}{%
      \mbox{\appendixname~\thechapter\autodot:\enskip}%
    }%
}{}{\PatchFailed}

\begin{document}
\chapter{One}
\appendix
\chapter{AAA}
XX
\end{document}

结果和上面一样。

相关内容