BibTex
这个问题之前已经在 Tex.SE 上被问过;已经给出了 一个似乎已经为用户解决了问题的答案:使用问号或粗体引用关键字代替引用编号。我使用Biber
并尽可能遵循了 Paul Stanley 的回答中的每一个步骤,但仍然遇到同样的错误:LaTeX Warning: Citation 'foo' on page N undefined on input line XX. LaTeX Warning: Empty bibliography on input line YY.
生成了一个.bcf
文件和一个.pdf
文件,但在 pdf 中我只看到粗体的引用键而不是实际的引用。
我在 Windows 10 中使用 MikTex 2.9 + TexMaker。我有 BibLaTex 3.3 和 Biber 2.4,它们彼此兼容Biber 文档
MWE(摘自无法使用 biblatex 创建参考书目):
\documentclass[12pt,a4paper]{article}
\usepackage{cmap}
\usepackage{mathtext}
\usepackage[T2A]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage{indentfirst}
\frenchspacing
\usepackage{authblk}
\usepackage{titling}
\usepackage{csquotes}
\usepackage[backend=biber,bibencoding=utf8,maxcitenames=2,style=authoryear]{biblatex}
\addbibresource{biblio.bib}
\begin{filecontents}{biblio.bib}
@article{quiroga2012concept,
title={Concept cells: the building blocks of declarative memory functions},
author={Quiroga, Rodrigo Quian},
journal={Nature Reviews Neuroscience},
volume={13},
number={8},
pages={587--597},
year={2012},
publisher={Nature Publishing Group}
}
\end{filecontents}
\begin{document}
\author{John Doe}
\section{section name}
\noindent Russian text \cite{quiroga2012concept}.\par
\end{document}
我确信我在编译时使用的是 Biber 而不是 BibTex,正如我pdflatex %.tex | biber % | pdflatex %.tex | pdflatex %.tex
在 TexMaker 中指定的那样,就像用户 John Crawford 在在 Ubuntu 上设置 TexMaker“未找到 biblatex.sty”。
Paul Stanley 的回答中哪一部分适用于Biber
?他提到了.blg
,.bst
但似乎Biber
没有生成这些文件。
谢谢!任何帮助我都非常感谢。
更新了新的错误消息:我遵循了 Torbjørn T 的建议Biblatex 与 Biber:配置我的编辑器以避免未定义的引用这次:
INFO - This is Biber 2.3 INFO - Logfile is 'foo.blg'
ERROR - Cannot find control file 'foo.bcf'! - did you pass the "backend=biber" option to BibLaTeX?
但backend=biber
选项就在那里\usepackage{biblatex}
。
更新没有错误消息,但没有引用:
按照 Bernard 的建议,在 TexMaker 中更改 BibTex 配置,然后更新 MikTek。现在我没有收到错误消息 - 甚至没有“引用 foo 未定义”,但引用仍然只显示引用键。但是\printbibliography
会打印所有参考资料。
更新:我仍然没有引用,但至少现在 TeX 文档可以编译,并且我的所有参考文献.bib
都会显示在结果中.pdf
。
答案1
我怀疑 Texmaker 配置为使用build
子目录来存放输出文件。如果确实如此,则该行(Bib)latex
应该是
C:\Program Files\MiKTeX 2.9\/miktex/bin/x64/biber.exe" build\%
(我假设 MiKTeX 安装在默认位置)。
答案2
为了记录目的而回答:
必须明确确保
Biber
版本BibLaTeX
相互兼容。两个软件包来自同一MikTeX
发行版并不一定意味着它们可以一起工作。Texmaker
需要正确设置:在 Ubuntu 上设置 TexMaker“未找到 biblatex.sty”。,如果启用了 Texmaker 的“使用构建子目录输出文件”选项,则加上 Bernard 的回答。