PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Mofizieren der natdin.bst für inproceedings



trinix
07-02-2007, 13:52
Hallo,

Ich schreibe gerade meine Abschlussarbeit und verwende dazu die Stil-Datei natdin.bst in der Vers. [3.1] 2006-01-02. Jedoch habe ich ein Problem mit "inproceedings". Hierzu habe ich die folgenden Daten:


@inproceedings{Lenzen:2004a,
Address = {D{\"u}sseldorf},
Author = {Lenzen, A. and Waller, H.},
Booktitle = {VDI-Schwingungstagung - Modalanalyse und Identifikation: Verfahren und Anwendungen bei dynamischen Systemen},
Date-Added = {2006-07-10 18:16:10 +0200},
Date-Modified = {2007-02-07 14:26:41 +0100},
Editor =
Keywords = {DB Sig 2004 A 32902,},
Organization = {VDI-Gesellschaft Entwicklung, Konstruktion, Vertrieb},
Publisher = {VDI Verlag},
Series = {VDI-Berichte},
Title = {Modellierung technischer Systeme durch experimentelle Schwingungsmessdaten zur {\"U}berpr{\"u}fung der Funktionst{\"u}chtigkeit},
Year = {2004}}


Leider wird "Organization" in der Ausgabe nicht mit angegeben, dies passiert nur wenn ein "Editor" vorhanden. Da es hier keinen Herausgeber in diesem Sinne gibt, möchte ich natdin.bst so mifizieren um eine Ausgabe der "Organization" auch bei fehlenden "Editor" zu erreichen.

Den entsprechenden Teil aus der natdin.bst:


FUNCTION {inproceedings}
{ output.bibitem
format.authors "author" output.check
set.colon.after
format.title "title" output.check
crossref missing$
{ format.in.ed.booktitle.din "booktitle" output.check
address empty$
{ organization new.sentence.checka
organization output
part.of.sentence
format.address.publisher.year output
}
{ format.address.publisher.year "publisher" output.check }
if$
new.sentence
format.series.number.din output
isbn set.period.dash.check
issn set.period.dash.check
format.isbn.issn output
}
{ format.incoll.inproc.crossref output.nonnull }
if$
part.of.sentence
format.pages output
note set.period.dash.check
note output
fin.entry
}

Komplett findet ihr sie hier...
http://www.haw-hamburg.de/pers/Lorenzen/bibtex/


Besten Dank
trinix

countbela666
07-02-2007, 15:12
Hallo trinix,

wenn du folgende Änderungen an der BST-Datei vornimmst, sollte es funktionieren:
...

FUNCTION {format.ed.incoll}
{ editor empty$
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%
%% { "" }
{ organization empty$
{ "" }
{ organization * " (Veranst.): " }
if$
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%
{ " (Hrsg.)" 'fkt :=
editor format.names
format.editors.organization
}
if$
}

...

FUNCTION {format.in.ed.booktitle.din}
{ booktitle empty$
{ "" }
{ editor empty$
{ volume empty$
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%
%% { "{In: }" booktitle emphasize * }%% n. Belieben fettes In:
%% { "{In: }" booktitle emphasize * %% - " -
{ "{In: }" format.ed.incoll * booktitle emphasize * }
{ "{In: }" format.ed.incoll * booktitle emphasize *
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%
" Bd." volume tie.or.space.connect *
}
if$
}
{ volume empty$
{ "{In: }" format.ed.incoll * ": " * booktitle emphasize * }
{ "{In: }" format.ed.incoll * ": " * booktitle emphasize *
" Bd." volume tie.or.space.connect *
}
if$
}
if$
}
if$
}

...Grüße,
Marcel

trinix
07-02-2007, 18:28
Besten Dank Marcel, das funktioniert ja sauber...!

Vor dem Veranst. wird noch ein "In" erzeugt, ich denke aber mal das sich das so gehört?

http://img75.imageshack.us/img75/8183/bild1hd3.png

Noch eine abschließende Frage: Gibt es einige spezielle Quellen in denen man mehr über die Programmierung dieser bst-Files erfahren kann?

Besten Dank
trinix

countbela666
08-02-2007, 08:10
Besten Dank Marcel, das funktioniert ja sauber...!Freut mich. Gern geschehen.

Vor dem Veranst. wird noch ein "In" erzeugt, ich denke aber mal das sich das so gehört?Ob diese Version somit noch DIN-konform ist, weiß ich nicht. Das "In:" stand jedoch auch schon in der unveränderten Zeile und es macht ja gewissermaßen auch Sinn, da die Organisation scheinbar ein Attribut zum Buchtitel sein soll, der ja korrekterweise mit "In:" eingeleitet werden soll. Wenn du das nicht willst, steht dir natürlich frei, die entsprechenden {In: } aus der Funktion format.in.ed.booktitle.din zu tilgen. ;)

Noch eine abschließende Frage: Gibt es einige spezielle Quellen in denen man mehr über die Programmierung dieser bst-Files erfahren kann?Hmm, ich selbst habe bis jetzt noch keine Dokumentation zu diesem Thema konsultiert. Die ein, zwei Male, die ich an BST-Dateien herumgepfuscht habe, haben mir ein wenig Zeit zum Überfliegen des Codes und das Herauskramen von Erinnerungen an UPN und Stackprogrammierung ausgereicht. :D Aber in Abschnitt 5 des folgenden Dokuments scheint es eine kurze Einführung in die Materie zu geben: http://www.uni-kassel.de/hrz/server/Software/tex/bibtex.pdf

Grüße,
Marcel

trinix
08-02-2007, 08:55
Besten Dank...

Ich werde mich mal ein wenig einlesen. Als interessant finde ich auch custom-bib. Mal sehen was sich ergibt.

Grüße
trinix

trinix
16-02-2007, 14:26
Möchte den Thread nochmal hoch hohlen, da eine weitere Modifikation ansteht.

(1)
Momentan wird mir in der Literaturliste zu Artikeln und Büchern auch eine evtl. hinterlegte www-Adresse mit ausgegeben - das ist natürlich nicht gewollt. Um die Information im meiner Datenbank aber nicht zu verlieren, möchte ich die Ausgabe nur unterdrücken.
Wo könnte ich dies im bst.-File anstellen?

(2)
Ich möchte auch das jeder Eintrag im Literaturverzeichnis mit einem Punkt abgeschlossen wird.
Kann ich das global im bst definieren oder ist das einzeln für jeden Typ notwendig?


Besten Dank
trinix

rais
16-02-2007, 22:38
Moin moin,


(1)
Momentan wird mir in der Literaturliste zu Artikeln und Büchern auch eine evtl. hinterlegte www-Adresse mit ausgegeben - das ist natürlich nicht gewollt. Um die Information im meiner Datenbank aber nicht zu verlieren, möchte ich die Ausgabe nur unterdrücken.
Wo könnte ich dies im bst.-File anstellen?

kA... benenn' doch einfach Deine Einträge in der .bib um, z.B. statt `url=...´ einfach `xurl=`..´ und schon taucht keiner dieser Einträge mehr auf, es sei denn, Du bestimmst es so.


(2)
Ich möchte auch das jeder Eintrag im Literaturverzeichnis mit einem Punkt abgeschlossen wird.
Kann ich das global im bst definieren oder ist das einzeln für jeden Typ notwendig?

was sagt denn btxhak dazu? -- ööhhmmm, Abschnitt 5 aus dem von Marcel verlinktem Dokument stellt so ziemlich dasselbe dar (die von bibtex mitgelieferten Dokumente btxdoc + btxhak entsprechen wohl dieser Doku)
MfG,

trinix
18-02-2007, 11:34
...kA... benenn' doch einfach Deine Einträge in der .bib um, z.B. statt `url=...´ einfach `xurl=`..´ und schon taucht keiner dieser Einträge mehr auf, es sei denn, Du bestimmst es so.
so einfach wie genial - super Idee und hat funktioniert. Besten Dank!


was sagt denn btxhak dazu? -- ööhhmmm, Abschnitt 5 aus dem von Marcel verlinktem Dokument stellt so ziemlich dasselbe dar (die von bibtex mitgelieferten Dokumente btxdoc + btxhak entsprechen wohl dieser Doku)
MfG,
Dieser Abschnitt stellt die Struktur des programmierten bst-files dar, da werde ich mich umfangreicher einarbeiten müssen. Ich dachte es liese sich ohne einen größeren Aufwand erledigen, aber anscheinend nicht. Sollte es dennoch gehen, bin ich für einen Info dankbar.

trinix