
Ich erhalte eine Fehlermeldung, wenn ich verwende pagebackref=true
. Wenn ich nicht verwende pagebackref=true
, funktioniert das Programm wie erwartet. Dies ist ein Artikel im Central European Journal of Computer Science. Gibt es eine andere Alternative für pagebackref
?
Antwort1
Wahrscheinlich hat die Klasse das Paket bereits geladen hyperref
. LaTeX kann ein Paket nicht zweimal laden (denken Sie an \newcommand
und Freunde). Daher überspringt LaTeX den Ladeteil von \usepackage
oder \RequirePackage
. Es prüft nur das nachfolgende optionale Argument, das eine Mindestpaketversion anfordert. Und es sieht sich die Optionen an. LaTeX versteht Paketoptionen, die als „Features“ beschrieben werden können. Wenn die Optionen des letzteren \usepackage
bereits beim ersten Laden des Pakets vorhanden sind, ist LaTeX zufrieden. Wenn jedoch mindestens eine neue Option vorhanden ist, die zuvor nicht angegeben wurde, denkt LaTeX, der Benutzer möchte ein neues „Feature“, kann aber keine vom Paket unabhängige Option laden und gibt die Fehlermeldung aus.
Problemumgehungen:
Festlegenallebenötigte Optionen im ersten
\usepackage
(oder\RequirePackage
). Der Hilfetext der Optionskonflikt-Fehlermeldung listet sie auf.Der erste Aufruf eines Pakets kann in einer Klasse oder in einem anderen Paket versteckt werden, die Option lässt sich nicht direkt angeben.
\PassOptonsToPackage
Hilfe:\PassOptionsToPackage{pagebackref=true}{hyperref} \documentclass[CEJCS,PDF]{cej}
Dann
\usepackage[pagebackref=true]{hyperref}
funktioniert die Zeile fehlerfrei. Die Zeile kann auch gelöscht oder reduziert werden,\usepackage{hyperref}
falls die Klassecej
vergessen wird, sie zu ladenhyperref
oder die Abhängigkeit explizit zu machen.Einige Klassen (Pakete) bieten spezielle Optionen, um zusätzliche Optionen an von der Klasse geladene Pakete zu übergeben, z. B. Optionen
hyperref
der Klassebeamer
.