
Ich muss meinen Unterabschnitt aus dem Inhaltsverzeichnis entfernen. Ich habe diesen Teil problemlos mit diesemVerknüpfung. Danke!
Ich kann den ausgewählten Unterabschnitt, den ich gerade aus meinem Inhaltsverzeichnis entfernt habe, jedoch nicht verwenden \ref{"label from my subsection"}
. Ich kann ihn zwar immer noch verlinken, erhalte aber nur den Verweis auf den Abschnitt über meinem Unterabschnitt.
Beispiel: (Mein Unterabschnitt wird nicht im Inhaltsverzeichnis angezeigt)
\section{Hello World!}
\label{sec:hello_world}
\subsection{Goodbye}
\label{sec:goodbye}
\ref{sec:goodbye}
--- Latex gibt das folgende Ergebnis zurück ---
1. Hallo Welt!
1.1. Auf Wiedersehen
1
Antwort1
Wenn Sie möchten, \subsection
dass alle s aus dem Inhaltsverzeichnis entfernt werden, dann brauchen Sie in der Präambel Ihres Dokuments nur
\setcounter{tocdepth}{1}
Dadurch wird die maximale Tiefe der Einträge im Inhaltsverzeichnis auf 1 (oder \section
) festgelegt.
Wenn Sie nur möchten, \subsections
dass ausgewählte Elemente in das Inhaltsverzeichnis eingefügt werden/nicht, sollten Sie eine andere Technik verwenden. Im Folgenden werden \stoptocentries
und definiert \starttocentries
. Ersteres deaktiviert das Einfügen von Inhalten in das Inhaltsverzeichnis durch Deaktivieren von \addcontentsline
. Letzteres stellt die Funktionalität wieder her.
\documentclass{article}
\let\oldaddcontentsline\addcontentsline
\newcommand{\stoptocentries}{\renewcommand{\addcontentsline}[3]{}}
\newcommand{\starttocentries}{\let\addcontentsline\oldaddcontentsline}
\begin{document}
\tableofcontents
\section{A section}
\stoptocentries% Stop adding content to the ToC
\subsection{A subsection}
\starttocentries% Resume adding content to the ToC
\subsection{Another subsection}
\end{document}
Natürlich \stoptocentries
gilt die Verwendung von auch für andere Teileinheiten, die verwenden \addcontentsline
.
Antwort2
Sie können dies sofort mit dem Paket tunetoc.
Der Code:
\documentclass{article}
\usepackage{etoc}
\begin{document}
\tableofcontents
\section{First Section}
Hello
\subsection{A}
\subsection{B}
\section{Second Section}
\etocsettocdepth.toc {section}
\subsection {EXCLUDE ME}\label{ssec:excluded}
\etocsettocdepth.toc {subsection}
\subsection {D}
Too bad we have excluded subsection \ref{ssec:excluded} from the TOC!
\end{document}
Antwort3
Ich sehe, dass die obige Antwort die Frage vollständig beantwortet, aber ichhabe eine andere Methode auf der LaTeX-Website gefunden.
Wenn Sie alle Unterabschnitte im Inhaltsverzeichnis ausblenden möchten, sollten Sie den Zähler „tocdepth“ auf 1 setzen:
\setcounter{tocdepth}{1}
Wenn Sie dies jedoch nur auf bestimmte (Unter-)Abschnitte anwenden möchten, können Sie tocdepth im Dokument ändern:
\documentclass[a4paper,10pt]{book}
\begin{document}
\tableofcontents
\chapter{One}
\section{One}
\subsection{One}
\addtocontents{toc}{\protect\setcounter{tocdepth}{1}}
\subsection{Two}
\addtocontents{toc}{\protect\setcounter{tocdepth}{2}}
\subsection{Three}
\end{document}
Ein minimales Beispiel finden Sie auch auf der LaTeX-Website.