alphadin.bst bearbeiten Thema ist als GELÖST markiert

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


Daniel86

alphadin.bst bearbeiten

Beitrag von Daniel86 »

Hallo zusammen,

dank diesem Forum konnte ich die format.lab.names Funktion schon in der alphadin bearbeiten und als alphadin_custom abspeichern:

Hier die geänderte Funktion: http://pastebin.com/6TXPr8FR

Diese bewirkt folgendes:
Müller 2006 -> Müll06
Müller, Mayer 2006 -> MüMa06

bei drei Autoren soll jetzt folgendes passieren:
Müller, Mayer, Hubert: Mül+06

momentan werden aber MüMaHu angezeigt. Ich will nur die ersten 3 Buchstaben des ersten Autors, sobald 3 oder mehr Autoren beteiligt waren.

Könnte mir jemand sagen, was ich ändern muss?

Hier nochmal der Code:
1.FUNCTION {format.lab.names}
2.{ 's :=
3. s num.names$ 'numnames :=
4. numnames #1 >
5.   { numnames #4 >
6.       { #3 'namesleft := }
7.       { numnames 'namesleft := }
8.     if$
9.      #1 'nameptr :=
10.      ""
11.        { namesleft #0 > }
12.        { nameptr numnames =
13.           { s nameptr "{ff }{vv }{ll}{ jj}" format.name$ "others" =
14.%%                { "\," *  %% kein besonderes Zeichen fuer "others" i. label
15.                { "{\etalchar{+}}" *   %% ein plus-Zeichen (+) fuer "others"!
16.                  #1 'et.al.char.used :=
17.                }
18.%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
19.%%              { s nameptr "{l{}}" format.name$ * }
20.                { s nameptr "{ll}" format.name$ #2 text.prefix$ * }
21.%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
22.              if$
23.            }
24.%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
25.%%              { s nameptr "{l{}}" format.name$ * }
26.                { s nameptr "{ll}" format.name$ #2 text.prefix$ * }
27.%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
28.          if$
29.         nameptr #1 + 'nameptr :=
30.         namesleft #1 - 'namesleft :=
31.       }
32.     while$
33.      numnames #4 >
34.%%        { "\," *  %%  s. Bemerkung oben
35.        { "{\etalchar{+}}" *
36.          #1 'et.al.char.used :=
37.        }
38.        'skip$
39.     if$
40.    }
41.    { s #1 "{l{}}" format.name$
42.     duplicate$ text.length$ #2 <
43.%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
44.%%      { pop$ s #1 "{ll}" format.name$ #3 text.prefix$ } %%  vgl. Anmerkung!
45.        { pop$ s #1 "{ll}" format.name$ #4 text.prefix$ } %%  vgl. Anmerkung!
46.%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
47.        'skip$
48.     if$
49.    }
50.  if$
51.}

DanielS

Beitrag von DanielS »

ich bitte noch immer um Hilfe, da ich dies dringend für meine Abschlussarbeit benötige und mir sonst nicht weiter helfen kann.

Antworten