Ich habe gerade in meinem Testdokument ein command definiert. In meinem Produktivdokument wird aber der Fehler geworfen, dass es schont existiert. Gibt es eine Möglichkeit herauszufinden, welches Package das command definiert?

gefragt 11 Aug '14, 18:05

ErnstZ's gravatar image

ErnstZ
61182833
Akzeptiert-Rate: 62%

bearbeitet 11 Aug '14, 18:09

cgnieder's gravatar image

cgnieder
22.1k243463

1

Du kannst Dir mit \show\befehl die Definition von \befehl ins log schreiben lassen. Manchmal gibt die Definition einen Hinweis aufs Paket. Ansonsten: bis auf den Befehl leeres Test-Dokument mit gleicher Präambel und dann nach und nach jedes Paket entfernen, bis der Fehler verschwindet...

(11 Aug '14, 18:14) cgnieder
1

Im Prinzip ist das ein Doppel zu: »Undefined control sequence - wie finde ich heraus, was fehlt?«, wenn auch scheinbar genau das Gegenteil gefragt wird. Ich habe daher in meiner Antwort nur durch diesen Unterschied zusätzlich vorhandene Möglichkeiten genannt.

(11 Aug '14, 18:18) gast3

Zunächst hat man natürlich die Möglichkeit, nach dem Laden jedes Pakets zu ermitteln, ob ein Befehl bereits definiert ist. Das geht sehr einfach, mit \show\foo oder auch mit etwas wie:

Open in writeLaTeX
\usepackage{scrbase}
\ifundefinedorrelax{foo}{}{\typeout{Jetzt ist \string\foo definiert!}}

Weitere Möglichkeiten werden bereits in den Antworten der Frage »Undefined control sequence - wie finde ich heraus, was fehlt?« geliefert. Dabei sei auch ausdrücklich auf die Möglichkeit der (La)TeX-Befehlsliste hingewiesen, die in der Antwort von @sap zu finden ist. Dort kann man gezielt nach den Paketen und Klassen suchen, die einen bestimmten Befehl definieren. 100% sicher ist das zwar nicht, weil die Liste nur in gewissen Abständen aktualisiert wird und nur normal definierte Befehle auf Anwenderebene findet, aber ich finde das trotzdem nützlich.

Permanenter link

beantwortet 11 Aug '14, 18:14

gast3's gravatar image

gast3
(ausgesetzt)
Akzeptiert-Rate: 53%

bearbeitet 11 Aug '14, 18:20

Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×52
×48

gestellte Frage: 11 Aug '14, 18:05

Frage wurde gesehen: 7,171 Mal

zuletzt geändert: 11 Aug '14, 18:25