Punkt bei Überschriften und Verzeichnisen im Koma Skript

Klassen und Pakete zur einfachen Umsetzung individueller Vorstellungen


Skyfall91
Forum-Anfänger
Forum-Anfänger
Beiträge: 37
Registriert: Mi 26. Aug 2015, 16:33

Punkt bei Überschriften und Verzeichnisen im Koma Skript

Beitrag von Skyfall91 »

Hi Leute,

ich würde gerne mein Inhaltsverzeichnis bzw. meine Überschriften folgendermaßen unter Verwendung des KOMA-Skripts formatieren:

1. chapter
1.1 section
1.1.1 subsection usw.

Dies habe ich auch mit viel googlen wie folgt hinbekommen:
\renewcommand{\thechapter}{\arabic{chapter}.}
\renewcommand{\thesection}{\thechapter\arabic{section}}
\renewcommand{\thesubsection}{\thesection .\arabic{subsection}}
Das Problem ist nun ist mein Abbildungsverzeichnis und mein Listingverzeichnis falsch formatiert:

1..1 Abbildung1
1..1 Listing1 usw.

Scheinbar wurden also die Funktionen \lstinputlisting und \captionof ebenfalls verändert. Hier ein Minimalbeispiel zur Verdeutlichung:
\documentclass[
	a4paper,
	oneside,
	bibliography=totoc,
	listof=totoc,
	index=totoc,
	parskip=half,
	chapterprefix=false,
	headsepline,
	footsepline,
	%pointlessnumbers,
	12pt
]{scrbook}

\renewcommand{\thechapter}{\arabic{chapter}.}
\renewcommand{\thesection}{\thechapter\arabic{section}}
\renewcommand{\thesubsection}{\thesection .\arabic{subsection}}

\usepackage[french, ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[demo]{graphicx}
%\usepackage{showframe}

\begin{document}
\tableofcontents
\listoffigures

\chapter{Einleitung}
Text...

\begin{minipage}{\textwidth}
  \begin{center}
  \includegraphics[width=1cm,height=1cm]{plank}
  \captionof{figure}{Beispiel}
  \end{center}
\end{minipage}

\section{Abschnitt1}
Text...
\subsection{Unterabschnitt}
Text...

\end{document}
Könnt ihr mir sagen wie ich die Verzeichnise noch anpassen kann, dass ganz normal 1.1 anstatt 1..1 usw. da steht?
Danke im Voraus

Edit: Erwähnenswert ist vll noch, dass ich auch schon mit den Koma-Befehlen wie numbers=enddot, pointlessnumbers...... gespielt habe. Aber war leider immer irgendwo dann ein Punkt zu viel oder zu wenig, sprich habe es auf diesem wege bisher auch nicht lösen können :(

Benutzeravatar
iTob
Forum-Meister
Forum-Meister
Beiträge: 1221
Registriert: Mo 19. Apr 2010, 22:19
Kontaktdaten:

Beitrag von iTob »

Du willst also den schließenden Punkt nur bei Kapitel-Nummer, korrekt?

Dann müsste das funktionieren:
\documentclass{scrbook}

\usepackage[french, ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[demo]{graphicx}

% Format bei Überschrift
\renewcommand*{\chapterformat}{%
  \mbox{\chapappifchapterprefix{\nobreakspace}\thechapter.
    \IfUsePrefixLine{}{\enskip}}%
}

% Format in Kopfzeile
\renewcommand*\chaptermarkformat{\chapappifchapterprefix{\ }%
  \thechapter.\enskip}

% Format im IHV
\usepackage{etoolbox}
\makeatletter
\patchcmd{\l@chapter}
   {\raggedchapterentry}
   {\raggedchapterentry\renewcommand*{\numberline@numberformat}[1]{\ifstr{##1}{}{}{##1.}}}
   {}{}
\makeatother

\begin{document}
\tableofcontents
\listoffigures

\chapter{Einleitung}
Text...

\begin{minipage}{\textwidth}
  \begin{center}
  \includegraphics[width=1cm,height=1cm]{plank}
  \captionof{figure}{Beispiel}
  \end{center}
\end{minipage}

\section{Abschnitt1}
Text...
\subsection{Unterabschnitt}
Text...

\end{document}
Ich bin relativ sicher, dass ich alle nötigen Stellen (Überschrift, Kopf, IHV) erwischt habe, ohne eine andere (Abbildungsnummern etc.) zu ändern. Aber dass musst du dann in deinem echten Dokument nochmal prüfen …
Ich biete Hilfe, Beratung und Schulung für alle Fragen rund um TeX, Buchgestaltung und Textsatz, sowie Grafik- und Kommunikationsdesign.
Mehr Infos und Kontakt unter tobiw.de.

Hier schreibe ich über TeX: Mein Blog „TeX-Beispiel des Monats“ (Deutsch) und TeX.tips (Englisch).

Skyfall91
Forum-Anfänger
Forum-Anfänger
Beiträge: 37
Registriert: Mi 26. Aug 2015, 16:33

Beitrag von Skyfall91 »

Danke für die super Hilfe!

Du hast mir schon ein ganzes Stück weiter geholfen :) In meinem richtigen Dokument hängts jetzt noch an einer Stelle. Ich konnte zum Glück mittlerweile herausfinden woran und zwar werden alle Punkte so angezeigt wie sie sollen nur die im Inhaltsverzeichnis nach der Kapitelnummer (chapter) fehlen. Das Problem ist, dass ich das Paket tocstyle einsetze, was deine Formatierung irgendwie nicht zulässt oder überschreibt:
\documentclass{scrbook}

\usepackage[french, ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[demo]{graphicx}

% Format bei Überschrift
\renewcommand*{\chapterformat}{%
  \mbox{\chapappifchapterprefix{\nobreakspace}\thechapter.
    \IfUsePrefixLine{}{\enskip}}%
}

% Format in Kopfzeile
\renewcommand*\chaptermarkformat{\chapappifchapterprefix{\ }%
  \thechapter.\enskip}

% Format im IHV
\usepackage{etoolbox}
\makeatletter
\patchcmd{\l@chapter}
   {\raggedchapterentry}
   {\raggedchapterentry\renewcommand*{\numberline@numberformat}[1]{\ifstr{##1}{}{}{##1.}}}
   {}{}
\makeatother

\usepackage{tocstyle}
\newtocstyle[KOMAlike]{compressed}{%
  \settocfeature[0]{entryvskip}{0.6em plus 1pt}%
}%
\usetocstyle{compressed}

\begin{document}
\tableofcontents
\listoffigures

\chapter{Einleitung}
Text...

\begin{minipage}{\textwidth}
  \begin{center}
  \includegraphics[width=1cm,height=1cm]{plank}
  \captionof{figure}{Beispiel}
  \end{center}
\end{minipage}

\section{Abschnitt1}
Text...
\subsection{Unterabschnitt}
Text...

\end{document}
Ich brauch das Paket leider, da sonst das Inhaltsverzeichnis auf zwei Seiten rutscht und auf der zweiten nur 1-2 Einträge stehen was ziemlich hässlich aussieht.

Benutzeravatar
iTob
Forum-Meister
Forum-Meister
Beiträge: 1221
Registriert: Mo 19. Apr 2010, 22:19
Kontaktdaten:

Beitrag von iTob »

Du hast das Problem richtig erkannt :-) tocstyle definiert relativ viel um, aber damit sollte es gehen:
% Format im IHV 
\usepackage{etoolbox} 
\makeatletter
\let\copyof@tocstyle@numberline\tocstyle@@numberline
\patchcmd{\tableofcontents}
   {\begingroup}
   {\begingroup\renewcommand*{\tocstyle@@numberline}[1]{\copyof@tocstyle@numberline{##1.}}}
   {}{}
\makeatother
Das ist aber vermutlich keine besonders robuste Lösung ;-)
Ich biete Hilfe, Beratung und Schulung für alle Fragen rund um TeX, Buchgestaltung und Textsatz, sowie Grafik- und Kommunikationsdesign.
Mehr Infos und Kontakt unter tobiw.de.

Hier schreibe ich über TeX: Mein Blog „TeX-Beispiel des Monats“ (Deutsch) und TeX.tips (Englisch).

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Beitrag von esdd »

Wenn Du sowieso tocstyle verwendest, dann kannst Du auch den Haken entryhook nutzen, um den Punkt nach der Kapitelnummer im Inhaltsverzeichnis zu setzen:
\documentclass{scrbook} 

\usepackage[french, ngerman]{babel} 
\usepackage[utf8]{inputenc} 
\usepackage[T1]{fontenc} 
\usepackage[demo]{graphicx} 

% Format bei Überschrift 
\renewcommand*{\chapterformat}{% 
   \mbox{\chapappifchapterprefix{\nobreakspace}\thechapter. 
     \IfUsePrefixLine{}{\enskip}}% 
} 

% Format in Kopfzeile 
\renewcommand*\chaptermarkformat{\chapappifchapterprefix{\ }% 
   \thechapter.\enskip}

\usepackage{tocstyle} 
\newtocstyle[KOMAlike]{compressed}{% 
   \settocfeature[0]{entryvskip}{0.6em plus 1pt}% 
   \settocfeature[0]{entryhook}{\renewcommand\autodot{.}\usekomafont{chapterentry}}% <- 
}% 
\usetocstyle{compressed} 

\begin{document} 
\tableofcontents 
\listoffigures 

\chapter{Einleitung} 
 Text... 

\begin{minipage}{\textwidth} 
   \begin{center} 
   \includegraphics[width=1cm,height=1cm]{plank} 
   \captionof{figure}{Beispiel} 
   \end{center} 
\end{minipage} 

\section{Abschnitt1} 
 Text... 
\subsection{Unterabschnitt} 
 Text... 
\end{document} 

Skyfall91
Forum-Anfänger
Forum-Anfänger
Beiträge: 37
Registriert: Mi 26. Aug 2015, 16:33

Beitrag von Skyfall91 »

Jetzt funktioniert alles, wunderbar :D
Danke an euch nochmal für die Hilfe, super Forum!

Antworten