我正在撰写博士论文,无论如何我都无法弄清楚为什么我会收到此错误:
Runaway argument?
{NOAA} et~al.(2019{\natexlab {{}}){NOAA}, {ESRL Physical Science Divi\ETC.
! Paragraph ended before \@lbibitem was complete.
<to be read again>
\par
l.495
另一个错误:
! Argument of \@lbibitem has an extra }.
<inserted text>
\par
l.496 \bibitem[{NOAA} et~al.(2019{\natexlab{}}}
我检查了我的 bibtex 文件,看是否缺少花括号,结果没有。我检查了是否有隐形字符,结果没有。
24 小时内,我浏览了许多论坛,有人说它们可能是我包含的一个包,会覆盖现有设置。我对此并不了解,但我参考了论坛上的一些内容,这些内容都不会覆盖我当前的设置。任何帮助我都会很感激。
正如我所指出的,我已经在网上获得了一个“论文”文档类,并对其进行了调整以实现我想要的格式。
下面我附上了 MWE 文件的链接:
答案1
一些评论和意见:
BibTeX 发出的错误和警告信息应该会告诉你所有你需要知道的事情,以便修复语法错误在 bib 文件中。例如,第 20 行中不对称的引号、第 494 行中不对称的花括号(提示:将第二个实例替换
}
为"
)、名为的重复条目、条目中的jacox2016impacts
虚假逗号等。Williams, Claude N.
modeldata
各种 bib 条目中存在许多与拼写和大写相关的问题。例如,
journal
条目中的字段zou2005regularization
当前显示为journal={Journal of the royal statistical society: series B (statistical methodology)},
那肯定是
journal={Journal of the Royal Statistical Society: Series B (Statistical Methodology)},
在条目中
OLWR_Equatordata
,字段month = "aug",
应该是month = aug,
,即周围的引号aug
是虚假的。许多单词仍然需要用花括号括起来,以防止由于 BibTeX 的“句子样式”而以小写形式呈现。一些例子:(几个例子
California
)Canadian
,,,,,,,,,,,,等等等等。El Ni{\~n}o
Southern Oscillation
ENSO
MEI
STL
Pacific
US Pacific Northwest
Southwestern United States
FIO-ESM
虽然从技术上讲,不能防止不恰当的小写,但这却表明了对细节的关注度令人担忧。坦率地说,你可能从某个网站获得了这些条目,这种说法并不好,更不是这种马虎行为的有效借口。
相当多的条目(尤其是 类型的条目
@misc
)同时具有howpublished
字段和url
字段。在所有这些情况下,字段的内容howpublished
(a) 似乎重复了url
字段的内容,并且 (b) 无法将 URL 字符串包含在\url
指令中。在这种情况下,省略该字段似乎是合适的howpublished
。很多条目(我认为有将近二十几个)都有一个
note
字段,但这些字段中的材料note
似乎经常不适合纳入参考书目。您可以在编辑器中打开 bib 文件,并将所有实例更改为Note =
。xxNote =
(BibTeX 会忽略其无法识别名称的字段。)至少,您应该检查
note
字段是否合适。在某些情况下,note
字段包含与 ISBN 相关的信息。如果是这种情况,您有责任将其替换Note = {ISBN 0-387-95457-0}
为isbn = {0-387-95457-0}
。在包含字段的 75 篇文章中
month
,有 70 篇是在 8 月份发表的aug
。这是不是很巧合?最后但同样重要的是,有一个严重的问题(bug??),这是由于您有 42 [!!] 个条目,并且同一组作者即“NOAA、ESRL 物理科学部和 CIRES”以及同一出版年,即 2019 年。我确实认为这是一个错误,因为
IEEEtranNS
参考书目样式和/或natbib
引用包的作者似乎没有考虑到参考书目可能拥有超过 26 个共享完全相同author
和year
字段的条目。结果,natbib
--“NOAA et al. (2019<X>)
”所采用的年份字母标记方案,其中<X>
字母位于a
和之间 -- 一旦到达具有相同和字段z
的第 27 个条目,就会用尽字母。由此产生的错误消息(指神秘对象)相当难以理解且毫无用处。 :-(author
year
(2019{\natexlab {{}})
我还没有做足够的深入研究来判断这个错误是由
IEEEtranNS
参考书目样式还是natbib
引文管理包引起的。恐怕我无法真正修复这个错误。不过,要想出一个短期的解决方法,请问问自己,在论文中列出由“NOAA、ESRL 物理科学部和 CIRES”撰写并于 2019 年发表的所有 42 个条目是否绝对必要。您是否真的在论文文件中引用(并讨论)了这 42 个条目?列出大约一半的条目,甚至只列出三分之一的条目,是不是就可以了?如果列出所有 42 个条目很重要,那么在文档正文中而不是在参考书目中提供单独的列表是否更有意义?只是一个想法。