我将我的 .bib 文件切换为 UTF-8 编码,并想用它biber
来创建我的参考书目(到目前为止我使用的是bibtex
)。
目前,我在 pdf 中没有论文的参考书目,因此我试图消除 .blg 文件中的很多警告。其中大多数与无效日期有关,我不明白我做错了什么,所以请帮忙:
日志文件输出(.blg)
Running `Biber' on `InvalidFormatOfDateField' with ``biber InvalidFormatOfDateField''
INFO - This is Biber 1.9
INFO - Config file is '/Users/mypath/.biber.conf'
INFO - Logfile is 'InvalidFormatOfDateField.blg'
INFO - Reading 'InvalidFormatOfDateField.bcf'
INFO - Using all citekeys in bib section 0
INFO - Processing section 0
INFO - Looking for bibtex format file 'test3.bib' for section 0
INFO - Decoding LaTeX character macros into UTF-8
INFO - Found BibTeX data source 'test3.bib'
WARN - Datamodel: Entry 'Huzzard1998a' (test3.bib): Invalid format '1998-6-15' of date field 'date' - ignoring
INFO - Overriding locale 'de-DE' defaults 'variable = shifted' with 'variable = non-ignorable'
INFO - Overriding locale 'de-DE' defaults 'normalization = NFD' with 'normalization = prenormalized'
INFO - Sorting list 'nty' of type 'entry' with scheme 'nty' and locale 'de-DE'
INFO - No sort tailoring available for locale 'de-DE'
INFO - Writing 'InvalidFormatOfDateField.bbl' with encoding 'UTF-8'
INFO - Output to InvalidFormatOfDateField.bbl
INFO - WARNINGS: 1
Biber finished at Tue Feb 24 08:52:46
示例 .tex 文件
\documentclass{scrbook}
%%%% {PACKAGES} %%%%
\usepackage[UKenglish, ngerman]{babel} %Sprachpakete Brit. Englisch, Deutsch Neue Rechtschreibung
\usepackage[utf8]{inputenc}
\usepackage[TS1, T1]{fontenc} %Kodierungen für Text 1 und Text Symbols
\usepackage{aecompl}
\usepackage{textcomp} %für Mü-Symbol
%Pakete für Zusatzfunktionen
\usepackage{hyperref} %Automatisches Verlinken der PDF-Datei
\usepackage[version=3]{mhchem}
%Weitere Pakete
\usepackage[natbib=true, style=numeric-comp, backend=biber, defernumbers, useprefix,firstinits=true, maxnames=99, maxcitenames=3]{biblatex} % für bessere Literaturverzeichnisse
\renewcommand{\bibfont}{\normalfont\small}
\renewcommand\multicitedelim{\addsemicolon\space}
\addbibresource{test3.bib}
%In Biblatex URL ignorieren, wenn DOI existiert (Quelle: https://tex.stackexchange.com/a/5779/4009)
\DeclareFieldFormat{url}{%
\iffieldundef{doi}{%
\mkbibacro{URL}\addcolon\space\url{#1}%
}{%
}%
}
\DeclareFieldFormat{urldate}{%
\iffieldundef{doi}{%
\mkbibparens{\bibstring{urlseen}\space#1}%
}{%
}%
}
\usepackage{csquotes} % Empfohlen bei Verwendung von biblatex
\begin{document}
\nocite{*}
\chapter{Test}
\printbibliography
\end{document}
同一目录中的 .bib 文件 test3.bib
% This file was created with JabRef 2.10.
% Encoding: UTF8
@Article{Huzzard1998a,
Title = {Slip flow in concentrated alumina suspensions},
Author = {Huzzard, R. J. and Blackburn, S.},
Journal = {Powder Technology},
Year = {1998},
Month = {6},
Number = {2},
Pages = {118--123},
Volume = {97},
Annote = { A model aqueous injection moulding paste was investigated by capillary rheology. The experimental work consisted of 26 pressure measurement on each of three capillaries to provide an extended shear rate from 0.5 to 150 s?. A power law model was found to be adequate for general prediction of the low curve. However, slip flow had to be taken into account to map the shape of the flow curve more accurately. The Hatzikiriakos method, which does not require the use of different diameter capillaries, was applied to measure slip flow and gave rational solutions. The flow curve was modelled using rheological parameters for shear flow and slip flow over the region of the flow curve for which they were valid. The adjusted model incorporating slip flow gave a better correlation with the experimental results.},
Date = {1998-6-15},
ISBN = {0032-5910},
Keywords = {Slip flow; Suspension; Ceramic injection moulding; Rheological parameters},
M3 = {doi: DOI: 10.1016/S0032-5910(97)03397-4},
Ty = {JOUR},
Url = {http://www.sciencedirect.com/science/article/B6TH9-3W7PV3R-J/2/c7388ddce941aaa116bdae27ef6ea711}
}
使用的软件
- MacOS X 上的 TeXLive 2014
- biblatex v2.9a
- 比伯 1.9
我尝试过(但没有成功):
- 我检查了日期条目,但根据
biblatex
手册,YYYY-MM-DD 是日期条目的正确格式 - 我还删除了月份/年份字段以避免重复信息,但我仍然收到相同的错误,提示日期格式无效
- 我删除了 biber-cache(每次编译之前)
- 我写的
month = 6
是month = {6}
按照建议的如何修复“字段‘X’格式无效”,但这并没有避免警告。
我的 biber.conf
- 我创建了一个文件 ~/biber.conf
- 并添加了以下文字:
抱歉,我不知道如何在此处发布此 xml 代码,它在我的帖子中,但没有显示,因此我将添加一个屏幕截图
备注:pdf 输出对我来说看起来还好,但其他条目的 100 个类似警告令人生畏
答案1
只是为了得到答案,这样问题就可以结束了。
当格式规定为 YYYY-MM-DD 时,则要求年份为四位数字(如果需要,用零填充),月份和日期为两位数字。
由于月份是一位数,因此1998-6-15
格式错误。
有人可能会说,当我们使用破折号时,这些信息是多余的。但是,当格式 100% 一致时,程序解析信息会容易得多。
原始海报的注释:使用 JabRef 解决方案
我的 bibtex 文件中的字段date
是用斜杠 / 而不是破折号 - 构造的,例如 2013/8// 而不是 2013-08(当缺少日期时甚至用双斜杠 //)。
所以我JabRef 2.10
曾经
- 将日期字段中的所有 / 替换为 - (注意:如果您确实使用了使用 / 的日期范围,那么您可能会弄乱您的日期!)
- 然后在日期字段中将所有--替换为--并消除了我的许多问题(但不是全部)。
- 然后我终于发现这些信息是多余的,因为它包含在年份和月份以及日期字段中,所以我决定删除那些也定义了年份和月份的条目的日期字段。
总的来说,JabRef 的正则表达式搜索/过滤功能在这里非常有用,例如,year=[0-9][0-9][0-9][0-9] and month=[0-9] and date!=""
查找已定义年份和月份且日期不为空的字段。
(我还按照@moewe 在评论中提出的建议清理了 DOI)