我不需要在文本中添加任何引用,但我需要书末的参考书目。当我输入命令时,我遇到了after 的\nocite{*}
深度递归问题。biber
xelatex
biber
2.7版本,缓存已清除
\documentclass[12pt, twoside, openany]{book}
\usepackage{xunicode}
\usepackage{xltxtra}
\usepackage[T2A]{fontenc}
\usepackage{polyglossia}
%
\usepackage[%
defernumbers = true,
backend=biber,
bibstyle=gost-numeric,
citestyle=gost-footnote,
language=auto,
babel=other,
sorting=ntvy,
doi=false,
eprint=false,
isbn=false,
dashed=false
]{biblatex}
\addbibresource{astrsaints.bib}
\usepackage{filecontents}{astrsaints.bib}
@Book{marian,
ids = {marian},
title = {Святые и подвижники благочестия земли Астраханской},
location = {Астрахань},
publisher = {Тип. «Новая линия»},
year = {2010},
totalpage = {532},
editor = {игумен Иосиф (Марьян)},
editortype = {compiler},
langid = {russian},
language = {russian},
keywords = {commons},
}
\end{filecontents}
\begin{document}
%
\nocite{*}
\printbibliography[heading=secbib, title={Общие работы}, keyword = commons]
\end{document}
答案1
那里的问题似乎在于您在 bib 条目中定义了一个与原始密钥完全相等的密钥别名。
因此,如果您删除ids = {marian},
对您没有好处的内容,或者将其更改为ids = {marian2},
biber 应该可以很好地处理。
编辑:这是我使用的完整代码(根据评论中 egreg 的建议进行了改进):
\documentclass[12pt, twoside, openany]{book}
\usepackage{fontspec}
\usepackage{polyglossia}
\setmainlanguage{russian}
\setmainfont{CMU Serif}
%
\usepackage[%
defernumbers = true,
backend=biber,
bibstyle=gost-numeric,
citestyle=gost-footnote,
language=auto,
babel=other,
sorting=ntvy,
doi=false,
eprint=false,
isbn=false,
dashed=false
]{biblatex}
\addbibresource{astrsaints.bib}
\usepackage{filecontents}
\begin{filecontents}{astrsaints.bib}
@Book{marian,
ids = {marian2},
title = {Святые и подвижники благочестия земли Астраханской},
location = {Астрахань},
publisher = {Тип. «Новая линия»},
year = {2010},
totalpage = {532},
editor = {игумен Иосиф (Марьян)},
editortype = {compiler},
langid = {russian},
language = {russian},
keywords = {commons},
}
\end{filecontents}
\begin{document}
\nocite{*}
\printbibliography[title={Общие работы}, keyword = commons]
\end{document}
结果是: