![如何使用 titletoc 包删除“报告”类中不需要的行 - 多个目录](https://linux22.com/image/433718/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%20titletoc%20%E5%8C%85%E5%88%A0%E9%99%A4%E2%80%9C%E6%8A%A5%E5%91%8A%E2%80%9D%E7%B1%BB%E4%B8%AD%E4%B8%8D%E9%9C%80%E8%A6%81%E7%9A%84%E8%A1%8C%20-%20%E5%A4%9A%E4%B8%AA%E7%9B%AE%E5%BD%95.png)
我正在写论文,遇到了一个问题,我不知道该如何解决。我想要两个目录 - 一个用于实际论文,另一个用于附录之前。正如标题所说,我正在报告类中写作,论文的每个章节都有一个单独的文件。
我设法使用 overleaf 创建了我想要的两个目录,但不知为何,第一个目录以一行“有趣”的附录内容结尾,而最后一个附录目录以一行引用一堆章节和节开始。这有点难以解释 - 所以我附上了一些图片 - 我用红色椭圆标记了不需要的行。
我已尝试过\startcontents
“\stopcontents”,但没有发生任何变化。
以下是代码(由于文档很长,我将其缩小到仅几章以供举例说明):
\documentclass[a4paper, 12pt]{report}
%%%%%%%%%%%%
% Packages %
%%%%%%%%%%%%
\usepackage[danish]{babel}
\usepackage[noheader]{packages/sleek}
\usepackage{packages/sleek-title}
\usepackage{packages/sleek-theorems}
\usepackage{packages/sleek-listings}
\usepackage{subfiles}
\usepackage{pdfpages}
\usepackage{booktabs}
\usepackage[utf8]{inputenc}
\usepackage{tabularx}
\usepackage{float}
\usepackage{comment}
\usepackage{biblatex}
\usepackage{titletoc}
\usepackage[utf8]{inputenc}
\usepackage{fancyhdr}
\usepackage{lastpage}
\usepackage{etoolbox}
\usepackage{lipsum}
%%%%%%%%%%%%
% Document %
%%%%%%%%%%%%
\begin{document}
\setcounter{secnumdepth}{3} % default value for 'report' class is "2"
\maketitle
\pagenumbering{Roman}
\chapter*{Summary}
\startcontents[main]
\printcontents[main]{}{-1}{\chapter*{Indholdsfortegnelse}}
%\romantableofcontents %commented out since it provides the full table of content including all chapters and sections of appendix - which is not wanted %
\chapter{Introduktion}
\pagestyle{fancy}
\fancyhf{}
\rfoot{Side \thepage \hspace{1pt} af \pageref{LastPage}}
\pagenumbering{arabic}
\lipsum[1]
\chapter{Litteraturreview}
\lipsum[]
\chapter{Afhandlingens teorivalg}
\lipsum[]
\stopcontents[main]
\cleardoublepage
%%%%%%%%%%%%
% Appendix %
%%%%%%%%%%%%
\appendix
\chapter*{Bilagsoversigt}
\startcontents[bilag]
\printcontents[bilag]{}{-1}{}
\chapter{Interviewguides}
\lipsum[]
\chapter{Operationalisering af spørgeskema}
\lipsum[]
\section{SurveyXact spørgeskemaet}
\lipsum[]
\chapter{Kvalitativ analyse}
\section{Totaloversigt over NVivo koder}
\stopcontents[bilag]
\end{document}
我认为问题出在 sleek-packages 和 titletoc 之间的关联上,因为如果我删除 sleek-packages,该行就不会显示。但是这样我就没有想要的文档设计。所以我寻求一个解决方案,让我可以保留 sleek-packages 以适应文档样式。
如果可以让第一个目录(主文档)也包含附录章节(但不包含章节),那就太好了。
如果有什么需要详细说明的话,请毫不犹豫地告诉我,这是我第一次发布问题——因为这篇论文是我第一次使用 overleaf。
祝您有美好的一天并提前感谢您的帮助:)。
答案1
归根结底https://da.overleaf.com/latex/templates/sleek-template/hrksrrdywhfk是一个次优模板,或者至少不能很好地解释它自己。
\usepackage[noheader]{packages/sleek}
加载了很多包,包括 OP 稍后加载的几个包。OP 列表中包括了titletoc
自动packages/sleek
加载hyperref
,我们都知道,除了少数例外,hyperref
应该始终最后加载。是hyperref
最后加载的吗packages/sleek
?不,但它并没有以灾难告终。
这里的问题似乎是titletoc
加载后 hyperref
。如果我们将所有 OP 包移到包上方sleek
(并biblatex
在sleek
加载时删除),则项目似乎至少可以无错误地进行编译。
也就是说,这似乎有帮助
\usepackage{subfiles}
\usepackage{pdfpages}
\usepackage{booktabs}
% \usepackage[utf8]{inputenc} % sleek
\usepackage{tabularx}
\usepackage{float}
\usepackage{comment}
% \usepackage{biblatex} % sleek
\usepackage{titletoc}
% \usepackage[utf8]{inputenc}
\usepackage{fancyhdr}
\usepackage{lastpage}
\usepackage{etoolbox}
\usepackage{lipsum}
\usepackage[danish]{babel}
\usepackage[noheader]{packages/sleek}
\usepackage{packages/sleek-title}
\usepackage{packages/sleek-theorems}
\usepackage{packages/sleek-listings}