Sie sind hier

Wie verwende ich DeclareTOCStyleEntry usw.?

Ich versuche, mittels \CloneTOCEntryStyle, \TOCEntryStyleInitCode und ähnlichen Anweisungen eine andere Formatierung eines Inhaltsverzeichnisses zu erreichen. Bisher hatte ich damit wenig Erfolg. Offenbar habe ich noch zu wenig verstanden und auch Beispiele dazu sind rar. Folgendes kleine Beispiel liefert keine Fehler, allerdings wird Code, der mit \TOCEntryStyleInitCode definiert wurde, ignoriert (in .log finde ich den String "*+*+*+*+*+*" nicht):

\listfiles
\documentclass{scrbook}
\usepackage[german]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{blindtext}
 
\makeatletter
 
\CloneTOCEntryStyle{tocline}{xxx}
\DeclareTOCStyleEntry[%
]{xxx}{part}
\DeclareTOCStyleEntry[%
]{xxx}{chapter}
\DeclareTOCStyleEntry[%
]{xxx}{section}
\DeclareTOCStyleEntry[%
]{xxx}{subsection}
\DeclareTOCStyleEntry[%
]{xxx}{subsubsection}
\TOCEntryStyleInitCode{xxx}{%
  \typeout{*+*+*+*+*+* #1}%
  \expandafter\renewcommand%
    \csname scr@tso@#1@entryformat\endcsname[1]{\Huge ##1}%
}
 
\makeatother
 
\begin{document}
\tableofcontents
\blinddocument
\end{document}

Am Ende würde ich gern Etliches umdefinieren. Hätte ich ein Beispiel, was bewirkt, dass anders als üblich die Seitenzahl zuerst ausgeben wird und dann erst der Text von "chapter", "section" usw., würde ich sicher leicht allein weiterkommen. Im voraus vielen Dank.

Rolf

Bild von Markus Kohm

Der Initialisierungscode dient der Initialisierung eines Stils bei dessen Zuweisung an eine Eintragsebene. Du weist erst die Eintragsebenen zu und änderst dann den Initialisierungscode. Am besten schaust Du Dir in tocbasic.sty die vordefinierten Stile an. Am einfachsten zu durchschauen ist der Stil dottedtocline am aufwendigsten ist tocline. Du wirst sehen, dass im Initialisierungscode zunächst die Optionen definiert und dann deren Voreinstellungen vorgenommen werden.

Als Beispiel für einen geklonten Stil können part, chapter und section in scrbook.cls dienen. Deren Dokumentation kann man auch in scrkernel-tocstyle.dtx verstehen (es gibt aber nicht viel). Bei den anderen Stilen ist das wegen des mehrfach verwendeten Codes etwas unübersichtlich.

Das war dann wohl ein dummer Fehler. Ich hoffe, nun weiterzukommen.

Bild von Markus Kohm

Die Anleitung könnte an der Stelle vermutlich etwas deutlicher sein. Und wenn ich für jeden dummen Fehler, den ich in meinem Leben gemacht habe, eine Kartoffel bekäme, könnte ich den Hunger der Welt auf einen Schlag beseitigen …

Comments for "Wie verwende ich DeclareTOCStyleEntry usw.?" abonnieren