PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Eigene biblatex Treiber



kurztipp
06-02-2013, 16:24
Hallo,

ich versuche derzeit eigene Treiber für biblatex zu erstellen. Allerdings stehe ich vor folgendem Problem: Es funktioniert nicht ;)
Während der Treiber für das Literaturverzeichnis funktioniert und macht, was er soll, gilt dies nicht für den Treiber der Zitatangabe.
Es wird lediglich der shorttitle und die angegebene Seitenzahl von dem Treiber ausgegeben -- unabhängig davon, was eigentlich im Treiber steht.
Zudem wird der shorttitle komischerweise kursiv gesetzt, statt normal und biblatex unterdrück den Doppelpunkt vor der Seitenangabe.
Was mache ich falsch bzw. habe ich übersehen?
Einen anderen Treiber, den ich so erstellt habe, funktioniert wie er soll.


\documentclass[fontsize=12pt,paper=a4,titlepage,twoside=false,hea dings=normal]{scrartcl}

\usepackage[style=authoryear,
% citestyle=authoryear,
% bibstyle=authoryear,
language=ngerman,
sorting=nyt,
backref=false, % Im Literaturverzeichnis Seiten der Zitatverweise anzeigen
hyperref=false, % Verweis mit Hyperlink zum Literatuverzeichnis (hyperref ben.)
firstinits=false, % Vor- und Mittelnamen abkürzen
backend=biber,
]{biblatex}

\begin{filecontents}{biblatex.bib}
@legal{rechenB08,
number = {17/630},
shorttitle = {BT-Drs.},
journaltitle = {BT-Drucksache},
title = {Unterrichtung durch den Präsidenten des Deutschen Bundestages},
subtitle = {Bekanntmachung von Rechenschaftsberichten politischer Parteien für das Kalenderjahr 2008 (1. Teil – Bundestagsparteien)},
}
@book{GRECO09,
author = {{Group d'etats contre la corruption}},
shortauthor = {GRECO},
year = {2009},
title = {Evaluation Report on Germany on Transparency of Party Funding},
publisher = {},
keywords = {GRECO Berichte},
address = {Stra{\ss}burg}
}
\end{filecontents}

\bibliography{biblatex.bib}

\DeclareLanguageMapping{ngerman}{ngerman-apa}

%------------------------------------------------
%% Seiteneinrichtung
% Seitenränder
\usepackage{geometry}
\geometry{a4paper, includeheadfoot,%
top=25mm, left=40mm, right=25mm, bottom=25mm,%
headsep=12.5mm, footskip=12.5mm} % headsep=Abstand Kopfzeile-Text footskip=Abstand Fußzeile-Text

%------------------------------------------------
%% Spracheinstellungen
% Deutsche Sprachunterstützung
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
% Sonderzeichen verfügbar machen
\usepackage[T1]{fontenc}
% Anführungszeichen zentral und einheitlich über csquotes und \enquote{} verwalten
\usepackage[style=german]{csquotes}

%------------------------------------------------
%% Zeichen- / Absatzeinstellung
% Überschriften auf Times stellen
\addtokomafont{sectioning}{\rmfamily}
% Schriftartfamilie auf Times stellen
\usepackage{txfonts}
% Zeilenabstand: eineinhalb
\usepackage{setspace}
\onehalfspacing
% Neue Absätze ohne Einrückung aber mit Zeilenabstand
\parindent 0pt
\parskip 10pt

% Abkürzungen zentral verwalten
\usepackage[printonlyused]{acronym}

%% Bibliographie anpassen
\DeclareLanguageMapping{ngerman}{ngerman-apa}
% Doppelpunkt nach Autorangabe
\renewcommand{\labelnamepunct}{\addcolon\addspace}
% Formatierung der Namen
\renewcommand*{\mkbibnamelast}[1]{#1}
\renewcommand*{\mkbibnamefirst}[1]{#1}
\renewcommand*{\mkbibnameprefix}[1]{#1}
\renewcommand*{\mkbibnameaffix}[1]{#1}
% Kein Komma zw. Author und Jahr bei Quellenangaben
\renewcommand*{\nameyeardelim}{\addspace}
% Doppelpunkt nach Author und Jahr bei Quellenangaben
\renewcommand*{\postnotedelim}{\addcolon\addspace}
% Titel nicht kursiv
\DeclareFieldFormat{title}{#1}
% Zeitschriftentitel nicht kursiv
\DeclareFieldFormat{journaltitle}{#1}
\DeclareFieldFormat{journalsubtitle}{#1}
% Prefix (S. xy) bei Seitenangaben unterdrücken
\DeclareFieldFormat{postnote}{\nopp #1}

% Für Parlaments- und Verwaltungsdokumente
\DeclareBibliographyDriver{cite:legal}{%
\printfield{shorttitle}%
\addspace%
\printtext{diesdas}%wird nicht mit ausgegeben
\printfield{number}%
}%
\DeclareBibliographyDriver{legal}{%
\printfield{journaltitle}%
\addspace%
\printfield{issue}%
\addcolon\addspace%
\printfield{title}%
\adddot\addspace%
\printfield{subtitle}%
\finentry%
}

\begin{document}
\section{Abschnitt}
Dies das \autocite[5]{rechenB08}
\newline
Jenes und anderes \autocite[110]{GRECO09}
\printbibliography
\end{document}

Zusätzlich noch eine Frage: Kann ich im Treiber angeben, welches Feld zur Sortierung herangezogen werden soll? Durch die interne Reihenfolge greift biblatex bei meinem legal Treiber auf das title Feld zurück. Ich hätte allerdings gerne, dass journaltitle genommen wird, da sonst nicht alle BT-Drucksachen untereinander stehen und diese auch nicht unter B einsortiert werden.

LG