![Biblatex:不支持的条目类型 - 为什么要定义它们?](https://linux22.com/image/377049/Biblatex%EF%BC%9A%E4%B8%8D%E6%94%AF%E6%8C%81%E7%9A%84%E6%9D%A1%E7%9B%AE%E7%B1%BB%E5%9E%8B%20-%20%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E5%AE%9A%E4%B9%89%E5%AE%83%E4%BB%AC%EF%BC%9F.png)
我正在读主要文件在 biblatex 上,我对这个部分很感兴趣2.1.3 Unsupported Types
在 biblatex 上,我对其中列出了条目类型的“标准书目样式不提供支持”。但是为什么列出这些类型却从未提及。例如,为什么它们不包括类型@MyNiceCustomType
,而像所有这些不受支持的类型一样,它将被映射到@misc
?我的猜测是这些类型可能被一些非标准的书目样式使用,但这种表述有点误导 - 难道不应该是 thenNon-standard types
而不是 吗Unsupported types
?
答案1
这不支持标签在这方面可能有点不幸。事实上,我认为列出这些类型的主要目的是为自定义样式提供某种官方指导或可用框架,即使标准样式没有为这些类型专门设置任何内容。
由于“不支持”似乎让人们感到困惑,因此该部分从“不支持”类型重命名为“非标准”df4444b
讨论如下https://github.com/plk/biblatex/issues/753。该讨论的数据模型或样式没有任何功能变化。
Biber 很乐意将所有条目类型(甚至是数据模型中未知的条目)传递给biblatex
。参见https://github.com/plk/biber/issues/242。这是另一个近期的变化,这意味着对于许多基本意图和目的而言,数据模型是否知道条目类型并不重要。以前,Biber 会将数据模型未知的类型重新映射到@misc
。(用术语来说Biblatex 中条目类型的别名到底是什么关系?别名条目类型的格式应该如何配置?那将是一个硬的 Biber 端映射,而不是biblatex
应用于没有驱动程序的数据模型已知的条目类型的软端别名。)
考虑以下 MWE
\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[style=authoryear, backend=biber, dashed=false]{biblatex}
%\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@book{appleby1,
author = {Humphrey Appleby},
title = {On the Importance of the Civil Service},
subtitle = {The Book},
date = {1981},
}
@software{appleby2,
author = {Humphrey Appleby},
title = {On the Importance of the Civil Service},
subtitle = {The Software},
date = {1982},
}
@flobbel{appleby3,
author = {Humphrey Appleby},
title = {On the Importance of the Civil Service},
subtitle = {The Nonsense},
date = {1983},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\addbibresource{biblatex-examples.bib}
\DeclareFieldFormat{entrytype}{\texttt{@#1}}
\renewbibmacro*{begentry}{\printtext{Hello, I'm a \printfield{entrytype}}\newunit}
\begin{document}
\cite{appleby1,appleby2,appleby3}
\printbibliography
\end{document}
另请参阅我的评论https://github.com/force11/force11-sciwg/issues/48#issuecomment-371871401