PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : neue Gliederungsebene mit \titleclass definieren



Magger
31-03-2010, 12:59
Hallo alle zusammen.

Ich möchte gern eine neue Gliederungsebene \subsubparagraph mit dem titlesec-Paket definieren. Hier ist mein Minimalbeispiel, das auch ohne Fehler kompiliert:


\documentclass{scrartcl}

\usepackage[ngerman]{babel}

\usepackage{titlesec}

\titleclass{\subsubparagraph}{straight}[\subparagraph]
\newcounter{subsubparagraph}[subparagraph]
\renewcommand{\thesubsubparagraph}{\Alph{subsubpar agraph}}
\titleformat{\subsubparagraph}[hang]{\rmfamily\bfseries\itshape}{\thesubsubparagraph}{ .5em}{}
\titlespacing{\subsubparagraph}{0pt}{0pt}{0pt}

\setcounter{secnumdepth}{4}

\setcounter{tocdepth}{3}

\begin{document}

\tableofcontents

\section{Abschnitt}

Ein bisschen Text.

\subsection{Unterabschnitt}

Ein bisschen Text.

\subsubsection{Unter-Unterabschnitt}

Ein bisschen Text.

\paragraph{Absatz}

Ein bisschen Text.

\subparagraph{Unterabsatz}

Ein bisschen Text.

\subsubparagraph{Unterabsatz}

Ein bisschen Text.

\end{document}

Allerdings erscheint der \subsubparagraph-Eintrag auch im Inhaltverzeichnis, wo er natürlich nicht hin soll. Wie kann ich das verhindern und abstellen?

Viele Grüße

Mathias

u_fischer
31-03-2010, 17:16
titlesec definiert den nötigen Befehl nicht, sieht fast wie ein Bug oder zumindest ein Versäumnis aus. Versuch das hier:


\makeatletter
\newcommand*\l@subsubparagraph{\bprot@dottedtoclin e{6}{10em}{5em}}
\makeatletter

lockstep
31-03-2010, 17:56
Ulrike hat die Lösung bereits gefunden. Dein Problem dürfte übrigens durch eine bewusste Designentscheidung in titlesec verursacht worden sein - S.9 der Anleitung: "Making a consistent scheme and defining all of related stuff like counters, macros, format, spacing and, if there is a TOC, TOC format is left to the responsibility of the user."

Meine Lösung poste ich für den Fall, dass du die subsubparagraph-Ebene doch ins Inhaltsverzeichnis aufnehmen möchtest (die Abstände sind auf dein Format \Alph{subsubparagraph} abgestimmt):



\makeatletter
\newcommand*\l@subsubparagraph{\bprot@dottedtoclin e{6}{14em}{2em}}
\makeatother


lockstep

Magger
31-03-2010, 20:07
Vielen Dank, das hat wunderbar funktioniert.