Modifizieren eines biblatex-Stils [Update #2]
Ausgangslage
Schreibt man wissenschaftliche Arbeiten oder Artikel für Fachzeitschriften, so benötigt man stets ein Literaturverzeichnis. LaTeX bietet mit dem Paket biblatex ein hervorragendes Werkzeug zu dessen Erstellung. Dabei gibt es Betreuervorgaben, Institutsvorgaben, Normen oder Vorgaben der unterschiedlichen Fachpublikationen, wie das Literaturverzeichnis im Einzelfall auszusehen hat. Für meine Ingenieurarbeit hat mein Betreuer folgende Vorgaben gemacht:
- knapper numerischer Zitationsstil
- Hervorhebung des Werktitels in geeigneter Weise
- Sortierung des Literaturverzeichnisses nach Reihenfolge der Zitation
- Autoren-, Herausgeber- und Übersetzerangabe als Nachname, Vorname
- durchgehende Angabe der Vornamen als Initialen
- Doppelpunkt nach dem letzten Autoren-, Herausgeber- und Übersetzernamen
- Autorenliste bei mehr als drei Autoren mit „et al.“ abkürzen
Die Punkte 1 und 2 werden bereits vom Standardstil numeric-comp umgesetzt, vgl. folgende Abbildung. Punkt 3 lässt sich durch die Paketoption sorting=none beim Laden des Paketes biblatex erreichen. Sucht man über die üblichen Suchmaschinen nach Stilen für biblatex, so erhält man überwiegend Treffer für das ältere BibTeX-System. Diese beiden Systeme sind jedoch, was die Stildateien angeht, nicht kompatibel. Unter den wenigen passenden Treffern war bei meiner Suche kein Stil, der die obigen Vorgaben vollständig umgesetzt hätte. Dabei hielt ich diese nicht für außergewöhnlich. Aus diesem Grund habe ich beschlossen, mir selbst einen passenden Stil zu bauen. Als Grundlage diente mir der Stil numeric-comp.
Für einzelne Änderungen, die nur in einem Dokument benötigt werden, lohnt sich die Erstellung eines eigenen Stiles nicht. In diesem Fall kann man die Änderung in der Präambel des Dokumentes einfügen. Ein eigener biblatex-Stil lohnt sich vor allem, wenn man mehrere Änderungen hat, man diese immer wieder benötigt oder wenn der Bibliografiestil von einer Gruppe von Autoren verwendet werden soll (z. B. alle Studenten eines Betreuers, ein ganzes Institut, alle Autoren bei einer bestimmten Zeitschrift, alle Wissenschaftler in einem Projekt, alle Projekte bei einem Träger usw.).
Informationsquellen
Sucht man im Internet nach Informationen, wie biblatex-Stile zu erstellen und modifizieren sind, so erhält man viele über Foren vertreute Informationsschnipsel. Zwei Quellen liefern umfassendere Informationen. Zum einen ist das die hervorragende Paketdokumentation von Philipp Lehman mit Philip Kime, Audrey Boruvka und Joseph Wright. Die jeweils aktuelle englische Version findet man auf CTAN [1]. Die lokal mit TeX Live installierte Version kann man auf der Kommandozeile mit dem Befehl texdoc biblatex aufrufen. Zu der Frage, wo man die Dokumentation findet, gibt es eine Anwenderfrage mit Antworten auf der Seite der TeXwelt: http://texwelt.de/wissen/fragen/6725. Die Dokumentation ist umfassend, weshalb sie ob der vielen Möglichkeiten von biblatex sehr umfangreich gehalten ist. Es dauert relativ lange, darin alle nötigen Informationen zu den eigenen Modifikationen zusammenzusuchen. Dennoch sollte sie als offizielle Paketdokumentation im Zweifelsfall die Quelle der Wahl sein.
Da bei LaTeX, wie so oft im Leben, der Grundsatz exemplum docet gilt, ist für ein schnelles Vorankommen beim Bau des eigenen Stils Dominik Waßenhovens Anleitung aus der DANTE-Zeitschrift „Die TeXnische Komödie“ 4/08 [2] sehr hilfreich. Der Autor erläutert darin die Vorgehensweise am Beispiel von Anforderungen für eine geisteswissenschaftliche Publikation. Mit gewissen Modifikationen ist der Artikel auf andere Fächer ebenso anwendbar. Die Vorgehensweise bleibt gleich, lediglich die Befehle zur Formatierung unterscheiden sich je nach Anforderungen. Waßenhovens Artikel geht über den vorliegenden dahingehend hinaus, dass auch auf Änderungen in der Darstellung der Werktitel u. ä. eingegangen wird, was mit einem etwas größeren Änderungsaufwand verbunden ist. Teil 1 des Artikels aus Ausgabe 2/08 [3] geht auf die Grundlagen der Arbeit mit biblatex ein.
Eine weiteren Einstieg in biblatex bietet der Blogartikel „Hilfe zu biblatex“ von Marco Daniel: http://texwelt.de/blog/hilfe-zu-biblatex.
Lösungsansätze
Ein Bibliografie-Stil für biblatex besteht aus zwei ASCII-Dateien. Die *.cbx-Datei ist für das Erscheinungsbild der Zitate im Text verantwortlich. In der Datei *.bbx wird die Formatierung der Quellenangaben im Literaturverzeichnis festgelegt. Man spart sehr viel Arbeit, wenn man einen eigenen Stil nicht von Null an neu schreibt, sondern von einem den eigenen Wünschen oder Vorgaben ähnlichen vorhandenen Stil ausgeht und diesen ändert. Neben den mitgelieferten Standardstilen gibt es eine Reihe spezieller Stile unter http://ctan.org/topic/biblatex, wo man nach einem den eigenen Wünschen ähnlichen Stil suchen kann. Für den Umgang mit Änderungen gibt es die nachfolgend erläuterten unterschiedlichen Philosophien.
Den generischen Stil kopieren und ändern
Man kopiert den Inhalt der generischen Stildateien in eigene Dateien und ändert \ProvidesFile{stilname.cbx} bzw. \ProvidesFile{stilname.bbx} auf den gewünschten Namen, welchen man seinen neuen Dateien gegeben hat. Dann beginnt man, die Definitionen den eigenen Wünschen anzupassen.
Dieses Vorgehen ist von Vorteil, wenn man nicht wünscht, dass Änderungen am generischen Stil in den Eigenen vererbt werden und wenn man sehr viel ändern möchte. Ein Nachteil ist, dass man sehr große und unübersichtliche Stildateien erhält bzw. die eigenen Änderungen für Dritte schwerer nachvollziehbar sind.
Den generischen Stil laden und nötiges umdefinieren
Man legt neue Stildateien mit dem gewünschten Namen an, lädt mit \RequireCitationStyle{generischer-stil} bzw. \RequireBibliographyStyle{generischer-stil} einen generischen Stil und definiert dann das um, was man ändern möchte. Man erhält dabei, vor allem bei wenigen Änderungen, sehr übersichtliche Stildateien. Ein möglicher Nachteil ist die Vererbung von Änderungen am generischen Stil in den eigenen Stil.
Diese Vorgehensweise wurde auf Grund der wenigen nötigen Änderungen für das Erstellen des Stils iest gewählt. Der name iest ist die Abkürzung für Institut für Eisen- und Stahltechnologie. An diesem Institut der TU Bergakademie Freiberg schreibe ich meine Arbeiten. Es handelt sich um einen Arbeitstitel, welcher, wie so oft, nicht mehr geändert wurde.
Befehle und ihre Bedeutung
Die Datei iest.cbx
[cce lang=”latex”]\ProvidesFile{iest.cbx}[/cce]
Bekanntmachen der Stildatei für die Zitation.
[cce lang=”latex”]\RequireCitationStyle{numeric-comp}[/cce]
Laden des generischen Zitationsstils; hier handelt es sich um den Standardstil numeric-comp.
[cce lang=”latex”]\endinput[/cce]
Ende der Stildatei.
Die Datei iest.bbx
[cce lang=”latex”]\ProvidesFile{iest.bbx}[/cce]
Bekanntmachen der Stildatei für die Quellenangaben.
[cce lang=”latex”]\RequireBibliographyStyle{numeric-comp}[/cce]
Laden des generischen Bibliografiestils; hier handelt es sich um den Standardstil numeric-comp.
[cce lang=”latex”]\DeclareNameFormat{tubafshort}{}[/cce]
Definieren eines neuen Namensformates mit dem Namen tubafshort. Der zweite Parameter enthält die Befehle zur Formatierung in Form der folgenden beiden Makros. Die Abkürzung tubaf im Namen tubafshort bedeutet TU Bergakademie Freiberg; short steht selbstverständlich für kurz. Es handelt sich wiederum um einen Arbeitstitel, welcher auf den Ort der Entstehung verweisen soll und der erhalten blieb.
[cce lang=”latex”]\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}[/cce]
Das Makro name:last-first gibt Namen in der Form „Nachname, Vorname“ zurück. Die weiteren Parameter dienen zur Formatierung der Namensangabe. Dabei sind die Variablen wie folgt belegt:
#1 Nachname
#2 Nachname (Initialen)
#3 Vorname
#4 Vorname (Initialen)
#5 Präfix (z.B. „von“)
#6 Präfix (Initialen)
#7 Affix (z.B. „Junior“)
#8 Affix (Initialen)
Folglich gibt das Makro im obigen Fall den vollen Nachnamen, die Initialen des Vornamens sowie vollständigen Präfix und Affix zurück.
[cce lang=”latex”]\usebibmacro{name:andothers}[/cce]
Bei mehreren Namen einer Namensart kürzt dieses Makro nach einer bestimmten Anzahl, standardmäßig drei Namen, die Namensliste mit „u. a.“ ab.
[cce lang=”latex”]\DeclareNameAlias{author}{tubafshort}
\DeclareNameAlias{editor}{tubafshort}
\DeclareNameAlias{translator}{tubafshort}[/cce]
Das neu definierte Namensformat tubafshort wird für die Namensarten Autor (author), Herausgeber (editor) und Übersetzer (translator) gewählt.
[cce lang=”latex”]\renewcommand*{\labelnamepunct}{\addcolon\addspace}[/cce]
\labelnamepunct enthält die Zeichenfolge, mit der die Namensangabe im Literaturverzeichnis abgeschlossen wird. Bei numeric-comp ist das standardmäßig ein Punkt und ein Leerzeichen. Hier wird die Variable mit einem Doppelpunkt (\addcolon) und einem Leerzeichen (\addspace) neu belegt.
[cce lang=”latex”]\DefineBibliographyStrings{ngerman}{andothers={et\addabbrvspace al\adddot}}[/cce]
Der in numeric-comp mit „u. a.“ belegte String für die Abkürzung bei mehreren Autoren
wird mit „et al.“ neu belegt.
[cce lang=”latex”]\endinput[/cce]
Ende der Stildatei.
Ergebnis
Die Datei iest.cbx
Beim Stil iest gibt es gegenüber numeric-comp keine Änderungen, was den Zitationsstil angeht. Dennoch ist es von Vorteil, eine *.cbx-Datei anzulegen. Dadurch kann der Stil durch die Paketoption style=iest eingebunden werden, es ist keine getrennte Angabe von bibstyle und citestyle notwendig. Die Option, bspw. den ausführlicheren Zitationsstil über citestyle=numeric zu laden bleibt davon unberührt. Während in numeric-comp und damit auch in iest aufeinanderfolgende Quellennummern (1,2,3) in der Form 1-3 abgekürzt werden, listet numeric die Quellen vollständig auf. Die Kommentarzeilen (beginnend mit %) werden von LaTeX nicht interpretiert. Sie dienen dazu, Informationen über die Dateien an Anwender oder andere Entwickler weiterzugeben.
[cce lang=”latex”]
% E. Frank Sandig, TU Bergakademie Freiberg
% schriftsatz@sandig-fg.de
% http://github.com/Ekkehardt
% Dummy-File, bislang keine Änderungenen gegenüber numeric-comp, 04.11.2014
\ProvidesFile{iest.cbx}
\RequireCitationStyle{numeric-comp}
\endinput
[/cce]
Die Datei iest.bbx
[cce lang=”latex”]
% E. Frank Sandig, TU Bergakademie Freiberg
% schriftsatz@sandig-fg.de
% http://github.com/Ekkehardt
\ProvidesFile{iest.bbx}
\RequireBibliographyStyle{numeric-comp}
% BEGINN Anpassung Namensformat für IEST 04.11.2014
% Namensformat: Nachname, V.
\DeclareNameFormat{tubafshort}{%
\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}%
\usebibmacro{name:andothers}}
% neues Namensformat für alle Namen wählen
\DeclareNameAlias{author}{tubafshort}
\DeclareNameAlias{editor}{tubafshort}
\DeclareNameAlias{translator}{tubafshort}
% Namensfelder mit Doppelpunkt abschließen
\renewcommand*{\labelnamepunct}{\addcolon\addspace}
% mehrere Autoren mit ’et al.’ abkürzen
\DefineBibliographyStrings{ngerman}{andothers={et\addabbrvspace al\adddot}}
% ENDE der Anpassungen
\endinput
[/cce]
Beispiel
Der Quelltext des Beispiels
[cce lang=”latex”]
\documentclass[12pt,a4paper]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\title{Beispiel zum Bib\LaTeX-Stil \glqq iest\grqq}
\usepackage[style=iest,backend=biber,sorting=none]{biblatex}
\addbibresource{quellen-iest.bib}
\begin{document}
Heute zitieren wir nur drei Werke. Zum einen ein Nachschlagewerk von
vier Autoren \autocite{Binomi2004}. Zum anderen ein Lehrbuch der
Werkstoffkunde \autocite{Bargel2012}. Unsere dritte und letzte Quelle
ist ein Zeitschriftenartikel \autocite{Detert1963}. Man kann auch
alle Quellen gemeinsam zitieren, was hier verkürzt dargestellt wird:
\autocite{Bargel2012,Binomi2004,Detert1963}.
\printbibliography
\end{document}
[/cce]
Die Literaturdatenbank
[cce lang=”bibtex”]
@Book{Binomi2004,
Title = {Formeln und Hilfen zur Höheren Mathematik},
Author = {Gerhard Merziger and Günter Mühlbach and Detlef Wille and Thomas Wirth},
Publisher = {Binomi Verlag Springe},
Year = {2004},
Edition = {4},
Note = {ISBN 3-923923-35-X},
}
@Book{Bargel2012,
Title = {Werkstoffkunde},
Editor = {Hans-Jürgen Bargel and Günter Schulze},
Publisher = {Springer-Verlag, Berlin/Heidelberg},
Year = {2012},
Edition = {11., bearb. Aufl.},
Note = {ISBN 978-3-642-17717-0},
Pages = {453 S.},
Url = {http://swbplus.bsz-bw.de/bsz282703705cov.htm}
}
@Article{Detert1963,
Title = {Einfluss einer Austenitverformung vor der Martensitumwandlungin niedrig legierten Baustählen},
Author = {Klaus Detert and Christoph Schmidt-Krayer},
Journal = {Stahl und Eisen},
Year = {1963},
Pages = {449-457},
Volume = {83},
}
[/cce]
Das fertig compilierte Beispiel
Bezug und Installation des Stils iest
Den aktuellen Stand des Stils iest findet man stets auf github: https://github.com/Ekkehardt/biblatex-iest. Zur Problemstellung, wo eigene Makros u. ä. zu speichern sind, gibt es eine Frage auf der TeXwelt: http://texwelt.de/wissen/fragen/3528.
Die Installation für den aktuell angemeldeten Benutzer in Tex Live unter Windows, Linux und MacOS besteht aus dem folgenden Schritt:
- Kopieren der Dateien iest.cbx und iest.bbx nach ~/texmf/tex/latex/biblatex-iest
In MacTeX unter MacOS läuft die Installation des Stils wie folgt ab:
- Kopieren der Datei iest.cbx und iest.bbx nach ~/Library/texmf/tex/latex/biblatex-iest
In MikTeX unter Windows gilt folgende Vorgehensweise:
- Anlegen eines privaten Baumes, z. B. unter ~/texmf (muss außerhalb des Verzeichnisses der MikTeX-Installation liegen)
- Kopieren der Datei iest.cbx und iest.bbx nach ~/texmf/tex/latex/biblatex-iest
- Registrieren des privaten Baumes als „Root“
- MikTeX Settings starten
- Reiter „Roots“
- Schaltfläche „Add..“
- obigen Ordner auswählen
- ggf. Suchreihenfolge anpassen
- Schaltfläche „Übernehmen“
In allen Fällen ist ~/ das Heimatverzeichnis des aktuell angemeldeten Benutzers.
Support
Für Rückfragen steht die E-Mail-Adresse schriftsatz@sandig-fg.de zur Verfügung. Fehlermeldungen, Problemberichte, Verbesserungsvorschläge u. ä. können über den Issue-Tracker unter https://github.com/Ekkehardt eingereicht werden.
Literatur
[1] Lehman, P. et al.: The Biblatex Package. Version 2.9a. Paketdokumentation. CTAN, Juni 2014. url: http://ctan.mirrorcatalogs.com/macros/latex/contrib/biblatex/doc/biblatex.pdf.
[2] Waßenhoven, D.: „Bibliographien erstellen mit biblatex – Teil 2“. In: Die TeXnische Komödie 4 (2008). Zeitschrift der DANTE e.V., S. 31–51. url: http://www.dante.de/DTK/Ausgaben/dtk08-4.pdf.
[3] Waßenhoven, D.: „Bibliographien erstellen mit biblatex – Teil 1“. In: Die TeXnische Komödie 2 (Mai 2008). Zeitschrift der DANTE e.V., S. 53–74. url: http://www.dante.de/DTK/Ausgaben/2008-2.pdf.
Die stets aktuelle und druckoptimierte PDF-Version dieses Artikels findet man nebst LaTeX-Quelltext unter https://github.com/Ekkehardt/dok-biblatex-iest