PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Koma-Script: Part-Post-fix analog wie chapterprefix?



ElEsido
09-07-2009, 15:20
Hallo!

Ich möchte, dass
\part{Grundlagen}
ausgegeben wird als

I. Teil: Grundlagen
Gibt es einen Befehl, der ähnlich wie der Befehl chapterprefix steuert was nach dem /part erscheinen soll? Partpostfix?

Danke!
ElEsido

mechanicus
09-07-2009, 15:24
Hallo,


\renewcommand*{\partformat}{\thepart\autodot~\part name:}

Gruß
Marco

ElEsido
09-07-2009, 15:42
Danke! Mache es nun mit

\renewcommand*{\partformat}{\thepart.~\partname:}

Wie kriege ich das nun noch ins Inhaltsverzeichnis? Dort steht immer noch
I Grundlagen und nicht
I. Teil: Grundlagen

mechanicus
09-07-2009, 17:17
Hallo,


\documentclass[numbers=noenddot]{scrreprt}
\usepackage[ngerman]{babel}
\renewcommand*{\partformat}{\thepart}
\renewcommand*{\thepart}{\Roman{part}.~\partname:}
\makeatletter
\renewcommand*\l@part{\@dottedtocline{-1}{0em}{5em}}
\makeatother
\begin{document}
\tableofcontents
\part{Gliederung}
\end{document}

Gruß
Marco

ElEsido
10-07-2009, 12:11
Danke schon mal! Der Text stimmt, leider geht die Formatierung verloren:

\documentclass[numbers=noenddot]{scrbook}
\usepackage[ngerman]{babel}
\renewcommand*{\partformat}{\thepart}
\renewcommand*{\thepart}{\Roman{part}.~\partname:}
\makeatletter
\renewcommand*\l@part{\@dottedtocline{-1}{0em}{5em}}
\makeatother
\begin{document}
\tableofcontents
\part{Grundlagen}
\chapter{Einleitung}
\chapter{Zweileitung}
\part{Ausführungen}
\chapter{Wichtiges}
\chapter{Noch Wichtigeres}
\end{document}

mechanicus
10-07-2009, 12:33
Hallo,

sorry, daran habe ich nicht gedacht. Dann fällt mir nur noch das ein:

\documentclass[numbers=noenddot]{scrbook}
\usepackage[ngerman]{babel}
\renewcommand*{\partformat}{\thepart}
\renewcommand*{\thepart}{\Roman{part}.~\partname:}
\makeatletter

\renewcommand*\l@part[2]{%
\ifnum \c@tocdepth >-2\relax
\addpenalty{-\@highpenalty}%
\addvspace{5em \@plus\p@}%
\setlength{\@tempdima}{2em}%
\if@tocleft
\ifx\toc@l@number\@empty\else
\setlength\@tempdima{0\toc@l@number}%
\fi
\fi
\begingroup
\parindent \z@ \rightskip \@pnumwidth
\parfillskip -\@pnumwidth
\leavevmode
\advance\leftskip\@tempdima
\hskip -\leftskip
\usekomafont{partentry}{#1\nobreak
\usekomafont{partentrypagenumber}{\hfil\nobreak
\hb@xt@\@pnumwidth{\hss#2}}}\par
\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax
\endgroup
\penalty20010
\else
\penalty\@highpenalty
\endgroup
\fi
\fi
}
\makeatother
\begin{document}
\tableofcontents
\part{Grundlagen}
\chapter{Einleitung}
\chapter{Zweileitung}
\part{Ausführungen}
\chapter{Wichtiges}
\chapter{Noch Wichtigeres}
\end{document}

Gruß
Marco

ElEsido
10-07-2009, 13:16
Komisch der einzige Unterschied zwischen Deiner Lösung und dem hier

\documentclass[numbers=noenddot]{scrbook}
\usepackage[ngerman]{babel}
\renewcommand*{\partformat}{\thepart}
\renewcommand*{\thepart}{\Roman{part}.~\partname:}

\makeatother
\begin{document}
\tableofcontents
\part{Grundlagen}
\chapter{Einleitung}
\chapter{Zweileitung}
\part{Ausführungen}
\chapter{Wichtiges}
\chapter{Noch Wichtigeres}
\end{document}
ist, dass bei Deinem Code ien grösserer Abstand zwischen "Inhaltsverzeichnis" und dem ersten Teil ist. Leider überschneiden sich bei beiden Versionen bei mir das "1. Teil" mit dem "Grundlagen" bzw. "Ausführungen"

mechanicus
10-07-2009, 17:54
Hallo,

stimmt, falsche Länge geändert :D :

\documentclass[numbers=noenddot]{scrbook}
\usepackage[ngerman]{babel}
\renewcommand*{\partformat}{\thepart}
\renewcommand*{\thepart}{\Roman{part}.~\partname:}
\makeatletter

\renewcommand*\l@part[2]{%
\ifnum \c@tocdepth >-2\relax
\addpenalty{-\@highpenalty}%
\addvspace{2.25em \@plus\p@}%
\setlength{\@tempdima}{5em}%Hier den Abstand einstellen
\if@tocleft
\ifx\toc@l@number\@empty\else
\setlength\@tempdima{0\toc@l@number}%
\fi
\fi
\begingroup
\parindent \z@ \rightskip \@pnumwidth
\parfillskip -\@pnumwidth
\leavevmode
\advance\leftskip\@tempdima
\hskip -\leftskip
\usekomafont{partentry}{#1\nobreak
\usekomafont{partentrypagenumber}{\hfil\nobreak
\hb@xt@\@pnumwidth{\hss#2}}}\par
\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax
\endgroup
\penalty20010
\else
\penalty\@highpenalty
\endgroup
\fi
\fi
}
\makeatother
\begin{document}
\tableofcontents
\part{Grundlagen}
\chapter{Einleitung}
\chapter{Zweileitung}
\part{Ausführungen}
\chapter{Wichtiges}
\chapter{Noch Wichtigeres}
\end{document}


Gruß
Marco

rais
10-07-2009, 20:48
Moin moin,

alternativ vllt flat:


\documentclass[numbers=noenddot,toc=flat]{scrbook}
\usepackage[ngerman]{babel}
\renewcommand*{\partformat}{\thepart}
\renewcommand*{\thepart}{\Roman{part}.~\partname:}
\begin{document}
\tableofcontents
\part{Grundlagen}
\chapter{Einleitung}
\chapter{Zweileitung}
\part{Ausführungen}
\chapter{Wichtiges}
\chapter{Noch Wichtigeres}
\end{document}

MfG

mechanicus
10-07-2009, 21:09
Hallo,

@Rainer: Da brachtest du mich auf eine Idee.


\documentclass[numbers=noenddot]{scrbook}
\usepackage[ngerman]{babel}
\usepackage{tocstyle}
\usetocstyle{standard}
\renewcommand*{\partformat}{\thepart}
\renewcommand*{\thepart}{\Roman{part}.~\partname:}
\begin{document}
\tableofcontents
\part{Grundlagen}
\chapter{Einleitung}
\chapter{Zweileitung}
\part{Ausführungen}
\chapter{Wichtiges}
\chapter{Noch Wichtigeres}
\end{document}

Gruß
Marco

ElEsido
11-07-2009, 11:54
Die Zeilen

\usepackage{tocstyle}
\usetocstyle{KOMAlike}
\renewcommand*{\partformat}{\thepart}
\renewcommand*{\thepart}{\Roman{part}.~\partname:} brachten das gewünschte Ergebnis im Inhaltsverzeichnis.

Allerdings (mea culpa, dass ich das nicht erwähnt habe habe) erstelle ich auch eine Inhaltsübersicht mit dem Paket shorttoc und in dieser überlappen sich der "Teil" mit dem Titel nach wie vor. tocstyle und shorttoc scheinen nicht miteinander zu reden.

Mit Mechanicus' Code funktioniert es hingegen genau wie gewünscht, sowohl im Inhaltsverzeichnis wie auch in der Inhaltsübersicht. Herzlichen Dank!