biblatex 哲学 origyear 错误

biblatex 哲学 origyear 错误

biblatex-philosophy(现代/经典/详细)版本在 origyear 字段中给出了错误的介绍字符串(即“trans。”)。以下是 MWE:

\documentclass[12pt,a4paper]{article}

\usepackage{filecontents}

\begin{filecontents}{test2.bib}

@book{angut,  
    shorthand = {AN},  
    title = {Anguttara-Nikaya},  
    editor = {Richard Morris and Warder, A. K.},  
    volumes = {6},  
    origyear = 1885,  
    origendyear = 1910,  
    year = 1958,  
    endyear = 1976,  
    address = {London},  
    publisher = {The Pali Text Society},  
    keywords = {abbre,pali}  
}  

\end{filecontents}  

\usepackage[backend=biber, style=philosophy-modern,   language=american,publocformat=loccolonpub]{biblatex}

\addbibresource{test2.bib}  

\begin{document}  

\nocite{*}

\printbibliography

\end{document}

在此处输入图片描述

答案1

在 中这些orig*字段已弃用biblatex-philosophy,您应改用related功能。(请注意,标准bibiatex样式只是忽略了这些orig*字段,因此这种行为并没有什么不寻常的。)

文档biblatex-philosophy指出

以下 [ orig*] 字段可以保存翻译或原始版本数据。根据origfields=trans(默认)或 origfields=origed选项(见下文),它们前面分别带有字符串“trans.”或“orig. ed.” 。请注意,需要origdate/transdate字段才能打印这些字段。

这意味着默认情况下,假定指的orig*是翻译,您可以使用选项更改它origfields=origed。这将使您

《增支部》,6 卷本,伦敦:巴利文献学会;最初出版时间为 1885-1910 年。

由于缺少标题,因此低于标准。

您可以使用

\documentclass[12pt,a4paper]{article}

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@book{angut,  
    shorthand = {AN},  
    title = {Anguttara-Nikaya},  
    editor = {Richard Morris and Warder, A. K.},  
    volumes = {6},  
    date = {1958/1976},
    origdate = {1885/1910},
    address = {London},  
    publisher = {The Pali Text Society},  
}  

\end{filecontents}  

\usepackage[backend=biber, style=philosophy-modern,   language=american,publocformat=loccolonpub, origfields=origed]{biblatex}

\addbibresource{\jobname.bib}  

\NewBibliographyString{origpubbare}
\DefineBibliographyStrings{english}{origpubbare  = {orig\adddotspace pub\adddotspace}}

\makeatletter
\renewbibmacro*{transorigstring}{%
  \iffieldundef{reprinttitle}%
  {\printtext{\ifdefstring{\bbx@origfields}{origed}
      {\bibstring{origpubbare}}%
      {\bibstring{translationas}}}\nopunct}%
  {\printtext{\bibstring{reprint}}}\nopunct}
\makeatother

\begin{document}  

\nocite{*}

\printbibliography

\end{document}

反而。

这样,我们只需写“orig. pub.”而不是“orig. pub. as”。

相关内容