4

I use biblatex-sbl and this style abbreviated page numbers of (journal) articles (e.g. "159-74" instead of "159-174"). How can I circumvent this? in German-speaking bibliographies, it is not common to give abbreviated page numbers. Thus, I want create such result:

Leyerle, Blake. “John Chrysostom on the Gaze.” JECS 1 (1993): 159–174.

 \documentclass{article}
\usepackage{filecontents} 
\begin{filecontents}{\jobname.bib}

@article{leyerle:1993,
author = {Leyerle, Blake},
title = {John Chrysostom on the Gaze},
shorttitle = {Chrysostom},
journaltitle = {Journal of Early Christian Studies},
shortjournal = {JECS},
volume = {1},
date = {1993},
pages = {159-174}
}


@incollection{Ab.2005,
 author = {Ab, Tom},
 date = {2005},
 title = {Gǝ’ǝz Anaphora},
 shorttitle = {Gǝ’ǝz Anaphora},
 editor = {Zenk, Raul},
 pages = {132--144},
 location = {Rom},
 booktitle = {Studi},
series = {Orientalia Christiana Analecta},
 shortseries = {OCA},
}

\end{filecontents}
\usepackage[autostyle=true,german=quotes]{csquotes}
\usepackage[style=sbl,ibidtracker=false,idemtracker=false]{biblatex}
\addbibresource{\jobname.bib}
\begin{document}

genannt\footnote{Vgl.: \cite{leyerle:1993}.} oder\footcite{Ab.2005}.
\printbiblist{abbreviations}
\printbibliography
\end{document}
2
  • Probably \DeclareFieldFormat{pages}{\mknormrange{#1}} \DeclareFieldFormat{pagepages}{\mknormrange[\mkpageprefix]{#1}} \DeclareFieldFormat{pagesin}{\mknormrange[\mkpageprefix]{#1} \usebibmacro{in}} \DeclareFieldFormat{postnote}{\mknormrange{#1}} (untested because I don't have the time right now). If you get an error because \mknormrange is undefined, your biblatex is outdated. (In which case you can replace all \mknormrange{#1}s with just #1 or add \providecommand*{\mknormrange}[1]{#1} to the preamble).
    – moewe
    Jun 23 '19 at 17:26
  • Perfect, it works; Thanks!
    – user191310
    Jun 23 '19 at 18:09
2

biblatex-sbl uses \mkcomprange to compress numeric ranges in a number of fields. You'll want to replace all occurrences of \mkcomprange with \mknormrange.

\DeclareFieldFormat{volcitepages}{\mknormrange{#1}}
\DeclareFieldFormat{postnote}{\mknormrange{#1}}
\DeclareFieldFormat{pages}{\mknormrange{#1}}
\DeclareFieldFormat{pagepages}{\mknormrange[\mkpageprefix]{#1}}
\DeclareFieldFormat{pagesin}{\mknormrange[\mkpageprefix]{#1} \usebibmacro{in}}
\DeclareFieldFormat{altpostnote}{\mknormrange{#1}}

In total

\documentclass[british]{article}
\usepackage{libertinus}
\usepackage{babel}
\usepackage[autostyle=true,german=quotes]{csquotes}
\usepackage[style=sbl,ibidtracker=false,idemtracker=false]{biblatex}

\DeclareFieldFormat{volcitepages}{\mknormrange{#1}}
\DeclareFieldFormat{postnote}{\mknormrange{#1}}
\DeclareFieldFormat{pages}{\mknormrange{#1}}
\DeclareFieldFormat{pagepages}{\mknormrange[\mkpageprefix]{#1}}
\DeclareFieldFormat{pagesin}{\mknormrange[\mkpageprefix]{#1} \usebibmacro{in}}
\DeclareFieldFormat{altpostnote}{\mknormrange{#1}}


\usepackage{filecontents} 
\begin{filecontents}{\jobname.bib}
@article{leyerle:1993,
  author       = {Leyerle, Blake},
  title        = {John Chrysostom on the Gaze},
  shorttitle   = {Chrysostom},
  journaltitle = {Journal of Early Christian Studies},
  shortjournal = {JECS},
  volume       = {1},
  date         = {1993},
  pages        = {159-174}
}
@incollection{Ab.2005,
  author      = {Ab, Tom},
  date        = {2005},
  title       = {Gǝ’ǝz Anaphora},
  editor      = {Zenk, Raul},
  pages       = {132--144},
  location    = {Rom},
  booktitle   = {Studi},
  series      = {Orientalia Christiana Analecta},
  shortseries = {OCA},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}

genannt\autocite[Vgl.:][]{leyerle:1993} oder\footcite{Ab.2005}.
\printbiblist{abbreviations}
\printbibliography
\end{document}

Ab, Tom. ‘Gǝ’ǝz Anaphora’. Pages 132–144 in Studi. Edited by Raul Zenk. OCA. Rom, 2005.//Leyerle, Blake. ‘John Chrysostom on the Gaze’. JECS 1 (1993): 159–174.

If you are using an outdated version of biblatex \mknormrange might not be available, in that case replace \mknormrange{#1} with #1 and \mknormrange[\mkpageprefix]{#1} with \mkpageprefix{#1}.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.