Autorensortierung Thema ist als GELÖST markiert

Erstellung eines Literaturverzeichnisses mit BibTeX, Biber, BibLaTeX und Co.


Molch

Autorensortierung

Beitrag von Molch »

Hallo liebe Tex-Freunde

da mir heute hier schon so toll geholfen wurde, hier eine weitere Frage:

Wie bekomme ich NUR den letzten Autor im Format Vorname:Nachname?

Alle anderen aufgezählen Autoren in dem Literaturverzeichnis sollen nach
Nachname:Vorname aufgelistet werden...

z.B. XXX, A., YYY,B. & C.ZZZ (19xx.)

Da hab ich leider grade keinen Ansatzpunkt

viele Grüße
Molch

Molch

Beitrag von Molch »

Hallo

ich habe eine Lösung gefunden. Diese möchte ich Euch natürlich nicht vorenthalten!

Wobei ich glaube, meine Lösung funktioniert zwar, scheint mir selbst aber nicht ganz sauber. Von daher gehe ich davon aus, dass es auch einen anderen "sauberen" Lösungsweg gibt.

Hier ist meiner.

In die .bbx-Datei des verwendeten Stils habe ich:
\renewbibmacro*{name:first-last}[4]{%
\usebibmacro{name:delim}{#2#3#1}%
\usebibmacro{name:hook}{#2#3#1}%
\ifblank{#2}{}{\mkbibnamefirst{#1}\isdot\addlowpenspace}%
\ifblank{#3}{}{%
\mkbibnameprefix{#3}\isdot
\ifpunctmark{'}
{}
{\ifuseprefix{\addhighpenspace}{\addlowpenspace}}}%
\mkbibnamelast{#2}\isdot
\ifblank{#4}{}{\addlowpenspace\mkbibnameaffix{#4}\isdot}}
Dabei als erstes das alte Macro aus biblatex.def durch "renewbibmacro" erneuert.
Die beiden fett gedruckten Zahlenwerte miteinander vertauscht (warum auch immer!)

Dann der nicht ganz saubere Part!
In der JabRef-Datei xxx.bib bei jedem! Eintrag mit mehreren Autoren den letzten umgedreht. Sprich dort steht jetzt als letzter Autorenname A, XXX.

Jetzt werden meine Autoren im Literaturverzeichnis nach meinem gewünschten Schema:
XXX, A., YYY, B. & C. ZZZ (19xx): ausgedruckt[/b]

Molch

Zusatz

Beitrag von Molch »

Molch hat geschrieben:
Dann der nicht ganz saubere Part!
In der JabRef-Datei xxx.bib bei jedem! Eintrag mit mehreren Autoren den letzten umgedreht. Sprich dort steht jetzt als letzter Autorenname A, XXX.
Hierbei scheint wichtig zu sein, dass die Namen mit einem Komma getrennt werden. Ohne funktioniert es nicht!!!

der Code in der .bib-Datei
XXX, A., YYY, B., and C., ZZZ
[/quote]

Benutzeravatar
domwass
TeX-Entwickler
TeX-Entwickler
Beiträge: 617
Registriert: Di 26. Aug 2008, 12:44
Kontaktdaten:

Beitrag von domwass »

Entschuldigung, aber das ist schlicht Murks. Bei mehreren Autoren muss in
der bib-Datei zwischen den Autoren ein 'and' entstehen, also entweder so:
author = {Nachname1, Vorname1 and Nachname2, Vorname2 and Nachname3, Vorname3}
oder so:
author = {Vorname1 Nachname1 and Vorname2 Nachname2 and Vorname3 Nachname3}
Anderenfalls kann BibTeX die einzelnen Namensbestandteile nicht richtig
zuordnen. Worauf sich die Nummern beziehen, die du getauscht hast,
kannst du hier nachlesen: http://projekte.dante.de/DanteFAQ/Bibla ... lgeAutoren.
Das Makro, wo du ansetzen solltest, ist folgendes (aus biblatex.def):
\DeclareNameFormat{sortname}{%
  \ifnum\value{listcount}=1\relax
    \iffirstinits
      {\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}}
      {\usebibmacro{name:last-first}{#1}{#3}{#5}{#7}}%
    \ifblank{#3#5}
      {}
      {\usebibmacro{name:revsdelim}}%
  \else
    \iffirstinits
      {\usebibmacro{name:first-last}{#1}{#4}{#5}{#7}}
      {\usebibmacro{name:first-last}{#1}{#3}{#5}{#7}}%
  \fi
  \usebibmacro{name:andothers}}
Dabei gibt das \value{listcount}=1 an, dass der folgende Code (bis \else)
nur beim ersten Autor angegeben wird. Ich habe allerdings keine Ahnung,
was dort angegeben sein muss, damit alle bis auf den letzten Autor mit
'Nachname, Vorname' ausgegeben werden.

Eine Bemerkung am Rande: Ist das eine zwingede Vorgabe? Ich habe das
so nämlich noch nie gesehen. Die Reihenfolge mit 'Nachname, Vorname'
beim ersten und 'Vorname Nachname' bei allen anderen Autoren ist
dagegen üblich und sinnvoll, um anhand des Nachnamens des ersten
Autors alphabetisch sortieren zu können. Ansonsten kenne ich noch, dass
man alle Autoren mit 'Nachname, Vorname' angibt.

Gruß,
Dominik.-

Molch

Beitrag von Molch »

domwass hat geschrieben:Entschuldigung, aber das ist schlicht Murks.
Wusste ich ja, deshalb hier zur Diskussion ;)
Bei mehreren Autoren muss in
der bib-Datei zwischen den Autoren ein 'and' entstehen, also entweder so:
author = {Nachname1, Vorname1 and Nachname2, Vorname2 and Nachname3, Vorname3}
oder so:
author = {Vorname1 Nachname1 and Vorname2 Nachname2 and Vorname3 Nachname3}
Anderenfalls kann BibTeX die einzelnen Namensbestandteile nicht richtig
zuordnen. Worauf sich die Nummern beziehen, die du getauscht hast,
kannst du hier nachlesen: http://projekte.dante.de/DanteFAQ/Bibla ... lgeAutoren.
Sorry, habe die .bib-Datei aus Zeitzwecken nur abgekürzt wiedergegeben.
 author = {Spötl, C. and Fairchild, I. J. and Tooth, A. F.} 
ist natürlich richtig.

Das Makro, wo du ansetzen solltest, ist folgendes (aus biblatex.def):
\DeclareNameFormat{sortname}{%
  \ifnum\value{listcount}=1\relax
    \iffirstinits
      {\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}}
      {\usebibmacro{name:last-first}{#1}{#3}{#5}{#7}}%
    \ifblank{#3#5}
      {}
      {\usebibmacro{name:revsdelim}}%
  \else
    \iffirstinits
      {\usebibmacro{name:first-last}{#1}{#4}{#5}{#7}}
      {\usebibmacro{name:first-last}{#1}{#3}{#5}{#7}}%
  \fi
  \usebibmacro{name:andothers}}
Dabei gibt das \value{listcount}=1 an, dass der folgende Code (bis \else)
nur beim ersten Autor angegeben wird. Ich habe allerdings keine Ahnung,
was dort angegeben sein muss, damit alle bis auf den letzten Autor mit
'Nachname, Vorname' ausgegeben werden.
Danke. Das habe ich mittlerweile schon versucht, scheitere aber immer wieder :(


Eine Bemerkung am Rande: Ist das eine zwingede Vorgabe? Ich habe das
so nämlich noch nie gesehen. Die Reihenfolge mit 'Nachname, Vorname'
beim ersten und 'Vorname Nachname' bei allen anderen Autoren ist
dagegen üblich und sinnvoll, um anhand des Nachnamens des ersten
Autors alphabetisch sortieren zu können. Ansonsten kenne ich noch, dass
man alle Autoren mit 'Nachname, Vorname' angibt.
Gruß,
Dominik.-
Anscheinend schon. Siehe: http://www.uni-marburg.de/fb19/studium/wiss_arbeit

vielen Dank schonmal für die Antwort, auch wenn ich am verzweifeln bin..

Benutzeravatar
domwass
TeX-Entwickler
TeX-Entwickler
Beiträge: 617
Registriert: Di 26. Aug 2008, 12:44
Kontaktdaten:

Beitrag von domwass »

Dann stell deine Frage am besten nochmal in der Newsgroup
comp.text.tex (z.B. über Google Groups:
http://groups.google.com/group/comp.text.tex/ oder über den
Newsreader deines Vertrauens...). Dort liest auch der Entwickler mit und
kann ggf. eine Hilfestellung geben.

Gruß,
Dominik.-

Antworten