fixfoot 每个脚注有固定的标签

fixfoot 每个脚注有固定的标签

在我的简历中,我使用fixfoot几种不同的标记来标记演讲等(例如标记它是虚拟演讲或已支付费用)。目前,我使用基于以下类型的符号来标记:此代码;脚注文本仅显示在相关页面上,正如所期望的那样。问题是,由于我只有少数几种脚注类型,我希望每种脚注都有自己专用的符号,而不是根据存在的脚注和顺序逐页更改(如下面的 MWE 所示)。

也就是说,脚注类型 A 应该始终为“A”,类型 B 应该始终为“B”,理想情况下它们应该按照相应的顺序出现(首先是“A”,然后是“B”,但跳过给定页面上不存在的任何顺序)。

我尝试修改 fixfoot.sty 来执行此操作,但这超出了我的能力范围——我预计至少可以通过更改已应用的补丁来修复符号(但不是顺序),但我没有想出正确的做法。 (我也希望它们以固定的顺序出现。)也可能有一种更简单的方法(从某种意义上说,它比 fixfoot 解决的问题更容易)......

如果每个类别都出现在每个页面上,那么我可以使用类似以下解决方案:在每一页写相同的脚注,如果没有人提出更好的建议,也许我会尝试类似的方法作为部分解决方案。

\documentclass{article}
\usepackage[paperheight=1in,paperwidth=2in]{geometry}

% https://tex.stackexchange.com/questions/68703/fixfoot-sty-with-symbols
\usepackage[symbol*,perpage,bottom]{footmisc}
\usepackage{fixfoot}
\usepackage{etoolbox}
\makeatletter
\patchcmd\@fixed@footnote
  {\protected@xdef\@thefnmark{\csname @#1@fftn@footnote\endcsname}}%
  {\protected@xdef\@thefnmark{%
        \expandafter\@fnsymbol\csname @#1@fftn@footnote\endcsname}}%
  {}{}
\makeatother

\DeclareFixedFootnote{\notea}{Type A.}
\DeclareFixedFootnote{\noteb}{Type B.}

\begin{document}
A\notea{} and B\noteb{}.
\clearpage
B\noteb{} and A\notea{}.
\end{document}

MWE 的渲染输出

答案1

我仍然不知道如何对它们进行排序,但是这个简单的解决方案使我达到了我想要的 90%:fixfoot完全避免,只需使用perpage并检查是否进行\footnotetext

\documentclass{article}

\usepackage[paperheight=1in,paperwidth=2in]{geometry}
\usepackage{perpage}

% This should be wrapped into a command to
% declare a new static footnote, but I honestly
% don't quite understand how to do that here.
\newcounter{acount}
\MakePerPage{acount}
\newcommand{\notea}{%
    \stepcounter{acount}%
    \footnotemark[100]%
    \ifnum \value{acount}=1%
        {\footnotetext[100]{Type A.}}%
    \fi%
}

\newcounter{bcount}
\MakePerPage{bcount}
\newcommand{\noteb}{%
    \stepcounter{bcount}%
    \footnotemark[101]%
    \ifnum \value{bcount}=1%
        {\footnotetext[101]{Type B.}}%
    \fi%
}
\renewcommand{\thefootnote}{%
    \ifnum \value{footnote}<10%
        \fnsymbol{footnote}%
    \else \ifnum \value{footnote}=100
        \textit{a}%
    \else \ifnum \value{footnote}=101
        \textit{b}%
    \else%
        \arabic{footnote}%
    \fi\fi\fi%
}

\begin{document}

A\notea{} and\notea{} B\noteb{}.\footnote{Regular footnote.}
\clearpage
B\noteb{} and\noteb{} A\notea{}.

\end{document}

输出

相关内容