summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/koma-script/scrktare.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/koma-script/scrktare.dtx')
-rw-r--r--Master/texmf-dist/source/latex/koma-script/scrktare.dtx222
1 files changed, 156 insertions, 66 deletions
diff --git a/Master/texmf-dist/source/latex/koma-script/scrktare.dtx b/Master/texmf-dist/source/latex/koma-script/scrktare.dtx
index c10ea1eefac..f16463db079 100644
--- a/Master/texmf-dist/source/latex/koma-script/scrktare.dtx
+++ b/Master/texmf-dist/source/latex/koma-script/scrktare.dtx
@@ -1,8 +1,8 @@
-% \CheckSum{1678}
+% \CheckSum{1748}
% \iffalse meta-comment
% ======================================================================
% scrktare.dtx
-% Copyright (c) Markus Kohm, 2002-2007
+% Copyright (c) Markus Kohm, 2002-2008
%
% This file is part of the LaTeX2e KOMA-Script bundle.
%
@@ -20,7 +20,7 @@
% This work consists of all files listed in manifest.txt.
% ----------------------------------------------------------------------
% scrktare.dtx
-% Copyright (c) Markus Kohm, 2002-2007
+% Copyright (c) Markus Kohm, 2002-2008
%
% 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: scrktare.dtx
%<*driver>
% \fi
-\ProvidesFile{scrktare.dtx}[2007/11/26 v2.97e KOMA-Script (type area)]
+\ProvidesFile{scrktare.dtx}[2008/10/08 v3.00 KOMA-Script (type area)]
% \iffalse
%</driver>
%<package&identify>\ProvidesPackage{typearea}[%
@@ -489,8 +489,8 @@
%
% \subsubsection{Kopf-, Fuß-, Rand- und Textbereich}
%
-% \begin{option}{headlines}
-% \changes{v2.95}{2002/12/06}{mit \textsf{keyval} neu implementiert}
+% \begin{option}{headlines}
+% \changes{v2.95}{2002/12/06}{mit \textsf{keyval} neu implementiert}
% Neben der Auswertung der \meta{Wert}\texttt{headlines} Form über
% Pattern Matching wird hier auch noch eine \textsf{keyval}-Option
% definiert, die bevorzugt zu verwenden ist.
@@ -502,7 +502,22 @@
\def\ta@hh{#1\baselineskip}%
}
% \end{macrocode}
-% \end{option}
+% \end{option}
+%
+% \begin{option}{headheight}
+% \changes{v2.98c}{2008/04/06}{neue Option}
+% Manchmal ist es nützlicher, wenn man die Höhe direkt setzen kann, statt sie
+% über die Anzahl der Grundlinien zu setzen. In dem Fall nimmt man einfach
+% diese Option.
+% \begin{macrocode}
+\KOMA@key{headheight}{%
+ \begingroup
+ \setlength{\@tempdima}{#1}%
+ \endgroup
+ \def\ta@hh{#1}%
+}
+% \end{macrocode}
+% \end{option}
%
% \begin{option}{headinclude}
% \changes{v2.95}{2002/07/08}{Verwendung von \textsf{scrkeyvl}}
@@ -671,15 +686,42 @@
% ersetzt}
% \changes{v2.97e}{2007/11/23}{auf vielfachen Wunsch reicht die Klasse die
% Option an das Paket weiter}
+% \changes{v3.00}{2008/07/09}{die Option kennt zusätzlich den Wert
+% \texttt{semi}}
+% \begin{macro}{if@semitwoside}
+% \changes{v3.00}{2008/07/09}{neuer Schalter (intern)}
+% \begin{macro}{if@twoside}
+% \changes{v3.00}{2008/07/09}{Schalter setzt auch \cs{if@semitwoside}}
% Einseitiger oder zweiseitiger Satzspiegel?
% \begin{macrocode}
+\newif\if@semitwoside
+\g@addto@macro\@twosidetrue\@semitwosidefalse
+\g@addto@macro\@twosidefalse\@semitwosidefalse
%</package>
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \begin{macrocode}
\KOMA@key{twoside}[true]{%
%<class> \if@atdocument\else\PassOptionsToPackage{twoside=#1}{typearea}\fi%
%<*package>
\if@atdocument\if@twoside\cleardoublepage\else\clearpage\fi\fi
- \KOMA@set@ifkey{twoside}{@twoside}{#1}%
- \if@twoside\@mparswitchtrue\else\@mparswitchfalse\fi%
+ \ifstr{#1}{semi}{%
+ \@twosidetrue
+ \@semitwosidetrue
+ }{%
+ \def\FamilyElseValue{, `semi'}%
+ \KOMA@set@ifkey{twoside}{@twoside}{#1}%
+ }%
+ \if@twoside
+ \if@semitwoside
+ \@mparswitchfalse
+ \else
+ \@mparswitchtrue
+ \fi
+ \else
+ \@mparswitchfalse
+ \fi%
\csname recalctypearea\endcsname
%</package>
}
@@ -701,11 +743,13 @@
% verlagert}
% \changes{v2.97e}{2007/11/23}{auf vielfachen Wunsch reicht die Klasse die
% Option an das Paket weiter}
+% \changes{v2.98a}{2007/01/08}{es wird die richtige Option an das Paket
+% weitergereicht}
% Einspaltiger oder zweispaltiger Satz?
% \begin{macrocode}
%</package>
\KOMA@key{twocolumn}[true]{%
-%<class> \if@atdocument\else\PassOptionsToPackage{twoside=#1}{typearea}\fi%
+%<class> \if@atdocument\else\PassOptionsToPackage{twocolumn=#1}{typearea}\fi%
%<*package>
\if@atdocument\clearpage\fi
\KOMA@set@ifkey{twocolumn}{@twocolumn}{#1}%
@@ -846,16 +890,18 @@
% \end{option}
%
%
-% \begin{option}{dvips}
-% \changes{v2.7g}{2001/04/17}{neue Option}
-% \changes{v2.95}{2002/08/27}{neu implementiert}
+% \begin{option}{dvips}
+% \changes{v2.7g}{2001/04/17}{neue Option}
+% \changes{v2.95}{2002/08/27}{neu implementiert}
+% \changes{v2.98c}{2008/04/09}{Ersatz geändert}
+% \changes{v2.98c}{2008/04/09}{Info statt Warnung}
% Die Option ist obsolete und wird nun über die Option
-% \texttt{pagesize} implementiert. In diesem Fall wird eine Warnung
-% verwendet, weil die Verwendung von \texttt{pagesize=dvips} selbst
-% ebenfalls zu einer Warnung führen kann.
+% \texttt{pagesize} implementiert. Obwohl die Verwendung von
+% \texttt{pagesize=automedia} zu einer Warnung führen kann, wird hier nur
+% informiert.
% \begin{macrocode}
-\KOMA@DeclareObsoleteOption[\PackageWarning]{dvips}{%
- pagesize=dvips%
+\KOMA@DeclareObsoleteOption[\PackageInfoNoLine]{dvips}{%
+ pagesize=automedia%
}
% \end{macrocode}
% \end{option}
@@ -1101,7 +1147,11 @@
% \begin{macrocode}
\KOMAExecuteOptions{paper=A4}
\if@twoside
- \KOMAExecuteOptions{twoside}
+ \if@semitwoside
+ \KOMAExecuteOptions{twoside=semi}
+ \else
+ \KOMAExecuteOptions{twoside}
+ \fi
\else
\KOMAExecuteOptions{twoside=false}
\fi
@@ -1242,7 +1292,11 @@
\advance\marginparwidth by-\marginparsep
\else
\if@twoside
- \marginparwidth=1.5\ta@hblk
+ \if@semitwoside
+ \marginparwidth=\ta@hblk
+ \else
+ \marginparwidth=1.5\ta@hblk
+ \fi
\else
\marginparwidth=\ta@hblk
\fi
@@ -1258,12 +1312,18 @@
\oddsidemargin=-1in
\evensidemargin=-1in
\if@twoside
- \advance\oddsidemargin by\ta@hblk
- \advance\oddsidemargin by\ta@bcor
- \advance\evensidemargin by2\ta@hblk
- \if@mincl
- \advance\evensidemargin by\marginparwidth
- \advance\evensidemargin by\marginparsep
+ \if@semitwoside
+ \advance\oddsidemargin by1.5\ta@hblk
+ \advance\oddsidemargin by\ta@bcor
+ \evensidemargin=\oddsidemargin
+ \else
+ \advance\oddsidemargin by\ta@hblk
+ \advance\oddsidemargin by\ta@bcor
+ \advance\evensidemargin by2\ta@hblk
+ \if@mincl
+ \advance\evensidemargin by\marginparwidth
+ \advance\evensidemargin by\marginparsep
+ \fi
\fi
\else
\advance\oddsidemargin by1.5\ta@hblk
@@ -1508,7 +1568,7 @@
\if@mincl
\PackageInfo{typearea}{%
With option `mpinclude' there are no predefined\MessageBreak
- DIV-values. Using DIV calculation for good line\MessageBreak
+ DIV values. Using DIV calculation for good line\MessageBreak
width%
}%
\ta@div=2
@@ -1869,6 +1929,8 @@
% \changes{v2.5}{1997/06/17}{"`arithmetic overflow"' bei landscape
% behoben}
% \changes{v2.95}{2004/01/30}{Warnung im Zweispaltenmodus korrigiert}
+% \changes{v3.00}{2008/10/08}{Layout-Infos werden per \cs{ta@layoutinfo}
+% in die \texttt{log}-Datei geschrieben}
% Zum Schluss soll die Seitenaufteilung noch in die \texttt{log}-Datei
% geschrieben werden.
% \begin{macrocode}
@@ -1893,58 +1955,28 @@
\fi
\ifnum\@tempcnta <-15
\PackageWarningNoLine{typearea}{%
- Bad DIV-value!\MessageBreak
+ Bad DIV value!\MessageBreak
You should e.g. decrease DIV, increase fontsize\MessageBreak
or change papersize%
}%
\else
\ifnum\@tempcnta>15
\PackageWarningNoLine{typearea}{%
- Bad DIV-value!\MessageBreak
+ Bad DIV value!\MessageBreak
You should e.g. increase DIV, decrease fontsize\MessageBreak
or change papersize%
}
\fi\fi
\ifnum\ta@div <6
\PackageWarningNoLine{typearea}{%
- Very low DIV-value!\MessageBreak
- DIV-values less than 6 result in textwidth/-height\MessageBreak
+ Very low DIV value!\MessageBreak
+ DIV values less than 6 result in textwidth/-height\MessageBreak
smaller than total marginwidth/-height.\MessageBreak
You should e.g. increase DIV, increase fontsize or\MessageBreak
change papersize%
}
\fi
- \PackageInfo{typearea}{%
- These are the values describing the layout:\MessageBreak
- DIV\space\space=\space\number\ta@div\MessageBreak
- BCOR\space=\space\the\ta@bcor\MessageBreak
- \string\paperwidth\space\space\space\space\space\space=%
- \space\the\paperwidth\MessageBreak
- \space\string\textwidth\space\space\space\space\space\space=%
- \space\the\textwidth\MessageBreak
- \space DIV-departure\space\space\space=%
- \space\the\@tempcnta/100\MessageBreak
- \space\string\evensidemargin\space=%
- \space\the\evensidemargin\MessageBreak
- \space\string\oddsidemargin\space\space=%
- \space\the\oddsidemargin\MessageBreak
- \string\paperheight\space\space\space\space\space=%
- \space\the\paperheight\MessageBreak
- \space\string\textheight\space\space\space\space\space=%
- \space\the\textheight\MessageBreak
- \space\string\topmargin\space\space\space\space\space\space=%
- \space\the\topmargin\MessageBreak
- \space\string\headheight\space\space\space\space\space=%
- \space\the\headheight\MessageBreak
- \space\string\headsep\space\space\space\space\space\space\space\space=%
- \space\the\headsep\MessageBreak
- \space\string\topskip\space\space\space\space\space\space\space\space=%
- \space\the\topskip\MessageBreak
- \space\string\footskip\space\space\space\space\space\space\space=%
- \space\the\footskip\MessageBreak
- \space\string\baselineskip\space\space\space=%
- \space\the\baselineskip\MessageBreak
- }%
+ \ta@layoutinfo{\number\ta@div}{\the\@tempcnta}%
\@typearea@end
\activateareas
\fi
@@ -1952,6 +1984,51 @@
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}{\ta@layoutinfo}
+% \changes{v3.00}{2008/10/08}{neu (intern)}
+% Schreibt die Layout-Information in die \texttt{log}-Datei. Dabei ist das
+% erste Argument die Ausgabe für den DIV-Wert und das zweite Argument die
+% DIV-Abweichung. Letztere wird nur ausgegeben, wenn das Argument nicht leer
+% und nicht \cs{relax} ist.
+% \begin{macrocode}
+\newcommand*{\ta@layoutinfo}[2]{%
+ \PackageInfo{typearea}{%
+ These are the values describing the layout:\MessageBreak
+ DIV\space\space=\space#1\MessageBreak
+ BCOR\space=\space\the\ta@bcor\MessageBreak
+ \string\paperwidth\space\space\space\space\space\space=%
+ \space\the\paperwidth\MessageBreak
+ \space\string\textwidth\space\space\space\space\space\space=%
+ \space\the\textwidth\MessageBreak
+ \ifx\relax#2\relax\else
+ \space DIV departure\space\space\space=%
+ \space#2\@percentchar\MessageBreak
+ \fi
+ \space\string\evensidemargin\space=%
+ \space\the\evensidemargin\MessageBreak
+ \space\string\oddsidemargin\space\space=%
+ \space\the\oddsidemargin\MessageBreak
+ \string\paperheight\space\space\space\space\space=%
+ \space\the\paperheight\MessageBreak
+ \space\string\textheight\space\space\space\space\space=%
+ \space\the\textheight\MessageBreak
+ \space\string\topmargin\space\space\space\space\space\space=%
+ \space\the\topmargin\MessageBreak
+ \space\string\headheight\space\space\space\space\space=%
+ \space\the\headheight\MessageBreak
+ \space\string\headsep\space\space\space\space\space\space\space\space=%
+ \space\the\headsep\MessageBreak
+ \space\string\topskip\space\space\space\space\space\space\space\space=%
+ \space\the\topskip\MessageBreak
+ \space\string\footskip\space\space\space\space\space\space\space=%
+ \space\the\footskip\MessageBreak
+ \space\string\baselineskip\space\space\space=%
+ \space\the\baselineskip\MessageBreak
+ }%
+}
+% \end{macrocode}
+% \end{macro}
+%
% \begin{macro}{\recalctypearea}
% \changes{v2.95}{2002/12/04}{Neu}
% Dieses Anweisung dient der Neuberechnung des Satzspiegels mit den
@@ -1988,6 +2065,8 @@
% \end{macrocode}
% Erst dann folgt die eigentlich Berechnung:
% \changes{v2.96}{2006/09/12}{\cs{topskip} wird gesetzt}
+% \changes{v3.00}{2008/10/08}{Layout-Infos werden per \cs{ta@layoutinfo}
+% in die \texttt{log}-Datei geschrieben}
% \begin{macrocode}
\setlength{\textwidth}{#2}%
\setlength{\textheight}{#3}%
@@ -1999,9 +2078,15 @@
\oddsidemargin=-1in
\evensidemargin=-1in
\if@twoside
- \advance\oddsidemargin by\ta@hblk
- \advance\oddsidemargin by\ta@bcor
- \advance\evensidemargin by2\ta@hblk
+ \if@semitwoside
+ \advance\oddsidemargin by1.5\ta@hblk
+ \advance\oddsidemargin by\ta@bcor
+ \evensidemargin\oddsidemargin
+ \else
+ \advance\oddsidemargin by\ta@hblk
+ \advance\oddsidemargin by\ta@bcor
+ \advance\evensidemargin by2\ta@hblk
+ \fi
\else
\advance\oddsidemargin by1.5\ta@hblk
\advance\oddsidemargin by\ta@bcor
@@ -2035,12 +2120,17 @@
\advance\topmargin by-\headsep
\fi
\if@twoside
- \marginparwidth=1.5\ta@hblk
+ \if@semitwoside
+ \marginparwidth=\ta@hblk
+ \else
+ \marginparwidth=1.5\ta@hblk
+ \fi
\else
\marginparwidth=\ta@hblk
\fi
\marginparsep=1cc
\marginparpush=0.45\baselineskip
+ \ta@layoutinfo{areaset}{}%
\activateareas
}
% \end{macrocode}