在學術儀器包的背景下ednotes
我想創建一個自訂的\Bnote
,其行為類似於普通的 LaTeX 腳註;即,我想在文字正文中輸入類似的內容
blah blah.\Bnote{a}{This is the footnote text.} Blah blah blah...
腳註將出現在圖層下方\Anote
,看起來像
a這是註腳文字。
在該ednotes.sty
文件中,有許多可以修改以自訂的命令\Bnote
,但我無法了解如何獲得此行為。您可能會問,為什麼我不直接使用標準腳註實用程式?因為它出現在\Anote
圖層之上。需要明確的是,我試圖覆蓋的 ednote 中的預設行為是使用行號作為腳註引用。
我正在使用 LuaLaTeX 和 TeXShop。
答案1
我懷疑有可能創建一個將“正常”腳註放在“設備”註釋下方的黑客ednotes
。因為我不知道該怎麼做,所以這裡有一個第二好的解決方案
刪除 ; 中的行號並更改
\Bnote
;的標記格式定義了一個新的宏
\Bfootnote
,該宏修改計數器footnote
以產生(希望)正確的“裝置 B”音符的自動編號。
\documentclass{article}
\usepackage[Bplain]{ednotes}
\linenumbers
\newcommand{\Bnotefmt}{%
\renewcommand*{\sameline}[1]{\linesfmt{##1}}%
\renewcommand*{\differentlines}[2]{\linesfmt{##1\textendash##2}}%
% \renewcommand*{\linesfmt}[1]{\textbf{##1}\enspace}% DELETED
\renewcommand*{\linesfmt}[1]{}% NEW
\renewcommand*{\pageandline}[2]{##1.##2}% ##1 page, ##2 line.
\renewcommand*{\repeatref}[1]{##1}% E.g., ...
\renewcommand*{\repeatref}[1]{\textnormal{/}}% ... instead.
% \renewcommand{\lemmafmt}[1]{##1\thinspace]\enskip}% DELETED
\renewcommand{\lemmafmt}[1]
{\stepcounter{footnote}\textsuperscript{##1}\addtocounter{footnote}{-1}}% NEW
\renewcommand{\lemmaellipsis}{\textsymmdots}%
\renewcommand{\notefmt}[1]{##1}%
}
\newcommand*{\Bfootnote}[1]{%
\addtocounter{footnote}{-1}%
\Bnote{\footnotemark}{#1}%
}
\begin{document}
\null\vfill% just for the example
Some text \Anote{a}{An apparatus A note.}.
Some text.\Bfootnote{An apparatus B note that behaves like a normal footnote.}
Some text.\Bfootnote{And another one.}
\end{document}
答案2
同時我(ednotes
作者)已透過電子郵件告知:ednotes
用作manyfoot
「腳註引擎」。ednotes
腳註圖層的設定所使用manyfoot
的設定來建立不附註腳標記的腳註圖層。為了讓腳註標記“回來”,我認為不應該從內部嘗試ednotes
,最好manyfoot
直接使用。
在之前的解決方案中,我看到了\linesfmt
.這是非常正確的,就在我查看程式碼並自己發現它之前幾秒鐘。保羅\lemmafmt
以前就發現過。上面的解決方案看起來確實應該有效;但manyfoot
已經提供了一個最好直接使用的計數器。
答案3
根據 Uwe 的建議,這是另一種方法,它產生與鎖步相同的輸出(儘管沒有自動計數器):
\documentclass{article}
\usepackage{ednotes}
\linenumbers
\newfootnote{Z}
\newcommand\footnoteZ[2]{\Footnotemark{#1}\FootnotetextZ{}{#2}}
\begin{document}
\null\vfill% just for the example
Some text \Anote{a}{An apparatus A note.}.
Some text.\footnoteZ{1}{An apparatus B note that behaves like a normal footnote.}
Some text.\footnoteZ{2}{And another one.}
\end{document}
該命令是載入的包\newfootnote{}
的一部分。manyfoot
ednote