这里是新的宏,我需要能够创建一个包含常规脚注命令和自定义命令的文档,该命令使脚注的工作方式与常规脚注相同,但在前面添加前缀“R”(代表备注)。
答案1
有一个名为的包manyfoot
可用于与默认脚注一起创建新类型的脚注。以下代码将显示如何定义新的脚注:
\documentclass{article}
\usepackage{manyfoot}
\DeclareNewFootnote{A}
\DeclareNewFootnote{B}
\renewcommand\thefootnoteB{R\arabic{footnoteB}}
\let\footnoteR\footnoteB
\let\footnote\footnoteA
\begin{document}
Test\footnote{Regular footnote.} and Remark\footnoteR{Remark footnote}.
\end{document}
答案2
latex.ltx
不使用任何特定的包,只是“破解”和的通常定义article.cls
(例如)
\documentclass{article}
\makeatletter
\newcommand{\myfootnoteprefix}{R}
\newcommand\@makeremfntext[1]{%
\parindent 1em%
\noindent
\hb@[email protected]{\hss\myfootnoteprefix\@makeremfnmark}: #1}% Prevent raised footnote number here with \@makeremfnmark
\def\@makeremfnmark{\hbox{\normalfont\@thefnmark}}% No \@textsuperscript!
\def\remfootnote{\@ifnextchar[\@xfootnote{\stepcounter\@mpfn
\protected@xdef\@thefnmark{\thempfn}%
\@footnotemark\@remfootnotetext}}
\long\def\@remfootnotetext#1{\insert\footins{%
\reset@font\footnotesize
\interlinepenalty\interfootnotelinepenalty
\splittopskip\footnotesep
\splitmaxdepth \dp\strutbox \floatingpenalty \@MM
\hsize\columnwidth \@parboxrestore
\protected@edef\@currentlabel{%
\csname p@footnote\endcsname\@thefnmark
}%
\color@begingroup% Use `\@makeremfntext instead of \@makefntext
\@makeremfntext{%
\rule\z@\footnotesep\ignorespaces#1\@finalstrut\strutbox}%
\color@endgroup}}%
\makeatother
\begin{document}
Some footnote\remfootnote{Hello}
Some other footnote\remfootnote{Hello again!}
\end{document}