我正在写一份文件,内容如下:
\documentclass{amsart}
\usepackage[style=philosophy-modern, backend=biber]{biblatex}
同一作者的任意两篇参考文献。
我无法确定问题的原因,是另一个包还是某些代码。新作者区块之后的第一个日期与后续日期不一致。
一旦 biber 完成其工作,有什么想法可以解决这个问题,即使是手动的?
MWE 如下:
\documentclass{article}
\usepackage[style=philosophy-modern, backend=biber, ]{biblatex}
\begin{filecontents}[overwrite]{\jobname.bib}
@book{key,
author = {Max Muster},
maintitle = {Der Werktitel},
title = {Titel des zweiten Bandes},
volume = {2},
location = {Ort},
year = {2002},
keywords = {muster, etwas},
}
@book{keya,
author = {Max Muster},
maintitle = {Der Werktitel},
title = {Titel des Dritten Bandes},
volume = {3},
location = {Ort},
year = {2002},
}
@book{other,
author = {Michael Karomann},
maintitle = {Etwas},
title = {Nichts},
volume = {3},
location = {Ort},
year = {2002},
keywords = {test, etwas},
}
@book{other2,
author = {Michael Karomann},
maintitle = {Etwas},
title = {Nichts},
volume = {3},
location = {Ort},
year = {2008},
keywords = {test, etwas},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
\nocite{*}
\printbibliography
\end{document}
答案1
有一个奇怪的效果,即amsart
每个名称标题下的第一个条目会收到额外的缩进。这是由\listparindent
该类的设置引起的,可以通过在书目环境定义中将该长度设置为零来解决。
\documentclass{amsart}
\usepackage[backend=biber, style=philosophy-modern,]{biblatex}
\defbibenvironment{bibliography}
{\list
{}
{\setlength{\listparindent}{0pt}%
\setlength{\leftmargin}{\bibhang}%
\setlength{\itemindent}{-\leftmargin}%
\setlength{\itemsep}{\bibitemsep}%
\setlength{\parsep}{\bibparsep}}}
{\endlist}
{\item}
\addbibresource{biblatex-examples.bib}
\begin{document}
\nocite{knuth:ct:a,knuth:ct:b,knuth:ct:c,
sigfridsson,worman}
\printbibliography
\end{document}
如果同一组作者在同一年写了多个条目,则biblatex
在这些年份后面添加字母。这会导致相关引文标签比平时更长。由于样式将所有引文标签右对齐(这实现了与条目开头的统一距离),这意味着年份不会在左侧对齐。如果您更喜欢左对齐的年份,您可能需要尝试以下重新定义。(您可以调整值1.6em
。)
\documentclass{amsart}
\usepackage[backend=biber, style=philosophy-modern,]{biblatex}
\defbibenvironment{bibliography}
{\list
{}
{\setlength{\listparindent}{0pt}%
\setlength{\leftmargin}{\bibhang}%
\setlength{\itemindent}{-\leftmargin}%
\setlength{\itemsep}{\bibitemsep}%
\setlength{\parsep}{\bibparsep}}}
{\endlist}
{\item}
\renewcommand*{\postsepyear}[1]{%
\printtext{%
\makebox[\bibhang][l]{%
\hspace{1.6em}#1}}\nopunct}
\addbibresource{biblatex-examples.bib}
\begin{document}
\nocite{knuth:ct:a,knuth:ct:b,knuth:ct:c,
sigfridsson,worman}
\printbibliography
\end{document}