如何自动重置 koma-script 中自定义目录的附录计数器?

如何自动重置 koma-script 中自定义目录的附录计数器?

我想使用命令声明的自定义目录\DeclareNewTOC。遗憾的是,用它创建的计数器不会在附录上自行重置。

虽然图中的计数器被重置并且\Alph{<counter>}表示正在被使用。但它并没有应用于我声明的自定义目录。

我已经搜索过解决方案并阅读了有关该\DeclareNewTOC命令的 koma 文档,但什么也没找到。我找到了tocentrystyle选项键,但无法使其工作。我遇到的问题大多是相反的,他们想删除重置等。

一位 MWE 表示:

\documentclass{scrbook}

\DeclareNewTOC[%
    type=listing,
    types=listings,
    float,
    name=Listing,
    listname={List of Listings}
]{lol}

\begin{document}

\frontmatter

\listoffigures
\listoflistings

\mainmatter

\appendix

\chapter{Figures}

\begin{figure}
    \caption{Example figure}
\end{figure}

\chapter{Listings}

\begin{listing}
\caption{This is an example}
\end{listing}

\backmatter

\end{document}

输出为

图片列表

A.1 Example figure

房源列表

1. This is an example

我想拥有:

房源列表

B.1 This is an example

编辑(来自gusbrs的回答): 使用 DeclareNewTOC 内部或外部的选项counterwithin=chapter会产生正确的编号,但它不会更新数字和目录文本之间的填充,如下图所示:

附录中的清单


编辑2: 这个答案:目录内的反向问题 帮助我找到选项:

tocentrynumwidth=2em,
tocentryindent=2em

但目前tocentryindent与图表列表的默认缩进不匹配。

答案1

如果列表条目的缩进和数字宽度应该与图形条目相同,请使用选项tocentryindent:=figuretocentrynumwidth:=figure

例子:

\documentclass{scrbook}

\DeclareNewTOC[%
    type=listing,
    types=listings,
    float,
    name=Listing,
    listname={List of Listings},
    counterwithin=chapter,% <- added
    tocentryindent:=figure,% <- added
    tocentrynumwidth:=figure% <- added
]{lol}

\begin{document}
\frontmatter
\listoffigures
\listoflistings
\mainmatter
\appendix
\chapter{Figures}
\begin{figure}
    \caption{Example figure}
\end{figure}
\chapter{Listings}
\begin{listing}
\caption{This is an example}
\end{listing}
\end{document}

在此处输入图片描述

相关内容