pdflatex 错误(?)与 Elsevier 模板和作者姓名中的重音

pdflatex 错误(?)与 Elsevier 模板和作者姓名中的重音

当我使用 pdflatex 构建 Elsevier (Automatica) 模板时,我发现其中有一个奇怪的错误。如果其中一位作者带有重音符号(ó 或其他符号)。文档的构建会产生错误。如果删除重音符号,错误就会消失,一切正常。2020 版没有出现此问题,2022 版和 2023 版都有此错误...

pdfTeX 版本 3.141592653-2.6-1.40.25(TeX Live 2023)(预加载格式=pdflatex 2023.6.15)2023 年 6 月 16 日 09:24

模板来源:http://www.elsevier.com/__data/promis_misc/automatica_latex.zip

中(中)英双语:

\documentclass[twocolumn]{elsart}

\usepackage{tikz}
\usepackage{color,cite}
\usepackage{url}
\usepackage{graphicx}
\usepackage{amssymb,amsmath,amsfonts,accents}

\begin{document}

\begin{frontmatter}

\title{Some title
\thanksref{footnoteinfo}}

\thanks[footnoteinfo]{This paper was not presented at any meeting.}

\author[bla]{someone}
\ead{[email protected]},\,
\author[bla]{someone}
\ead{[email protected]},\,
\author[bla,blo]{Some\'one}\ead{[email protected]} % remove the accent to get it working...

\address[bla]{Bla uni, blacity}
\address[blo]{Blo uni, blocity}

\begin{keyword}
Science
\end{keyword}

\begin{abstract}
In this paper, 
\end{abstract}

\end{frontmatter}

\section{bla}
Lorem Ipsum

\end{document}

答案1

班级里的人做了一些糟糕的事情。但你可以纠正这些错误行为。

奇怪的是,造成主要损害的宏被称为\no@harm……

该类在不应该使用\edef\xdef的地方使用了和,而应该优先使用\protected@edef\protected@xdef

\documentclass[twocolumn]{elsart}

\usepackage{tikz}
\usepackage{color,cite}
\usepackage{url}
\usepackage{graphicx}
\usepackage{amssymb,amsmath,amsfonts,accents}

\usepackage{xpatch}
\makeatletter % fix the wrong code in elsart.cls
\xpatchcmd{\runningauthor@fmt}{\global\edef}{\protected@xdef}{}{}
\xpatchcmd{\runningauthor@fmt}{\global\edef}{\protected@xdef}{}{}
\xpatchcmd{\author@fmt}{\edef}{\protected@edef}{}{}
\def\@xnamedef#1{\expandafter\protected@xdef\csname #1\endcsname}
\def\ead@au#1{\protected@edef\@ead@au{#1}}
\def\add@xtok#1#2{\begingroup
  \protected@xdef\@act{\global\noexpand#1{\the#1#2}}\@act
\endgroup}
\def\no@harm{}
\makeatother

\begin{document}

\begin{frontmatter}

\title{Some title
\thanksref{footnoteinfo}}

\thanks[footnoteinfo]{This paper was not presented at any meeting.}

\author[bla]{someone}
\ead{[email protected]},
\author[bla]{someone}
\ead{[email protected]},
\author[bla,blo]{Sóme\'one}\ead{[email protected]} % remove the accent to get it working...
\address[bla]{Bla uni, blacity}
\address[blo]{Blo uni, blocity}

\begin{keyword}
Science
\end{keyword}

\begin{abstract}
In this paper, 
\end{abstract}

\end{frontmatter}

\section{bla}
Lorem Ipsum

\end{document}

请注意,您可以使用ó\'o,都没有问题。

在此处输入图片描述

相关内容