PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : \citep nur mit natdin?



borose
20-10-2009, 15:33
Hallo!

Ich möchte gern den Befehl \citet{xyz} benutzen. Allerdings verwende ich den unsrtdin-bibstyle mit natbib und da bekomme ich die Fehlermeldung:


Author undefined for citiation'xcy'

Die selbe Fehlermeldung erhalte ich übrigens auch mit plaindin, abbrdin und alphadin

Wenn ich den natdin-Style verwende, funktioniert es wunderbar. Wenn ich dieses Problem google, habe ich bis jetzt nur den Lösungsvorschlag "natdin verwenden" gefunden. Ich möchte aber unsrtdin ... Hat jemand eine Idee?

Danke!

mechanicus
20-10-2009, 17:36
Hi,


Hat jemand eine Idee?
Baue deine Lit-Verzeichnis auf biblatex um. Dann ist es möglich. Die Fehlermeldung sagt dir ja schon das Problem.

Gruß
Marco

borose
21-10-2009, 13:04
Hi,

Naja, auf größere umbauarbeiten (->biblatex) wollte ich verzichten. da ist es dann einfacher und schneller den autor selbst nachzuschlagen und hinzutippen.

Die Fehlermeldung gibt meines Erachtens nur indirekt das Problem wieder, da der Eintrag author in der .bib-Datei des betreffenden Eintrags definiert ist.

Muss man den unsrtdin-bibstyle manuell ändern um dieses Problem zu beheben, oder gibts eine andere, bessere Lösung?

trotzdem danke

u_fischer
21-10-2009, 13:52
Was in der bib-Datei steht, ist uninteressant, da LaTeX ja die bib-Datei gar nicht sieht. LaTeX sieht die bbl-Datei, diese wird von bibtex aus der bib-Datei nach den Vorgaben des Stils erzeugt. Wenn diese bbl-Datei nicht die nötigen Infos enthält, kann \citet (oder \citep) sie nicht auslesen.

Wenn du den Stil anpassen willst: Infos findest du in tamethebeast und in
http://www.tex.ac.uk/cgi-bin/texfaq2html?label=custbib.

ddp
22-06-2012, 12:25
Da das Thema ziemlich alt ist, für aber wieder aktuell wurde und ich eine befriedigend einfache Lösung gefunden habe, möchte ich es hier mal Posten:

Man kann einfach die Sortierfunktion in natdin ausstellen. Datei natdin.bst unter MiKTeX 2.9\bibtex\bst\din1505 . Wichtig sind zwei Befehlszeilen am Ende der Datei:

ITERATE {presort} -muss drin bleiben

SORT - auskommentieren

dazwischen wieder einige Befehle

ITERATE {bib.sort.order} -auskommentieren

SORT -auskommentieren

Bei funktioniert es und das Ergebnis erfüllt meine Erwartungen. Da ich mich so tief in der Materie nicht auskenne lasse ich mich aber gern über etwaige Folgen belehren ;)

Grüße