尽管备份了数据,\maketitle 仍停止工作

尽管备份了数据,\maketitle 仍停止工作

我突然开始收到以下错误(尽管从云端加载了我的文件和/或 bib 文件的先前版本):

Runaway argument?
{\scantokens { \Huge {\bfseries {\@title }}
! Paragraph ended before \MT@prot@l was complete.
<to be read again>
\par
l.37 ...unter{tocdepth}{3} \parskip=0pt \maketitle
\begin{romanpages} \table...
I suspect you've forgotten a `}', causing me to apply this
control sequence to too much text. How can we recover?
My plan is to forget the whole thing and hope for the best.
! Extra }, or forgotten \endgroup.
\MT@prot@group@@ ...er {\the \MT@toks \noexpand }}
}\endgroup
l.37 ...unter{tocdepth}{3} \parskip=0pt \maketitle
\begin{romanpages} \table...
I've deleted a group-closing symbol because it seems to be
spurious, as in `$x}$'. But perhaps the } is legitimate and
you forgot something else, as in `\hbox{$x}'. In such cases
the way to recover is to insert both the forgotten and the
deleted material, e.g., by typing `I$}'.
! Extra }, or forgotten \endgroup.
\MT@prot@group@@ ...r {\the \MT@toks \noexpand }}}
\endgroup
l.37 ...unter{tocdepth}{3} \parskip=0pt \maketitle
\begin{romanpages} \table...
I've deleted a group-closing symbol because it seems to be
spurious, as in `$x}$'. But perhaps the } is legitimate and
you forgot something else, as in `\hbox{$x}'. In such cases
the way to recover is to insert both the forgotten and the
deleted material, e.g., by typing `I$}'

这些错误与仅包含 的第 37 行相吻合\maketitle。我的 .tex 文件如下:

\documentclass[12pt]{oxfordthesis}

\usepackage{amssymb}
\usepackage{chemformula}
\usepackage{cite}
\usepackage{microtype}
\usepackage{parskip}
\usepackage{xcolor}
\usepackage{placeins}
\usepackage{setspace}
\usepackage{csquotes}
\usepackage{sectsty}
\usepackage{booktabs}
\usepackage{calc}
\usepackage{chemgreek}
\usepackage{ghsystem}
\usepackage{chemmacros}
    \chemsetup{modules={all}}

\title{xyz} 
\author{xyz}           
\college{xyz}  
\degree{xyz}     
\degreedate{xyz}       

\begin{document} \baselineskip=18pt plus1pt \setcounter{secnumdepth}{3} \setcounter{tocdepth}{3} \parskip=0pt

\maketitle 

\begin{romanpages} \tableofcontents \listoffigures \end{romanpages}}

\include{all chapters/bibliography etc}
 
\end{document}

我真的不确定错误来自哪里,特别是因为我已经加载了整个文档的旧版本

答案1

编辑:此问题已在microtypev3.0b 中修复。


一个错误microtype,也已被报告这里

一个快速的解决方法是使用选项加载包nopatch=item,这将防止microtype修补\@item此处失败的命令。

您还可以暂时禁用对文档中有问题的部分进行修补:

\microtypesetup{nopatch=item}
\maketitle
\microtypesetup{patch=item}

真正的修复是以下重新定义,它们将包含在下一次更新中:

\makeatletter
\long\def\MT@prot@l#1{%
  \MT@get@prot{#1}{left}%
  \leavevmode
  #1}
\def\MT@prot@group#{\bgroup\afterassignment\MT@prot@get@firstchar\let\MT@temp= }
\makeatother

相关内容