Zitierstil für einzelne Dokumente (Normen) anpassen?

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


JK5463
Forum-Newbie
Forum-Newbie
Beiträge: 9
Registriert: Do 26. Feb 2015, 13:45

Zitierstil für einzelne Dokumente (Normen) anpassen?

Beitrag von JK5463 »

Hallo Zusammen!

Ich beschäftige mich schon eine Weile mit LaTeX, da ich meine Masterarbeit auf diese Weise umsetzen möchte. Meine Vorlage ist schon so gut wie erstellt, jedoch hapert es etwas bei der Anpassung des Zitier-Stil "author-year".

Da ich auch DIN-Normen zitiere, habe ich einen eigenen Eintragstyp "standard" erstellt und diesen wie folgt angepasst:
% Anpassung des BibDesk-Eintragstypen
\DeclareBibliographyDriver{standard}{% 
    \printfield{number}~(%
    \printfield{month}~%
    \printfield{year}):~%
    \printfield{title}%
  }
Auf diese Weise habe ich es geschafft DIN-Normen nach meinen Wünschen im Literaturverzeichnis darstellen zu lassen - z.B. DIN 13445 (Dez. 2008): Bestimmung der mechanischen Eigenschaften.

Im Fließtext dort wo das Zitat eingefügt wird steht jedoch folgendes: Dies ist ein Zitat (Bestimmung der mechanischen Eigenschaften 2008).

Ich würde mir jedoch wünschen, dass dort einfach nur die Nummer der DIN-Norm und das Jahr steht: z.B. Dies ist ein Zitat (DIN 13445:2008)

Mein BibFile schaut wie folgt aus:
@standard{DIN:13445,
	Date-Added = {2014-07-17 10:20:41 +0000},
	Date-Modified = {2014-08-19 11:08:40 +0000},
	Month = {12},
	Number = {DIN 13445},
	Title = {Bestimmung der mechanischen Eigenschaften},
	Year = {2008}}
Gibt es eine Möglichkeit das ähnlich der vorherigen Anpassung auch hier nur für einen Dokumenttyp (standard) anzupassen?

Vielen Dank für jedwede Hilfe!

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

JK5463
Forum-Newbie
Forum-Newbie
Beiträge: 9
Registriert: Do 26. Feb 2015, 13:45

Beitrag von JK5463 »

Vielen Dank für den Hinweis! Ich habe mir die Hinweise durchgelesen und werde jetzt mal versuchen diesen generellen Ansatz "Modifizieren eines biblatex-Stils" umzusetzen. Ich hoffe, dass ich es hinbekomme und falls Fragen auftauchen mit einem Minimalbeispiel nochmals diesen Thread herauskrame. Danke!

JK5463
Forum-Newbie
Forum-Newbie
Beiträge: 9
Registriert: Do 26. Feb 2015, 13:45

Nutzung von .cbx und .bbx zur Modifizierung

Beitrag von JK5463 »

Ich habe mir die wichtigen Hinweise durchgelesen und bin dann dem Link zum Modifizieren eines biblatex-Stils gefolgt. Nun habe ich mein Dokument dementsprechend umgestrickt, so dass es diese von mir veränderlichen .cbx und .bbx-Dateien nutzt.

MeinDokument.tex
\documentclass[12pt,a4paper]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\title{Beispiel zum Bib\LaTeX-Stil \glqq iest\grqq}
\usepackage[style=fhsbg,backend=biber,sorting=none]{biblatex}
\addbibresource{MeineLiteratur.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}. Sicherheitsvorkehrungen sollten immer dem Stand der Technik angepasst werden \autocite{DIN-EN:1058}.

\printbibliography

\end{document}
MeineLiteratur.bib
@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 Martensitumwandlung in niedrig legierten Baustählen},
Author = {Klaus Detert and Christoph Schmidt-Krayer},
Journal = {Stahl und Eisen},
Year = {1963},
Pages = {449-457},
Volume = {83},
}

@Standard{DIN-EN:1058,
Title = {Entwurf, Berechnung und Bemessung von Holzbauwerken},
Number = {DIN EN 1058},
Month = {12},
Year = {2008}
}
fhsbg.cbx (abgespeichert unter: ~/Library/texmf/tex/latex/biblatex-fhsbg)
% Die *.cbx-Datei ist für das Erscheinungsbild der Zitate im Text verantwortlich.

\ProvidesFile{fhsbg.cbx}
\RequireCitationStyle{authoryear}

\endinput
fhsbg.bbx (abgespeichert unter: ~/Library/texmf/tex/latex/biblatex-fhsbg)
% Die *.bbx-Datei ist für die Formatierung der Quellenangaben im Literaturverzeichnis verantwortlich.

\ProvidesFile{fhsbg.bbx}
\RequireBibliographyStyle{authoryear}

% BEGINN Anpassung Namensformat für FHSBG 27.02.2015
												   
% 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}}

% Anpassung eines BibDesk-Eintragstypen
\DeclareBibliographyDriver{standard}{% 
\printfield{number}~(%
\printfield{month}~%
\printfield{year}):~%
\printfield{title}}

% ENDE der Anpassungen

\endinput
Wie ihr seht habe ich in der .bbx-Datei "fhsbg.bbx" mit Hilfe von DeclareBibliographyDriver den BibDesk-Eintragstypen "standard" nach meinen Wünschen angepasst. Die Änderung ist sichtbar im Literaturverzeichnis.

Leider werde ich aus der biblatex-Dokumentation nicht ganz schlau, wie ich dies nun in der .cbx-Datei umsetze. Könnt ihr mir da evtl. einen Tipp geben, unter welchem Begriff ich nachschauen muss? Lässt sich das ähnlich einfach umsetzten, wie in der .bbx-Datei? ...oder muss man dort einen eigenen cite-Befehl erstellen?

Ich habe mein Minimal-Beispiel im .zip-File angehängt, so dass ihr das Ganze nachvollziehen könnt.

Edit: In der .pdf-Ausgabe seht ihr, dass bei Verwendung von "authoryear" für DIN-Norm im Fließtext (Titel Jahr) erscheint. Ich hätte gerne, dass dort (number:Jahr) erscheint, wie z.B. (DIN 13446:2008).

Danke im Voraus für Eure Hilfe!
Dateianhänge
Zitation.zip
(133.37 KiB) 190-mal heruntergeladen

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

Was besseres fällt mir gerade nicht ein. Aber warum verwendest du Standard?
\documentclass[12pt,a4paper]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\title{Beispiel zum Bib\LaTeX-Stil \glqq iest\grqq}
\usepackage[style=fhsbg,backend=biber,sorting=none]{biblatex}
\addbibresource{MeineLiteratur.bib}
\usepackage{citeall}
\DeclareCiteCommand{\citedin}
  {\usebibmacro{prenote}}
  {\usebibmacro{citeindex}%
   \usebibmacro{dincite}}
  {\multicitedelim}
  {\usebibmacro{postnote}}
\newbibmacro*{dincite}{\printfield{number}\addcolon\printfield{year}}

\begin{document}

\citeall
\par\citedin{DIN-EN:1058}
\printbibliography

\end{document}
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

Besserwisser

Beitrag von Besserwisser »

Wenn man \dincite definiert hat, kann man das Makro cite beispielsweise auch so umdefiniere, dass es bei vorhandenem Feld `number` dieses Makro verwendet. Vergleichbare Fallunterscheidungen gibt es schon in `authoryear.cbx`. Ich kann das nur gerade nicht testen, deshalb dazu kein Beispiel.

JK5463
Forum-Newbie
Forum-Newbie
Beiträge: 9
Registriert: Do 26. Feb 2015, 13:45

Beitrag von JK5463 »

@ Johannes_B

Vielen Dank, genau das habe ich gesucht! Ich habe folgenden Teil jetzt kurz in meine .cbx-Datei eingefügt und es funktioniert auf den ersten Blick schon mal perfekt.
\DeclareCiteCommand{\citedin} 
  {\usebibmacro{prenote}} 
  {\usebibmacro{citeindex}% 
   \usebibmacro{dincite}} 
  {\multicitedelim} 
  {\usebibmacro{postnote}} 
\newbibmacro*{dincite}{\printfield{number}\addcolon\printfield{year}}
Warum ich Standard verwendet habe?

In der .bib-Datei muss man ja für jedes Werk einen "entrytype" festlegen. Daher habe ich für meine DIN-Norm kurzerhand einfach "standard" definiert und diesen dann in der .bbx-Datei modifiziert. Wird der etwa schon woanders verwendet und würde es somit zu Problemen führen?


Du verwendest in deinem Beispiel das Package "citeall". Kannst du mir kurz sagen, wofür das gut ist? Ich habe im Internet jetzt nur auf die schnelle das Package "cite" gefunden, aber nicht "citeall". Wenn es eine wichtige Funktion bei diesem Beispiel einnimmt, kannst du mir evtl. sagen, wo ich das downloaden kann? Bei mir scheint es nicht auf dem Rechner zu sein.

Vielen Dank für die schnelle und äußerst hilfreiche Unterstützung!

JK5463
Forum-Newbie
Forum-Newbie
Beiträge: 9
Registriert: Do 26. Feb 2015, 13:45

Beitrag von JK5463 »

@Besserwisser

Das mit dem Umdefinieren des Makro "cite" werde ich mir noch anschauen! Danke für den Tipp!

Benutzeravatar
u_fischer
Forum-Meister
Forum-Meister
Beiträge: 4267
Registriert: Do 22. Nov 2012, 11:09
Kontaktdaten:

Beitrag von u_fischer »

Johannes_B hat geschrieben:
\usepackage{citeall}
Wow ;-). Ein Benutzer ;-). Ich habe übrigens gestern entdeckt, dass biber bei Warnungen auch ein "\warn"-Feld erzeugt und dann bekommt man Fehler. Die nächste Version von citeall wird das beheben. Dann wird man auch die Zahl der Bibliographieeinträge begrenzen können mit \printbibliography[category=citeall].

Benutzeravatar
u_fischer
Forum-Meister
Forum-Meister
Beiträge: 4267
Registriert: Do 22. Nov 2012, 11:09
Kontaktdaten:

Beitrag von u_fischer »

JK5463 hat geschrieben: Du verwendest in deinem Beispiel das Package "citeall". Kannst du mir kurz sagen, wofür das gut ist?
http://www.ctan.org/pkg/citeall

Bei einem aktuellen TeXlive müsstest du es mit tlmgr update bekommen.

Antworten