我正在使用一个biblatex-gost
包。这是 MWE:
\documentclass[12pt,a4paper]{article}
\begin{filecontents}{\jobname.bib}
@book{halanay,
langid = {english},
title = {Differential Equations Stability, Oscillations, Time Lag},
author = {A. Halanay},
location = {New York--London},
publisher = {Acad. Press},
year = {1968},
pagetotal = {568},
}
\end{filecontents}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage[backend=biber,bibencoding=utf8,maxbibnames=999,style=gost-numeric,language=auto,autolang=other]{biblatex}
\addbibresource{\jobname.bib}
\toggletrue{bbx:gostbibliography}
\usepackage[autostyle]{csquotes}
\begin{document}
\cite{halanay}
\printbibliography
\end{document}
它产生
如您所见,参考文献中作者的名字和姓氏之间有一个换行符。我该如何禁止它,以便它们A. Halanay
在同一行中?
注意:A.~Halanay
不太好,因为 Biblatex 认为它是一个单词,并且A. Halanay
也写在行首。但是 GOST 样式要求Halanay A.
首先是,然后是A. Halanay
。
答案1
名字与姓氏之间的空格由 控制\bibnamedelimd
,默认情况下为\addlowpenspace
,即换行惩罚较低的空格。
您可以使用
\renewcommand*{\bibnamedelimd}{\addnbspace}
无条件避免换行。
\documentclass[12pt,a4paper]{article}
\begin{filecontents}{\jobname.bib}
@book{halanay,
langid = {english},
title = {Differential Equations Stability, Oscillations, Time Lag},
author = {A. Halanay},
location = {New York--London},
publisher = {Acad. Press},
year = {1968},
pagetotal = {568},
}
\end{filecontents}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage[backend=biber, maxbibnames=999, style=gost-numeric, language=auto, autolang=other]{biblatex}
\addbibresource{\jobname.bib}
\renewcommand*{\bibnamedelimd}{\addnbspace}
\toggletrue{bbx:gostbibliography}
\usepackage[autostyle]{csquotes}
\begin{document}
\cite{halanay}
\printbibliography
\end{document}