1.book类

1.book类

是否可以在内容在目录顶部生成的标题?(不是在目录中的单个项目上生成的,正如讨论的那样这里

我认为也许titletoc可以允许这样做,但是我没有在该包的文档中看到有关脚注的任何信息。


编辑:我使用的是文档类scrbook(需要\multiplefootmarker,因为作者的注释使用数字,而编辑的注释使用 * 和其他符号)。编辑需要注释内容标题。

答案1

1.book

方法 1 — 定义新命令

\ftableofcontents命令需要将脚注的文本作为参数。

\documentclass{book}
\usepackage{xpatch}

\newcommand\ftableofcontents{\renewcommand\ftableofcontents[1]}
\expandafter\ftableofcontents\expandafter{\tableofcontents}
\xpatchcmd\ftableofcontents
  {\contentsname}
  {\contentsname\footnote{#1}\fi}{}{}
% Omit the following lines if you want the footnote with an arabic number
\xpretocmd\ftableofcontents{\begingroup\renewcommand\thefootnote{\fnsymbol{footnote}}}{}{}
\xapptocmd\ftableofcontents{\endgroup}{}{}

\begin{document}
\frontmatter
\ftableofcontents{This is the footnote}

\mainmatter
\chapter{A chapter}
\section{A section}
Here is a footnote\footnote{A}
\end{document}

方法 2 — 重载\tableofcontents

在这种情况下,我们重新定义\tableofcontents为接受脚注文本作为可选参数;如果没有指定可选参数,则不会发生任何事情。

\documentclass{book}
\usepackage{xpatch}

\newcommand\temp{\renewcommand\tableofcontents[1][]}
\expandafter\temp\expandafter{\tableofcontents}
\xpatchcmd\tableofcontents
  {\contentsname}
  {\contentsname\if\relax\detokenize{#1}\relax\else\footnote{#1}\fi}{}{}
% Omit the following lines if you want the footnote with an arabic number
\xpretocmd\tableofcontents{\begingroup\renewcommand\thefootnote{\fnsymbol{footnote}}}{}{}
\xapptocmd\tableofcontents{\endgroup}{}{}

\begin{document}
\frontmatter
\tableofcontents[This is the footnote]

\mainmatter
\chapter{A chapter}
\section{A section}
Here is a footnote\footnote{A}
\end{document}

在此处输入图片描述

2.scrbook

以前的方法不适用于该类scrbook,并且非常很难修补生成目录的命令,因此 hack 似乎是最好的尝试(除了避免在章节标题中添加脚注)。

\documentclass{scrbook}

\begin{document}

\frontmatter

\begingroup
\makeatletter
\protected@edef\contentsname{\contentsname\unexpanded{\footnote{%
  %%%% ADD HERE THE FOOTNOTE TEXT
  This is a footnote%
  %%%% DON'T FORGET THE FINAL %
  }}%
  \gdef\noexpand\contentsname{\contentsname}}

% Omit the following line if you want a number
\renewcommand\thefootnote{\fnsymbol{footnote}}

\tableofcontents
\endgroup

\mainmatter

3. 替代方法(所有类)

您可以在页眉后添加一些文本,而不是脚注。

\documentclass{scrbook}

\begin{document}
\frontmatter

\addtocontents{toc}{\unexpanded{\unexpanded{{%
  \itshape\footnotesize
  This is a note for the table of contents
  \par\bigskip
}}}}

\tableofcontents

\mainmatter
\chapter{A chapter}
\section{A section}

\end{document}

在此处输入图片描述

答案2

您可以尝试这样的事情(更新(三次)以考虑到egreg评论)

\documentclass{article}

\pagestyle{headings}

\begin{document}

\let\oldcontentsname\contentsname
\let\myif\iftrue
\def\myfootnotemark{\global\let\myif\iffalse\footnotemark}

\renewcommand\contentsname{\oldcontentsname\myif\myfootnotemark\fi}

\tableofcontents

\addtocontents{toc}{\protect\footnotetext{this is my footnote}}


\section{First}

\subsection{A}

\subsection{B}

\section{Two}

\subsection{C}

\section{First}

\subsection{A}

\subsection{B}

\section{Two}

\subsection{C}

\section{First}

\subsection{A}

\subsection{B}

\section{Two}

\subsection{C}

\section{First}

\subsection{A}

\subsection{B}

\section{Two}

\subsection{C}

\section{First}

\subsection{A}

\subsection{B}

\section{Two}

\subsection{C}

\section{First}

\subsection{A}

\subsection{B}

\section{Two}

\subsection{C}

\section{First}

\subsection{A}

\subsection{B}

\section{Two}

\subsection{C}



\end{document}

输出的第一页

相关内容