Fehler nach Installation von KOMA-Sript 3

Erstellung eines Literaturverzeichnisses mit BibTeX, Biber, BibLaTeX und Co.
gomdol
Forum-Newbie
Forum-Newbie
Beiträge: 2
Registriert: Di 26. Mai 2009, 07:38

Fehler nach Installation von KOMA-Sript 3

Beitrag von gomdol »

Ich habe mein sehr in die Jahre gekommenes MiK-Tex und TexnicCenter rundum erneuert, dass heißt die neuesten Versionen installiert, sowie das "neue" KOMA Script 3.

Während normale bibtex-stile (plainnat ect...) ohne Probleme durchlaufen, wird folgende Fehlermeldung bei einem selbst erstellten bibtex-stil ausgegeben:
(fehler-bib.bbl
! Extra }, or forgotten \endgroup.
\par ...m \@noitemerr {\@@par }\fi \else {\@@par }
\fi
l.19
Der bibtex-stil ist bei mir seit Jahren ohne Probleme unverändert im Einsatz.
Hat es etwas mit dem neuen KOMA-Script zu tun? Denn in der log Datei folgt nach dem Fehler:
I've deleted a group-closing symbol because it seems to be
spurious, as in `$x}$'. But perhaps the } is legitimate and
you forgot something else, as in `\hbox{$x}'. In such cases
the way to recover is to insert both the forgotten and the
deleted material, e.g., by typing `I$}'.
Was kann ich nun tun, weiß jemand Rat? Der fehler kommt für jeden bibtex-Eintrag....

Minimalbeispiel:

Code: Alles auswählen

\documentclass{scrartcl}
\usepackage{natbib}

\begin{document}

\citet{boden2005}

\bibliographystyle{tryout}			  
\bibliography{testlit}

\end{document}
Im Dateianhang sind: tryout.bst; testlit.bib; und log-Datei

gruß
andreas
Zuletzt geändert von gomdol am Di 26. Mai 2009, 20:26, insgesamt 1-mal geändert.

Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2650
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Fehler nach Update der LaTeX-Installation

Beitrag von KOMA »

Das dürfte ein Fehler in tryout.bst sein, den in natbib.sty wird \bibAnnoteFile als Makro mit zwei Argumenten definiert, während Dein tryout.bst nur eine Notfallsdefinition und eine Verwendung mit einem Argument erzeugt.

Dass die Frage mit KOMA-Script nichts zu tun hat, hättest Du ganz einfach selbst herausfinden können, indem Du in Deinem Minimalbeispiel mal scrartcl durch article ersetzt hättest. Da es nichts mit KOMA-Script zu tun hat, habe ich das Thema in den passenden Bereich verschoben.

Edit: Der Fehler könnte übrigens auch schlicht sein, \providecommand statt \renewcommand zu verwenden. In dem Fall einfach mal die Definition von \bibAnnoteFile und \bibAnnote aus der bbl-Datei in die Dokumentpräambel kopieren und dort \renewcommand verwenden. Vielleicht funktioniert es dann und führt auch zum gewünschten Ergebnis:

Code: Alles auswählen

\documentclass{article} 
\usepackage{natbib} 
\renewcommand{\bibAnnoteFile}[1]{%
  \IfFileExists{#1}{\begin{quotation}\noindent\textsc{Key:} #1\\
      \textsc{Annotation:}\ \input{#1}\end{quotation}%
  }{}%
}
\renewcommand{\bibAnnote}[2]{%
  \begin{quotation}\noindent\textsc{Key:} #1\\
  \textsc{Annotation:}\ #2\end{quotation}}

\begin{document} 

\citet{boden2005} 

\bibliographystyle{tryout}           
\bibliography{testlit} 

\end{document}
Vielleicht ist es ja auch ein Fehler in natbib, dass dort drei bzw. zwei Argumente statt wie von custom-bib vorgesehen ein bzw. zwei Argumente verwendet werden. Ich kann nicht beurteilen, wer da recht hat.

gomdol
Forum-Newbie
Forum-Newbie
Beiträge: 2
Registriert: Di 26. Mai 2009, 07:38

Beitrag von gomdol »

Hallo Markus,

vielen Dank für die Antwort. Ich war mir in der Tat nicht sicher ob ich es in die Bibtex-Rubrik oder in die KOMA-Rubrik setzten sollte. Eine Begründung für meine Entscheidung hatte ich geschrieben. Es wäre jedoch wie Du geschildert hast, leicht zu überprüfen gewesen, ob das KOMA-Script verantwortlich ist.

Es scheint eine neuere Version des natbib-package nicht mehr kompatibel zu sein, zu ehemals erstellten und mit älteren nabib-versionen unproblematisch zu nutzenden eigenen bibtex-stilen zu geben. Schade.

Eine weitere Möglichkeit die .bst weiterhin zu nutzen wurde mir hier: http://www.mrunix.de/forums/showthread.php?t=64679 ; gegeben.

gruß
andreas

Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2650
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Beitrag von KOMA »

Die bst-Datei selbst zu ändern kommt nur in Frage wenn man die Treiberdatei bereits weggeworfen hat, also sicher ist, dass nicht irgendwer die bst-Datei neu aus der Treiberdatei erzeugt. Wenn schon, würde ich eher merlin.mbs ändern, damit die bst-Datei entsprechend erzeugt wird. Das wiederum darf aber nur Patrick. Also solltest Du ihm einen Bug-Report schicken, der das Problem schildert. Dann kann er das selbst ändern. Seine E-Mail-Adresse steht beispielsweise am Anfang von merlin.mbs.

Antworten