![通过不同的命名进行编辑](https://linux22.com/image/478217/%E9%80%9A%E8%BF%87%E4%B8%8D%E5%90%8C%E7%9A%84%E5%91%BD%E5%90%8D%E8%BF%9B%E8%A1%8C%E7%BC%96%E8%BE%91.png)
我正在尝试根据我所在大学的标准设置“编辑”。它通常会显示姓氏、名字(Hg.)(年份):...。这可以正常工作。但是,如果我在书籍类型条目中有一个作者和编辑,它看起来会像这样:
(忽略“Übers”处的红色标签。)在这种情况下,省略括号是正确的,但是不说“Hrsg。”而应该简单地说“Hg。” - 有谁知道如何实现这一点,因为我已经在 MWE 中定义了编辑器的拼写?
\documentclass[12pt,a4paper,headings=standardclasses,numbers=noenddot]{scrartcl}
\usepackage[left=2.50cm, right=2.50cm, top=2.50cm, bottom=2.00cm, footskip=1cm]{geometry}
\usepackage[main=ngerman, english]{babel}
\usepackage[babel, german=quotes]{csquotes}
\usepackage[ngerman]{isodate}
\usepackage[ngerman]{datetime}
\usepackage[
backend=biber,
style=ext-authoryear,
sorting=nyvt,
maxnames=25,
innamebeforetitle=true,
usetranslator=true,
alldates=terse,
labeldate=year,
dashed=false,
isbn=false
]{biblatex}
\usepackage[hidelinks]{hyperref}
\DefineBibliographyStrings{german}{%
andothers = {et al\adddot},
editor = {Hg\adddot},
editors = {Hg\adddot},
urlseen = {letzter Abruf},
}
\usepackage{xpatch}
\xpatchbibdriver{online}
{\usebibmacro{byeditor+others}}
{\usebibmacro{online:editor+maintitle}}
{}{}
\xpatchbibmacro{editorstrg}{\bibstring}{\bibcpstring}{}{}
\xpatchbibmacro{editorstrg}{\bibstring}{\bibcpstring}{}{}
\renewcommand{\mkbibnamefamily}[1]{%
\ifitemannotation{journalauthor}
{\mkbibemph{#1}}
{\textsc{#1}}}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@book{Berry.2006,
year = {2006},
title = {Japan in Print},
volume = {12},
publisher = {{University of California Press}},
maintitle = {Asia: Local Studies / Global Themes},
author = {Berry, Mary Elizabeth},
subtitle = {Information and Nation in the Early Modern Period},
location = {Berkeley and California and London},
translator = {Test, Name},
editor = {Wasserstrom, Jeffrey N. and Wigen, K{\"a}ren and Tai, Hue-Tam Ho}
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
\nocite{*}
\clearpage
\printbibliography[heading=bibintoc,title={Literaturverzeichnis}]
\end{document}