我的文件没有任何问题.tex
,但是在编译一个使用不同文档类的单独文档后,我的当前文件不再加载。
具体来说,我使用的是imsart
文档类,并在该类中编译了一个单独的文件biom
,现在我的imsart
文件无法加载。我收到的错误是:
(c:/Program Files/PCTeX/PCTeXv6/texmf-dist/tex/latex/lm/ot1lmss.fd)
! Undefined control sequence.
<argument> \bibsep
l.66 \begin{document}
我试过移动它\begin{document}
,但没有任何效果。我几乎 100% 确定这与natbib
,但我不知道是什么。令人烦恼的是,文件没有被编辑,它只是后编译我的文件无法工作的其他类文件。
我已检查以确保我正在编译 LaTeXpdf
文件,就像之前一样。
基本代码在这里,它给出了同样的错误,实际上是从imsart
课程网站复制而来的:
\documentclass[aoas,preprint]{imsart}
\RequirePackage[OT1]{fontenc}
\RequirePackage{amsthm,amsmath}
\RequirePackage[numbers]{natbib}
\RequirePackage[colorlinks,citecolor=blue,urlcolor=blue]{hyperref}
\startlocaldefs
\numberwithin{equation}{section}
\theoremstyle{plain}
\newtheorem{thm}{Theorem}[section]
\endlocaldefs
\begin{document}
\section{Ordinary text}
It is interesting that simulations with the \cite{r4} model worked well
\begin{thebibliography}{9}
\bibitem{r4}
\textsc{Prokhorov, Yu.} (1956).
Convergence of random processes and limit theorems in probability
theory. \textit{Theory Probab. Appl.}
\textbf{1} 157--214.
\MR{84896}
\end{thebibliography}
\end{document}
答案1
我刚刚遇到了同样的问题,并找到了解决方案。
对我来说,这实际上是两个包之间的冲突:显然,我正在加载子图&子图不兼容的软件包(根据这个提示)。
如果我注释掉
\usepackage{subfigure}
或者
\usepackage{subfig}
代码正确执行。(子图显然已经过时了,应该被替换为子图)
显然,您应该只使用其中一个,因为它们理论上提供类似的功能,而我之前是依次加载的。
也许你的班级伊姆斯艺术是否同时导入两个包?
答案2
这可能有帮助,也可能没帮助。我不需要imsart
检查。
未定义的命令是\bibsep
。它是在 中定义的长度natbib.sty
,并且取决于已定义的长度\@listi
(分配给第一级项目标签的空间宽度)。
对于基础article
类,\@listi
在文件中定义size1*.clo
,并且取决于被调用的命令\normalsize
;其他类文件可能会以不同的方式设置它,包括延迟设置直到\AtBeginDocument
。如果的设置\@listi
被推迟,那就可以解释为什么在发生错误
\begin{document}
。这似乎只影响[numbers]
选项。
您可以检查imsart.cls
是否\normalsize
立即调用,或者的设置\@listi
是否延迟。如果您确定是这种情况,我认为您的下一步行动应该是通知的创建者/分发者,的 选项imsart.cls
不兼容。[numbers]
natbib
答案3
我没有imsart
加载该类,但如果我将类更改为文章,
\documentclass{article}
然后注释掉这两行,我不确定你是否需要?
% \startlocaldefs
% \endlocaldefs
然后用一个不熟悉的命令注释掉这一行,
% \MR{84896}
您的文档编译得很好。您可以检查并确保类imsart
文件位于您的 tex 树中或同一文件夹中,但除此之外,您是否需要这些行?