我一直在尝试这些mwcls
课程(mwarticle、mwrep、mwbk),它们的整体设计似乎相当简朴,但仍然令人愉悦。但我不知道如何从目录中删除 \listoffigures 和 \listoftables。(tocbibind 包似乎不起作用。)
MWE 可能是
\documentclass{mwbk}
\usepackage[demo]{graphicx}
\usepackage{booktabs}
\begin{document}
\tableofcontents
\listoffigures
\listoftables
\begin{figure}
\centering
\includegraphics[width=0.3\textwidth]{frog.jpg}
\caption{\label{fig:frog}Frog.}
\end{figure}
\begin{table}
\centering
\caption{\label{tab:widgets}An example table.}
\begin{tabular}{lr}
\toprule
Item & Quantity \\
\midrule
Widgets & 42 \\
Gadgets & 13\\
\bottomrule
\end{tabular}
\end{document}
答案1
LaTeX 将所有条目写入.toc
文件并控制包括哪些条目级别。因此必须在文件中设置tocdepth
临时更改。tocdepth
.toc
以下示例将两个操作写入.toc
文件 before \listoffigures
:
- 的当前值
tocdepth
保存在宏中\SavedTocDepth
。 tocdepth
被分配一个更大的负值以禁止包含\chapter
s 和朋友。
\listoftables
将操作写入文件后,使用 中保存的值.toc
恢复计数器。tocdepth
\SavedTocDepth
示例文件:
\documentclass{mwbk}
\newcommand*{\BeginNoToc}{%
\addtocontents{toc}{%
\edef\protect\SavedTocDepth{\protect\the\protect\value{tocdepth}}%
}%
\addtocontents{toc}{%
\protect\setcounter{tocdepth}{-10}%
}%
}
\newcommand*{\EndNoToc}{%
\addtocontents{toc}{%
\protect\setcounter{tocdepth}{\protect\SavedTocDepth}%
}%
}
\begin{document}
\tableofcontents
\BeginNoToc
\listoffigures
\listoftables
\EndNoToc
\chapter{Introduction}
\begin{figure}
\centering
\caption{\label{fig:frog}Frog.}
\end{figure}
\begin{table}
\centering
\caption{\label{tab:widgets}An example table.}
\end{table}
\chapter{Summary}
\end{document}
该.toc
文件包含:
\edef \SavedTocDepth {\the \value {tocdepth}}
\setcounter {tocdepth}{-10}
\contentsline {chapter}{List of Figures}{3}
\contentsline {chapter}{List of Tables}{5}
\setcounter {tocdepth}{\SavedTocDepth }
\contentsline {chapter}{Chapter\ 1\relax .\kern .5em Introduction}{7}
\contentsline {chapter}{Chapter\ 2\relax .\kern .5em Summary}{9}
答案2
尽管 Heiko 的答案似乎有效,但我还是想出了一个\chapter@toc
从课程本身改变的解决方案:
\makeatletter
\renewcommand*\chapter@toc{%
\ifHeadingNumbered\typeout{\@chapapp\space\thechapter.}%\fi
\addcontentsline{toc}{chapter}{%
%\ifHeadingNumbered
\mw@seccntformat{\@chapapp\ \HeadingNumber}\HeadingTOCText%
%\fi
}\fi %added \fi here
%\addtocontents{lof}{\protect\addvspace{10\p@}}%
%\addtocontents{lot}{\protect\addvspace{10\p@}}%
}
\makeatother