![ConTeXt:将脚注与边注文本相结合](https://linux22.com/image/356666/ConTeXt%EF%BC%9A%E5%B0%86%E8%84%9A%E6%B3%A8%E4%B8%8E%E8%BE%B9%E6%B3%A8%E6%96%87%E6%9C%AC%E7%9B%B8%E7%BB%93%E5%90%88.png)
背景
在我的文档中,我使用了修改后的脚注,其定义如下:
\def\mya#1{%
\tfx\high{a#1}%
}
\definenote[aNote]
[before={\blank[4mm]},
after={\blank[-8mm]},
textcommand=\mya,
paragraph=yes,
rule=off]
\setupnotation[aNote]
[alternative=serried,
before={a},
numbercommand=\tf,
style={\switchtobodyfont[8.5pt]},
way=bysection,
width=broad]
这会导致页边距中出现一块没有脚注标记的脚注。
问题:
我想将 ConTeXt 的脚注机制与通过边注文本注释脚注的可能性结合起来。不幸的是,我尝试实现这一点,例如
\aNote{This is my text.\inmargin{And this is an annotation.}}
或者
\aNote{This is my text.\margindata[inouter]{And this is an annotation.}}
没有任何结果。显示了脚注,但没有显示页边距文本。我认为这与脚注标记有关(也许页脚页边距中的空间仅供脚注标记使用?)。
我尝试过的另一种方法是将脚注放在脚注内,如下所示:
\def\mya#1{%
\tfx\high{a#1}%
}
\definenote[aNote]
[before={\blank[4mm]},
after={\blank[-8mm]},
textcommand=\mya,
paragraph=yes,
rule=off]
\setupnotation[aNote]
[alternative=serried,
before={a},
numbercommand=\tf,
style={\switchtobodyfont[8.5pt]},
way=bysection,
width=broad]
\definenote[marginNote]
\setupnote[marginNote][location=none]
\setupnotation[marginNote][
align={flushleft,bottom},
location=bottom,
width=broad,
numbercommand=\gobbleoneargument
]
\setuptexttexts[margin][]
[{\framed[%
align={right,bottom},
frame=off,
width=\rightmarginwidth
]{\placenotes[marginNote]}}]
\starttext
This is my main text.\aNote{Footnote text.\marginNote{Something additional.}}
\stoptext
这与我想要实现的目标很接近,但其中的文本\marginNote
应该与它引用的脚注显示在同一行。
问题:
有没有办法将这两种机制结合起来,以便我得到带注释的脚注?或者是否可以改变我的“脚注中的脚注”示例,以便第二个注释与第一个脚注位于同一行?
最小工作示例
\def\mya#1{%
\tfx\high{a#1}%
}
\definenote[aNote]
[before={\blank[4mm]},
after={\blank[-8mm]},
textcommand=\mya,
paragraph=yes,
rule=off]
\setupnotation[aNote]
[alternative=serried,
before={a},
numbercommand= {\tf},
style={\switchtobodyfont[8.5pt]},
way=bysection,
width=broad]
\starttext
Main text.\aNote{Footnote.\margindata[inouter]{Addenda.}}
\stoptext