Anzeige:
Ergebnis 1 bis 3 von 3

Thema: "and" wird nicht zu "und" beim zitieren

  1. #1
    Registrierter Benutzer
    Registriert seit
    06.11.2006
    Beiträge
    28

    "and" wird nicht zu "und" beim zitieren

    Hallo Leute,

    ich habe folgendes Problem. Wenn ich folgendes laufen lasse, und im Text die entsprechende Stelle zitiere erscheint zwischen zwei Autoren and statt und:

    \documentclass[ngerman]{report}
    \usepackage[ngerman]{babel}
    \usepackage[round, sort]{natbib}

    \begin{document}
    \citet{Mourad:1998}
    \bibliographystyle{plainnat}
    \bibliography{Literatur}
    \end{document}


    in Literatur.bib steht dann beispielsweise folgendes:
    @ARTICLE{Mourad:1998,
    AUTHOR = {Mourad, M. and Anous, M. R.},
    TITLE = {Estimates of Genetic and Phenotypic Parameters of some Growth Traits in Common African and Alpine
    Crossbreed Goats},
    JOURNAL = {Small Ruminant Research},
    YEAR = {1998},
    volume = {27},
    pages = {197-202},
    keywords = {heritability, genetic correlation, common african goat, alpine goat, crossbreeding},
    }

    So jetzt steht im Literaturverzeichnis "Mourad, M. and Anous, M. R." und auch im Zitat oben, alles andere ist genau so, wie es sein soll. Ein anderer Zitierstil entspricht leider nicht den Vorgaben. Ja ja, die Vorlieben. Egal, ich habe jetzt ein wenig in plainnat.bst rumgepfuscht und in der folgenden Funktion das rote verändert:

    FUNCTION {format.full.names}
    {'s :=
    #1 'nameptr :=
    s num.names$ 'numnames :=
    numnames 'namesleft :=
    { namesleft #0 > }
    { s nameptr
    "{vv~}{ll}" format.name$ 't :=
    nameptr #1 >
    {
    namesleft #1 >
    { ", " * t * }
    {
    numnames #2 >
    { "," * }
    'skip$
    if$
    t "others" =
    { " et~al." * }
    %% { " and " * t * } %original version
    { " und " * t * }
    if$
    }
    if$
    }
    't
    if$
    nameptr #1 + 'nameptr :=
    namesleft #1 - 'namesleft :=
    }
    while$
    }

    So danach erscheint im Literaturverzeichnis ein ordentliches "und", nicht jedoch bei meinem Zitat im Text. Soweit ich jetzt rausgefunden habe, liegt das wohl in folgender Funktion am rot markierten:

    FUNCTION {output.bibitem}
    { newline$
    "\bibitem[" write$
    label write$

    ")" make.full.names duplicate$ short.list =
    { pop$ }
    { * }
    if$
    "]{" * write$
    cite$ write$
    "}" write$
    newline$
    ""
    before.all 'output.state :=
    }

    Ich kann jetzt schon, nachdem alles schön gelaufen ist, im meinem report.bbl per Hand die verbliebenen and´s zu und´s machen, sind ja nur fünf, aber hat jemand eine Idee, wie ich ihn dazu bringen kann, das freiwillig zu machen. Vor allem ist das weniger fehleranfällig.

    Danke schon mal und wie gesagt, wenn niemand eine Idee hat, werde ich zum Schluss einfach den bbl-file ändern.

    Aui

  2. #2
    Registrierter Benutzer
    Registriert seit
    10.01.2005
    Beiträge
    979
    Hi Aui,

    guck Dir mal FUNCTION {format.lab.names} und auch FUNCTION {format.names} an!

    Salnic
    Geändert von Salnic (30-04-2007 um 21:05 Uhr)

  3. #3
    Registrierter Benutzer
    Registriert seit
    06.11.2006
    Beiträge
    28
    Hallo Salnic,

    das mit FUNCTION {format.lab.names} war der richtige Tipp, habe vergessen hinzuschreiben, dass ich in FUNCTION {format.names} schon and zu und gemacht habe.

    Danke nochmal dafür

    Aui

    PS.: Hat jemand eine Ahnung, warum das Paket babel das nicht ändert? Und wo kann ich eine Anleitung oder Beschreibung zu den Functionen und so weiter bekommen? Ist bestimmt einfacher damit auf die Suche zu gehen als alles mit try-and-error zu ergründen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •