这就是我的问题的补充biblatex、hashname 和 biber 中的数据模型,但由于问题比较大,我又提出了一个新问题。
如果任何根想要合并,都没有问题。
我想声明新的条目类型和新字段。我有两个解决方案: - 用于\DeclareSourceMap
将条目字段(在 bib 中)映射到另一个输出字段(用于\printfield{}
- 使用新的数据映射模型,以允许在我的输出文件中有新字段。
由于某些原因,我更喜欢使用第二种方式。所以我阅读了 biblatex 手册。
我创建了一个manuscripts.dbx
文件,内容如下
\DeclareDatamodelEntrytypes{manuscript}
\DeclareDatamodelFields{datation}
\DeclareDatamodelEntryfields{datation}
如果我正确阅读了手册,它足以允许在我的文件中拥有datation
字段。.bbl
我的.bib
文件包含此内容
@manuscript{P1470,
Library={BNF},
Address={Paris},
Datation={\textsc{viii}\textsuperscript{e} s.}
}
我的主文件包含以下内容
\documentclass{article}
\usepackage{fontspec}
\usepackage[datamodel=manuscripts,bibstyle=verbose,citestyle=verbose]{biblatex}
\bibliography{titi.bib}
\begin{document}
\nocite{*}
s
\printbibliography
\end{document}
当我运行 xelatex -> 没有问题
当我运行 biber -> bbl 输出文件是空的。
如果我注释\DeclareDatamodelEntryfields{datation}
->bbl输出文件不为空,但该字段datation
未添加到bbl输出文件中。
如果我注释Datation={\textsc{viii}\textsuperscript{e} s.}
->->bbl输出文件不为空,但该字段datation
未添加到bbl输出文件中。
我在 Os X 上,使用 Biber 1.8
II 使用 latemk 运行,latexmk 说“'biber example' 命令给出返回代码 6400”
答案1
当您用 定义新字段时,\DeclareDatamodelField
您必须指定type
和datatype
。根据您的情况,您需要。
\DeclareDatamodelFields[type=field,datatype=literal]{datation}
手册biblatex
没有指定是否需要这样的选项。