% ======================================================================
% common-0.tex
% Copyright (c) Markus Kohm, 2001-2011
%
% This file is part of the LaTeX2e KOMA-Script bundle.
%
% This work may be distributed and/or modified under the conditions of
% the LaTeX Project Public License, version 1.3c of the license.
% The latest version of this license is in
%   http://www.latex-project.org/lppl.txt
% and version 1.3c or later is part of all distributions of LaTeX 
% version 2005/12/01 or later and of this work.
%
% This work has the LPPL maintenance status "author-maintained".
%
% The Current Maintainer and author of this work is Markus Kohm.
%
% This work consists of all files listed in manifest.txt.
% ----------------------------------------------------------------------
% common-0.tex
% Copyright (c) Markus Kohm, 2001-2011
%
% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz,
% Version 1.3c, verteilt und/oder veraendert werden.
% Die neuste Version dieser Lizenz ist
%   http://www.latex-project.org/lppl.txt
% und Version 1.3c ist Teil aller Verteilungen von LaTeX
% Version 2005/12/01 oder spaeter und dieses Werks.
%
% Dieses Werk hat den LPPL-Verwaltungs-Status "author-maintained"
% (allein durch den Autor verwaltet).
%
% Der Aktuelle Verwalter und Autor dieses Werkes ist Markus Kohm.
% 
% Dieses Werk besteht aus den in manifest.txt aufgefuehrten Dateien.
% ======================================================================
%
% Paragraphs that are common for several chapters of the KOMA-Script guide
% Maintained by Markus Kohm
%
% ----------------------------------------------------------------------
%
% Absätze, die mehreren Kapiteln der KOMA-Script-Anleitung gemeinsam sind
% Verwaltet von Markus Kohm
%
% ======================================================================

\ProvidesFile{common-0.tex}[2009/01/04 KOMA-Script guide (common paragraphs)]
\translator{Gernot Hassenpflug}

\makeatletter
\@ifundefined{ifCommonmaincls}{\newif\ifCommonmaincls}{}%
\@ifundefined{ifCommonscrextend}{\newif\ifCommonscrextend}{}%
\@ifundefined{ifCommonscrlttr}{\newif\ifCommonscrlttr}{}%
\@ifundefined{ifIgnoreThis}{\newif\ifIgnoreThis}{}%
\makeatother


\section{Early or late Selection of Options}
\label{sec:\csname label@base\endcsname.options}
\ifshortversion\IgnoreThisfalse\IfNotCommon{typearea}{\IgnoreThistrue}\fi
\ifIgnoreThis
All of what is described in \autoref{sec:typearea.options} is generally applicable.
\else

\BeginIndex{}{options}%

In this section a peculiarity of {\KOMAScript} is presented, which
apart from %
\IfCommon{typearea}{the \Package{typearea} package is also relevant to other {\KOMAScript} packages and classes}%
\IfCommon{maincls}{the classes \Class{scrbook}, \Class{scrreprt} and
  \Class{scrartcl} is also relevant to other {\KOMAScript} classes and packages}%
\IfCommon{scrlttr2}{the class \Class{scrlttr2} is also relevant to other
  {\KOMAScript} classes and packages}%
\IfCommon{scrextend}{the classes and the \Package{scrextend} package is also relevant to several other
  {\KOMAScript} packages}%
. Such that the user can find all information corresponding to a
single package or a single class in the relevant chapter, this section
is found almost identically in several chapters. Users who are not
only interested in a particular package or class, but wish to gain an
overview of {\KOMAScript} as a whole, may read the section in one
chapter and may thereafter skip it wherever coming across it in the
document.

\begin{Declaration}
  \Macro{documentclass}\OParameter{option list}%
  \Parameter{{\KOMAScript} class}\\
  \Macro{usepackage}\OParameter{option list}%
  \Parameter{package list}
\end{Declaration}
\BeginIndex{Cmd}{documentclass}%
\BeginIndex{Cmd}{usepackage}%
In \LaTeX{} provision is made for the user to pass class options as a
comma-separated list of keywords as optional arguments to
\Macro{documentclass}.  angeben. Apart from being passed to the class,
these options are also passed on to all packages which can understand
the options. Provision is also made for the use to pass optional
arguments as a comma-separated list of keywords as optional arguments
to \Macro{usepackage}.  {\KOMAScript}
expands\ChangedAt{v3.00}{\Class{scrbook}\and \Class{scrreprt}\and
  \Class{scrartcl}\and \Package{scrextend}\and \Package{typearea}} the
option mechanism for die {\KOMAScript} classes und various packages to
use further possibilities. Thus, most {\KOMAScript} options can also
take a value. An option may have not only the form \PName{Option}, but
may also have the form \PName{option}\texttt{=}\PName{value}. Apart
from this difference \Macro{documentclass} and \Macro{usepackage}
function the same in {\KOMAScript} as described in
\cite{latex:usrguide} oder any introduction to \LaTeX, for example
\cite{l2short}.%
%
\IfNotCommon{scrextend}{\par%
  When using a {\KOMAScript} class no options should be passed on
% Die Alternativen an dieser Stelle dienen der Verbesserung des Umbruchs
  \IfCommon{typearea}{unnecessary, explicit }%
  loading of the \Package{typearea} or \Package{scrbase} packages. The
  reason for this is that the class already loads these packages
  without options and \LaTeX{} refuses multiple loading of a package
  with different option settings.%
  \IfCommon{maincls}{\ Actually, it is no longer necessary when using
    any {\KOMAScript} class to explicity load either one of these
    packages.}%
  \IfCommon{scrlttr2}{\ Actually, it is no longer necessary when using
    any {\KOMAScript} class to explicity load either one of these
    packages.}}%
%
\EndIndex{Cmd}{usepackage}%
\EndIndex{Cmd}{documentclass}%


\BeginIndex{Cmd}{KOMAoptions}%
\BeginIndex{Cmd}{KOMAoption}%
\begin{Declaration}
  \Macro{KOMAoptions}\Parameter{option list}\\
  \Macro{KOMAoption}\Parameter{option}\Parameter{value list}
\end{Declaration}
\KOMAScript{}\ChangedAt{v3.00}{\Class{scrbook}\and
  \Class{scrreprt}\and \Class{scrartcl}\and \Package{scrextend}\and
  \Package{typearea}} offers most class and package options the
opportunity to change the value of options even after loading of the
class or package. One may than change the values of a list of options
at will with the \Macro{KOMAoptions} command. Each option in the
\PName{option list} has the form
\PName{option}\texttt{=}\PName{value}.

Some options also have a default value. If one does not give a value,
i.\,e., gives the option simply in the form \PName{option}, then the
default value will be used.

Some options can %
\IfCommon{maincls}{also }% Umbruchkorrektur
\IfCommon{scrlttr2}{also }% Umbruchkorrektur
assume several values simultaneously. For such options there exists
the possibility, with the help of \Macro{KOMAoption}, to pass a single
\PName{option} a list of values. The individual values are given as a
comma-separated \PName{value list}.

\begin{Explain}
  If in the \PName{option list} one sets an option to a disallowed
  value, or the \PName{value list} contains an invalid value, then an
  error is produced. If \LaTeX{} is run in an interactive mode, then
  it stops at this point. Entering ``\texttt{h}'' displays a help
  screen, in which also the valid values for the corresponding option
  are given.

  If a \PName{value} includes an equal sign or a comma, then the
  \PName{value} must be enclosed in curly brackets.

  To implement this possibility {\KOMAScript} uses the commands
  \Macro{FamilyOptions} and \Macro{FamilyOption} with the family
  ``\PValue{KOMA}''. More information on these commands %
  \IfCommon{maincls}{for experts }%
  \IfCommon{scrlttr2}{for experts }%
  is found in \autoref{sec:scrbase.keyvalue},
  \autopageref{desc:scrbase.cmd.FamilyOptions}.
\end{Explain}
%
\EndIndex{Cmd}{KOMAoption}%
\EndIndex{Cmd}{KOMAoptions}%
%
\EndIndex{}{options}%

\fi % IgnoreThis


%%% Local Variables:
%%% mode: latex
%%% coding: iso-latin-1
%%% TeX-master: "../guide"
%%% End:
