在子附录环境内的部分中显示“附录”

在子附录环境内的部分中显示“附录”

我正在使用来自 KOMA 包、该appendix包和该arsclassica包的 scrreprt。

我想在章节附录编号前添加“附录”。

如果我使用scrreprtappendix包,就可以做到这一点。不幸的是,arsclassica\section以某种方式重新定义了命令,以至于appendix包无法将“附录”添加到标题中。这也无法通过appendixprefixKOMA 脚本选项进行更改。

我发现了一些几乎可以工作的东西(完整代码在最后):

\begin{subappendices}

\begingroup
\def\thesection{Appendix \arabic{chapter}.\Alph{section}}

\section{Appendix one}

\section{Appendix two}
\endgroup

\end{subappendices}

唯一的问题是,这样会在目录中的名称中添加“附录”,然后无法正确对齐(它会覆盖附录的标题)。

我的问题是:有没有办法关闭仅针对 ToC 的行为,同时保留环境内的额外“附录”显示subappendices

以下是完整代码,存在未在部分标题中显示“附录”的问题:

\documentclass[11pt,letterpaper,twoside=false,openright,titlepage,fleqn,%
           headinclude=false,footinclude=false,BCOR=12.7mm,DIV=9,%
           numbers=noenddot,cleardoublepage=empty,%
           listof=totoc,%
           captions=tableheading]{scrreprt}

\usepackage{makeidx}
\usepackage[title,titletoc]{appendix}

\usepackage[eulerchapternumbers,beramono,listings,%
                eulermath,pdfspacing]{classicthesis}

\usepackage{arsclassica}

\begin{document}

\tableofcontents

\chapter{Bla}

\begin{subappendices}
\section{Foo}
\end{subappendices}

\end{document}

答案1

arsclassica使用包\titleformat中的格式titlesec来格式化部分单元;然后您可以在环境内重新定义部分格式subappendices(进行本地更改)模仿原始定义,但包括附录名称:

\documentclass[11pt,letterpaper,twoside=false,openright,titlepage,fleqn,%
           headinclude=false,footinclude=false,BCOR=12.7mm,DIV=9,%
           numbers=noenddot,cleardoublepage=empty,%
           listof=totoc,%
           captions=tableheading]{scrreprt}

\usepackage{makeidx}

\usepackage[eulerchapternumbers,beramono,listings,%
                eulermath,pdfspacing]{classicthesis}

\usepackage{arsclassica}
\usepackage[title]{appendix}

\begin{document}

\tableofcontents

\chapter{Bla}

\begin{subappendices}
\titleformat{\section} 
  {\normalfont\Large\sffamily}{\spacedlowsmallcaps\appendixname\ %
  {\spacedlowsmallcaps\thesection}}%
  {1em}{\spacedlowsmallcaps}


\section{Foo}
\end{subappendices}

\end{document}

在此处输入图片描述

相关内容