我目前正在使用scrreprt
documentclass 来制作报告。使用我当前的模板,图表列表和清单列表显示在两个后续页面上。我意识到标题“图表列表”和标题“清单列表”在页面上的高度不相同。
有没有办法更改\lstlistoflistings
标题的边距或将所有其他标题更改为相同的值?
我目前的资料来源:
\documentclass{scrreprt}
\usepackage{scrhack}
\usepackage[T1]{fontenc}
\usepackage{graphicx}
\usepackage{tocloft}
\usepackage{listings}
\renewcommand\lstlistlistingname{List of Listings}
\begin{document}
\tableofcontents
\clearpage
\listoffigures
\clearpage
\lstlistoflistings
\clearpage
%-------------------------------------------------------------------------------
% Document body
%-------------------------------------------------------------------------------
\pagenumbering{arabic} % Set numbering back to arabic numbers
\chapter{Image}\label{image}
\begin{figure}
\centering
\includegraphics{images/sys_res.png}
\caption{System response comparison}
\label{fig:System-response-comparison}
\end{figure}
\chapter{Listing}\label{listing}
\begin{lstlisting}[language=python, caption=\protect\detokenize{Example python listing}]
class GumnutDecoder:
def __init__(self):
self.PC = 0
\end{lstlisting}
\end{document}
答案1
KOMA-script 使用 packgetocbasic
来处理物品清单。有很多选项可以修改这些列表的行为。
不幸的是,包tocloft
并不关心,它为了自己的目的提供了自己的列表重新定义,主要是为了改变标准类的外观和行为。
由于 KOMA 已预先打包好所有内容,并且可以执行与包相同的操作tocloft
,因此您可以省略它。一旦完成,您还可以删除这些\clearpage
,因为默认情况下,每个列表都以新章节开始。
secnumdepth
和tocdepth
是 LaTeX 内核提供的计数器,无需添加任何包来改变它们的值。