Biblatex bietet die Möglichket mit pagination={section,paragraph, etc} automatisch die Textstellenangabe anzupassen. Das funktioniert jedoch (gem. Abschnitt 3.12.3 der Dokumentation) nur, wenn in postnote nur Textstellenangaben erkannt werden.

Werden aber beispielsweise Randnummern mit in postnote angegeben, wird pagination nicht mehr ausgegeben, da biblatex denkt, dass keine Textstelle in postnote angegeben wird (MB: 2). dies kann jedoch erzwungen werden (MB: 2).

Wird mit \DeclareFieldFormat{postnote}{\pno~#1} versucht, die Ausgabe zu erzwingen, wird jedoch unabhängig vom pagination-Eintrag S. ausgeben (MB: 3).

Open in writeLaTeX
\documentclass[fontsize=12pt,paper=a4,titlepage,twoside=false,headings=normal,numbers=noendperiod]{scrartcl}

\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{filecontents}

\begin{filecontents}{Bibliographie.bib}
    @BOOK{Doe14,
      author = {Doe, John},
      title = {Buch},
      year = {2014},
      location = {Ort},
      pagination = {section}
    }
}
\end{filecontents}

\usepackage[style=authortitle,
            language=ngerman,
            sorting=nyt,
            date=short,
            backend=biber]{biblatex}
\bibliography{Bibliographie.bib}

\usepackage[style=german,
            german=guillemets,
            parthreshold=true,
            autopunct=true]{csquotes}

\parskip2ex
\parindent0em

\begin{document}
1. Angabe korrekt.\autocite[5]{Doe14}

2. Hier fehlt die Ausgabe von \S\ wegen der Angabe der Radnummer in \emph{postnote}.\autocite[5, Rn.~14]{Doe14} Sie kann mit \emph{\textbackslash pno} erzwungen werden.\autocite[\pno~5, Rn.~14]{Doe14}

3. Wird versucht, die Ausgabe mit:
\begin{verbatim}
    \DeclareFieldFormat{postnote}{\pno~#1}
\end{verbatim}
\DeclareFieldFormat{postnote}{\pno~#1}
global zu erzwungen, wird aus \S\ allerdings ein \emph{S}.\autocite[][5, Rn.~14]{Doe14}

4. Das globale erzwingen bringt zudem das Problem mit sich, dass \emph{pagination} immer ausgegeben wird.\autocite[][\emph{postnote} ohne Textstellenangabe, vor die jedoch trotdem \emph{S.} gestellt wird.]{Doe14}

\printbibliography
\end{document}

Wie kann die korrekte Ausgabe erzwungen werden?

Am einfachsten wäre, bei der Prüfung anzusetzen und zu prüfen, ob postnote mit einer Ziffer anfängt. Ja: pagination an den Anfang setzen. Nein: pagination weglassen. Dies wäre auch insofern nötig als sonst auch bei postnote ohne Textstellenangabe ein S. o.ä. eingefügt wird (MB: 4.).

gefragt 18 Jul '14, 12:31

kurztipp's gravatar image

kurztipp
6316
Akzeptiert: 33%


Du kannst sowas versuchen. Es schaut sich aber nur das erste Element (bis zum ersten Komma) an:

Open in writeLaTeX
\usepackage{expl3}
\ExplSyntaxOn
\protected\long\def\blx@mkpageprefix#1[#2]#3{%
  \ifnumeral{#3}
    {\bibstring{#1}\ppspace}
    {\ifnumerals{#3}
       {\bibstring{#1s}\ppspace}
       {\clist_set:Nn\l_tmpa_clist{#3}
        \clist_get:NN\l_tmpa_clist\mytempa
        \expandafter\ifnumeral\expandafter{\mytempa}  
        {\bibstring{#1}\ppspace}{}%
         \def\pno{\bibstring{#1}}%
         \def\ppno{\bibstring{#1s}}}}%
  \blx@mkpageprefix@i[#2]{#3}}
\ExplSyntaxOff
Permanenter link

beantwortet 22 Jul '14, 09:30

Ulrike%20Fischer's gravatar image

Ulrike Fischer
2.2k13

Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Aktuelle Buch-Infos

LaTeX Cookbook

LaTeX Beginners Guide

Limitierter Rabatt ebook
50% Coupon code tDRet6Y

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs füge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×127
×1

Frage gestellt: 18 Jul '14, 12:31

Frage wurde angeschaut: 1,861 Mal

Zuletzt aktualisiert: 22 Jul '14, 09:30