von KOMA » Mo 9. Mär 2009, 11:22
Grundsätzlich sollte das Inhaltsverzeichnis den Inhalt wiedergeben, also jeder Eintrag des Inhaltsverzeichnisses auch im Dokument zu finden sein. Wenn das Dokument eine Unterteilung braucht, braucht auch das Inhaltsverzeichnis eine. Wenn das Dokument keine Unterteilung braucht, braucht auch das Inhaltsverzeichnis keine.
Nach diesem generellen Grundsatzhinweis, nun noch der Hinweis, dass man mit \addcontentsline oder \addtocontents etwas zu einem Verzeichnis hinzufügen kann. Dabei dient \addcontentsline dazu, einen Verzeichniseintrag zu erstellen, beispielsweise in der Form:
\refstepcounter{part}% Teil-Zähler referenzierbar um eins erhöhen
\addcontentsline{toc}{part}{\protect\numberline{\thepart}{Überschrift}}% Nummerierter Eintrag mit Seitenzahl ins Inhaltzsverzeichnis (toc) der Gliederungsebene Teil (part)
Demgegenüber schreibt \addtocontents einfach das Argument in die entsprechende Verzeichnisdatei (nebenbei erwähnt: das passiert auf dem Umweg über die aux-Datei):
\addtocontents{toc}{\protect\addvspace{\baselineskip}
Wenn man allerdings mit \addtocontents Text ausgeben will, dann kann das durchaus zu Problemen bezüglich des vertikalen und horizontalen Modus von TeX führen. Ggf. hilft dann ein
am Anfang oder Ende.
Zu beachten ist auch, dass alle Anweisungen, die nicht bereits beim Schreiben in die aux- oder toc-Datei expandiert werden sollen, mit \protect zu schützen sind, wie ich das oben gemacht habe.
Grundsätzlich sollte das Inhaltsverzeichnis den Inhalt wiedergeben, also jeder Eintrag des Inhaltsverzeichnisses auch im Dokument zu finden sein. Wenn das Dokument eine Unterteilung braucht, braucht auch das Inhaltsverzeichnis eine. Wenn das Dokument keine Unterteilung braucht, braucht auch das Inhaltsverzeichnis keine.
Nach diesem generellen Grundsatzhinweis, nun noch der Hinweis, dass man mit \addcontentsline oder \addtocontents etwas zu einem Verzeichnis hinzufügen kann. Dabei dient \addcontentsline dazu, einen Verzeichniseintrag zu erstellen, beispielsweise in der Form: [code]\refstepcounter{part}% Teil-Zähler referenzierbar um eins erhöhen
\addcontentsline{toc}{part}{\protect\numberline{\thepart}{Überschrift}}% Nummerierter Eintrag mit Seitenzahl ins Inhaltzsverzeichnis (toc) der Gliederungsebene Teil (part)[/code]
Demgegenüber schreibt \addtocontents einfach das Argument in die entsprechende Verzeichnisdatei (nebenbei erwähnt: das passiert auf dem Umweg über die aux-Datei):[code]\addtocontents{toc}{\protect\addvspace{\baselineskip}[/code]
Wenn man allerdings mit \addtocontents Text ausgeben will, dann kann das durchaus zu Problemen bezüglich des vertikalen und horizontalen Modus von TeX führen. Ggf. hilft dann ein [code]\protect\par[/code] am Anfang oder Ende.
Zu beachten ist auch, dass alle Anweisungen, die nicht bereits beim Schreiben in die aux- oder toc-Datei expandiert werden sollen, mit \protect zu schützen sind, wie ich das oben gemacht habe.