我已经使用biblatex
包并喜欢打印每个条目换行符而不是; 带有空格。
我的 MWE 是:
\documentclass[english]{article}
\usepackage{babel,hyperref,fontspec}
\usepackage{csquotes,microtype}
\usepackage[bibencoding=utf8,style=numeric,sorting=none,maxbibnames=5]{biblatex}
\begin{filecontents}{\jobname.bib}
@article{ipab730bbib32,
author={Doherty J P and Moore M A and Kim J M and Bray A J},
year={1994},
journaltitle={Phys. Rev. Lett.},
volume={72},
}
@article{ipab730bbib32a,
author={Kardar M and Zee A},
year={1996},
journaltitle={Nucl. Phys. B},
volume={464},
}
@article{ipab730bbib32b,
author={Bork L V and Ogarkov S L},
year={2014},
journaltitle={Theor. Math. Phys.},
volume={178},
}
@set{staticsets,
entryset = {ipab730bbib32,ipab730bbib32a,ipab730bbib32b},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
\printbibliography
\nocite{*}
\end{document}
(1994); 之后需要回车符,(1996); 之后也需要回车符。这意味着每条记录都要换行。如何实现?
答案1
控制集合条目之间的标点符号的命令称为\entrysetpunct
。
\documentclass[english]{article}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[style=numeric, sorting=none, maxbibnames=5, giveninits]{biblatex}
\DeclareNameAlias{default}{family-given}
\renewcommand*{\revsdnamepunct}{}
\renewrobustcmd*{\bibinitperiod}{}
\renewrobustcmd*{\bibnamedelimi}{\addnbspace}
\renewcommand*{\entrysetpunct}{\addsemicolon\par}
\begin{filecontents}{\jobname.bib}
@article{ipab730bbib32,
author = {Doherty, J. P. and Moore, M. A. and Kim, J. M. and Bray, A. J.},
year = {1994},
journaltitle = {Phys. Rev. Lett.},
volume = {72},
}
@article{ipab730bbib32a,
author = {Kardar, M. and Zee, A.},
year = {1996},
journaltitle = {Nucl. Phys. B},
volume = {464},
}
@article{ipab730bbib32b,
author = {Bork, L. V. and Ogarkov, S. L.},
year = {2014},
journaltitle = {Theor. Math. Phys.},
volume = {178},
}
@set{staticsets,
entryset = {ipab730bbib32,ipab730bbib32a,ipab730bbib32b},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
\printbibliography
\nocite{*}
\end{document}