![参考书目中的多位作者仅以逗号分隔](https://linux22.com/image/431017/%E5%8F%82%E8%80%83%E4%B9%A6%E7%9B%AE%E4%B8%AD%E7%9A%84%E5%A4%9A%E4%BD%8D%E4%BD%9C%E8%80%85%E4%BB%85%E4%BB%A5%E9%80%97%E5%8F%B7%E5%88%86%E9%9A%94.png)
我有以下问题。我希望这本书的作者像图片中那样。姓氏,名字,姓氏,名字,姓氏,名字。
然而,使用 Overleaf 我只能得到这个输出:
我的代码如下:
\documentclass[12pt,a4paper]{article}
\usepackage[german]{babel}
\usepackage[style=authortitle]{biblatex}
\usepackage{filecontents}
\addbibresource{myreferences.bib}
\begin{document}
This is an example text \footcite[Vgl.][S.33]{bilanz}
\printbibliography
\begin{filecontents}{myreferences.bib}
@book{bilanz,
address = {D{\"u}sseldorf},
author = {Baetge, J{\"o}rg and Kirsch, Hans-J{\"u}rgen and Thiele, Stefan},
edition = {15},
publisher = {IDW},
title = {Bilanzen},
year = {2019}}
\end{filecontents}
\end{document}
谢谢您的帮助,祝您周末愉快。
答案1
总结一下这里的评论,我认为可以作为答案:
\documentclass[12pt,a4paper]{article}
\usepackage[german]{babel}
\usepackage[backend=biber,style=authoryear,giveninits=true,sorting=nyt,]{biblatex}
\usepackage{filecontents}
\AtBeginBibliography{%
\renewcommand*{\finalnamedelim}{%
\ifnumgreater{\value{liststop}}{2}{\finalandcomma}{}%
\addspace\&\space}%
}
\let\origparencite\parencite
\renewrobustcmd{\parencite}{%
\AtNextCite{%
\renewcommand*{\finalnamedelim}{%
\ifnumgreater{\value{liststop}}{2}{\finalandcomma}{}%
\addspace\&\space}%
}%
\origparencite%
}
\DeclareNameAlias{sortname}{family-given}
\begin{filecontents}{myreferences.bib}
@book{bilanz,
address = {D{\"u}sseldorf},
author = {Baetge, J{\"o}rg and Kirsch, Hans-J{\"u}rgen and Thiele, Stefan},
edition = {(15 Ausg.)},
publisher = {IDW},
title = {Bilanzen},
year = {2019}}
\end{filecontents}
\addbibresource{myreferences.bib}
\begin{document}
This is an example text \footcite[Vgl.][S.33]{bilanz}
\printbibliography
\end{document}
输出:
答案2
- 和不再需要重新定义“本地”。改用
\AtBeginBibliography
和的可选参数。(另请参阅我对链接的\renewrobustcmd
finalnamedelim
\DeclareDelimFormat
使用 BibLaTeX 将参考书目和括号引文中的“and”替换为“&”) - 如果你想新法律文书你
ngerman
不需要german
选择babel
。 sorting=nyt,
是默认的,style=authoryear,
因此可以被删除。- 一般情况下,建议在文件中添加
.bib
尽可能少的标记。版本周围的括号可以通过字段格式获得,不应在文件中进行硬编码.bib
。 biblatex
可以自动为附注中的页面添加前缀“p.”/“pp.”(“S.”)。所以你不需要\footcite[Vgl.][S.33]{bilanz}
,说 就足够了\footcite[Vgl.][33]{bilanz}
。- 由于您使用 Biber,因此您可以在文件中直接使用非 ASCII 字符,如
ü
和。无需将它们转义为和。(如果您使用的是 pdfLaTeX [而不是 LuaLaTeX 或 XeLaTeX],您将需要加载以允许 TeX 对包含非 ASCII 字符的单词进行连字符连接。如果您使用的是非常旧的 LaTeX 版本 [早于 2018 年 4 月],您还需要。当您使用开箱即用支持 UTF8 的 LuaLaTeX 或 XeLaTeX 时,这两个问题都不适用。无论如何,请确保您的文档以 UTF8 编码。)ö
.bib
{\"u}
{\"o}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{csquotes}
\usepackage[backend=biber, style=authoryear, giveninits=true]{biblatex}
\DeclareDelimFormat[bib,parencite]{finalnamedelim}{%
\ifnumgreater{\value{liststop}}{2}{\finalandcomma}{}%
\addspace\&\space}%
\DeclareNameAlias{sortname}{family-given}
\DeclareFieldFormat{edition}{%
\mkbibparens{%
\ifinteger{#1}
{\mkbibordedition{#1}~\bibstring{edition}}
{#1\isdot}}\nopunct}
\begin{filecontents}{\jobname.bib}
@book{bilanz,
author = {Baetge, Jörg and Kirsch, Hans-Jürgen and Thiele, Stefan},
title = {Bilanzen},
edition = {15},
publisher = {IDW},
year = {2019},
address = {Düsseldorf},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
This is an example text \footcite[Vgl.][33]{bilanz}
\printbibliography
\end{document}