PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Nur untere Gliederungsebene nummerieren



rstuby
16-07-2018, 13:50
Hi, ich setze hier ein michtwissenschaftliches, eher pädagogisch orientiertes Dokument ohne Nummerierung der Überschriften. Jetzt kommen hier aber zwei Abschnitte, in denen es jeweils doch nummerierte Unterabschnitte gibt. So was muss doch irgendwie vorgesehen sein? Ich kann zwar \renewcommand\theparagraph{\arabic{paragraph}} so einstellen, dass nicht alle Gliederungsebenen in der paragraph-Nummer angezeigt werden, aber ich kriege die Nummern ja nicht angezeigt, wenn secnumdepth bei -2 ist. Muss ich jetzt wegen der paar nummerierten Paragraphen im ganzen Dokument auf \addsec etc. ausweichen? Oder die Idiotenvariante aus dem MB nutzen? Oder gibt es eine LaTeX-Möglichkeit, die ich übersehen habe?


\documentclass{scrbook}

\usepackage{blindtext}

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}

\setcounter{secnumdepth}{-2}

\begin{document}

\chapter{Alle Ebenen sollen unnummeriert sein}

\blindtext

\section{Auch diese}\blindtext

\subsection{Diese ebenso}\blindtext

\subsubsection{Aber hier sollen drei nummerierte Unterabschnitte drin sein:}

\paragraph{1. So fängt man an}\blindtext

\paragraph{2. So macht man weiter}\blindtext

\paragraph{3. So macht man den Abschluss}\blindtext

\subsubsection{Alles klar?}\blindtext

\end{document}

Johannes_B
16-07-2018, 17:07
Nimm doch einfach eine Liste.

rstuby
16-07-2018, 19:11
Habe ich auch schon gedacht, aber das sieht denn doch anders aus. Es sollen ja schließlich Überschriften sein.

rais
17-07-2018, 14:48
na ja, secnumdepth ist ja nicht in Stein gemeißelt...



\documentclass{scrbook}

\usepackage{blindtext}

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}

\setcounter{secnumdepth}{-2}
\makeatletter
\newenvironment{parnumbered}{%
\c@secnumdepth=4\relax%<-- damit bleibt die Änderung lokal (\setcounter wirkt global)
% (hätte man sonst auch zum Ende der Umgebung zurücksetzen können)
}{}
\makeatother
\renewcommand*\theparagraph{\arabic{paragraph}}
\begin{document}

\chapter{Alle Ebenen sollen unnummeriert sein}

\blindtext

\section{Auch diese}\blindtext

\subsection{Diese ebenso}\blindtext

\subsubsection{Aber hier sollen drei nummerierte Unterabschnitte drin sein:}

\begin{parnumbered}
\paragraph{So fängt man an}\blindtext

\paragraph{So macht man weiter}\blindtext

\paragraph{So macht man den Abschluss}\blindtext
\end{parnumbered}

\subsubsection{Alles klar?}\blindtext

\end{document}

wobei Du Dir alternativ für eine Liste wie enumerate natürlich auch ein entsprechendes Kommando hättest basteln können, mit dem eine Abschnittsüberschrift a la \paragraph nachgestellt wird.

VG

rstuby
18-07-2018, 13:09
Vielen Dank! Genau das brauche ich!

klops
19-07-2018, 08:41
Man könnte auch lokal per
\RedeclareSectionCommand[level=-2]{paragraph} die Ebene von \paragraph so anpassen, dass sie nummeriert wird. Man könnte sich auch mit \DeclareNewSectionCommand eine eigene Überschrift auf passender Ebene definieren.

Statt der fest verdrahteten 4 könnte man im Beispiel von rais übrigens auch \paragraphnumdepth verwenden.

Und mit \value{secnumdepth} statt \c@secnumdepth könnte man sich \makeatletter und \makeatother sparen.

Aber in der Tat würde auch ich, hier eher eine Liste verwenden:
\documentclass{scrbook}

\usepackage{blindtext}

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}

\setcounter{secnumdepth}{-2}
\usepackage{enumitem}
\newcommand*{\Anriss}[1]{{\usekomafont{disposition}{#1: }}\ignorespaces}
\begin{document}

\chapter{Alle Ebenen sollen unnummeriert sein}

\blindtext

\section{Auch diese}\blindtext

\subsection{Diese ebenso}\blindtext

\subsubsection{Aber hier sollen drei nummerierte Unterabschnitte drin sein:}

\begin{enumerate}[font=\usekomafont{disposition}]
\item\Anriss{So fängt man an}\blindtext
\item\Anriss{So macht man weiter}\blindtext
\item\Anriss{So macht man den Abschluss}\blindtext
\end{enumerate}
\subsubsection{Alles klar?}\blindtext

\end{document}
Ggf. kann man bei der Liste mit Hilfe von enumitem auch leicht noch Dinge wie den Einzug verändern.

rstuby
19-07-2018, 19:46
Die vielen Warnungen, die ich mit Rainers (vom Aussehen her perfekter) Lösung bekomme, sagen mir, dass eine Liste eher im Sinne des Erfinders wäre. Kann man denn bei einer Liste Nummer UND wechselnden Text ins item schreiben? Also so eine Art Hybrid aus enumerate- und description-Umgebung? Da von Hand \bfseries\sffamily etc. zu schreiben ist ja nicht besser als die Nummerierung von Hand zu setzen, oder?

klops
20-07-2018, 08:07
Habe ich doch gestern, 11 Stunden vor Deiner Nachfrage bereits gezeigt. Wenn es Dich stört, dass Du \item\Anriss{…} schreiben musst, kannst Du auch eine Anweisung \Anrissitem definieren, die beides in einem erledigt.

rstuby
20-07-2018, 08:55
Oh sorry, vielen Dank! Ich war gestern müde...