summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/koma-script/scrksect.dtx
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2007-03-07 18:05:27 +0000
committerKarl Berry <karl@freefriends.org>2007-03-07 18:05:27 +0000
commit1c15eb0bc227a081215bf372a3756aadc4d19d09 (patch)
tree512213f86181e4a6b05eab611fd4a84f334fc27a /Master/texmf-dist/source/latex/koma-script/scrksect.dtx
parentf20e65ef1cfe5fc288f66e7af8abc8477511b36a (diff)
koma-script update (5mar07)
git-svn-id: svn://tug.org/texlive/trunk@4009 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/koma-script/scrksect.dtx')
-rw-r--r--Master/texmf-dist/source/latex/koma-script/scrksect.dtx400
1 files changed, 311 insertions, 89 deletions
diff --git a/Master/texmf-dist/source/latex/koma-script/scrksect.dtx b/Master/texmf-dist/source/latex/koma-script/scrksect.dtx
index 752ca68b130..8682751b8a2 100644
--- a/Master/texmf-dist/source/latex/koma-script/scrksect.dtx
+++ b/Master/texmf-dist/source/latex/koma-script/scrksect.dtx
@@ -1,8 +1,8 @@
-% \CheckSum{1465}
+% \CheckSum{1642}
% \iffalse meta-comment
% ======================================================================
% scrksect.dtx
-% Copyright (c) Markus Kohm, 2002-2006
+% Copyright (c) Markus Kohm, 2002-2007
%
% This file is part of the LaTeX2e KOMA-Script bundle.
%
@@ -20,7 +20,7 @@
% This work consists of all files listed in manifest.txt.
% ----------------------------------------------------------------------
% scrksect.dtx
-% Copyright (c) Markus Kohm, 2002-2006
+% Copyright (c) Markus Kohm, 2002-2007
%
% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz,
% Version 1.3b, verteilt und/oder veraendert werden.
@@ -58,7 +58,7 @@
%%% From File: scrksect.dtx
%<*driver>
% \fi
-\ProvidesFile{scrksect.dtx}[2006/07/30 v2.95b KOMA-Script (disposition)]
+\ProvidesFile{scrksect.dtx}[2007/01/24 v2.97 KOMA-Script (disposition)]
% \iffalse
\documentclass[halfparskip-]{scrdoc}
\usepackage[english,ngerman]{babel}
@@ -122,6 +122,8 @@
% Der Zustand wird dann in einem Schalter gespeichert.
% \begin{macrocode}
\newif\if@openright
+%<report>\@openrightfalse
+%<book>\@openrighttrue
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -345,6 +347,7 @@
If you'll continue, option `smallheadings' will be used%
}%
}
+\@bigheadings
% \end{macrocode}
% \end{macro}
% \end{option}
@@ -356,8 +359,10 @@
%
% \begin{option}{chapterprefix}
% \changes{v2.8}{2001/06/15}{neue Option}
+% \changes{v2.95c}{2006/08/21}{als \textsf{keyval}-Option}
% \begin{option}{nochapterprefix}
% \changes{v2.8}{2001/06/15}{neue Option}
+% \changes{v2.95c}{2006/08/21}{obsolete Option}
% \iffalse
%<*book|report>
% \fi
@@ -375,9 +380,9 @@
% \texttt{appendixprefix} und \texttt{noappendixprefix} erfolgt die
% Umschaltung durch einen Schalter.
% \begin{macrocode}
-\newif\if@chapterprefix
-\DeclareOption{chapterprefix}{\@chapterprefixtrue}
-\DeclareOption{nochapterprefix}{\@chapterprefixfalse}
+\newif\if@chapterprefix\@chapterprefixfalse
+\KOMA@ifkey{chapterprefix}{@chapterprefix}
+\KOMA@DeclareObsoleteOption{nochapterprefix}{chapterprefix=false}
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -391,24 +396,29 @@
%
% \begin{option}{appendixprefix}
% \changes{v2.8}{2001/06/15}{neue Option}
+% \changes{v2.95c}{2006/08/21}{als \textsf{keyval}-Option}
% \begin{option}{noappendixprefix}
% \changes{v2.8}{2001/06/15}{neue Option}
+% \changes{v2.95c}{2006/08/21}{obsolete Option}
% \iffalse
%<*book|report>
% \fi
-% Will man abweichend von den Optionen \texttt{chapterprefix} und
-% \texttt{nochapterprefix} die großen Überschriften für den Anhang
-% aktivieren oder deaktivieren, so kann man das mit dieser Option
-% erreichen. Allerdings setzt diese keinen Schalter, sondern ein
-% Zusatzmakro, das auch für andere Zwecke genutzt werden
-% kann. Übrigens ist keine der beiden Optionen die Voreinstellung!
-% \begin{macrocode}
-\DeclareOption{appendixprefix}{%
- \def\appendixmore{\@chapterprefixtrue}%
-}
-\DeclareOption{noappendixprefix}{%
- \def\appendixmore{\@chapterprefixfalse}%
+% Will man abweichend von der Option \texttt{chapterprefix} die großen
+% Überschriften für den Anhang aktivieren oder deaktivieren, so kann man das
+% mit dieser Option erreichen. Allerdings setzt diese keinen Schalter, sondern
+% ein Zusatzmakro, das auch für andere Zwecke genutzt werden kann. Übrigens
+% ist keine der beiden Einstellungen die Voreinstellung!
+% \begin{macrocode}
+\KOMA@key{appendixprefix}[true]{%
+ \KOMA@set@ifkey{appendixprefix}{@tempswa}{#1}%
+ \if@tempswa
+ \def\appendixmore{\@chapterprefixtrue}%
+ \else
+ \def\appendixmore{\@chapterprefixfalse}%
+ \fi
}
+\KOMA@DeclareObsoleteOption[\ClassInfo]{noappendixprefix}{%
+ appendixprefix=false}
% \end{macrocode}
% \iffalse
%</book|report>
@@ -617,12 +627,13 @@
% Dabei soll die Umstellung beim zweiten TeX-Lauf bereits am Anfang
% aktiv sein. Deshalb wird die Information am Ende in die aux-Datei
% geschrieben.
-% \changes{v2.9k}{2003/01/12}{es wird direkt in \cs{@mainaux} geschrieben}
-% \changes{v2.95}{2004/01/15}{es wird erst unmittelbar vor dem Schließen der
-% Haupt-aux-Datei in diese geschrieben}
+% \changes{v2.9k}{2003/01/12}{es wird direkt in \cs{@mainaux} geschrieben}
+% \changes{v2.95}{2004/01/15}{es wird erst unmittelbar vor dem Schließen
+% der Haupt-aux-Datei in diese geschrieben}
+% \changes{v2.96a}{2006/12/07}{es wird \cs{immediate} geschrieben}
% \begin{macrocode}
\BeforeClosingMainAux{%
- \if@autodot\if@filesw\write\@mainaux{%
+ \if@autodot\if@filesw\immediate\write\@mainaux{%
\string\global\string\@altsecnumformattrue}%
\fi\fi}
% \end{macrocode}
@@ -664,6 +675,8 @@
% \changes{v2.8}{2001/06/15}{\cs{chapappifprefix} eingefügt}
% \changes{v2.8o}{2001/09/19}{\cs{chapappifchapterprefix} statt
% \cs{chapappifprefix}}
+% \changes{v2.96a}{2006/12/02}{\cs{mbox} eingefügt, um \cs{caps} zu
+% ermöglichen}
% \begin{macro}{\chaptermarkformat}
% \changes{v2.3a}{1995/07/08}{Leerraum nach der Kapitelnummer
% erhöht}
@@ -703,7 +716,7 @@
\newcounter{chapter}
\renewcommand*{\thechapter}{\@arabic\c@chapter}
\newcommand*{\chapterformat}{%
- \chapappifchapterprefix{\ }\thechapter\autodot\enskip
+ \mbox{\chapappifchapterprefix{~}\thechapter\autodot\enskip}%
}
\newcommand*\chaptermarkformat{\chapappifchapterprefix{\ }%
\thechapter\autodot\enskip}
@@ -734,20 +747,37 @@
% \end{macrocode}
% \begin{macro}{\@seccntformat}
% \changes{v2.3c}{1995/08/06}{CJK erweitert}
-% \changes{v2.9p}{2004/01/07}{\cs{protect} eingef"ugt}
+% \changes{v2.9p}{2004/01/07}{\cs{protect} eingefügt}
+% \changes{v2.97}{2007/01/24}{Workaround für das blöde \cs{protect}}
% \begin{macro}{\othersectionlevelsformat}
% \changes{v2.7}{2000/01/03}{neu}
% \changes{v2.7}{2000/01/03}{\cs{quad} durch \cs{enskip} ersetzt}
% \changes{v2.7i}{2001/05/17}{\cs{let} durch \cs{def} ersetzt}
+% \changes{v2.97}{2007/01/24}{statt einem Argument jetzt drei}
% Bei den Ebenen ab \cs{section} erfolgt die Formatierung der
% Gliederungnummer in der Überschrift mit einer gemeinsamen
% Anweisung. Die interne Anweisung \cs{@seccntformat} wird dabei von
% \LaTeX-Kern verwendet und muss umdefiniert werden, um eine
% entsprechende Anweisung auf Anwenderebene verfügbar zu haben.
-% \begin{macrocode}
-\newcommand*{\othersectionlevelsformat}[1]{%
- \csname the#1\endcsname\autodot\enskip}
-\renewcommand*{\@seccntformat}{\protect\othersectionlevelsformat}
+% Ab Version 2.9p wurde in \cs{@seccntformat} ein \cs{protect} vor
+% \cs{othersectionlevelsformat} eingefügt. Damit wurde es für den Benutzer
+% deutlich einfacher, die Anweisung \cs{othersectionlevelsformat}
+% umzudefinieren. Dafür war dadurch aber \cs{the\dots} nicht mehr
+% expandiert. Das wiederum gab Probleme, wenn \cs{\@seccntformat} für den
+% \cs{mark}-Mechanismus genutzt wurde. Deshalb hat
+% \cs{othersectionlevelsformat} ab Version 2.97 drei Argumente statt nur
+% eines. Das zweite Argument sollte vom Anwender ignoriert werden, es
+% existiert nur, um die Kompatibitlität Umdefinitionen zu erhalten, bei denen
+% \cs{othersectionlevelsformat} nur ein Argument besitzt. Das dritte Argument
+% ist die \cs{the\dots}-Anweisung. Das zweite Argument funktioniert so, das es
+% das dritte Argument frisst, falls \cs{othersectionlevelsformat} nur ein
+% Argument liest.
+% \begin{macrocode}
+\newcommand*{\othersectionlevelsformat}[3]{#3\autodot\enskip}
+\renewcommand*{\@seccntformat}[1]{%
+ \protect\othersectionlevelsformat{#1}{%
+ \expandafter\aftergroup\noexpand\@gobble}{\csname the#1\endcsname}%
+}
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -981,10 +1011,10 @@
\normalfont\sectfont\nobreak
%<article> \ifnum \c@secnumdepth >\m@ne
%<book|report> \ifnum \c@secnumdepth >-2\relax
- \size@partnumber\partformat
+ \size@partnumber{\partformat}%
\partheadmidvskip
\fi
- \size@part #2\strut%
+ \size@part{#2}\strut%
\partmark{#1}\par
\endgroup
%<*article>
@@ -1000,7 +1030,7 @@
\raggedpart
\interlinepenalty \@M
\normalfont
- \sectfont\nobreak\size@part #1\strut\@mkboth{}{}\par
+ \sectfont\nobreak\size@part{#1}\strut\@mkboth{}{}\par
\endgroup
%<*article>
\nobreak
@@ -1207,28 +1237,61 @@
\refstepcounter{chapter}%
\@maybeautodot\thechapter
\typeout{\@chapapp\space\thechapter.}%
- \addcontentsline{toc}{chapter}%
- {\protect\numberline{\thechapter}#1}%
-%<book> \else
-%<book> \addcontentsline{toc}{chapter}{#1}%
-%<book> \fi
+ \addcontentsline{toc}{chapter}{\protect\numberline{\thechapter}#1}%
+ \if@chaptertolists
+ \addcontentsline{lof}{chapteratlist}{%
+ \protect\numberline{\thechapter}#1}%
+ \addcontentsline{lot}{chapteratlist}{%
+ \protect\numberline{\thechapter}#1}%
+ \@ifundefined{float@addtolists}{}{%
+ \float@addtolists{%
+ \protect\contentsline{chapteratlist}{%
+ \protect\numberline{\thechapter}#1}{\thepage}%
+ }%
+ }%
+ \fi
+%<*book>
\else
\addcontentsline{toc}{chapter}{#1}%
+ \if@chaptertolists
+ \addcontentsline{lof}{chapteratlist}{#1}%
+ \addcontentsline{lot}{chapteratlist}{#1}%
+ \@ifundefined{float@addtolists}{}{%
+ \float@addtolists{%
+ \protect\contentsline{chapteratlist}{#1}{\thepage}%
+ }%
+ }%
+ \fi
+ \fi
+%</book>
+ \else
+ \addcontentsline{toc}{chapter}{#1}%
+ \if@chaptertolists
+ \addcontentsline{lof}{chapteratlist}{#1}%
+ \addcontentsline{lot}{chapteratlist}{#1}%
+ \@ifundefined{float@addtolists}{}{%
+ \float@addtolists{%
+ \protect\contentsline{chapteratlist}{#1}{\thepage}%
+ }%
+ }%
\fi
- \chaptermark{#1}%
- \addtocontents{lof}{\protect\addvspace{10\p@}}%
- \addtocontents{lot}{\protect\addvspace{10\p@}}%
+ \fi
+ \chaptermark{#1}%
+ \ifdim \@chapterlistsgap>\z@
+ \addtocontents{lof}{\protect\addvspace{\@chapterlistsgap}}%
+ \addtocontents{lot}{\protect\addvspace{\@chapterlistsgap}}%
\@ifundefined{float@addtolists}{}{%
- \float@addtolists{\protect\addvspace{10\p@}}%
+ \float@addtolists{\protect\addvspace{\@chapterlistsgap}}%
}%
- \if@twocolumn
- \if@at@twocolumn
- \@makechapterhead{#2}%
- \else
- \@topnewpage[\@makechapterhead{#2}]%
- \fi
- \else
+ \fi
+ \if@twocolumn
+ \if@at@twocolumn
\@makechapterhead{#2}%
+ \else
+ \@topnewpage[\@makechapterhead{#2}]%
+ \fi
+ \else
+ \@makechapterhead{#2}%
\@afterheading
\fi
}
@@ -1237,22 +1300,34 @@
\@@makechapterhead{#1}%
\use@preamble{chapter@u}\nobreak
}
+% \end{macrocode}
+% \changes{v2.96a}{2006/12/02}{Abstand nach der Präfixzeile nur, wenn eines
+% Präfixzeile ausgegeben wurde}
+% \begin{macrocode}
\newcommand*{\@@makechapterhead}[1]{\chapterheadstartvskip
- {\normalfont\sectfont\size@chapter
+ {%
\setlength{\parindent}{\z@}\setlength{\parfillskip}{\fill}%
+ \normalfont\sectfont\size@chapter{}%
\if@chapterprefix
\let\@tempa\raggedsection
\else
\let\@tempa\@hangfrom
\fi
\@tempa{\ifnum \c@secnumdepth >\m@ne%
-%<book> \if@mainmatter
- \chapterformat
+%<book> \if@mainmatter
+ \if@chapterprefix
+ \expandafter\size@chapterprefix
+ \else
+ \expandafter\size@chapter
+ \fi
+ {\chapterformat}%
+ \if@chapterprefix
+ \size@chapterprefix{}\endgraph\nobreak\vskip.5\baselineskip
+ \fi
%<book> \fi
\fi
}%
- \if@chapterprefix\par\nobreak\vskip.5\baselineskip\fi
- {\raggedsection \interlinepenalty \@M #1\par}}%
+ {\raggedsection \interlinepenalty \@M \size@chapter{#1}\par}}%
\nobreak\chapterheadendvskip
}
% \end{macrocode}
@@ -1285,9 +1360,9 @@
}
\newcommand*{\@@makeschapterhead}[1]{%
\chapterheadstartvskip%
- {\normalfont\sectfont\size@chapter
+ {\normalfont\sectfont\size@chapter{}%
\setlength{\parindent}{\z@}\setlength{\parfillskip}{\fill}%
- \raggedsection \interlinepenalty \@M #1\par}%
+ \raggedsection \interlinepenalty \@M \size@chapter{#1}\par}%
\nobreak\chapterheadendvskip%
}
\newcommand*{\@makeschapterhead}[1]{%
@@ -1372,6 +1447,24 @@
\newcommand*{\@addchap}{}
\def\@addchap[#1]#2{\@schapter{#2}%
\addcontentsline{toc}{chapter}{#1}%
+ \if@chaptertolists
+ \addcontentsline{lof}{chapteratlist}{#1}%
+ \addcontentsline{lot}{chapteratlist}{#1}%
+ \@ifundefined{float@addtolists}{}{%
+ \float@addtolists{%
+ \protect\contentsline{chapteratlist}{#1}{\thepage}%
+ }%
+ }%
+ \fi
+ \ifnum \@nameuse{scr@v@2.96}<\scr@compatibility
+ \ifdim \@chapterlistsgap>\z@
+ \addtocontents{lof}{\protect\addvspace{\@chapterlistsgap}}%
+ \addtocontents{lot}{\protect\addvspace{\@chapterlistsgap}}%
+ \@ifundefined{float@addtolists}{}{%
+ \float@addtolists{\protect\addvspace{\@chapterlistsgap}}%
+ }%
+ \fi
+ \fi
\if@twoside\@mkboth{#1}{}\else\@mkboth{}{#1}\fi
}
\newcommand*{\@saddchap}[1]{\@schapter{#1}\@mkboth{}{}}
@@ -1451,11 +1544,17 @@
% \cs{size@section} aufgerufen}
% \changes{v2.8q}{2002/02/28}{\cs{nobreak} nach \cs{sectfont}
% behebt einen Bug im color Paket}
+% \changes{v2.96a}{2006/11/30}{Standardwert für \cs{parfillskip} (abhängig
+% von Option \texttt{version})}
+% \changes{v2.96a}{2006/12/03}{alle nicht benötigten \cs{nobreak} entfernt}
% \begin{macro}{\subsection}
% \changes{v2.8p}{2001/09/22}{\cs{sectfont} wird nun vor
% \cs{size@subsection} aufgerufen}
% \changes{v2.8q}{2002/02/28}{\cs{nobreak} nach \cs{sectfont}
% behebt einen Bug im color Paket}
+% \changes{v2.96a}{2006/11/30}{Standardwert für \cs{parfillskip} (abhängig
+% von Option \texttt{version})}
+% \changes{v2.96a}{2006/12/03}{alle nicht benötigten \cs{nobreak} entfernt}
% \begin{macro}{\subsubsection}
% \changes{v2.3d}{1995/08/19}{wird bei \texttt{scrartcl} nun
% ebenfalls numeriert und ins Inhaltsverzeichnis geschrieben}
@@ -1463,16 +1562,21 @@
% \cs{size@subsubsection} aufgerufen}
% \changes{v2.8q}{2002/02/28}{\cs{nobreak} nach \cs{sectfont}
% behebt einen Bug im color Paket}
+% \changes{v2.96a}{2006/11/30}{Standardwert für \cs{parfillskip} (abhängig
+% von Option \texttt{version})}
+% \changes{v2.96a}{2006/12/03}{alle nicht benötigten \cs{nobreak} entfernt}
% \begin{macro}{\paragraph}
% \changes{v2.8p}{2001/09/22}{\cs{sectfont} wird nun vor
% \cs{size@paragraph} aufgerufen}
% \changes{v2.8q}{2002/02/28}{\cs{nobreak} nach \cs{sectfont}
% behebt einen Bug im color Paket}
+% \changes{v2.96a}{2006/12/03}{alle nicht benötigten \cs{nobreak} entfernt}
% \begin{macro}{\subparagraph}
% \changes{v2.8p}{2001/09/22}{\cs{sectfont} wird nun vor
% \cs{size@subparagraph} aufgerufen}
% \changes{v2.8q}{2002/02/28}{\cs{nobreak} nach \cs{sectfont}
% behebt einen Bug im color Paket}
+% \changes{v2.96a}{2006/12/03}{alle nicht benötigten \cs{nobreak} entfernt}
% Die Standardgliederungsbefehle \cs{section} bis \cs{subparagraph}
% sind mit der im Kernel dafür vorgesehenen Schnittstelle
% definiert. Im Unterschied zu den Standardklassen erfolgt die
@@ -1484,32 +1588,35 @@
\newcommand\section{\@startsection{section}{1}{\z@}%
{-3.5ex \@plus -1ex \@minus -.2ex}%
{2.3ex \@plus.2ex}%
- {\raggedsection\normalfont\sectfont\nobreak\size@section\nobreak}%
+ {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\setlength{\parfillskip}{\z@
+ plus 1fil}\fi
+ \raggedsection\normalfont\sectfont\size@section}%
}
\newcommand\subsection{\@startsection{subsection}{2}{\z@}%
{-3.25ex\@plus -1ex \@minus -.2ex}%
{1.5ex \@plus .2ex}%
- {\raggedsection\normalfont\sectfont\nobreak\size@subsection\nobreak
+ {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\setlength{\parfillskip}{\z@
+ plus 1fil}\fi
+ \raggedsection\normalfont\sectfont\size@subsection
}%
}
\newcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
{-3.25ex\@plus -1ex \@minus -.2ex}%
{1.5ex \@plus .2ex}%
- {\raggedsection\normalfont\sectfont\nobreak\size@subsubsection
- \nobreak
+ {\ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\setlength{\parfillskip}{\z@
+ plus 1fil}\fi
+ \raggedsection\normalfont\sectfont\size@subsubsection
}%
}
\newcommand\paragraph{\@startsection{paragraph}{4}{\z@}%
{3.25ex \@plus1ex \@minus.2ex}%
{-1em}%
- {\raggedsection\normalfont\sectfont\nobreak\size@paragraph\nobreak}%
+ {\raggedsection\normalfont\sectfont\size@paragraph}%
}
\newcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}%
{3.25ex \@plus1ex \@minus .2ex}%
{-1em}%
- {\raggedsection\normalfont\sectfont\nobreak\size@subparagraph
- \nobreak
- }%
+ {\raggedsection\normalfont\sectfont\size@subparagraph}%
}
% \end{macrocode}
% \end{macro}
@@ -1517,26 +1624,37 @@
% \end{macro}
% \end{macro}
% \end{macro}
-% \begin{macro}{minisec}
+% \begin{macro}{\minisec}
% \changes{v2.8q}{2002/02/28}{\cs{nobreak} nach \cs{sectfont}
% behebt einen Bug im color Paket}
% \changes{v2.9o}{2003/01/31}{\cs{nobreak} nach dem Gruppenende
% behebt einen Bug im color Paket}
+% \changes{v2.96a}{2006/11/30}{Standardwert für \cs{parfillskip} (abhängig
+% von Option \texttt{version})}
+% \changes{v2.96a}{2006/12/03}{alle nicht benötigten \cs{nobreak} entfernt}
+% \begin{KOMAfont}{minisec}
+% \changes{v2.96a}{2006/12/03}{\texttt{minisec} ist ein eigenes
+% Fontelement}
% In \KOMAScript{} gibt es diese zusätzliche Gliederungsebene, die
-% immer ohne Nummer und ihne Eintrag ins Inhaltsverzeichnis erfolgt.
+% immer ohne Nummer und ohne Eintrag ins Inhaltsverzeichnis erfolgt.
% \begin{macrocode}
+\newkomafont{minisec}{}
\newcommand\minisec[1]{\@afterindentfalse \vskip 1.5ex
{\parindent \z@
- \raggedsection\normalfont\sectfont\nobreak#1\par\nobreak}\nobreak%
+ \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}\relax
+ \setlength{\parfillskip}{\z@ plus 1fil}\fi
+ \raggedsection\normalfont\sectfont
+ \usekomafont{minisec}#1\par\nobreak}\nobreak%
\@afterheading
}
% \end{macrocode}
+% \end{KOMAfont}
% \end{macro}
%
%
% \subsection{Schrift und Formatierung}
%
-% \begin{macro}{\sectionragged}
+% \begin{macro}{\raggedsection}
% \changes{v2.3h}{1996/01/20}{Überschriften werden
% \cs{raggedsection} gesetzt}
% \changes{v2.3h}{1996/01/20}{\cs{raggedsection} ist als
@@ -1573,10 +1691,18 @@
%
% \begin{macro}{\size@part}
% \changes{v2.8o}{2001/09/14}{neu (intern)}
+% \changes{v2.96a}{2006/12/02}{letztes Element darf ein Argument erwarten,
+% wenn es keine Auswirkung auf den Zeilen abstand hat}
% \begin{macro}{\size@partnumber}
% \changes{v2.8o}{2001/09/14}{neu (intern)}
+% \changes{v2.96a}{2006/12/02}{letztes Element darf ein Argument erwarten,
+% wenn es keine Auswirkung auf den Zeilen abstand hat}
% \begin{macro}{\size@chapter}
% \changes{v2.8o}{2001/09/14}{neu (intern)}
+% \changes{v2.96a}{2006/12/02}{letztes Element darf ein Argument erwarten,
+% wenn es keine Auswirkung auf den Zeilen abstand hat}
+% \begin{macro}{\size@chapterprefix}
+% \changes{v2.96a}{2006/12/02}{neu (intern)}
% \begin{macro}{\size@section}
% \changes{v2.8o}{2001/09/14}{neu (intern)}
% \begin{macro}{\size@subsection}
@@ -1592,6 +1718,7 @@
\newcommand*{\size@part}{}
\newcommand*{\size@partnumber}{}
%<book|report>\newcommand*{\size@chapter}{}
+%<book|report>\newcommand*{\size@chapterprefix}{\size@chapter}
\newcommand*{\size@section}{}
\newcommand*{\size@subsection}{}
\newcommand*{\size@subsubsection}{}
@@ -1606,6 +1733,7 @@
% \end{macro}
% \end{macro}
% \end{macro}
+% \end{macro}
%
% \begin{macro}{\scr@fnt@disposition}
% \changes{v2.95b}{2006/07/30}{neues Element \texttt{disposition}}
@@ -1619,6 +1747,8 @@
% \changes{v2.8p}{2001/09/23}{neues Element \texttt{partnumber}}
% \begin{macro}{\scr@fnt@chapter}
% \changes{v2.8o}{2001/09/14}{neues Element \texttt{chapter}}
+% \begin{macro}{\scr@fnt@chapterprefix}
+% \changes{v2.96a}{2006/12/02}{neues Element \texttt{chapterprefix}}
% \begin{macro}{\scr@fnt@section}
% \changes{v2.8o}{2001/09/14}{neues Element \texttt{section}}
% \begin{macro}{\scr@fnt@subsection}
@@ -1632,6 +1762,8 @@
% \begin{KOMAfont}{minisec}
% \changes{v2.8o}{2001/09/14}{neuer Ersatz für das Element
% \texttt{minisec}}
+% \changes{v2.96a}{2007/01/08}{Alias für das Element \texttt{minisec}
+% entfernt, da es nun ein eigenes Element ist}
% Definition der Elemente der Gliederung, deren Schrift geändert
% werden kann:
% \begin{macrocode}
@@ -1639,12 +1771,12 @@
\newcommand*{\scr@fnt@part}{\size@part}
\newcommand*{\scr@fnt@partnumber}{\size@partnumber}
%<book|report>\newcommand*{\scr@fnt@chapter}{\size@chapter}
+%<book|report>\newcommand*{\scr@fnt@chapterprefix}{\size@chapterprefix}
\newcommand*{\scr@fnt@section}{\size@section}
\newcommand*{\scr@fnt@subsection}{\size@subsection}
\newcommand*{\scr@fnt@subsubsection}{\size@subsubsection}
\newcommand*{\scr@fnt@paragraph}{\size@paragraph}
\newcommand*{\scr@fnt@subparagraph}{\size@subparagraph}
-\aliaskomafont{minisec}{disposition}
\aliaskomafont{sectioning}{disposition}
% \end{macrocode}
% \end{KOMAfont}
@@ -1658,6 +1790,7 @@
% \end{macro}
% \end{macro}
% \end{macro}
+% \end{macro}
%
%
% \subsection{Definitionen für Präambeln}
@@ -1949,24 +2082,41 @@
\advance\leftskip\@tempdima
\hskip -\leftskip
#1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
+% \end{macrocode}
+% \changes{v2.96b}{2006/11/30}{Umbruch zwischen \cs{part}-Eintrag im
+% Inhaltsverzeichnis und untergeordneten Einträgen verhindern}
+% Aus unerfindlichen Gründen war es bis Version~2.96 erlaubt, dass zwischen
+% der \cs{part}-Überschrift und der nachfolgenden Überschrift ein Umbruch
+% stattfinden kann. Ab Version~2.96a gilt das nur noch, wenn die nachfolgende
+% Überschrift wiederum eine \cs{part}-Überschrift ist.
+% \begin{macrocode}
+ \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}
+ \endgroup
+ \penalty20010
+ \else
%<*article>
- \if@compatibility
- \global\@nobreaktrue
+ \if@compatibility
+ \global\@nobreaktrue
% \end{macrocode}
% \changes{v2.3g}{1996/01/14}{fehlendes Kommentarzeichen ergänzt}
% \begin{macrocode}
- \everypar{\global\@nobreakfalse\everypar{}}%
- \else
+ \everypar{\global\@nobreakfalse\everypar{}}%
+ \else
%</article>
- \penalty\@highpenalty
-%<article> \fi
- \endgroup
+ \penalty\@highpenalty
+%<article> \fi
+ \endgroup
+ \fi
\fi
}
% \end{macrocode}
% \end{macro}
% \begin{macro}{\l@chapter}
% \changes{v2.9k}{2003/01/02}{Anpassung an Option \texttt{tocleft}}
+% \changes{v2.96b}{2006/11/30}{Umbruch zwischen \cs{chapter}-Eintrag im
+% Inhaltsverzeichnis und übergeordneten Einträgen verhindern}
+% \changes{v2.96b}{2006/11/30}{Umbruch zwischen \cs{chapter}-Eintrag im
+% Inhaltsverzeichnis und untergeordneten Einträgen verhindern}
% \iffalse
%<*report|book>
% \fi
@@ -1974,7 +2124,9 @@
% \begin{macrocode}
\newcommand*\l@chapter[2]{%
\ifnum \c@tocdepth >\m@ne
- \addpenalty{-\@highpenalty}%
+ \ifnum \lastpenalty<20010
+ \addpenalty{-\@highpenalty}%
+ \fi
\vskip 1.0em \@plus\p@
\setlength\@tempdima{1.5em}%
\if@tocleft
@@ -1989,17 +2141,37 @@
\advance\leftskip\@tempdima
\hskip -\leftskip
#1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
- \penalty\@highpenalty
- \endgroup
+ \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}
+ \endgroup
+ \penalty20009
+ \else
+ \penalty\@highpenalty
+ \endgroup
+ \fi
\fi
}
% \end{macrocode}
+%
+% \begin{macro}{\l@chapteratlist}
+% \changes{v2.96a}{2006/12/03}{neues Macro}
+% Dieses Makro wird ggf. für die Kapiteleinträge in den Listen der
+% Gleitumgebungen verwendet. Zunächst einmal wird hier dasselbe verwendet, wie
+% für die Kapiteleinträge ins Inhaltsverzeichnis.
+% \begin{macrocode}
+\newcommand*{\l@chapteratlist}{\l@chapter}
+% \end{macrocode}
+%
+% \end{macro}
% \iffalse
%</report|book>
% \fi
% \end{macro}
% \begin{macro}{\l@section}
% \changes{v2.9k}{2003/01/02}{Anpassung an Option \texttt{tocleft}}
+% \changes{v2.96b}{2006/11/30}{Umbruch zwischen \cs{section}-Eintrag im
+% Inhaltsverzeichnis und übergeordneten Einträgen verhindern}
+% \changes{v2.96b}{2006/11/30}{Umbruch zwischen \cs{section}-Eintrag im
+% Inhaltsverzeichnis und untergeordneten Einträgen verhindern}
% Bei der Artikel-Klasse folgt die Formatierung für
% \cs{section}-Einträge, an Stelle der Einträge für \cs{chapter}
% der Buch- oder der Bericht-Klasse. Bei diesen handelt es sich hier
@@ -2008,7 +2180,9 @@
%<*article>
\newcommand*\l@section[2]{%
\ifnum \c@tocdepth >\z@
- \addpenalty{\@secpenalty}%
+ \ifnum \lastpenalty<20009
+ \addpenalty{\@secpenalty}%
+ \fi
\addvspace{1.0em \@plus\p@}%
\setlength\@tempdima{1.5em}%
\if@tocleft
@@ -2022,33 +2196,52 @@
\leavevmode \sectfont
\advance\leftskip\@tempdima
\hskip -\leftskip
- #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
+ #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par\nobreak
\endgroup
+ \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}
+ \penalty20008
+ \fi
\fi
}
%</article>
%<*report|book>
-\newcommand*\l@section{\@dottedtocline{1}{1.5em}{2.3em}}
+\newcommand*\l@section{\bprot@dottedtocline{1}{1.5em}{2.3em}}
%</report|book>
% \end{macrocode}
% \end{macro}
% \begin{macro}{\l@subsection}
+% \changes{v2.96b}{2006/11/30}{Umbruch zwischen \cs{subsection}-Eintrag im
+% Inhaltsverzeichnis und übergeordneten Einträgen verhindern}
+% \changes{v2.96b}{2006/11/30}{Umbruch zwischen \cs{subsection}-Eintrag im
+% Inhaltsverzeichnis und untergeordneten Einträgen verhindern}
% \begin{macro}{\l@subsubsection}
+% \changes{v2.96b}{2006/11/30}{Umbruch zwischen \cs{subsubsection}-Eintrag
+% im Inhaltsverzeichnis und übergeordneten Einträgen verhindern}
+% \changes{v2.96b}{2006/11/30}{Umbruch zwischen \cs{subsubsection}-Eintrag
+% im Inhaltsverzeichnis und untergeordneten Einträgen verhindern}
% \begin{macro}{\l@paragraph}
+% \changes{v2.96b}{2006/11/30}{Umbruch zwischen \cs{paragraph}-Eintrag im
+% Inhaltsverzeichnis und übergeordneten Einträgen verhindern}
+% \changes{v2.96b}{2006/11/30}{Umbruch zwischen \cs{paragraph}-Eintrag im
+% Inhaltsverzeichnis und untergeordneten Einträgen verhindern}
% \begin{macro}{\l@subparagraph}
+% \changes{v2.96b}{2006/11/30}{Umbruch zwischen \cs{subparagraph}-Eintrag
+% im Inhaltsverzeichnis und übergeordneten Einträgen verhindern}
+% \changes{v2.96b}{2006/11/30}{Umbruch zwischen \cs{subparagraph}-Eintrag
+% im Inhaltsverzeichnis und untergeordneten Einträgen verhindern}
% Die übrigen Ebenen werden normal behandelt.
% \begin{macrocode}
%<*article>
-\newcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}}
-\newcommand*\l@subsubsection{\@dottedtocline{3}{3.8em}{3.2em}}
-\newcommand*\l@paragraph{\@dottedtocline{4}{7.0em}{4.1em}}
-\newcommand*\l@subparagraph{\@dottedtocline{5}{10em}{5em}}
+\newcommand*\l@subsection{\bprot@dottedtocline{2}{1.5em}{2.3em}}
+\newcommand*\l@subsubsection{\bprot@dottedtocline{3}{3.8em}{3.2em}}
+\newcommand*\l@paragraph{\bprot@dottedtocline{4}{7.0em}{4.1em}}
+\newcommand*\l@subparagraph{\bprot@dottedtocline{5}{10em}{5em}}
%</article>
%<*report|book>
-\newcommand*\l@subsection{\@dottedtocline{2}{3.8em}{3.2em}}
-\newcommand*\l@subsubsection{\@dottedtocline{3}{7.0em}{4.1em}}
-\newcommand*\l@paragraph{\@dottedtocline{4}{10em}{5em}}
-\newcommand*\l@subparagraph{\@dottedtocline{5}{12em}{6em}}
+\newcommand*\l@subsection{\bprot@dottedtocline{2}{3.8em}{3.2em}}
+\newcommand*\l@subsubsection{\bprot@dottedtocline{3}{7.0em}{4.1em}}
+\newcommand*\l@paragraph{\bprot@dottedtocline{4}{10em}{5em}}
+\newcommand*\l@subparagraph{\bprot@dottedtocline{5}{12em}{6em}}
%</report|book>
% \end{macrocode}
% \end{macro}
@@ -2057,6 +2250,35 @@
% \end{macro}
% \end{macro}
%
+% \begin{macro}{\bprot@dottedtocline}
+% \changes{v2.96a}{2006/11/30}{neu (intern)}
+% Dieses Makro wird benötigt, um die Ebenen unterhalb von \cs{chapter}
+% bzw. \cs{section} im Inhaltsverzeichnis ebenfalls vor unerwünschten
+% Umbrüchen zwischen Eintrag und Unterebene zu schützen.
+% \begin{macrocode}
+\newcommand*{\bprot@dottedtocline}[5]{%
+ \ifnum \scr@compatibility>\@nameuse{scr@v@2.96}
+ \ifnum #1>\c@tocdepth \else
+ \begingroup
+ \@tempcnta 20010
+ \advance \@tempcnta by -#1
+ \ifnum \@tempcnta>\lastpenalty
+ \endgroup
+ \addpenalty{\@lowpenalty}%
+ \else
+ \endgroup
+ \fi
+ \@dottedtocline{#1}{#2}{#3}{#4}{#5}%
+ \@tempcnta 20009
+ \advance \@tempcnta by -#1
+ \penalty\@tempcnta
+ \fi
+ \else
+ \@dottedtocline{#1}{#2}{#3}{#4}{#5}%
+ \fi
+}
+% \end{macrocode}
+% \end{macro}
%
% \iffalse
%</body>