继续对脚注进行编号

继续对脚注进行编号

我使用下面一段代码来放置一些内容作为我的脚注(从朋友那里借来的)。

{\let\thefootnote\relax\footnotetext <text> }

但问题是,添加此内容后,任何后续脚注都不会带有编号。我想知道如何恢复编号。我相信\relax这是罪魁祸首。

答案1

您的示例中一定缺少一些组定义,因为

\documentclass{article}
\begin{document}
Here is some text\footnote{First footnote}\par
Here is some text{\let\thefootnote\relax\footnotetext{Second footnote}}\par
Here is some text\footnote{Last footnote}
\end{document}

生产

在此处输入图片描述

使用括号括起来的重新定义\thefootnote(称为作用域或分组)使得对宏的普通修改只能保留之内该组。也就是说,它们的常规定义返回到组外。

但是,最好定义某种形式的宏来处理特定的\footnote构造。请参阅一致的字体。下面是一个产生相同输出的示例:

\documentclass{article}
\setlength{\textheight}{10\baselineskip}% Just for this example
\makeatletter
\let\oldfootnote\footnote
\def\footnote{\@ifstar\footnote@star\footnote@nostar}
\def\footnote@star#1{{\let\thefootnote\relax\footnotetext{#1}}}
\def\footnote@nostar{\oldfootnote}
\makeatother
\begin{document}
Here is some text\footnote{First footnote}\par
Here is some text\footnote*{Second footnote}\par
Here is some text\footnote{Last footnote}
\end{document}

相关内容