我希望它不是重复的,但我找不到解决方案。我使用 Citavi 生成 *.bib 文件。问题是,如果 ISBN 号接近行尾,它会生成过满的水平框,因为数字内没有自动换行符(甚至在连字符处也没有)。
我使用这个标题:
\usepackage[
backend=biber,
style=alphabetic,
backref=true]
{biblatex}
\DeclareNameAlias{sortname}{last-first} % Change order of names in bibliography
\DeclareNameAlias{default}{last-first} % Change order of names in bibliography
\makeatletter
\@ifpackageloaded{biblatex}{\addbibresource{Chapters/Bibliography.bib}}{\bibliography{Chapters/Bibliography}}
\makeatother
*.bib 文件中的条目是:
@book{Hahn.2002,
author = {Hahn, Hubert},
year = {2002},
title = {{Rigid Body Dynamics of Mechanisms}},
publisher = {Springer-Verlag},
isbn = {978-3-642-07617-6},
volumes = {2},
subtitle = {{1 Theoretical Basis}},
location = {Berlin and Heidelberg and New York},
pagetotal = {336},
file = {http://gso.gbv.de/DB=2.1/PPNSET?PPN=77292189X}
}
从而产生
如果我在数字中添加一个手动空格,我就会得到所需的结果
isbn = {978-3-642- 07617-6},
但如果有一个不会产生过满箱子的自动化解决方案就更好了。
MWE(LuaLaTex):
\documentclass[a4paper]{scrbook}
\usepackage{polyglossia} % instead of babel
\setdefaultlanguage[]{english}
\usepackage[english]{hyperref}
\usepackage{csquotes}% Recommended: http://tex.stackexchange.com/questions/5091/what-to-do-to-switch-to-biblatex
\usepackage{fontspec}
\setromanfont{Cambria}
\setsansfont{Calibri}
\usepackage[%style=numeric-comp, backend=biber]{biblatex}
backend=biber, % natbib=true,
style=alphabetic,%trad-alpha,
sorting=ynt, % year, name, title
backref=true]
{biblatex}
\DeclareNameAlias{sortname}{last-first} % Change order of names in bibliography
\DeclareNameAlias{default}{last-first} % Change order of names in bibliography
\begin{filecontents}{\jobname.bib}
@book{Hahn.2002,
author = {Hahn, Hubert},
year = {2002},
title = {{Rigid Body Dynamics of Mechanisms}},
publisher = {Springer-Verlag},
isbn = {978-3-642- 07617-6},
volumes = {2},
subtitle = {{1 Theoretical Basis}},
location = {Berlin and Heidelberg and New York},
pagetotal = {336},
file = {http://gso.gbv.de/DB=2.1/PPNSET?PPN=77292189X}
}
@book{Hahn.2012,
author = {Hahn, Hubert},
year = {2012},
title = {{Rigid Body Dynamics of Mechanisms}},
publisher = {Springer-Verlag},
isbn = {978-3-642-07617-6},
volumes = {2},
subtitle = {{1 Theoretical Basis}},
location = {Berlin and Heidelberg and New York},
pagetotal = {336},
file = {http://gso.gbv.de/DB=2.1/PPNSET?PPN=77292189X}
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
ABC
\nocite{*}
\printbibliography
\end{document}
非常感谢你的帮助!
答案1
现在在 TeXLive 2017 (LuaLaTeX 1.0) 中它可以正常工作 :)。谢谢大家。