PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : *.bst bearbeiten -> "et al." nicht kursiv



startklar
10-03-2011, 18:06
Hallo zusammen,

ich bin mit dem Stil apecon (http://mirror.ctan.org/biblio/bibtex/contrib/economic/apecon.bst) recht zufrieden. Allerdings würde ich gerne abstellen, dass das "et al." kursiv gesetzt wird. Wie kann ich das erreichen?


Vielen Dank für Eure Hilfe!

bobmalaria
10-03-2011, 18:33
hi,

ich habe 5x den string


" " * bbl.etal emphasize *


gefunden, versuche mal das emphasize zu loeschen.

mach das aber nicht in der datei in deinem system sondern in einer kopie in deinem projektordner (damit die originaldatei erhalten bleibt)

gruss

startklar
10-03-2011, 18:41
hat geklappt! vielen Dank!

startklar
24-03-2011, 23:57
ich muss das Thema hier leider noch mal aufwärmen:

Am Anfang hat es mich nicht gestört, aber irgendwie finde ich es jetzt doch merkwürdig, dass nur die Zahl die in "volume" bei @ARTICLE steht fett geschrieben wird.

Weiß jemand wie man das abstellen kann?


Vielen Dank schon einmal für eure erneute Hilfe! :)

geofutzi
25-03-2011, 10:00
Hallo,

ich habe eine ähnliche Frage:

ich würde gerne eine selbst gebastelte .bst-Datei so ändern, dass die Referenzen im Fließtext in Kapitälchen dargestellt werden, natürlich außer et al..

Da ich die Datei hier leider nicht hochladen kann, stell ich mal den Codeschnipsel dar, wo ich vermute, dass was geändert werden muss. Um das ganze übersichtlicher zu gestalten, noch die Zeilennummern:



1 FUNCTION {format.names}
2 { 'bibinfo :=
3 duplicate$ empty$ 'skip$ {
4 's :=
5 "" 't :=
6 #1 'nameptr :=
7 s num.names$ 'numnames :=
8 numnames 'namesleft :=
9 { namesleft #0 > }
10 { s nameptr
11 "{vv~}{ll}{, f.}{, jj}"
12 format.name$
13 bibinfo bibinfo.check
14 't :=
15 nameptr #1 >
16 {
17 namesleft #1 >
18 { ", " * t * }
19 {
20 s nameptr "{ll}" format.name$ duplicate$ "others" =
21 { 't := }
22 { pop$ }
23 if$
24 t "others" =
25 {
26 " " * bbl.etal emphasize *
27 }
28 {
29 "\&"
30 space.word * t *
31 }
32 if$
33 }
34 if$
35 }
36 't
37 if$
38 nameptr #1 + 'nameptr :=
39 namesleft #1 - 'namesleft :=
40 }
41 while$
42 } if$
43 }
44 FUNCTION {format.names.ed}
45 {
46 format.names
47 }
48 FUNCTION {format.key}
49 { empty$
50 { key field.or.null }
51 { "" }
52 if$
53 }
54
55 FUNCTION {format.authors}
56 { author "author" format.names
57 }
58 FUNCTION {get.bbl.editor}
59 { editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ }
60
61 FUNCTION {format.editors}
62 { editor "editor" format.names duplicate$ empty$ 'skip$
63 {
64 " " *
65 get.bbl.editor
66 capitalize
67 "(" swap$ * ")" *
68 *
69 }
70 if$
71 }
72 FUNCTION {format.book.pages}
73 { pages "pages" bibinfo.check
74 duplicate$ empty$ 'skip$
75 { " " * bbl.pages * }
76 if$
77 }
78 FUNCTION {format.note}
79 {
80 url empty$
81 'skip$
82 { "\urlprefix\url{" url * "}" * output }
83 if$
84 note empty$
85 { "" }
86 { note #1 #1 substring$
87 duplicate$ "{" =
88 'skip$
89 { output.state mid.sentence =
90 { "l" }
91 { "u" }
92 if$
93 change.case$
94 }
95 if$
96 note #2 global.max$ substring$ * "note" bibinfo.check
97 }
98 if$
99 }
100
101 FUNCTION {format.title}
102 { title
103 "title" bibinfo.check
104 duplicate$ empty$ 'skip$
105 {
106 emphasize
107 }
108 if$
109 }
110 FUNCTION {format.full.names}
111 {'s :=
112 "" 't :=
113 #1 'nameptr :=
114 s num.names$ 'numnames :=
115 numnames 'namesleft :=
116 { namesleft #0 > }
117 { s nameptr
118 "{vv~}{ll}" format.name$
119 't :=
120 nameptr #1 >
121 {
122 namesleft #1 >
123 { ", " * t * }
124 {
125 s nameptr "{ll}" format.name$ duplicate$ "others" =
126 { 't := }
127 { pop$ }
128 if$
129 t "others" =
130 {
131 " " * bbl.etal emphasize *
132 }
133 {
134 "\&"
135 space.word * t *
136 }
137 if$
138 }
139 if$
140 }
141 't
142 if$
143 nameptr #1 + 'nameptr :=
144 namesleft #1 - 'namesleft :=
145 }
146 while$
147 }



Ich hoffe man kann damit was anfangen. Aber eigentlich müsste es doch im gleichen Block sein wie "* bbl.etal emphasize *" in line 26, oder?! Oder kann man mit dem Codeschnipsel nix anfangen, so aus dem Zusammenhang gegriffen?

Danke schonmal

Nils

geofutzi
20-04-2011, 19:48
Weiß keiner darauf eine schlaue Antwort? :(

Oder braucht man dafür mehr Informationen?? Ich könnte natürlich auch den gesamten Code hochstellen, glaub aber nich, dass das hilfreich wäre...

Ich habe die .bst-Datei leider nicht selber erstellt, wahrscheinlich wüsste ich sonst wie das geht...

Grüße

Nils

NADH
23-05-2011, 14:29
Ich hab folgendes, sehr ähnliches Problem
Ich verwende Bibtex4word und momentan asgm.bst als BibteX-Style. http://www.cs.uvm.edu/~kais/LaTeX/agsm.bst
Das ist auch bis auf eine Sache alles einwandfrei. Ich hätte gern im Fließtext bei Zitaten mit mehreren Verfasser, dass das „et al.“ – kursiv ausgegeben wird. Ich hab hierzu auch schon ältere Forumseinträge gefunden, die vorschlagen im Quellcode jeweils aus dem
{et~al.} ein
{ "\textit{et~al.}" }
Zu machen. Das hab ich auch gemacht. Insegesamt taucht {et~al.} viermal im Quellcode auf (Zeilen, 189,545,547,570 und 1085) Dann hab ich das .bst gespeichert, FNDB resfreshed. Aber das et. al bleibt trotzdem ganz normal.

Ich hab auch versucht jede Zeile nur individuell zu ändern, aber auch ohne Erfolg.

Den string * bbl.etal emphasize * von dem hier die Rede ist find ich gar nicht in meinem Quellcode

Wo ist mein Fehler?

Vielen Dank schon mal im Voraus

Heiko

Festus
23-05-2011, 17:26
@NADH

Ich würd erst mal versuchen die geänderte .bst direkt in den Ordner zu kopieren, in dem auch deine .tex Datei ist. Wenn es dann funktioniert ist deine Änderung richtig, und Latex findet trotz Aktualisierung aus irgendeinem Grund deine neue .bst nicht. Andernfalls hast du wirklich was falsch geändert...

Festus
23-05-2011, 17:35
@geofutzi


FUNCTION {format.authors}
56 { author "author" format.names
57 }
{
" " *
get.bbl.author
scshape
"(" swap$ * ")" *
*
}
if$
58 FUNCTION {get.bbl.editor}
59 { editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ }
60
61 FUNCTION {format.editors}
62 { editor "editor" format.names duplicate$ empty$ 'skip$
63 {
64 " " *
65 get.bbl.editor
66 capitalize
67 "(" swap$ * ")" *
68 *
69 }
70 if$
71 }

Ist ein reiner Schuss ins blaue und völlig ungetestet, also ändere um Himmels Willen nicht die Originaldatei.
Von wem hast du die .bst, kann der dir nicht ggf. auch 'ne Andere geben. Ich denke mal die wurde dann mit custom-bib erstellt? Damit könntest du dir auch leicht was passendes bauen (ist deutlich einfacher als in fertigen .bst's rumzubauen). Oder du steigtst auf Biblatex um.

Gruß, Festus

NADH
23-05-2011, 19:59
aber ich geb den geänderten .bst dateien ja schon immer neue namen
und die scheint das bibtex ja dann wohl doch zu finden
oder nicht?

Festus
24-05-2011, 12:56
@NADH

Genau das gilt es ja herauszufinden: Wenn du die .bst in den Ordner mit deiner .tex kopierst und dann verwendest, und es funktioniert, dann hast du die -bst richtig geändert und sie wurde von Latex vorher nicht gefunden. Wenn es auch dann nicht funktioniert ist deine Änderung falsch. Erst einmal zu wissen welcher von beiden Fehlern das Problem ist der halbe Weg zur Lösung!

NADH
24-05-2011, 13:50
HM
ich benutze bibtex4word - ich hab also gar kein wirkliches .tex-file
aber das bibtex findet ja die geänderten dateien, weil die ja nen anderen namen haben
wenn ich nen falschen style namen eingebe, bekomm ich ja ne fehlermeldung


aber vielleicht liegt es schon irgendwie daran

ich öffne das alte .bst mit TexWorks und füge die änderungen ein und dann speichere ich es unter einem neuen namen als .bst

wenn ich aber ein neues dokument mit TexWorks machen will, dann kann ich das irgendwie nicht als .bst speichern - kann also irgendwie schon sein, dass du recht hast und er die änderungen so nicht erkennt

aber weiter komm ich so irgendwie auch nicht

Festus
24-05-2011, 14:13
Hm, könnte schon sein, dass es am Editor liegt, obwohl ichs mir eigentlich nicht vorstellen kann. Probiers doch mal mit dem Crimson Editor (http://www.crimsoneditor.com/), der hat solche Probleme garntiert nicht.

Festus
24-05-2011, 14:21
Von http://www.ee.ic.ac.uk/hp/staff/dmb/perl/index.html


You can verify that style xxx is visible to MikTex by typing "kpsewhich xxx.bst" from a command window.

Hast du das mal probiert?

NADH
24-05-2011, 15:05
okay
ähm
sorry wenn ich dumm frage aber wir reden zum beispiel von der ms dos ebene

also wenn ich das da eingebe
kommt der pfad wo die .bst datei ist als antwort

Festus
24-05-2011, 16:06
Ja, wir reden von der Windows-Kommandozeile (im deutschen Windows 'Eingabeaufforderung' und unter Zubehör zu finden). Und wenn als Antwort der korrekte Dateipfad erscheint heißt das wohl, dass MikTeX weiß, wo das .bst liegt. In dem Fall sollte alles klappen, und wenn du keine Änderung im Dokument siehst wird deine Änderung der .bst wohl falsch gewesen sein. Da du, wie ich gesehen habe, für Bibtex4Word sowieso eine funktionierende MikTeX Distribution brauchst könntest du auch folgendes tun:

-Benutze den Paket-Manager um custom-bib zu installieren

-Geh von der Kommandozeile über 'cd >Dateipfad<' in dein custom-bib Verzeichnis

-Tippe 'latex makebst'---Enter

Dann öffnet sich makebst, wo du ggf. noch ein Sprachpaket laden kannst, wenn du nicht englisch schreibst. Da wirst du durch einen Fragenkatalog geführt, mit dem du dir ein .bst nach deinen Wünschen bauen kannst.

Ist etwas komplizierter als eine bestehende .bst zu ändern, aber nach mind. 30 min. bist du durch---das is deutlich weniger zeit als du hier schon mit erfolglosem trouble-shooting verbracht hast.

Gruß, Festus

Festus
24-05-2011, 16:12
Ganz nebenbei, auch wenn ich hier deswegen vielleicht Forums-Verbot kriege :rolleyes:

Wieso benutzt du bei funktionierendem MikTeX eigentlich Word? Oder wenn du, z.B. Verlagsseitig, Word benutzen musst; wieso nimmst du dann nicht ein auf Word zugeschnittenes Bibliographie-Programm wie EndNote---mit Word läuft das so deutlich besser?