clv3 与 hyperref 冲突 TeX 容量超出,抱歉

clv3 与 hyperref 冲突 TeX 容量超出,抱歉

我在使用以下代码时遇到问题,出现错误

TeX 容量超出,抱歉 [输入堆栈大小=5000]。 \begin

我搜索了一下,发现了另一个问题这里。这是一个类似的问题,但没有解决我的问题。

代码:

\documentclass{clv3}
\usepackage{booktabs}
\usepackage{multirow}
\usepackage{mathtools}
\usepackage[dvipsnames, table]{xcolor}
\usepackage[hyphens]{url}
\usepackage{fontspec}
\usepackage{hyperref}
\hypersetup{colorlinks=true,citecolor=darkblue, linkcolor=darkblue, urlcolor=darkblue}
\usepackage[font=footnotesize]{caption}
\usepackage{tipa}
\input{preamble_tikz.tex}
\input{figures/pgfplot_configurations.tex}

\let\numdef\relax%@@@Fix conflict with @polyglossia
\usepackage{forest}
\usepackage{polyglossia}
\setmainlanguage{english}
\setotherlanguage{arabic}
\newfontfamily\arabicfont[Script=Arabic]{Amiri}
\setmainfont[Scale=0.925]{heuristica}
\usepackage{bidipoem}
\newcommand*\samethanks[1][\value{footnote}]{\footnotemark[#1]}
\begin{document}



\author{author1}\thanks{thank1}}
\affil{aff1}
%%%
\author{author2\thanks{thank2}%
\thanks{thank3}}
\affil{aff2}
%%%
\author{author3\thanks{thank3}%
\samethanks[3]}
\affil{aff3}
%%%
\author{author4\thanks{thank4}%
\samethanks[3]}
\affil{aff4}%%%%
%%%%%%%
\author{author5\thanks{thank5}%
\samethanks[5]}
\affil{aff5}

\title{XYX}
\maketitle
\end{document}

这个问题可以在以下情况下得到解决

  1. 删除\usepackage{hyperref}但链接将不起作用。
  2. 刪除\maketitle命令。

经过一番搜索,我发现这可能是一个冲突,因为hyperref重新定义\maketitlebidi执行相同的操作。但我不知道如何解决这个问题。

在此处输入图片描述

答案1

问题在于 与bidi的非标准定义相混淆\maketitle

如果您不打算在标题中使用阿拉伯语,则可以通过保存和恢复\maketitle(实际上是维护的副本hyperref)的含义来解决问题。

\documentclass{clv3}
%\documentclass{article}

\let\numdef\relax

\usepackage{polyglossia}
\usepackage{fontspec}
\usepackage{booktabs}
\usepackage{multirow}
\usepackage{mathtools}
\usepackage[dvipsnames, table]{xcolor}
\usepackage[hyphens]{url}
\usepackage[font=footnotesize]{caption}
\usepackage{tipa}
\usepackage{bidipoem}
\usepackage{forest}
\usepackage{hyperref}

\makeatletter
\let\clvHyOrg@maketitle\HyOrg@maketitle
\makeatother

\hypersetup{colorlinks=true,citecolor=darkblue, linkcolor=darkblue, urlcolor=darkblue}

%\input{preamble_tikz.tex}
%\input{figures/pgfplot_configurations.tex}

\setmainlanguage{english}
\setotherlanguage{arabic}
\newfontfamily\arabicfont[Script=Arabic]{Amiri}
\setmainfont[Scale=0.925]{heuristica}

\makeatletter
\AtBeginDocument{\let\HyOrg@maketitle\clvHyOrg@maketitle}
\makeatother


\begin{document}

\title{XYZ}

\maketitle

\end{document}

我还重新组织了序言,使其更加一致。

相关内容