![添加(编辑)到特刊的期刊作者 biblatex](https://linux22.com/image/477807/%E6%B7%BB%E5%8A%A0%EF%BC%88%E7%BC%96%E8%BE%91%EF%BC%89%E5%88%B0%E7%89%B9%E5%88%8A%E7%9A%84%E6%9C%9F%E5%88%8A%E4%BD%9C%E8%80%85%20biblatex.png)
我正在用 LaTeX 写一篇论文,我使用了 NEPS(德国小组研究)的数据。使用它,我必须引用期刊的特刊。我的问题是我不知道如何在作者姓名后添加“(编辑)”。
一个最小的工作示例
\documentclass[12pt, a4paper]{article}
\usepackage[ngerman]{babel} %
\usepackage[utf8]{inputenc} %
\usepackage[T1]{fontenc} %
\usepackage[style=authoryear-comp, dashed=false, hyperref = auto, firstinits=true, indexing=cite, backend=biber]{biblatex}
\begin{filecontents*}{lit.bib}
@article{NEPS,
title={Education as a Lifelong Process – The German National Educational Panel Study (NEPS)},
author={Blossfeld, H.-P. and Roßbach, H.-G. and Von Maurice, J. {(Hrsg.)}},
journal={Zeitschrift für Erziehungswissenschaft: Sonderheft 14},
year={2011}
}
@article{NEPS2,
issuetitle={Education as a Lifelong Process – The German National Educational Panel Study (NEPS)},
editor={Blossfeld, H.-P. and Roßbach, H.-G. and Von Maurice, J.},
journal={Zeitschrift für Erziehungswissenschaft: Sonderheft 14},
year={2011}
}
\end{filecontents*}
\addbibresource{lit.bib}
\begin{document}
\cite{NEPS}
\cite{NEPS2}
\printbibliography
\end{document}
现在看起来如下(对于 \cite{NEPS}):
Blossfeld, H.-P., Roßbach, H.-G. & Von Maurice, J. ( (2011). Education as a Lifelong
Process – The German National Educational Panel Study (NEPS). Zeitschrift für Erziehungswissenschaft:
Sonderheft 14.
对于 \cite{NEPS2}
(2011). Zeitschrift für Erziehungswissenschaft: Sonderheft 14 : Education as a Lifelong
Process – The German National Educational Panel Study (NEPS). H.-P. Blossfeld,
H.-G. Roßbach & J. Von Maurice (Hrsg.).
但是,我希望它看起来像这样:
Blossfeld, H.-P., Roßbach, H.-G. & Von Maurice, J. (Hrsg.) (2011). Education as a Lifelong
Process – The German National Educational Panel Study (NEPS). Zeitschrift für Erziehungswissenschaft:
Sonderheft 14.
如何让 LaTeX 在作者字段中写入期刊作者后添加“(Hrsg.)/(eds.)”?或者如果使用该字段,如何重新格式化issuetitle
?
答案1
您可以将类型@periodical
用于期刊的整个期刊。然后,期刊名称将进入字段title
,期刊标题将进入issuetitle
。我很难找到“Sonderheft 14”的正确位置,因此 MWE 有两个示例,一个位于(可能语义上更好)number
字段中,另一个位于 中issuetitle
。
author
如果编辑不是作者,则绝不应将其放在该字段中,并且添加(Hrsg.)
或类似操作可能会出错,因为 Biber/BibTeX 会尝试将其解析为字段中名称的一部分(只能通过将整个名称放在一对括号中来避免,但这样名称就不会分为姓氏和名字)。幸运的是,@periodical
支持并显示了editor
我们想要的字段。
\documentclass[12pt, a4paper, ngerman]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[backend=biber, style=authoryear-comp,
dashed=false, giveninits=true,
indexing=cite,]{biblatex}
\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@periodical{NEPS,
issuetitle = {Education as a Lifelong Process --
The German National Educational Panel Study (NEPS)},
number = {Sonderheft 14},
editor = {Blossfeld, H.-P. and Roßbach, H.-G. and Von Maurice, J.},
title = {Zeitschrift für Erziehungswissenschaft},
year = {2011},
}
@periodical{NEPS2,
issuetitle = {Sonderheft 14:
Education as a Lifelong Process --
The German National Educational Panel Study (NEPS)},
editor = {Blossfeld, H.-P. and Roßbach, H.-G. and Von Maurice, J.},
title = {Zeitschrift für Erziehungswissenschaft},
year = {2011},
}
\end{filecontents*}
\addbibresource{\jobname.bib}
\begin{document}
\cite{NEPS,NEPS2}
\printbibliography
\end{document}
和
\DeclareFieldFormat{editortype}{\mkbibparens{#1}}
\DeclareDelimFormat{editortypedelim}{\addspace}
\DeclareFieldAlias{translatortype}{editortype}
\DeclareDelimAlias{translatortypedelim}{editortypedelim}
你会看到“Hrsg.”周围有括号。