示例书目目前显示如下:
[1] John Doe 等人。书名。出版商,2023 年。
我希望它以这种方式显示:
[1] Doe J.、Smith A.、Parker P.、Edwards J. 书名。出版商,2023 年。
我完全不知道该怎么做,无论我怎么尝试,它要么无法编译,要么什么都不做。我正在考虑放弃自动书目包,直接手动操作。这会花费很多时间,但至少它会起作用,不像biblatex
。
以下是代码:
\documentclass[a4paper,10pt]{article}
\usepackage[english]{babel}
\usepackage[nottoc]{tocbibind}
\usepackage{biblatex}
\usepackage{csquotes}
\addbibresource{bibliography.bib}
\title{Bibliography management}
\author{Overleaf}
\begin{document}
\maketitle
\tableofcontents
\medskip
\section{First Section}
Cite \cite{author00}.
\medskip
\printbibliography
\end{document}
参考书目文件:
@book{author00,
title = {Book Title},
author = {John Doe and Adam Smith and Peter Parker and John Edwards},
year = {2023},
publisher = {Publisher},
}
答案1
据我所知,您只想更改作者姓名的显示方式。您需要的几乎所有更改都可以在biblatex
自定义简介中找到自定义 biblatex 样式的指南。
增加到maxbibnames
一个高值可显示所有名称,设置giveninits
为true
则仅显示名字的首字母。
然后您只需将名称格式从 更改default
given-family
为family-given
。
如果你不喜欢在最后一位作者前看到“and”,而更喜欢用逗号,请重新定义finalnamedelim
。(参见例如删除参考书目中的“and”)
\documentclass[a4paper,10pt]{article}
\usepackage[english]{babel}
\usepackage[nottoc]{tocbibind}
\usepackage{csquotes}
\usepackage[
backend=biber,
style=numeric,
maxbibnames=999,
giveninits=true,
]{biblatex}
\DeclareNameAlias{sortname}{family-given}
\DeclareNameAlias{author}{sortname}
\DeclareNameAlias{editor}{sortname}
\DeclareNameAlias{translator}{sortname}
\DeclareDelimAlias{finalnamedelim}{multinamedelim}
\begin{filecontents}{\jobname.bib}
@book{author00,
title = {Book Title},
author = {John Doe and Adam Smith and Peter Parker and John Edwards},
year = {2023},
publisher = {Publisher},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
\section{First Section}
Cite \autocite{author00}.
\printbibliography
\end{document}