alphadin.bst bearbeiten

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: alphadin.bst bearbeiten

von DanielS » Di 23. Mär 2010, 23:33

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

alphadin.bst bearbeiten

von Daniel86 » Sa 20. Mär 2010, 22:21

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.}

Nach oben