ACHTUNG: Diese Frage ist veraltet, da die Verwendung des Pakets fixltx2e seit Jahren als veraltet gilt und das Problem nicht mehr von der Verwendung des Pakets abhängt. Die Lösung dieser veralteten Frage wird mir aber von der Software verweigert. Ich weiße daher hier darauf hin, dass ich mich von der aktuellen Fragestellung ausdrücklich distanziere.


Seit dem Update auf TeX Live 2014 erhalte bei dem Minimalbeispiel:

\documentclass{article}
\usepackage{fixltx2e}
\begin{document}
Do it:
\begin{figure}[H]
  \caption{Test}
\end{figure}
done.
\end{document}

die Fehlermeldung:

! LaTeX Error: Unknown float option `H'.

See the LaTeX manual or LaTeX Companion for explanation. Type H for immediate help. ...

l.5 \begin{figure}[H]

Früher lief dieses Beispiel ohne Fehler durch. War das früher schon falsch oder hat sich hier etwas grundlegend geändert?

gefragt 24 Jun '14, 16:39

gast3's gravatar image

gast3
(ausgesetzt)
Akzeptiert-Rate: 53%

bearbeitet 28 Feb '22, 11:38

Die Frage wurde aus folgenden Grund "Die Frage interessiert mich nicht mehr, die Lösung wird mir allerdings verweigert." geschlossen gast3 28 Feb '22, 11:35


Verantwortlich für die Fehlermeldung ist das Paket fixltx2e. Dieses Paket ist dazu gedacht, die Dinge, die in LaTeX nicht unbedingt falsch aber doch nicht optimal oder unglücklich gelöst sind, deren Änderung aber zu Inkompatibilitäten bei existierenden Dokumenten führen, zu korrigieren. Die Ausgabe der Fehlermeldung ist ein solcher Fall.

Zwar ist Option H für die Gleitumgebungsposition (ohne die Zusatzpakete here oder float) auch bei LaTeX selbst und auch mit früheren Versionen von fixltx2e genau genommen bereits falsch, weil LaTeX eine solche Option nicht kennt. LaTeX selbst ignorierte fehlerhafte Optionen für Gleitumgebungen bis 2015 aber einfach. Ohne das Paket fixltx2e landete die Abbildung einfach stillschweigend auf der nächsten Seite. Neuere Versionen des Pakets verbesserten die Situation insofern, als es auf versehentlich falsche Optionen hinweist, statt einfach stillschweigend etwas anderes zu tun, als der Anwender verm. beabsichtigt. Wie @saputello in seiner Antwort erklärt hat, ist das seit 2015 auch ohne das inzwischen veraltete und nicht mehr benötigte fixltx2e so.

So gesehen stellt die Fehlermeldung also eine Verbesserung dar. Es ist auch nicht schwer, den Fehler zu beheben. Näheres zur korrekten Verwendung von Gleitumgebungen ist den folgenden beiden TeXwelt-Artikeln zu entnehmen:

Permanenter link

beantwortet 24 Jun '14, 16:48

gast3's gravatar image

gast3
(ausgesetzt)
Akzeptiert-Rate: 53%

bearbeitet 22 Nov '20, 13:34

Mit der Veröffentlichung von LaTeX 2015/01/01 ist die Verwendung von H als Option einer Gleitumgebung übrigens offiziell ein Fehler. Damit erhält man bereits ohne das nun veraltete Paket fixltx2e:

Open in Online-Editor
\documentclass{article}
\begin{document}
Do it:
\begin{figure}[H]
  \caption{Test}
\end{figure}
done.
\end{document}

die Fehlermeldung:

! LaTeX Error: Unknown float option `H'.
 
See the LaTeX manual or LaTeX Companion for explanation.
Type  H   for immediate help.
 ...
                                           
l.4 begin{figure}[H]

Da früher die Verwendung von H als Option für eine Gleitumgebung zwar ebenfalls nicht korrekt war, aber von LaTeX ignoriert wurde, kann man solche Dokumente daher nicht mehr unverändert übersetzen. Die empfohlene Änderung für diesen Fall wäre, Option H aus den Gleitumgebungen zu beseitigen. Eine schnelle Notlösung wäre hingegen, auf Kompatibilität zu einer früheren Version von LaTeX zurückzuschalten. Das ist mit dem neuen Paket latexrelease möglich, das noch vor \documentclass zu laden ist:

Open in Online-Editor
\RequirePackage[2014/12/31]{latexrelease}
\documentclass{article}
\begin{document}
Do it:
\begin{figure}[H]
  \caption{Test}
\end{figure}
done.
\end{document}

Allerdings hat das den Nachteil, dass man alle Verbesserungen in LaTeX 2015/01/01 abschaltet, nicht nur die Fehlermeldung für die fehlerhafte Option H der Gleitumgebungen. Daher wäre

Open in Online-Editor
\documentclass{article}
\begin{document}
Do it:
\begin{figure}[p]
  \caption{Test}
\end{figure}
done.
\end{document}

eine bessere Lösung. Dabei sorgt das p im Beispiel für denselben Satz, den man mit dem falschen H erhalten hätte. Einen besseren Satz erhält man mit

Open in Online-Editor
\documentclass{article}
\begin{document}
Do it:
\begin{figure}
  \caption{Test}
\end{figure}
done.
\end{document}

also unter Verzicht auf die Option. Will man tatsächlich die Platzierung hier und nur hier, so wäre

Open in Online-Editor
\documentclass{article}
\usepackage{caption}% nicht notwendig bei KOMA-Script-Klassen
\usepackage{placeins}
\begin{document}
Do it:
\FloatBarrier
\begin{center}
  \begin{minipage}{\linewidth}
  \captionof{figure}{Test}
  \end{minipage}
\end{center}
done.
\end{document}

eher eine Lösung. Siehe dazu auch: Wann sollte ich Gleitumgebungen für Tabellen und Abbildungen verwenden?

Übrigens verursacht die Verwendung von fixltx2e aus dem Originalbeispiel seit LaTeX 2015/01/01 die Warnung:

Package fixltx2e Warning: fixltx2e is not required with releases after 2015
(fixltx2e)                All fixes are now in the LaTeX kernel.
(fixltx2e)                See the latexrelease package for details.
Diese Warnung besagt, dass man das Paket fixltx2e nicht mehr benötigt, da alle Korrekturen in den LaTeX-Kern eingearbeitet wurden. Gleichzeitig wird auf das Paket latexrelease hingewiesen, dessen Anleitung man ggf. – beispielsweise wenn man Kompatibilität zu einer ganz bestimmten LaTeX-Version benötigt – beachten sollte.

Permanenter link

beantwortet 22 Apr '15, 09:10

saputello's gravatar image

saputello
11.1k174365
Akzeptiert-Rate: 51%

bearbeitet 22 Apr '15, 09:20

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:

×128
×32
×1

gestellte Frage: 24 Jun '14, 16:39

Frage wurde gesehen: 26,069 Mal

zuletzt geändert: 28 Feb '22, 11:38