Einträge im Literaturverzeichnis

Erstellung eines Literaturverzeichnisses mit BibTeX, Biber, BibLaTeX und Co.


jan_org
Forum-Anfänger
Forum-Anfänger
Beiträge: 36
Registriert: Di 26. Mär 2019, 14:16

Einträge im Literaturverzeichnis

Beitrag von jan_org »

Ich habe zwei Einträge in der Bib-file, allerdings ist der Output im Dokument unterschiedlich.
\documentclass[12pt,a4paper]{report} 

\usepackage[style=chicago-authordate,giveninits=true, maxcitenames=2, natbib=true, maxbibnames=10, refsection=chapter, backend=biber]{biblatex}
\addbibresource{doc.bib} 

\begin{document} 
	
\cite{bertolla_99} \cite{borjas99} 
	\printbibliography[heading=subbibliography] 
\end{document}
In der Bib-file
@INCOLLECTION{bertolla_99,
  author={Bertola, Giuseppe},
  editor={O. Ashenfelter and D. Card},
  title={Microeconomic perspectives on aggregate labor markets},
  booktitle={Handbook of Labor Economics},
  publisher={Elsevier},
  year={1999},
  volume={3C},
  chapter={45},
  pages={2985-3028},
}

@INCOLLECTION{borjas99,
title = {The Economic Analysis of Immigration},
author = {Borjas, George},
year = {1999},
chapter = {28},
pages = {1697-1760},
booktitle = {Handbook of Labor Economics},
editor = {Ashenfelter, O. and Card, D.},
volume = {3A},
publisher = {Elsevier},
}
Hat jemand eine Idee, warum einmal "3C:..." und einmal "vol. 3A,..." ausgegeben wird?

Gast

Beitrag von Gast »

Das liegt daran, dass biblatex-chicago im Gegensatz zu den Standardstilen prüft, ob der Inhalt des volume-Feldes numerisch ist und sich dann anders verhält, wenn dem nicht so ist.

Nun ist streng genommen weder "3A" noch "3C" echt numerisch, aber biblatex versucht, sowohl arabische als auch römische Zahlen abzudecken, da "C" ein valides römisches Zahlzeichen ist, wird "3C" als numerisch erkannt (auch wenn es eine merkwürdige Mischform ist) aber "3A" ist nicht numerisch, da "A" niemals Bestandteil einer Zahl ist.

Mit
\DeclareNumChars*{A}
könntest Du "3A" auch als numerisch durchgehen lassen. Ansonsten kannst Du mit etwas Herumgespiele an Interna dafür sorgen, dass römische Zahlen nicht mehr als \ifnumeral durchgehen.
\makeatletter
\def\blx@hook@ifnum{%
  \def\do##1{\uccode`##1=`\%}%
  \do\ \do\0\do\1\do\2\do\3\do\4\do\5\do\6\do\7\do\8\do\9%
  \blx@donumchars
  \let\RN\@firstofone
  \let\Rn\@firstofone}
\makeatletter
Beispiel
\documentclass[12pt,a4paper]{article}

\usepackage[authordate, backend=biber]{biblatex-chicago}

\DeclareNumChars*{A}

\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@incollection{bertolla99,
  author    = {Bertola, Giuseppe},
  editor    = {O. Ashenfelter and D. Card},
  title     = {Microeconomic perspectives on aggregate labor markets},
  booktitle = {Handbook of Labor Economics},
  publisher = {Elsevier},
  year      = {1999},
  volume    = {3C},
  chapter   = {45},
  pages     = {2985-3028},
}
@incollection{borjas99,
  title     = {The Economic Analysis of Immigration},
  author    = {Borjas, George},
  year      = {1999},
  chapter   = {28},
  pages     = {1697-1760},
  booktitle = {Handbook of Labor Economics},
  editor    = {Ashenfelter, O. and Card, D.},
  volume    = {3A},
  publisher = {Elsevier},
}
\end{filecontents}

\addbibresource{\jobname.bib}

\begin{document}
  \cite{bertolla99,borjas99}
  \printbibliography[heading=subbibliography]
\end{document}

jan_org
Forum-Anfänger
Forum-Anfänger
Beiträge: 36
Registriert: Di 26. Mär 2019, 14:16

Beitrag von jan_org »

Besten Dank, auf die Idee wäre ich niemals gekommen.

Eine kurze Rückfrage: Ich brauche das Gegenteil von
\DeclareNumChars*{A}
D.h. "C" soll als nicht-numerisch behandelt werden. Kann es passieren, dass ich dadurch Probleme mit der Seitennummeriung o.ä. bekomme?

Gast

Beitrag von Gast »

Das Gegenteil gibt es nicht wirklich, aber man kann mit der Version des Befehls ohne Stern die bisherige Einstellung einfach ersetzen statt sie zu erweitern. Siehe dazu die [d]biblatex[/d]-Anleitung. Dort findet sich auch die Voreinstellung für die Standardstile. Ob biblatex-chicago daran etwas ändert, habe ich nicht nachgeschaut.

Falls Du noch mehr Änderungen an biblatex-chicago brauchst, könntest Du natürlich auch einfach darüber nachdenken, stattdessen beispielsweise mit dem Standardsstil authoryear o. ä. anzufangen. Die Standardstile sind oft einfacher anpassbar. Das gilt ggf. auch für biblatex-ext-Stile.

jan_org
Forum-Anfänger
Forum-Anfänger
Beiträge: 36
Registriert: Di 26. Mär 2019, 14:16

Beitrag von jan_org »

Anonymous hat geschrieben:Das Gegenteil gibt es nicht wirklich, aber man kann mit der Version des Befehls ohne Stern die bisherige Einstellung einfach ersetzen statt sie zu erweitern.
Verstehe leider nicht, was damit gemeint ist bzw. wie mir das helfen sollte.

Gast

Beitrag von Gast »

Man muss eigentlich nur den Code, der oben bereits gezeigt wurde, kombinieren:
\begin{filecontents*}{\jobname.bib}
@INCOLLECTION{bertolla_99,
  author={Bertola, Giuseppe},
  editor={O. Ashenfelter and D. Card},
  title={Microeconomic perspectives on aggregate labor markets},
  booktitle={Handbook of Labor Economics},
  publisher={Elsevier},
  year={1999},
  volume={3C},
  chapter={45},
  pages={2985-3028},
}

@INCOLLECTION{borjas99,
title = {The Economic Analysis of Immigration},
author = {Borjas, George},
year = {1999},
chapter = {28},
pages = {1697-1760},
booktitle = {Handbook of Labor Economics},
editor = {Ashenfelter, O. and Card, D.},
volume = {3A},
publisher = {Elsevier},
}
\end{filecontents*}
\documentclass[12pt,a4paper]{report}

\usepackage[style=chicago-authordate,giveninits=true, maxcitenames=2, natbib=true, maxbibnames=10, refsection=chapter, backend=biber]{biblatex}
\addbibresource{\jobname.bib}
\makeatletter
\def\blx@hook@ifnum{%
  \def\do##1{\uccode`##1=`\%}%
  \do\ \do\0\do\1\do\2\do\3\do\4\do\5\do\6\do\7\do\8\do\9%
  \blx@donumchars
  \let\RN\@firstofone
  \let\Rn\@firstofone}
\makeatletter
\begin{document}
   
\cite{bertolla_99} \cite{borjas99}
   \printbibliography[heading=subbibliography]
\end{document}

Antworten