
Ich verwende die Klasse book
und für jedes Kapitel, jeden Abschnitt, jeden Unterabschnitt usw. beginnt die Nummerierung folgendermaßen:
Kapitel 1
Abschnitt 1.1
Abschnitt 1.2
Abschnitt 1.3 . . .
Ich hätte stattdessen gerne so etwas:
Kapitel 1
Abschnitt 1.0
Abschnitt 1.1
Abschnitt 1.2
Irgendwelche Vorschläge? Vielen Dank für Ihre Hilfe.
Antwort1
Sie können \thesection
es so umdefinieren, dass die aktuelle Zahl minus eins ausgegeben wird.
\documentclass{book}
\makeatletter
\renewcommand{\thesection}{%
\thechapter.\@arabic{\numexpr\c@section-1}%
}
\makeatother
\begin{document}
\tableofcontents
\chapter{First chapter}
\section{First section}
\section{Second section}
\section{Third section}
\chapter{Second chapter}
\section{First section}
\section{Second section}
\section{Third section}
\end{document}
Antwort2
\chapter
ruft auf \@chapter
, was \refstepcounter
(im mainmatter
Modus) der Fall ist – das bedeutet, dass jeder Zähler in der Reset-Liste des Kapitelzählers auf Null zurückgesetzt wird, das gilt section
natürlich für den Zähler.
Entweder \@chapter
wird es neu definiert oder man kann zusätzlichen Code hinzufügen, der den Abschnittszähler auf den Stand -1
nach dem Refstepping setzt.
Bitte beachten Sie: Diesnichtsetze die subsection
Zähler auf -1 usw.
\documentclass{book}
\usepackage{xpatch}
\makeatletter
\AtBeginDocument{%
\xpatchcmd{\@chapter}{%
\refstepcounter{chapter}%
}{%
\refstepcounter{chapter}%
\setcounter{section}{-1}%
}{\typeout{Success}}{}
}
\makeatother
\begin{document}
\tableofcontents
\chapter{First chapter}
\section{First section}
\section{Second section}
\section{Third section}
\chapter{Second chapter}
\section{First section}
\section{Second section}
\section{Third section}
\end{document}
Hier ist eine Version, die sich wie folgt zusammenfasst \subparagraph
:
\documentclass{book}
\usepackage{xpatch}
\makeatletter
\xpatchcmd{\@sect}{%
\refstepcounter{#1}%
}{%
\refstepcounter{#1}%
% Now use the \@elt - trick to set all depending counters to -1 (well even that one that shouldn't, most likely :-()
\def\@elt##1{\setcounter{##1}{-1}}
\csname cl@#1\endcsname%
}{}{}
\AtBeginDocument{%
\xpatchcmd{\@chapter}{%
\refstepcounter{chapter}%
}{%
\refstepcounter{chapter}%
\setcounter{section}{-1}%
}{\typeout{Success}}{\typeout{Failed!}}
}
\makeatother
\setcounter{tocdepth}{5}
\setcounter{secnumdepth}{5}
\begin{document}
\tableofcontents
\chapter{First chapter}
\section{First section}
\subsection{First subsection}
\subsubsection{First subsubsection}
\paragraph{First paragraph}
\subparagraph{First subparagraph}
\section{Second section}
\subsection{First subsection}
\subsubsection{First subsubsection}
\paragraph{First paragraph}
\subparagraph{First subparagraph}
\section{Third section}
\chapter{Second chapter}
\section{First section}
\section{Second section}
\section{Third section}
\end{document}
Antwort3
Sie könnten für jeden Abschnitt etwa Folgendes tun:
\setcounter{section}{-1}
Hinweis: Das habe ich ursprünglich \setcounter{section}{0}
in meiner Antwort geschrieben.