PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : enumitem kollidiert mit ctable => error



Narretz
05-07-2011, 21:37
Hi,
ich hab ein sehr merkwürdiges Problem. Folgendes Beispiel endet mit Error-Messages, wenn ctable aktiviert ist:



\documentclass[pdftex,a4paper, 12pt, DIV12, BCOR10mm, bibliography=totoc]{scrreprt} %DIV, BCOR =Seitenränder

\usepackage[ngerman,english]{babel}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}

\usepackage{ctable} %typeset tables
%\usepackage{xkeyval}
\usepackage{enumitem}

\begin{document}

\newenvironment{met}
%{\begin{itemize} \footnotesize}
{\begin{itemize}[topsep=+0.1cm, itemsep=+0.1cm, parsep=0cm] \footnotesize}
{\end{itemize}}

\begin{met}
\item A
\item B
\end{met}

\end{document}

Der error ist: ! Package xkeyval Error: `topsep' undefined in families `enumitem-resume'. und das ganze jeweils für itemsep und parsep.

Allerdings habe ich xkeyval gar nicht aktiviert!
Dem Autor von enumitem habe ich schon geschrieben, aber er kann das nicht reproduzieren - auf meinem Desktop funktioniert es auch, nur auf meinem Laptop geht es sowohl mit TexNic Center als auch Texmaker nicht.
Ich habe echt keinen Schimmer woran es liegen könnte. Packages sind auf dem neuesten Stand.

localghost
05-07-2011, 21:57
[…] Packages sind auf dem neuesten Stand.
Wahrscheinlich doch nicht. Zumindest was enumitem (http://ctan.org/pkg/enumitem) betrifft. Es gab kurz nach Veröffentlichung von Version 3.0 ein Bug Fix Release [1]. Erst gestern wurde dies auch in MiKTeX eingearbeitet. Also noch mal aktualisieren und erneut versuchen.

[1] CTAN Update: enumitem (http://www.mail-archive.com/ctan-ann@dante.de/msg04055.html)


Thorsten

Narretz
05-07-2011, 22:35
Danke, aber wie gesagt, ich stand schon mit dem Autor von enumitem in Kontakt, und hatte natürlich geschaut, dass ich die neueste Version habe. Es kann natürlich ein völlig aberwitziges Problem sein, dass meine Packages nicht ordentlich geupdatet werden.
Mittlerweile falle ich echt vom Glauben ab: Jetzt habe ich testweise das enumitem Package deinstalliert, aber es ändert sich an der Fehlermeldung überhaupt nichts - und in Miktex sehe ich auch nicht, dass das Package installiert wurde, aber genau das müsste doch passieren, wenn es fehlt und ich kompiliere? Oder gibt es so eine Art Package Cache? Und warum kann auf das Package zugegriffen werden, wenn es in Miktex gar nicht als installiert gekennzeichnet ist? (das gleiche hatte ich jetzt auch mit ctable probiert, gleiches Ergebnis).

e: Interessant, ich finde gerade in einem Ordner names Appdata/Roaming/Miktex2.9/tex/latex die alten style files von enumitem. Natürlich hatte ich die immer im Miktex Ordner gesucht. Aber das kann doch nicht ganz richtig sein, dass da noch eine andere Kopie angelegt wird?

e2: Und zwar liegt es tatsächlich daran, dass Texmaker und TexNic Center sich die Files aus diesem Appdata Ordner holen - obwohl Miktex beim Update alles in seinem eigenen Ordner speichert. Würde mich furchtbar interessieren, wie es überhaupt passieren konnte, dass Miktex diesen anderen Ordner anlegt, und wieso sich die Programme dann die veralteten Dateien daher holen.

e3: haha das ist echt das beknackteste was ich seit langem in dieser Hinsicht gesehen habe: Wenn ein Package nicht existiert, speichert es Texmaker in Appdata - wird aber eine neue Version über den Miktex Package Manager ins Miktex Verzeichnis installiert, wird das nicht automatisch synchronisiert, und weiterhin die veraltete Datei benutzt, während im Package Manager natürlich steht, dass die Datei aktuell ist. Sinn = null.

localghost
06-07-2011, 09:44
Also, beim mir läuft es mit enumitem (http://ctan.org/pkg/enumitem) in Version 3.1 fehlerfrei.

u_fischer
06-07-2011, 10:59
e3: haha das ist echt das beknackteste was ich seit langem in dieser Hinsicht gesehen habe: Wenn ein Package nicht existiert, speichert es Texmaker in Appdata - wird aber eine neue Version über den Miktex Package Manager ins Miktex Verzeichnis installiert, wird das nicht automatisch synchronisiert, und weiterhin die veraltete Datei benutzt, während im Package Manager natürlich steht, dass die Datei aktuell ist. Sinn = null.

Du hast offensichtlich ein Multiuser-System. In einem Multiuser-Miktex können der Admin und der User Pakete installieren. Wenn beide es tun, "gewinnt" das Userpaket, denn auch wenn alle immer glauben, der Admin sei so viel mächtiger: Er kann nur Defaults einstellen, die der User mit seinen persönlichen Einstellungen überschreiben kann.

Bei der on-the-fly-Installation arbeitest du im Usermode, die Pakete werden also nur für dich persönlich installiert. Wenn du sie updaten willst, solltest du das daher im Usermode machen.