Endnote(enotez)在 tabularx 中重复三次

Endnote(enotez)在 tabularx 中重复三次

当我像这样在 tabularx 中放置尾注时

\documentclass[12pt]{book}

\usepackage{enotez}
\setenotez{reset=true,backref=true,totoc=chapter}

\usepackage{tabularx}

\usepackage{hyperref}

\begin{document}

\begin{tabularx}{\textwidth}{ l X }
Some text. & Some more text\endnote{Endnote text.} and some more text. \\
\end{tabularx}

\end{document}

表格中打印的尾注编号向前跳了两个(在我的情况下,从 6 跳到 8),并且章节末尾打印的尾注列表包含插入尾注的重复项作为这两个添加的尾注。从表格(tabularx)中打印的“8”到章节末尾列表中的尾注的超链接(在我的情况下)工作正常,从列表到表格的超链接也是如此。但是,文本中没有与尾注列表中的附加注释(在我的情况下)6 和 7 相对应的尾注。如果我单击章节末尾列表中这些附加尾注的超链接,它会将我带到文档的开头。

非常感谢您的帮助。

答案1

您可以在测量阶段修补\TX@trial以禁用:\endnotetabularx

\documentclass[12pt]{book}

\usepackage{enotez}
\setenotez{reset=true,backref=true,totoc=chapter}

\usepackage{tabularx}

\usepackage{hyperref}

\usepackage{etoolbox}
\makeatletter
\patchcmd\TX@trial
  {\let\hbadness\@tempcnta}
  {\let\endnote\@firstofone\let\hbadness\@tempcnta}
  {}
  {}
\makeatother

\begin{document}

\begin{tabularx}{\textwidth}{ l X }
Some text. & Some more text\endnote{Endnote text.} and some more text. \\
\end{tabularx}

\end{document}

相关内容