Warnungen? Was für Warnungen? Meinst Du die ALPHA-Warnung von scrwfile? Die kommt immer. Im zweiten Beispiel wird man sie aber einfach los, indem man das dort nicht benötigte scrwfile weglässt.
Wie dem auch sei, auch für deinen neuen Wunsch kann man wiederum den Zähler tocdepth manipulieren. Dieses Mal muss man ihn allerdings innerhalb des Inhaltsverzeichnisses manipulieren, die Änderung also in die toc-Datei schreiben. Für den ersten gezeigten Lösungsvorschlag ist das einfach, weil man die Änderung lediglich in die Datei mit Endung .stoc schreibt, statt in die eigentliche toc-Datei. Damit wirkt sie sich dann nur auf die Gliederungsübersicht, die mit \listofstocs gesetzt wird, aus. Das brauche ich sicher nicht zu zeigen.
Bei dem zweiten kann man die Änderung nicht ganz so einfach durchführen, weil ja zweimal dieselbe Datei gelesen wird. Man kann also nicht einfach nur etwas in die Gliederungsübersicht schreiben. Da TeX aber eine Makrosprache ist, kann man natürlich Makros in die toc-Datei schreiben, die dann je nach Verzeichnis zu unterschiedlichen Ergebnissen expandieren. Das Schreiben in die toc-Datei knüpfe ich in dem Fall einmal beispielhaft an die Befehle \frontmatter und \mainmatter. Man kann sich aber natürlich auch eigene Anweisungen dafür definieren, beispielsweise um sie mehrfach im Dokument aufzurufen:
\documentclass[listof=totoc]{scrbook}
\usepackage[ngerman]{babel}
\usepackage{blindtext}
\usepackage{xpatch}
\makeatletter
\xapptocmd{\frontmatter}{%
\addtocontents{\ext@toc}{\protect\setcounter{tocdepth}{\protect\nothingtocdepth}}%
}{}{\PatchFailed}
\xapptocmd{\mainmatter}{%
\addtocontents{\ext@toc}{\protect\setcounter{tocdepth}{\protect\defaulttocdepth}}%
}{}{\PatchFailed}
\makeatother
\newcommand*{\nothingtocdepth}{\subsectiontocdepth}
\newcommand*{\defaulttocdepth}{\subsectiontocdepth}
\begin{document}
\frontmatter
\title{Beispiel}
\author{Ich}
\maketitle
\begingroup
\csname @fileswfalse\endcsname
\renewcommand*{\nothingtocdepth}{-\maxdimen}
\renewcommand*{\defaulttocdepth}{\chaptertocdepth}
\listoftoc[Gliederungsübersicht]{toc}
\endgroup
\tableofcontents
\listoffigures
\listoftables
\addchap{Vorwort}
\blindtext
\mainmatter
\blinddocument
\blinddocument
\blinddocument
\end{document}
Bitte die gezeigten Anweisungen in den jeweiligen Anleitungen nachlesen!
Alternativ könnte man für die Gliederungsübersicht mit \DeclareNewTOC auch ein eigenes Verzeichnis anlegen und durch Umdefinieren von \addchaptertocentry dafür sorgen, dass nur in dem Bereich, in dem man es haben will, zusätzlich zum Inhaltsverzeichnis auch in die Gliederungsübersicht geschrieben wird. Das ist auch wieder recht einfach:
\documentclass[listof=totoc]{scrbook}
\usepackage[ngerman]{babel}
\usepackage{blindtext}
\usepackage{xpatch}
\DeclareNewTOC[%
types=shortcontents,
listname={Gliederungsübersicht},
owner=ich,
]{stoc}
\newif\ifaddtostoc
\xapptocmd{\addchaptertocentry}{%
\ifaddtostoc
\addxcontentsline{stoc}{chapter}[{#1}]{#2}%
\fi
}{}{\PatchFailed}
\begin{document}
\listofshortcontents
\tableofcontents
\listoffigures
\listoftables
\addchap{Vorwort}
\blindtext
\addtostoctrue
\blinddocument
\blinddocument
\blinddocument
\end{document}
Hier ist es für das Verständnis erst recht wichtig, die verwendeten Befehle in den jeweiligen Anleitungen nachzulesen.
Da beide Beispiel ohne scrwfile auskommen, gibt es auch keine Warnung.
Warnungen? Was für Warnungen? Meinst Du die ALPHA-Warnung von scrwfile? Die kommt immer. Im zweiten Beispiel wird man sie aber einfach los, indem man das dort nicht benötigte scrwfile weglässt.
Wie dem auch sei, auch für deinen neuen Wunsch kann man wiederum den Zähler [tt]tocdepth[/tt] manipulieren. Dieses Mal muss man ihn allerdings innerhalb des Inhaltsverzeichnisses manipulieren, die Änderung also in die toc-Datei schreiben. Für den ersten gezeigten Lösungsvorschlag ist das einfach, weil man die Änderung lediglich in die Datei mit Endung [tt].stoc[/tt] schreibt, statt in die eigentliche toc-Datei. Damit wirkt sie sich dann nur auf die Gliederungsübersicht, die mit [tt]\listofstocs[/tt] gesetzt wird, aus. Das brauche ich sicher nicht zu zeigen.
Bei dem zweiten kann man die Änderung nicht ganz so einfach durchführen, weil ja zweimal dieselbe Datei gelesen wird. Man kann also nicht einfach nur etwas in die Gliederungsübersicht schreiben. Da TeX aber eine Makrosprache ist, kann man natürlich Makros in die toc-Datei schreiben, die dann je nach Verzeichnis zu unterschiedlichen Ergebnissen expandieren. Das Schreiben in die toc-Datei knüpfe ich in dem Fall einmal beispielhaft an die Befehle [tt]\frontmatter[/tt] und [tt]\mainmatter[/tt]. Man kann sich aber natürlich auch eigene Anweisungen dafür definieren, beispielsweise um sie mehrfach im Dokument aufzurufen:
[code]\documentclass[listof=totoc]{scrbook}
\usepackage[ngerman]{babel}
\usepackage{blindtext}
\usepackage{xpatch}
\makeatletter
\xapptocmd{\frontmatter}{%
\addtocontents{\ext@toc}{\protect\setcounter{tocdepth}{\protect\nothingtocdepth}}%
}{}{\PatchFailed}
\xapptocmd{\mainmatter}{%
\addtocontents{\ext@toc}{\protect\setcounter{tocdepth}{\protect\defaulttocdepth}}%
}{}{\PatchFailed}
\makeatother
\newcommand*{\nothingtocdepth}{\subsectiontocdepth}
\newcommand*{\defaulttocdepth}{\subsectiontocdepth}
\begin{document}
\frontmatter
\title{Beispiel}
\author{Ich}
\maketitle
\begingroup
\csname @fileswfalse\endcsname
\renewcommand*{\nothingtocdepth}{-\maxdimen}
\renewcommand*{\defaulttocdepth}{\chaptertocdepth}
\listoftoc[Gliederungsübersicht]{toc}
\endgroup
\tableofcontents
\listoffigures
\listoftables
\addchap{Vorwort}
\blindtext
\mainmatter
\blinddocument
\blinddocument
\blinddocument
\end{document}
[/code]
Bitte die gezeigten Anweisungen in den jeweiligen Anleitungen nachlesen!
Alternativ könnte man für die Gliederungsübersicht mit [tt]\DeclareNewTOC[/tt] auch ein eigenes Verzeichnis anlegen und durch Umdefinieren von [tt]\addchaptertocentry[/tt] dafür sorgen, dass nur in dem Bereich, in dem man es haben will, zusätzlich zum Inhaltsverzeichnis auch in die Gliederungsübersicht geschrieben wird. Das ist auch wieder recht einfach:
[code]\documentclass[listof=totoc]{scrbook}
\usepackage[ngerman]{babel}
\usepackage{blindtext}
\usepackage{xpatch}
\DeclareNewTOC[%
types=shortcontents,
listname={Gliederungsübersicht},
owner=ich,
]{stoc}
\newif\ifaddtostoc
\xapptocmd{\addchaptertocentry}{%
\ifaddtostoc
\addxcontentsline{stoc}{chapter}[{#1}]{#2}%
\fi
}{}{\PatchFailed}
\begin{document}
\listofshortcontents
\tableofcontents
\listoffigures
\listoftables
\addchap{Vorwort}
\blindtext
\addtostoctrue
\blinddocument
\blinddocument
\blinddocument
\end{document}
[/code]
Hier ist es für das Verständnis erst recht wichtig, die verwendeten Befehle in den jeweiligen Anleitungen nachzulesen.
Da beide Beispiel ohne scrwfile auskommen, gibt es auch keine Warnung.