Archiv verlassen und diese Seite im Standarddesign anzeigen : Datumsformat bei vancouver.bst
Hallo zusammen
Schreibe gerade meine Dissertation. Ich benutze dafür MiKTeX 2.7 und TeXnicCenter.
Für das Literaturverzeichnis verwende ich das Paket 'natbib' und den Stil 'vancouver.bst'. Eigentlich passt auch alles perfekt, ausser bei der Ausgabe des Literaturverzeichnisses enthält die Datumsangabe das Jahr und den Monat.
Dosluoglu H, Luna P, Herrera L. Kompartimentresektion oder erweiterte lokale Excision von Weichteilsarkomen? Der Chirurg. 1993 Jul;64(7):509-516.
Ich möchte jedoch nur das Jahr ausgeben.
Dosluoglu H, Luna P, Herrera L. Kompartimentresektion oder erweiterte lokale Excision von Weichteilsarkomen? Der Chirurg. 1993;64(7):509-516.
Das müsste doch irgendwie in der *.bst-Datei zu ändern sein? Aber irgendwie steh ich auf dem Schlauch. :rolleyes:
Hier noch der Abschnitt aus vancouver.bst der mich relevant dünkt:
FUNCTION {format.journal.date}
{
month "month" bibinfo.check
duplicate$ empty$
year "year" bibinfo.check duplicate$ empty$
{
swap$ 'skip$
{ "there's a month but no year in " cite$ * warning$ }
if$
*
}
{ swap$ 'skip$
{
" " * swap$
}
if$
*
remove.dots
}
if$
duplicate$ empty$
'skip$
{
before.all 'output.state :=
after.sentence 'output.state :=
}
if$
}
FUNCTION {format.date}
{
no.blank.or.punct
";"
duplicate$ empty$
year "year" bibinfo.check duplicate$ empty$
{ swap$ 'skip$
{ "there's a month but no year in " cite$ * warning$ }
if$
*
}
{ swap$ 'skip$
{
swap$
" " * swap$
}
if$
*
}
if$
}
Ansonsten wäre der Stil vancouver.bst perfekt! Ich habe mich deshalb auch noch nicht wirklich über Alternativen (biblatex etc) schlau gemacht. Kennt jemand vielleicht bereits einen biblatex-Stil der meinen Anforderungen entspricht?
Vielen Dank für Eure Hilfe.
lockstep
16-02-2010, 07:55
Der biblatex-Stil authortitle sollte deine Anforderungen generell erfüllen; notwendige Detailanpassungen sind mit nicht allzu tiefschürfendem LaTeX-Wissen (Funktionsweise von \renewcommand etc.) zu erfüllen. biblatex liegt seit einigen Tagen in der Version 0.9 vor, ich empfehle dir den Umstieg ausdrücklich.
Natürlich - wenn vancouver.bst bis auf eine Kleinigkeit für dich perfekt ist, hoffe ich auch, dass dein Wunsch von einem bibtex-Programmierguru erfüllt wird. Davon gibt es aber weniger als LaTeX-Kundige. :)
lockstep
Du sagst nicht, wie du es machst.
Bei mir geht es so:
@ARTICLE{dlh_1993,
title = {Kompartimentresektion oder erweiterte lokale Excision von Weichteilsarkomen?},
author = {H. Dosluoglu and P. Luna and L Herrera},
journal = {Der Chirurg},
volume = {64\,(7)},
year = {1993},
pages = {509-516},
}
mit
vancouver.bst %% Copyleft 2004 Folkert van der Beek
natbib.sty 2007/02/05 8.0 (PWD)
edico
Du sagst nicht, wie du es machst.
Ähm ja, ging vergessen, sorry. ;)
vancouver.bst %% Copyleft 2004 Folkert van der Beek
natbib.sty 8.31a from 2009/11/07
Ich verwalte meine *.bib-Datei mit JabRef 2.5. Die Einträge sind jeweils relativ ausführlich, wie z.B. dieser hier:
@ARTICLE{Dosluoglu1993,
author = {H. Dosluoglu and P. Luna and L. Herrera},
title = {Kompartimentresektion oder erweiterte lokale Excision von Weichteilsarkomen?},
journal = {Der Chirurg},
year = {1993},
volume = {64},
pages = {509--516},
number = {7},
month = {Jul},
institution = {Department of Surgery, Medical Center of Delaware, Wilmington.},
keywords = {Amputation; Arm, surgery; Chemotherapy, Adjuvant; Combined Modality
Therapy; Humans; Leg, surgery; Neoplasm Staging; Radiotherapy Dosage;
Sarcoma, drug therapy/pathology/radiotherapy/surgery; Soft Tissue
Neoplasms, drug therapy/pathology/radiotherapy/surgery},
language = {ger},
medline-pst = {ppublish},
pmid = {8375200},
timestamp = {11.02.2010}
}
Ich kann natürlich den Monat einfach via JabRef in der bib löschen. Der Monat erscheint dann auch nicht in der Ausgabe des Literaturverzeichnisses, aber ich finde diese Lösung ziemlich unschön, resp. habe mir erhofft dass ich die Abfrage so ändern kann, dass dies nicht nötig wäre.
Wenn du den Monat nicht haben willst, musst du ihn einfach 'LEER' lassen:
month = {},
edico
Wenn du den Monat nicht haben willst, musst du ihn einfach 'LEER' lassen:
month = {},
Ja, zu dieser Lösung bin ich auch gekommen. Trotzdem finde ich diese Lösung nicht optimal. Ich würde lieber die vancouver.bst so ändern, damit das Datum richtig erscheint. Scheint aber nicht ganz einfach zu sein.
Trotzdem Danke für Deine Hilfe!
Die Lösung ist sogar sehr optimal, das Ändern des style files an sich weniger.
@ARTICLE{citation_key,
required_fields [, optional_fields] }
Required fields: author, title, journal, year
Optional fields: volume, number, pages, month, note, key
Optionale Parameter sind halt 'optional' - wenn man sie nicht haben will, lässt man sie weg.
Das Datum wird dann so gesetzt, wie du es in post#1 gefordert hast. Wo ist das(dein) Problem?
edico
Die Lösung ist sogar sehr optimal, das Ändern des style files an sich weniger.
...
Das Datum wird dann so gesetzt, wie du es in post#1 gefordert hast. Wo ist das(dein) Problem?
Ich habe halt insgeheim gehofft, dass ich nicht meine 200 Einträge in der Bibliothek verändern muss, sondern eine kleine Änderung der *.bst-Datei reichen würde.
Aber du hast mich überzeugt, ist wohl der einfachste Weg.
Hallo,
also ich finde die Lösung mit dem Löschend der month-Felder auch sehr unschön. Zum einen wird so Information weggeworfen, die man eventuell noch einmal braucht, z.B. wenn man sich entscheidet, den Monat doch wieder anzeigen zu wollen. Zum anderen finde ich es generell ziemlich schlecht, gewolltes Aussehen des Literaturverzeichnisses durch Manipulieren der Datenbank zu erreichen. Ich plädiere hier für eine strikte Trennung zwischen Daten (bib-Datei) und Programm bzw. Formatierung (bst- und syt-Dateien)!!!
Christian.
PS. Ich schau mir gleich mal vancouver.bst an. Die gewünschte Änderung kommt mir nicht all zu schwierig vor...
das dachte ich auch ^^ aber ich kann meine Referenz nicht erzeugen mit dem Stil.
aber ein Ansatzpunkt wäre für mich das rot markierte mal auszukommentieren (ohne das jetzt getestet zu haben):
FUNCTION {format.journal.date}
{
month "month" bibinfo.check
duplicate$ empty$
year "year" bibinfo.check duplicate$ empty$
{
swap$ 'skip$
{ "there's a month but no year in " cite$ * warning$ }
if$
*
}
{ swap$ 'skip$
{
" " * swap$
}
if$
*
remove.dots
}
if$
duplicate$ empty$
'skip$
{
before.all 'output.state :=
after.sentence 'output.state :=
}
if$
}
Hallo,
ändere einfach in vancouver.bst in der FUNCTION {article} folgende Zeile:
format.journal.date "year" output.check
in:
format.date "year" output.check
Erklärung: Für Journal wird eine spezielle Funktion zur Formatierung des Datums benutzt (format.journal.date). Diese produziert "Jahr_Monat". Durch die Änderung wird eine andere Funktion format.date ausgewählt, die nur "Jahr" ausgibt...
Christian.
FUNCTION {format.journal.date}
{
month "month" bibinfo.check
duplicate$ empty$
year "year" bibinfo.check duplicate$ empty$
{
swap$ 'skip$
{ "there's a month but no year in " cite$ * warning$ }
if$
*
}
{ swap$ 'skip$
{
" " * swap$
}
if$
*
remove.dots
}
if$
duplicate$ empty$
'skip$
{
before.all 'output.state :=
after.sentence 'output.state :=
}
if$
}
FUNCTION {format.date}
{
no.blank.or.punct
";"
duplicate$ empty$
year "year" bibinfo.check duplicate$ empty$
{ swap$ 'skip$
{ "there's a month but no year in " cite$ * warning$ }
if$
*
}
{ swap$ 'skip$
{
swap$
" " * swap$
}
if$
*
}
if$
}
Ansonsten wäre der Stil vancouver.bst perfekt! Ich habe mich deshalb auch noch nicht wirklich über Alternativen (biblatex etc) schlau gemacht. Kennt jemand vielleicht bereits einen biblatex-Stil der meinen Anforderungen entspricht?
Kopiere den Stil nach vancouver2.bst und ersetze obige Funktion durch
FUNCTION {format.journal.date}{
year "year" bibinfo.check
}
Herbert
Kopiere den Stil nach vancouver2.bst und ersetze obige Funktion durch
FUNCTION {format.journal.date}{
year "year" bibinfo.check
}
Herbert
S-E-N-S-A-T-I-O-N-E-L-L!
Funktioniert auf Anhieb! Tausend Dank!
Herzlichen Dank natürlich auch an alle anderen, die sich die Mühe gemacht haben einem Newbie wie mir auf die Sprünge zu helfen!
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.