我想将系列项目放在行的实际末尾,即总页数之后。
在这里,我发现了如何将其放在日期后面:Biblatex/Biber:将系列、卷数和编号放在末尾
使用以下代码:
\RequirePackage{xpatch}
\renewbibmacro*{series+number}{%
\iffieldundef{series}
{}
{\printtext[parens]{%
\printfield{series}%
\setunit*{\addspace}%
\printfield{number}%
\newunit}}}
\newcommand*\patchseries[1]{%
\xpatchbibdriver{#1}
{\usebibmacro{series+number}}
{}
{}
{\typeout{Warning: Failed to remove series+number from driver #1.}}
\xpatchbibdriver{#1}
{\usebibmacro{publisher+location+date}}
{\usebibmacro{publisher+location+date}%
\setunit{\addcomma\addspace}%
\usebibmacro{series+number}}
{}
{\typeout{Warning: Failed to add series+number to driver #1.}}}
\patchseries{book}\patchseries{inbook}
\patchseries{collection}\patchseries{incollection}
\patchseries{proceedings}\patchseries{inproceedings}
\DeclareFieldFormat{number}{\bibstring{number}~#1}
但对于这个
@BOOK{laplantine1999,
keywords = {livre},
entrysubtype = {ouvrages},
title = {Je, nous et les autres},
publisher = {Le Pommier},
year = {1999},
author = {LAPLANTINE, François},
address = {Paris},
series = {Manifeste},
pagetotal = {162}
}
结果是这样的:
拉普兰蒂纳,弗朗索瓦。我,我们和其他人,巴黎:Le Pommier,1999 年,(汇编宣言),162 页。
我想:
拉普兰蒂纳,弗朗索瓦。我、我们和其他人,巴黎:Le Pommier,1999 年,162 页。 (合集宣言)
答案1
你可能想要
\documentclass[ngerman]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[backend=biber,style=authortitle]{biblatex}
\usepackage{microtype}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@Book{Kafka.2001,
Title = {Die Verwandlung},
Author = {Kafka, Franz},
Publisher = {Philipp Reclam},
Year = {2001},
Address = {Stuttgart},
Number = {9900},
Series = {Reclams Universal-Bibliothek}
}
@BOOK{laplantine1999,
keywords = {livre},
entrysubtype = {ouvrages},
title = {Je, nous et les autres},
publisher = {Le Pommier},
year = {1999},
author = {LAPLANTINE, François},
address = {Paris},
series = {Manifeste},
pagetotal = {162}
}
\end{filecontents}
\addbibresource{\jobname.bib}
\addbibresource{biblatex-examples.bib}
\usepackage{xpatch}
\renewbibmacro*{series+number}{%
\iffieldundef{series}
{}
{\printtext[parens]{%
\printfield{series}%
\setunit*{\addspace}%
\printfield{number}%
\newunit}}}
\newcommand*\patchseries[1]{%
\xpatchbibdriver{#1}
{\usebibmacro{series+number}}
{}
{}
{\typeout{Warning: Failed to remove series+number from driver #1.}}
\xpatchbibdriver{#1}
{\usebibmacro{addendum+pubstate}}
{\usebibmacro{addendum+pubstate}%
\setunit{\addspace}%
\usebibmacro{series+number}}
{}
{\typeout{Warning: Failed to add series+number to driver #1.}}}
\patchseries{book}\patchseries{inbook}
\patchseries{collection}\patchseries{incollection}
\patchseries{proceedings}\patchseries{inproceedings}
\DeclareFieldFormat{number}{\bibstring{number}~#1}
\begin{document}
\blockcquote{Kafka.2001}{Als Gregor Samsa eines Morgens aus unruhigen Träumen erwachte, fand er sich in seinem Bett zu einem ungeheueren Ungeziefer verwandelt.}.
\nocite{sigfridsson,worman,brandt,baez/article,laplantine1999}
\printbibliography
\end{document}
唯一的变化是
\xpatchbibdriver{#1}
{\usebibmacro{addendum+pubstate}}
{\usebibmacro{addendum+pubstate}%
\setunit{\addspace}%
\usebibmacro{series+number}}
{}
{\typeout{Warning: Failed to add series+number to driver #1.}}
代替
\xpatchbibdriver{#1}
{\usebibmacro{publisher+location+date}}
{\usebibmacro{publisher+location+date}%
\setunit{\addcomma\addspace}%
\usebibmacro{series+number}}
{}
{\typeout{Warning: Failed to add series+number to driver #1.}}
这使得该系列进一步落后。