
У меня та же проблема, что описана здесь:Двоеточие (:) вместо точки (.) после автора в библатексе, алфавитный
Моя проблема в том, что это решение не работает для biblatex-sbl, и поэтому я хотел бы спросить, как мне сделать так, чтобы двоеточие после имени было глобальным (для всех записей в библиографии (книга, инколекция, диссертация, обзор,...); примечания не должны изменяться)?
Этот вопрос также задавался здесь:https://golatex.de/umstellung-auf-biblatex-sbl-in-fussnoten-und-literaturverz-t21903.htmlно ответ был только в том, что это очень сложно. Вот мой MWE:
\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage[german=quotes]{csquotes}
\usepackage[style=sbl]{biblatex}
\usepackage{xpatch}
\xpatchbibdriver{XXX}
{\newunit
\usebibmacro{title}}
{\setunit{\printdelim{nametitledelim}}{\addcolon\space}%
\usebibmacro{title}}
{}
{}
\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@book{Engelmann:2013,
author = {Engelmann, Hans and Bengelmann, Franz},
title = {Die Sicht},
location = {Berlin},
publisher = {De Gruyter},
date = {2013},
series = {Gamma Omega, I. Reihe: Alpha},
shortseries = {GO.A},
number = {4},
}
@mvlexicon{TRE,
editor = {Schwertner, Siegried M.},
title = {Theologische Realenzyklopädie},
shorttitle = {TRE},
volumes = {36},
location = {Berlin and New York},
publisher = {De Gruyter},
date = {1976/2004},
shorthand = {TRE}
}
@inlexicon{Poe:1994,
author = {Poe, Edgar},
title = {Art. Dichtung},
volume = {2},
pages = {9--343},
xref = {TRE}
}
@review{Well.19,
author={Well, Jan},
revdauthor = {Ban, Peter},
revdtitle={Select. Tomus I, Paris 1950},
journaltitle = {Göttingische gelehrte Anzeigen},
shortjournal = {GGA},
volume={18,2},
keywords = {sekundaer},
date={1826},
pages={14--18},
}
@article{Wink:2000,
author = {Wink, Gert},
title = {„Mega“. Anmerkungen},
shorttitle = {„Mega“},
journaltitle = {Critica storia},
shortjournal = {Cs},
volume = {34,1},
date = {2000},
pages = {9--24}
}
@article{Wink:2003,
author = {Wink, Gert},
title = {„Mega II“. Anmerkungen},
shorttitle = {„Mega“},
journaltitle = {Critica storia},
shortjournal = {Cs},
volume = {41,4},
date = {2003},
pages = {11--22}
}
@incollection{peterson:1993,
author = {Peterson, David},
title = {The Motif of Fulfilment and the Purpose of Luke-Acts},
shorttitle = {Motif of Fulfilment},
pages = {83-104},
volume = {1},
maintitle = {The Book of Acts in Its First Century Setting},
editor = {Winter, Bruce W.},
location = {Grand Rapids},
publisher = {Eerdmans},
date = {1993},
}
@book{Pritchard:1969,
editor = {Pritchard, James B.},
title = {Ancient Near Eastern Texts Relating to the Old Testament},
edition = {3},
location = {Princeton},
publisher = {Princeton University Press},
date = {1969},
}
\end{filecontents*}
\addbibresource{\jobname.bib}
\begin{document}
\printbiblist{abbreviations}
Die Debatten.\footnote{Siehe hierzu: \cite{Poe:1994} und \cite{Wink:2000}.} Dies gilt analog für die Gegner.\footnote{Siehe hierzu: \cite{Wink:2003}.} Die beiden erwähnten\footnote{Siehe hierzu: \cite{Wink:2003}.} Bezeichnungen als „besonders“\footnote{\cite[1]{Engelmann:2013}.} verstanden werden.\footnote{\cite[Vgl.][1]{Engelmann:2013}. Siehe auch: \cite{peterson:1993}, \cite{Pritchard:1969}.} und \cite{Well19}.}
\printbibliography
\end{document}
Я признаю, что решение заключается в следующем:
\usepackage{xpatch}
\xpatchbibdriver{XXX}
{\newunit
\usebibmacro{title}}
{\setunit{\printdelim{nametitledelim}}{\addcolon\space}%
\usebibmacro{title}}
{}
{}
И это работает довольно хорошо (для "XXX" это должно быть "книга", "статья" и т. д.). Но мне интересно, почему "обзор" не работает?
решение1
Как упоминалось в моемпредыдущий ответ, пока нет прямого способа сделать это biblatex-sbl
. Со следующего релиза,этот ответбудет работать, но до тех пор вам придется пропатчить каждый cite:…
драйвер из файла sbl.cbx
и каждый драйвер из sbl.bbx
.
Я просмотрел два файла и сделал это для вас для каждого типа записи, который biblatex-sbl
поддерживает. Но это не так уж и сложно. Это просто вопрос чтения источника в sbl.cbx
и sbl.bbx
, просмотра того, где напечатан автор, и замены соответствующего \newunit
на контекстно-зависимое \setunit{\printdelim{nametitledelim}}
, которое мы можем контролировать независимо на основе первой цитаты, последующей цитаты и библиографии.
Я также добавил переопределение \namedashpunct
и исправление к author
bibmacro, чтобы гарантировать наличие двоеточия после тире в имени в библиографии.
Я знаю, что вносить эти изменения в biblatex-sbl
. неприятно, но вы должны помнить, что стиль явно разработан для того, чтобы делать то, что хочет SBL, и я не приложил все усилия, чтобы сделать изменения простыми.
МВЭ
\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage[german=quotes]{csquotes}
\usepackage[style=sbl]{biblatex}
\usepackage{xpatch}
% set up nametitledelim in different contexts
\DeclareDelimFormat[none,bib,biblist]{nametitledelim}{%
\ifciteseen
{\addcomma\space}
{\addcolon\space}}
% also put colon after dash
\renewcommand*{\namedashpunct}{\addcolon\space}
\xpatchbibmacro{author}
{\renewcommand*{\namedashpunct}{\adddot\space}}
{\renewcommand*{\namedashpunct}{\addcolon\space}}
{\message{Patching `author': Success^^J}}
{\message{Patching `author': Failure^^J}}
% patch citation drivers
\xpatchbibdriver{cite:ancienttext}
{\newunit
\usebibmacro{title}}
{\setunit{\printdelim{nametitledelim}}%
\usebibmacro{title}}
{\message{Patching `cite:ancienttext': Success^^J}}
{\message{Patching `cite:ancienttext': Failure^^J}}
\xpatchbibdriver{cite:classictext}
{\newunit
\usebibmacro{shorttitlenohyperlink}}
{\setunit{\printdelim{nametitledelim}}%
\usebibmacro{shorttitlenohyperlink}}
{\message{Patching `cite:classictext': Success^^J}}
{\message{Patching `cite:classictext': Failure^^J}}
\xpatchbibdriver{cite:article}
{\newunit
\usebibmacro{title}}
{\setunit{\printdelim{nametitledelim}}%
\usebibmacro{title}}
{\message{Patching `cite:article': Success^^J}}
{\message{Patching `cite:article': Failure^^J}}
\xpatchbibdriver{cite:book}
{\newunit
\usebibmacro{title}}
{\setunit{\printdelim{nametitledelim}}%
\usebibmacro{title}}
{\message{Patching `cite:book': Success^^J}}
{\message{Patching `cite:book': Failure^^J}}
\xpatchbibdriver{cite:suppbook}
{\usebibmacro{author/editor+others/translator+others}%
\newunit}
{\usebibmacro{author/editor+others/translator+others}%
\setunit{\printdelim{nametitledelim}}}
{\message{Patching `cite:suppbook': Success^^J}}
{\message{Patching `cite:suppbook': Failure^^J}}
\xpatchbibdriver{cite:commentary}
{\newunit
\usebibmacro{title}}
{\setunit{\printdelim{nametitledelim}}%
\usebibmacro{title}}
{\message{Patching `cite:commentary': Success^^J}}
{\message{Patching `cite:commentary': Failure^^J}}
\xpatchbibdriver{cite:incommentary}
{\usebibmacro{author/translator+others}%
\newunit}
{\usebibmacro{author/translator+others}%
\setunit{\printdelim{nametitledelim}}}
{\message{Patching `cite:commentary': Success^^J}}
{\message{Patching `cite:commentary': Failure^^J}}
\xpatchbibdriver{cite:incollection}
{\newunit
\usebibmacro{title}}
{\setunit{\printdelim{nametitledelim}}%
\usebibmacro{title}}
{\message{Patching `cite:incollection': Success^^J}}
{\message{Patching `cite:incollection': Failure^^J}}
\xpatchbibdriver{cite:inlexicon}
{\usebibmacro{author/translator+others}%
\newunit}
{\usebibmacro{author/translator+others}%
\setunit{\printdelim{nametitledelim}}}
{\message{Patching `cite:inlexicon': Success^^J}}
{\message{Patching `cite:inlexicon': Failure^^J}}
\xpatchbibdriver{cite:inreference}
{\newunit
\usebibmacro{title}}
{\setunit{\printdelim{nametitledelim}}%
\usebibmacro{title}}
{\message{Patching `cite:inreference': Success^^J}}
{\message{Patching `cite:inreference': Failure^^J}}
\xpatchbibdriver{cite:review}
{\usebibmacro{author/translator+others}%
\newunit}
{\usebibmacro{author/translator+others}%
\setunit{\printdelim{nametitledelim}}}
{\message{Patching `cite:review': Success^^J}}
{\message{Patching `cite:review': Failure^^J}}
\xpatchbibdriver{cite:thesis}
{\newunit
\usebibmacro{title}}
{\setunit{\printdelim{nametitledelim}}%
\usebibmacro{title}}
{\message{Patching `cite:thesis': Success^^J}}
{\message{Patching `cite:thesis': Failure^^J}}
\xpatchbibdriver{cite:misc}
{\newunit
\usebibmacro{title}}
{\setunit{\printdelim{nametitledelim}}%
\usebibmacro{title}}
{\message{Patching `cite:misc': Success^^J}}
{\message{Patching `cite:misc': Failure^^J}}
\xpatchbibdriver{cite:conferencepaper}
{\newunit
\usebibmacro{title}}
{\setunit{\printdelim{nametitledelim}}%
\usebibmacro{title}}
{\message{Patching `cite:conferencepaper': Success^^J}}
{\message{Patching `cite:conferencepaper': Failure^^J}}
\xpatchbibdriver{cite:periodical}
{\usebibmacro{editor+others}%
\newunit}
{\usebibmacro{editor+others}%
\setunit{\printdelim{nametitledelim}}}
{\message{Patching `cite:periodical': Success^^J}}
{\message{Patching `cite:periodical': Failure^^J}}
\xpatchbibdriver{cite:patent}
{\newunit
\usebibmacro{title}}
{\setunit{\printdelim{nametitledelim}}%
\usebibmacro{title}}
{\message{Patching `cite:patent': Success^^J}}
{\message{Patching `cite:patent': Failure^^J}}
% patch bibliography drivers
\xpatchbibdriver{ancienttext}
{\newunit
\usebibmacro{title}}
{\setunit{\printdelim{nametitledelim}}%
\usebibmacro{title}}
{\message{Patching `ancienttext': Success^^J}}
{\message{Patching `ancienttext': Failure^^J}}
\xpatchbibdriver{article}
{\newunit
\usebibmacro{title}}
{\setunit{\printdelim{nametitledelim}}%
\usebibmacro{title}}
{\message{Patching `article': Success^^J}}
{\message{Patching `article': Failure^^J}}
\xpatchbibdriver{book}
{\newunit
\usebibmacro{title}}
{\setunit{\printdelim{nametitledelim}}%
\usebibmacro{title}}
{\message{Patching `book': Success^^J}}
{\message{Patching `book': Failure^^J}}
\xpatchbibdriver{suppbook}
{\usebibmacro{author/editor+others/translator+others}%
\newunit}
{\usebibmacro{author/editor+others/translator+others}%
\setunit{\printdelim{nametitledelim}}}
{\message{Patching `suppbook': Success^^J}}
{\message{Patching `suppbook': Failure^^J}}
\xpatchbibdriver{incommentary:short}
{\newunit
\usebibmacro{title}}
{\setunit{\printdelim{nametitledelim}}%
\usebibmacro{title}}
{\message{Patching `incommentary:short': Success^^J}}
{\message{Patching `incommentary:short': Failure^^J}}
\xpatchbibdriver{incollection}
{\newunit
\usebibmacro{title}}
{\setunit{\printdelim{nametitledelim}}%
\usebibmacro{title}}
{\message{Patching `incollection': Success^^J}}
{\message{Patching `incollection': Failure^^J}}
\xpatchbibdriver{inreference:short}
{\newunit
\usebibmacro{title}}
{\setunit{\printdelim{nametitledelim}}%
\usebibmacro{title}}
{\message{Patching `inreference:short': Success^^J}}
{\message{Patching `inreference:short': Failure^^J}}
\xpatchbibdriver{review}
{\usebibmacro{author/translator+others}%
\newunit
\iffieldundef{title}
{\newunit}}
{\usebibmacro{author/translator+others}%
\setunit{\printdelim{nametitledelim}}%
\iffieldundef{title}
{}}
{\message{Patching `review': Success^^J}}
{\message{Patching `review': Failure^^J}}
\xpatchbibdriver{thesis}
{\newunit
\usebibmacro{title}}
{\setunit{\printdelim{nametitledelim}}%
\usebibmacro{title}}
{\message{Patching `thesis': Success^^J}}
{\message{Patching `thesis': Failure^^J}}
\xpatchbibdriver{misc}
{\newunit
\usebibmacro{title}}
{\setunit{\printdelim{nametitledelim}}%
\usebibmacro{title}}
{\message{Patching `misc': Success^^J}}
{\message{Patching `misc': Failure^^J}}
\xpatchbibdriver{conferencepaper}
{\newunit
\usebibmacro{title}}
{\setunit{\printdelim{nametitledelim}}%
\usebibmacro{title}}
{\message{Patching `conferencepaper': Success^^J}}
{\message{Patching `conferencepaper': Failure^^J}}
\xpatchbibdriver{periodical}
{\usebibmacro{editor+others}%
\newunit}
{\usebibmacro{editor+others}%
\setunit{\printdelim{nametitledelim}}}
{\message{Patching `periodical': Success^^J}}
{\message{Patching `periodical': Failure^^J}}
\xpatchbibdriver{patent}
{\newunit
\usebibmacro{title}}
{\setunit{\printdelim{nametitledelim}}%
\usebibmacro{title}}
{\message{Patching `patent': Success^^J}}
{\message{Patching `patent': Failure^^J}}
\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@book{Engelmann:2013,
author = {Engelmann, Hans and Bengelmann, Franz},
title = {Die Sicht},
location = {Berlin},
publisher = {De Gruyter},
date = {2013},
series = {Gamma Omega, I. Reihe: Alpha},
shortseries = {GO.A},
number = {4},
}
@mvlexicon{TRE,
editor = {Schwertner, Siegried M.},
title = {Theologische Realenzyklopädie},
shorttitle = {TRE},
volumes = {36},
location = {Berlin and New York},
publisher = {De Gruyter},
date = {1976/2004},
shorthand = {TRE}
}
@inlexicon{Poe:1994,
author = {Poe, Edgar},
title = {Art. Dichtung},
volume = {2},
pages = {9--343},
xref = {TRE}
}
@review{Well.19,
author = {Well, Jan},
revdauthor = {Ban, Peter},
revdtitle = {Select. Tomus I, Paris 1950},
journaltitle = {Göttingische gelehrte Anzeigen},
shortjournal = {GGA},
volume = {18,2},
keywords = {sekundaer},
date = {1826},
pages = {14--18},
}
@article{Wink:2000,
author = {Wink, Gert},
title = {\mkbibquote{Mega}. Anmerkungen},
shorttitle = {\mkbibquote{Mega}},
journaltitle = {Critica storia},
shortjournal = {Cs},
volume = {34,1},
date = {2000},
pages = {9--24},
sorttitle = {Mega. Anmerkungen}
}
@article{Wink:2003,
author = {Wink, Gert},
title = {\mkbibquote{Mega II}. Anmerkungen},
shorttitle = {\mkbibquote{Mega II}},
journaltitle = {Critica storia},
shortjournal = {Cs},
volume = {41,4},
date = {2003},
pages = {11--22},
sortitle = {Mega II. Anmerkungen}
}
@incollection{peterson:1993,
author = {Peterson, David},
title = {The Motif of Fulfilment and the Purpose of Luke-Acts},
shorttitle = {Motif of Fulfilment},
pages = {83-104},
volume = {1},
maintitle = {The Book of Acts in Its First Century Setting},
editor = {Winter, Bruce W.},
location = {Grand Rapids},
publisher = {Eerdmans},
date = {1993},
}
@book{Pritchard:1969,
editor = {Pritchard, James B.},
title = {Ancient Near Eastern Texts Relating to the Old Testament},
edition = {3},
location = {Princeton},
publisher = {Princeton University Press},
date = {1969},
}
\end{filecontents*}
\addbibresource{\jobname.bib}
\begin{document}
\printbiblist{abbreviations}
Die Debatten.\footnote{Siehe hierzu: \cite{Poe:1994} und \cite{Wink:2000}.}
Dies gilt analog für die Gegner.\footnote{Siehe hierzu: \cite{Wink:2003}.} Die
beiden erwähnten\footnote{Siehe hierzu: \cite{Wink:2003}.} Bezeichnungen als
„besonders“\footnote{\cite[1]{Engelmann:2013}.} verstanden
werden.\footnote{\cite[Vgl.][1]{Engelmann:2013}. Siehe auch:
\cite{peterson:1993}, \cite{Pritchard:1969} und \cite{Well.19}.}
\printbibliography
\end{document}