我对脚注使用了以下“无编号命令”:
\let\thefootnote\relax\footnote{some text}
插入不带编号的脚注(仅一次)。但是,现在我的所有脚注都没有编号。在我输入“不编号命令”后,有什么命令可以取消该命令?
谢谢
答案1
您必须保存(使用\let
)原始定义,然后恢复它。此外,我减少了脚注计数器,这样空白脚注就不会增加索引。
\documentclass{article}
\let\svthefootnote\thefootnote
\textheight 1in
\begin{document}
First Footnote,%
\let\thefootnote\relax\footnote{some text}
\addtocounter{footnote}{-1}\let\thefootnote\svthefootnote
next footnote\footnote{some more text}
\end{document}
或者,您可以使用\footnotetext
空白脚注,这样您就不必重置脚注计数器(但您仍然必须恢复的定义\thefootnote
)。
\documentclass{article}
\let\svthefootnote\thefootnote
\textheight 1in
\begin{document}
First Footnote,%
\let\thefootnote\relax\footnotetext{some text}
\let\thefootnote\svthefootnote
next footnote\footnote{some more text}
\end{document}
把所有这些放在一起,你可以把它做成一个宏\blankfootnote{}
:
\documentclass{article}
\let\svthefootnote\thefootnote
\textheight 1in
\newcommand\blankfootnote[1]{%
\let\thefootnote\relax\footnotetext{#1}%
\let\thefootnote\svthefootnote%
}
\begin{document}
First Footnote,\blankfootnote{some text}
next footnote\footnote{some more text}
\end{document}
现在,为了最后一击,可以重新定义 的定义\footnote
,这样语法\footnote[]{my footnote}
(否则会破坏 LaTeX)现在可以自动调用\blankfootnote
。这样,您无需记住单独的命令\blankfootnote
,而只需使用\footnote
显式空白的可选参数即可:
\documentclass{article}
\let\svthefootnote\thefootnote
\textheight 1in
\newcommand\blankfootnote[1]{%
\let\thefootnote\relax\footnotetext{#1}%
\let\thefootnote\svthefootnote%
}
\let\svfootnote\footnote
\renewcommand\footnote[2][?]{%
\if\relax#1\relax%
\blankfootnote{#2}%
\else%
\if?#1\svfootnote{#2}\else\svfootnote[#1]{#2}\fi%
\fi
}
\begin{document}
First Footnote,\footnote[]{some text}
next footnote\footnote{some more text}
Force footnote number 5 here\footnote[5]{special footnote}
\end{document}