自从我更新到 MacTeX 2015 后,我在类方面遇到了一些问题article
。我将问题缩小到命令\thanks
,但现在我似乎无法修复此发行版中的错误。文档中的其他所有内容都运行良好,但当我\thanks
在名字后面包含时,它会产生无限循环。如果我保留相同的前言但使用以前的发行版进行编译,一切都会正常。有什么解决方案吗?
\documentclass[11pt]{article}
\usepackage[margin=1in]{geometry}
\usepackage{setspace}\doublespacing
\usepackage{fancyhdr}
\usepackage{sectsty}
\usepackage{marvosym}
\usepackage{amsmath,amsthm,amsfonts,thmtools}
\usepackage{booktabs,threeparttable,graphicx}
\usepackage[center,bf]{subfigure}
\usepackage[center,bf]{caption2}
\usepackage[nolists]{endfloat}
\newtheorem{thm}{Theorem}[section]
\declaretheorem{theorem}
\declaretheoremstyle[headfont=\bf, headpunct={:}]{mystyle}
\declaretheorem[name={Hypothesis},style=mystyle,unnumbered]{Hypothesis}
\newtheorem{Proof}{Proof}
\newtheorem{Property}{Property}
\newtheorem{cor}[thm]{Corollary}
\newtheorem{lem}[thm]{Lemma}
\newtheorem{prop}[thm]{Proposition}
\theoremstyle{definition}
\newtheorem{defn}[thm]{Definition}
\theoremstyle{remark}
\newtheorem{rem}[thm]{Remark}
\usepackage[usenames,dvipsnames]{color}
\usepackage[round]{natbib}
\usepackage{url}
\usepackage[hyperfootnotes=false]{hyperref}
\hypersetup{colorlinks, citecolor=NavyBlue, linkcolor=Red, urlcolor=NavyBlue}
\bibpunct[,]{(}{)}{;}{a}{}{,}
\def\citepos#1{\citeauthor{#1}'s (\citeyear{#1})}
\def\hlinewd#1{%
\noalign{\ifnum0=`}\fi\hrule \@height #1 %
\futurelet\reserved@a\@xhline}
\makeatother
\makeatletter
\singlespace \title{Clever Title\thanks{Thank you.}}
\author{Author\thanks{My institution.}}
\begin{document}
\maketitle
\thispagestyle{empty}
\vspace{.4in}
\begin{abstract}\noindent
Abstract of 150 words.
\end{abstract}
\clearpage \pagebreak
\pagestyle{plain}
\setcounter{page}{1}
\doublespace
\section{Introduction}
\end{document}
答案1
改变线条
\title{Clever Title}\thanks{Thank you.} \author{Author}\thanks{My institution.}
到
\title{Clever Title\thanks{Thank you.}} \author{Author\thanks{My institution.}}
致谢需要在 {} 中。然后,它应该可以工作。
答案2
更新发行版时出现的奇怪错误通常是由不兼容的软件包引起的。最可能的原因是加载了旧版本的软件包,而不是新发行版中的软件包。
TeX 按以下顺序查找文件,并加载找到的第一个文件。这意味着如果本地文件存在于任何一个本地目录中,则本地文件将始终覆盖主分发文件。
local directory
TEXMFHOME = ~/Library/texmf (on a Mac) ~/texmf on most Linux systems
TEXMFLOCAL = /usr/local/texlive/texmf-local
TEXMFDIST = /usr/local/texlive/texmf-dist
除非你真的知道自己在做什么,否则你通常应该不是拥有属于主发行版的软件包的本地副本。要检查这一点,您可以查看日志文件。加载软件包时,会给出其完整路径。因此,例如,在 TL 2015 下编译的文档中,您应该看到软件包setspace
:
(/usr/local/texlive/2015/texmf-dist/tex/latex/setspace/setspace.sty)
如果你有本地副本,它将显示如下内容:
(/Users/<your-user-name>/Library/texmf/tex/latex/setspace.sty) [Mac]
(/Users/<your-user-name>/texmf/tex/latex/setspace.sty) [Linux]
如果这些包是常规 TeX Live 的一部分,那么您应该删除它们,除非您确实知道为什么需要它们作为本地包。