BibLaTeX - 省略引用中的标题

BibLaTeX - 省略引用中的标题

我可能再次需要一些帮助,因为我试图省略引文中的标题。参考书目中不能省略标题。

早在 2014 年,@moewe 就建议使用\AtEveryCitekey{\clearfield{title}}.[1] 该帖子于 2018 年更新。不幸的是,这对我来说不起作用。这些函数似乎并未过时,与 biblatex 手册有关。然而,使用以下代码我得到的是“Bock, Strafrecht Besonderer Teil。”而不是“Bock。”。

\documentclass[]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{csquotes}

\usepackage[backend=biber,%
    autocite=footnote,%
    bibstyle=ext-authortitle,%
    citestyle=ext-authortitle,%
]{biblatex}

\begin{filecontents}{\jobname.bib}
@book{Bock.2018,
 author = {Bock, Dennis},
 year = {2018},
 title = {Strafrecht Besonderer Teil},
 address = {Berlin, Germany},
 publisher = {{Springer Nature}},
 isbn = {978-3-662-54790-8},
 series = {Springer-Lehrbuch}
}
\end{filecontents}

\addbibresource{\jobname.bib}

\AtEveryCitekey{\clearfield{title}}

\begin{document}
Cite\autocite{Bock.2018}
\end{document}

答案1

ext-authortitle-terse(或)样式authortitle-terse正是您想要的。只要shorttitle相关条目中存在该字段,当同一作者有多部作品时,就会打印该字段;否则只会打印作者。我已调整您的示例.bib文件以显示两个不同的shortauthor字段。

\documentclass[]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{csquotes}

\usepackage[backend=biber,%
    autocite=footnote,%
    bibstyle=ext-authortitle,%
    citestyle=ext-authortitle-terse,%
]{biblatex}

\begin{filecontents}[overwrite]{\jobname.bib}
@book{Bock.2018,
 author = {Bock, Dennis},
 year = {2018},
 title = {Strafrecht Besonderer Teil},
 shorttitle = {Stafrecht},
 address = {Berlin, Germany},
 publisher = {{Springer Nature}},
 isbn = {978-3-662-54790-8},
 series = {Springer-Lehrbuch}
}
@book{Bock.2018B,
 author = {Bock, Dennis},
 year = {2018},
 title = {Strafrecht Besonderer Teil},
 shorttitle = {Besonderer},
 address = {Berlin, Germany},
 publisher = {{Springer Nature}},
 isbn = {978-3-662-54790-8},
 series = {Springer-Lehrbuch}
}
\end{filecontents}

\addbibresource{\jobname.bib}



\begin{document}
Cite\autocite{Bock.2018,Bock.2018B}
\end{document}

代码输出

相关内容