有多个脚注时交叉引用脚注

有多个脚注时交叉引用脚注

我在复杂的文本中使用了多个脚注(\footnoteA\footnoteB\footnoteC)。我需要引用其中的一些。因此,我尝试了包 footmisc,但是当我在 fn 中使用\label{},然后用 引用它时\ref{},我得到的只是章节或小节的编号,而不是脚注的编号。例如:

"See also fn \ref{abhiman3}" 

导致

"See also fn 12.10.3.1.4" (this is the number of the subsubsection).

我也尝试过更精确的方法,即\label{fn:abhiman3}\ref{fn:abhiman3},但结果是一样的。\footref{}而不是将\ref{}章节编号更改为上标,但仍然没有提供我想要的,即脚注编号。

我尝试了这个cref包,但是它无法编译(可能是因为与另一个包冲突)。

还有其他建议吗?谢谢!

更新 MWE:

\documentclass[11pt,twoside,a4paper]{book}

[…]
\usepackage[noeledmac]{ledmac}

\usepackage{amsmath,amssymb,amsfonts}

\usepackage{footmisc}

\begin{document}

\chapter{Introduction}

Copyist's mangala.\footnoteC{Auspicious verse.\label{mangala}}

Author's mangala\footnoteC{See fn. \ref{mangala}}

\end{document}

答案1

正如评论中提到的,最好从 切换ledmacreledmac,这应该可以解决这个问题。

但是,如果由于某种原因您需要继续使用ledmac,您可以重新定义\footnoteC命令以\refstepcounter代替\stepcounter,即将其放在您的序言中:

\makeatletter
\renewcommand{\footnoteC}[1]{%
  \refstepcounter{footnoteC}%
  \protected@xdef\@thefnmarkC{\thefootnoteC}%
  \@footnotemarkC
  \vfootnoteC{C}{#1}\m@mmf@prepare}
\makeatother

(如果您需要对例如执行相同操作,则\footnoteB代码是相同的,只是Bs 中的 s 是大写的C。)

相关内容