Vertikale Abstände von Gliederungsebenen mit etoc
Verfasst: Mi 9. Sep 2015, 18:18
Moin,
ich habe folgendes Problem. Das Paket etoc bietet mit seinem \etocsetstyle Befehl die Möglichkeit, jeweils Befehle auszuführen, wenn nach der aktuellen Gliederungsebene eine höhere kommt. Ich nutze dies, um die vertikalen Abstände zwischen den Ebenen einzustellen. Leider reicht die Funktion des Befehls \etocsetstyle nicht aus, um meine Vorstellungen zu verwirklichen. In der Dokumentation bin ich nicht fündig geworden, weshalb ich hoffe, dass mir dieses Forum helfen kann.
Die folgende Beschreibung bezieht sich aufs Inhaltsverzeichnis.
- Ich möchte, dass zwischen Kapiteleinträgen, sofern sie keine Abschnitte beherbergen, der Abstand von 3ex kommt.
- Falls ein Kapitel doch Abschnitte enthält, soll nach dem Kapiteleintrag nicht 3ex, sondern nur 1ex eingefügt werden.
- Falls Abschnitte Unterabschnitte beherbergen, soll nach dem letzten Unterabschnitt des jeweiligen übergeordneten Abschnitts zum darauffolgenden Abschnitt ein Abstand von 2ex eingefügt werden.
- Folgt nach dem letzten Unterabschnitt jedoch kein weiterer Abschnitt, sondern das nächste Kapitel, soll wieder nur der Abstand von 3ex eingefügt werden.
Das folgende MWE verdeutlicht mein Problem. Die ersten drei Punkte lassen sich verwirklichen, nicht aber der letzte. Nach dem letzten Unterabschnitt folgt ein Kapitel und es wird der Abstand von 5ex eingefügt, also die Summe der 2ex aus subsection plus 3ex aus section. Wer weiß eine Lösung?

ich habe folgendes Problem. Das Paket etoc bietet mit seinem \etocsetstyle Befehl die Möglichkeit, jeweils Befehle auszuführen, wenn nach der aktuellen Gliederungsebene eine höhere kommt. Ich nutze dies, um die vertikalen Abstände zwischen den Ebenen einzustellen. Leider reicht die Funktion des Befehls \etocsetstyle nicht aus, um meine Vorstellungen zu verwirklichen. In der Dokumentation bin ich nicht fündig geworden, weshalb ich hoffe, dass mir dieses Forum helfen kann.
Die folgende Beschreibung bezieht sich aufs Inhaltsverzeichnis.
- Ich möchte, dass zwischen Kapiteleinträgen, sofern sie keine Abschnitte beherbergen, der Abstand von 3ex kommt.
- Falls ein Kapitel doch Abschnitte enthält, soll nach dem Kapiteleintrag nicht 3ex, sondern nur 1ex eingefügt werden.
- Falls Abschnitte Unterabschnitte beherbergen, soll nach dem letzten Unterabschnitt des jeweiligen übergeordneten Abschnitts zum darauffolgenden Abschnitt ein Abstand von 2ex eingefügt werden.
- Folgt nach dem letzten Unterabschnitt jedoch kein weiterer Abschnitt, sondern das nächste Kapitel, soll wieder nur der Abstand von 3ex eingefügt werden.
Das folgende MWE verdeutlicht mein Problem. Die ersten drei Punkte lassen sich verwirklichen, nicht aber der letzte. Nach dem letzten Unterabschnitt folgt ein Kapitel und es wird der Abstand von 5ex eingefügt, also die Summe der 2ex aus subsection plus 3ex aus section. Wer weiß eine Lösung?
\documentclass{scrreprt} \usepackage{etoc} \etocsetstyle{chapter} {} {} {\makebox[3em][l]{\etocnumber}\etocname\par\vspace{3ex}} {} \etocsetstyle{section} {\vspace{-2ex}} % Muss von den 3ex aus Chapter abgezogen werden {} {\makebox[3em][l]{\etocnumber}\etocname\par} {\vspace{3ex}} % 3ex falls danach Chapter kommt \etocsetstyle{subsection} {\vspace{0ex}} {} {\makebox[3em][l]{\etocnumber}\etocname\par} {\vspace{2ex}} % 2ex falls danach Section kommt \begin{document} \tableofcontents \chapter{Kapitel} \chapter{Kapitel} \section{Sektion} \section{Sektion} \chapter{Kapitel} \section{Sektion} \subsection{Untersektion} \subsection{Untersektion} \section{Sektion} \subsection{Untersektion} \subsection{Untersektion} \chapter{Kapitel} \end{document}