PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : BibteX style



Rico123
04-02-2006, 22:22
Hallo allerseits !
Ich bin heute zum ersten mal in diesem Forum. Ich hoffe es kann mir jemand weiterhelfen.
Ich suche für das Literaturverzeichnis meiner Doktorarbeit einen bibliographiestyle file.
Die Verweise sollten im Text als Zahl und im Literaturverzeichnis alphabetisch nach dem Nachnamen sortiert erscheinen. Meine Bibliographie erstelle ich mir mit Bibkeeper und bin damit auch sehr zufrieden, leider wird aber z.B. beim zitieren von mehreren Autoren zwischen den letzten beiden immer ein "and" eingefügt und kein deutsches "und" (beim Style file plain.bst).
Kennt jemand einen existierenden File, der auf deutsch und in alphabetischer Reihenfolge der Nachnamen sortiert.

Vielen Dank

countbela666
04-02-2006, 22:45
öhm, gerplain vielleicht (zusammen mit dem Paket bibgerm)? Und die natdin (http://www.haw-hamburg.de/pers/Lorenzen/bibtex/)-Stile können das bestimmt auch.

Grüße,
Marcel

sensemann
05-02-2006, 12:39
Und als Anmerkung: Bibkeeper ist zusammen mit dem JBibtexManager im Sourceforge Projekt JabRef aufgegangen - gerade ist Version 2.0 rausgekommen.

Das könntest du dir mal anschaun ...

( http://sourceforge.net/projects/jabref )

Rico123
05-02-2006, 17:58
Danke für die Tips
das Format gerplain scheint gut zu sein.
Ich habe aber noch zwei Probleme:

1. Ich bekomme immer (beispielhaft) folgende Fehlermeldung wenn ich den latex Befehl ausgebe:

! Undefined control sequence.
1.20 {\sc AD, Boyd}, {\sc Ewald FC} \btxandlong
{}\ {\sc Thomas WH}: {\em {Long ....

wenn ich das dann ignoriere zeigt sich bei der Dateiausgabe das zweite Problem:

Vom ersten Autor wird nach dem Vornamen sortiert, die folgenden Autoren erscheinen dann wie gewollt mit Nachname und abgekürztem Vornamen. Z.B. so: AD, BOYD, EWALD FC THOMAS WH: Long-term.....

Die Einträge im .bib file sehen beispielhaft so aus:

@ARTICLE{Boyd,
author = {Boyd AD and Ewald FC and Thomas WH},
title = {{Long-term complications after total knee arthroplasty with or
without resurfacing of the patella}},
journal = {J Bone Joint Surg Am.},
year = {1993},
volume = {75-A},
pages = {674-680},
keywords = {Patella, Patellaersatz},
}


Mein Hauptdokument sieht so aus:

\documentclass[headsepline,12pt,a4paper,smallheadings]{scrreprt}

\usepackage[T1]{fontenc}
\usepackage[ansinew]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[bottom=3.2cm, top=3.5cm, left=3.5cm, right=3cm]{geometry}
\usepackage[dvips]{graphicx}
\usepackage{makeidx}
\usepackage{shapepar}
\usepackage[hang,small,bf]{caption}
\usepackage{color}

\DeclareGraphicsExtensions{.eps,.ps,.eps.gz,.ps.gz ,.eps.Z,.gif,.jpg,.tif,.fig}
\DeclareGraphicsRule{.jpg}{eps}{}{`convert #1 `eps:-`}

\usepackage{bibgerm}
\pagestyle{headings}
\begin{document}
....
\bibliographystyle{gerplain}
\bibliography{Literaturverzeichnis}
\end{document}

Hat jemand noch eine Idee, was ich falsch mache ???

Viele Grüße

Ingo

countbela666
05-02-2006, 18:48
Hallo Ingo,

Ich bekomme immer (beispielhaft) folgende Fehlermeldung wenn ich den latex Befehl ausgebe:

! Undefined control sequence.
1.20 {\sc AD, Boyd}, {\sc Ewald FC} \btxandlong
{}\ {\sc Thomas WH}: {\em {Long ....Das kann ich mit deinem Beispiel nicht nachvollziehen, bei mir tritt der Fehler nicht auf. Eigentlich dürfte er auch bei dir nicht auftreten, da der "nicht gefundene" Befehl \btxandlong in der von dir geladenen bibgerm.sty-Datei definitiv definiert wird (Zeile 36: \def\btxandlong##1{und}%)

wenn ich das dann ignoriere zeigt sich bei der Dateiausgabe das zweite Problem:

Vom ersten Autor wird nach dem Vornamen sortiert, die folgenden Autoren erscheinen dann wie gewollt mit Nachname und abgekürztem Vornamen. Z.B. so: AD, BOYD, EWALD FC THOMAS WH: Long-term.....Das ist kein Fehler, sondern beim Stil gerplain so gewollt. Wenn du das ändern willst, kannst du die dafür verantwortliche Datei .../texmf/bibtex/bst/germbib/gerplain.bst anpassen (am besten kopieren und umbenennen in mygerplain.bst, dann natürlich auch mit \bibliographystyle{mygerplain} laden). Die Funktion format.names aus gerplain.bst muss aussehen wie folgt (Änderung in markierter Zeile, um Zeile 256):

FUNCTION {format.names}
{ 's :=
#1 'nameptr :=
s num.names$ 'numnames :=
numnames 'namesleft :=
{ namesleft #0 > }
{ nameptr #1 >
{ s nameptr "{ll}{, jj}{, ff}{~vv}" format.name$ 't :=
namesleft #1 >
{ ", " * t smallcaps * }
{ numnames #2 >
{ "english" language.state.test
"USenglish" language.state.test
or
{"," * }
'skip$
if$
}
'skip$
if$
t "others" =
{ " \btxetalshort{.}" * }
{ " \btxandlong{}\ " * t smallcaps * }
if$
}
if$
}
{ s nameptr "{ll}{, jj}{, ff}{~vv}" format.name$ smallcaps }
if$
nameptr #1 + 'nameptr :=
namesleft #1 - 'namesleft :=
}
while$
}Weiterhin musst du die Namen in der *.bib-Datei in der richtigen Reihenfolge angeben, erst Vor- dann Nachname, also author = {AD Boyd and FC Ewald and WH Thomas}.

Grüße,
Marcel

Rico123
06-02-2006, 16:12
Hallo Marcel,

mit dieser Veränderung ist es jetzt fast so wie ich es haben möchte. Ich habe mittels try-and-error noch ein paar Variationen vorgenommen. Diese Zeile in meinem mygerplain.bst File sieht jetzt so aus:

{ s nameptr "{ ll}{, jj}{ ff}{,~vv}" format.name$ smallcaps 't :=

ich bekomme jetzt im Literaturverzeichnis die Ausgabe:

SUN S, MALZER U SCHULER P: .....

wie kann ich vor dem letzten Autor noch ein Komma einfügen, damit die Ausgabe so aussieht:

SUN S, MALZER U, SCHULER P: .....



Das mit Vor- und Nachname habe ich verstanden und muß ich jetzt wohl in allen Einträgen ändern. Das Problem mit der Fehlermeldung habe ich immer noch, obwohl auch bei mir dieser Befehl definiert ist. Aber damit kann ich leben.

Viele Grüße

Ingo

countbela666
06-02-2006, 16:31
Hallo Ingo,

das fehlende Zeichen zwischen vorletztem und letztem Autoreintrag im Literaturverzeichnis hat unmittelbar mit der Fehlermeldung zu tun. Dort wo bei dir momentan nichts steht, expandiert normalerweise eben jener Befehl \btxandlong zu "und", der bei dir seltsamerweise nicht gefunden wird. Warum, kann ich mir nicht erklären.

Mehrere Lösungsmöglichkeiten:
1) Definiere das \btxandlong einfach selber: \def\btxandlong{und} (entweder in der Präambel, oder per Holzhammer zwischen \bibliographystyle{...} und vor \bibliography{...})
2) mach mal ein astreines Minimalbeispiel, das auch bei mir den Fehler reproduziert... :D

Grüße,
Marcel

Rico123
07-02-2006, 08:13
Hallo Marcel,

danke für den Tip. Ich hab jetzt im Hauptdokument noch mal den Befehl
\btxandlong definiert und es gab damit keine Probleme mehr.
Ich habe dann noch mit \btxchapterlong und \btxpageslong das gleiche Problem gehabt und auf gleiche Weise gelöst.

Ein Minimalbeispiel, was den Fehler auslöst muss ich mir erst noch ausdenken.

Viele Grüße

Ingo