Sie sind hier

Anpassung eines Bibliographystyles

Hallo zusammen,

für meine Bachelor-Arbeit habe ich folgende Vorgaben an das Literaturverzeichnis:
Nachname, Vorname: Buchtitel, Nummer des Bandes : Bandtitel, Nummer der Auflage, Erscheinungsort, Erscheinungjahr

Ich habe nun einen Style so angepasst (siehe Quelltext), dass er mir zwar wenn alle Variablen ausgefüllt sind es richtig ausgibt allerdings setzt er mir einen : hinter den Buchtitel wenn ich die Bandnummer und Bandtitel weglasse. Kann mir vll jemand sagen, wie ich eine Abfrage einbauen kann bzw. wie ich dieses Problem behebe?

Vielen Dank und Grüße
tho_d

FUNCTION {book}
{ output.bibitem
format.authors output
add.colon
format.btitle "title" output.check
format.bvolume "volume" output.check
add.colon
format.note output
format.edition output
format.publisher.address output
format.date "year" output.check
fin.entry
}

forum: 
Bild von Markus Kohm

Wichtig ist, dass BibTeX eine Stack-Sprache ist. Das bedeutet, dass man Argumente erst auf den Stack wirft und dann die Operation darauf ausführt. Man nennt das auch postfix-Verarbeitung.

Die Funktion output.check führt in vielen bst-Dateien einen Test auf "leer" (empty$) bereits durch. Theoretisch (ich kann das jetzt nicht testen, weil Du leider nur ein Code-Stück und kein vollständiges Minimalbeispiel angegeben hast) müsste etwas wie folgt funktionieren:

FUNCTION {book}
{ output.bibitem
format.authors output
add.colon
title empty$
  { volume empty$
    {}
    { format.bvolume "volume" output.check
      add.colon } }
  { format.btitle "title" output.check
    format.bvolume "volume" output.check
    add.colon }
if$
format.note output
format.edition output
format.publisher.address output
format.date "year" output.check
fin.entry
}

Wie gesagt: Der Code ist nicht getestet. Ich habe auch noch nicht sehr oft bst programmiert. Ich kann deshalb nur hoffen, dass es so funktioniert.

Comments for "Anpassung eines Bibliographystyles" abonnieren