模块化 TeX 和缺失的参考书目

模块化 TeX 和缺失的参考书目

我使用的是 SublimeText3、Biblatex (v2.8a) 和 Biber (v1.8)。过去我曾多次成功编制了参考书目和引文。在将我的文档切换到模块化设计后,即使删除模块并恢复为 MWE,参考书目仍然不会出现(如下所示)。我得到的是流行的 [Long1997 ] 之类的引文,而不是1

我没有更改我的前言、构建顺序或软件包安装。我只添加了内容。我的调试过程:

  1. 已选中main.log(这里) 和main.bbl。 中的“缺少‘biblatex’包” bbl。 中出现以下错误.log
Package biblatex Warning: Please (re)run Biber on the file:
(biblatex)                first
(biblatex)                and rerun LaTeX afterwards.
  1. 再次检查了之前成功编译的序言。看起来不错。
  2. 再次检查 biblatex 是否仍然安装。确实如此。
  3. 再次检查了之前有效的号码布条目。看起来不错。
  4. 再次检查了之前有效的构建顺序。看起来不错。
  5. 让朋友再检查一下。没有异议。

我错过了什么?

main.tex

\documentclass{report}
\usepackage[style=numeric,backend=biber]{biblatex}
\addbibresource{nbabib.bib}
\newcommand{\HRule}{\rule{\linewidth}{0.5mm}}

\begin{document}
asdf \cite{Long1997}

\nocite{*}               
\printbibliography
\end{document}

nbabib.bib

@BOOK {Long1997,
AUTHOR = {Long, Scott},
TITLE = {Regression Models for Categorical and Limited Dependent Variables},
PUBLISHER = {Potomac Books},
ADDRESS = {Dulles, Virginia},
YEAR = {2004}}

我的构建文件,LaTeX.sublime-build

    "cmd": ["latexmk", 
            "latexmk",
            "biber",
            "latexmk",
            "-cd",
            "-e", 
            "\\$pdflatex = '%E -interaction=nonstopmode -synctex=1 %S %O'",
            //"-silent",
            "-f", "-pdf"],

更新:

  1. 由于与 \usepackage{biblatex} 不兼容,删除了冲突的 \usepackage{cite}。
  2. 通过 Tex Live Utility 更新所有软件包。

答案1

找到问题所在了。我向 .bib 添加了字段之间缺少逗号的条目。替换缺少的逗号后,编译成功,引用显示为 [1]、[2] 等,而不是 [标签]。我看到网上有很多 tex.SO 主题/其他文章,标题为“缺少参考书目”,与 Biblatex 和 biber 的使用有关。如果您使用这两个软件包,新手可以使用以下通用调试过程(在 Google 上搜索您不认识的术语或参考您的 TeX 文本):

  1. 检查 main.log 和 main.blg。Biber 能否找到您的 bib(即“找到 BibTeX 数据源‘pathhere/main.bib’”)
  2. 检查你的前言。语法错误?软件包是否相互兼容?
  3. 检查 bib 文件中的所有条目。如果 .bib 中的任何条目语法不正确,编译将失败。即使您尝试引用的特定条目可能是正确的。最佳实践可能另有规定,但您可以在条目的最后一个字段后使用逗号,空白字段(例如 YEAR = {})不会阻止编译。Biber 将删除此类空条目。除非您的某个模块语法不寻常,否则调制(将较长的 main.tex 分成多个 .tex 文件)不应导致参考书目出现问题。
  4. biblatex 和 biber 软件包是否已安装?在 Mac 上,您可以通过访问“Tex Live Utility”并单击“软件包”来检查。您还可以尝试通过单击“更新”来更新已安装的软件包。
  5. 构建顺序。您的文档必须在 main.tex 上调用序列 pdflatex->biber->pdflatex->pdflatex 来构建文档。在我的例子中,默认的 ST3 LaTeXTools 构建使用了“latexmk”,它调用了 pdflatex。
  6. 在这里搜索。用 Google 搜索你的错误关键字。询问朋友。在 IRC 聊天室 #latex 中询问。
  7. 在这里问。

*TeXperts 备注:请随意编辑。我还在学习 TeX-speak。

相关内容