<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">%% layout.tex---Teil von OGFUDA
%%
\def\fileversion{1.0}
\def\filedate{01-FEB-1993}
\def\filename{layout.tex}

\meldedich

\section{Layout-"Anderungen}


\subsection{"Uber- und Unterschriften}

\r Ein Bekannter hat folgendes Problem. Er m"ochte den
\verb|\paragraph{}|-Befehl\indexcs{paragraph} im {\em
article}-Stil einsetzen, um einen gr"o"seren Text in vier
Hierarchiestufen\index{Hierarchiestufen} zu gliedern.

Leider hat \cs{paragraph} die Eigenschaft, die
Absatz"uberschrift\index{Ueberschrift@\"Uberschrift} vom Text
nicht durch einen Zeilenumbruch abzusetzen. Der Text folgt der
"Uberschrift nur durch ein Geviert (\cs{quad}) getrennt---ein
zus"atzlicher \ind{Zeilenumbruch} bzw.\ \ind{Absatzumbruch} wie
z.\,B.\ bei \verb|\subsubsection| fehlt. Ein \glq\verb|\\|\grq\
hinter der "Uberschrift zur Erzeugung eines Zeilenumbruchs
f"uhrt ebenso wie \qcs{par}\ oder ein \qcs{linebreak}\ nur zu
Fehlermeldungen\index{Fehlermeldung!von linebreak@von
\verb=\linebreak=}.

Gibt es eine M"oglichkeit eine vierte \ind{Hierarchiestufe} im
{\em article}-Stil zu benutzen, die genauso wie
\verb|\subsubsection| arbeitet?

\p Wenn eine \cs{paragraph}-"Uberschrift nicht durch vertikalen
Raum vom Absatz getrennt wird, dann ist das eine
Design-Entscheidung\index{Design-Entscheidung} des Autors von
\sty{article}. Wenn man das anders haben will---und das gilt
generell f"ur fast alle Benutzerw"unsche---sollte man besser
gleich einen eigenen Style definieren, der vielleicht in
gro"sen Teilen dem \sty{article} "ahnlich ist.

Innerhalb des Dokuments sollte man m"oglichst die vom
Style-Designer vorgesehenen Befehle verwenden, um den Inhalt
entsprechend zu gliedern.  Das Erscheinungsbild, das durch
diese Befehle festgelegt wird, sollte man nicht versuchen durch
Low-Level-Befehle wie \glq\verb|\\|\grq\ oder \qcs{linebreak}
zu "andern, sondern man sollte dann besser diese Befehle selbst
"andern.

\r Sie sprechen damit die Dreiteilung von Autor, Layouter und Setzer
an.

\p Ganz recht.  Die Befehle und Umgebungen von \LaTeX\ sollen
das Konzept einer
m"oglichst klaren Trennung von Inhalt und Layout erm"oglichen.
Dabei ist der Style-Designer f"ur das Layout, der Autor dann
nur noch f"ur den Inhalt und dessen Gliederung verantworlich und \TeX
f"ur den fachgerechten Satz.

\r Manchmal mu"s diese Trennung vom Autor h"aufig aus sehr
pragmatischen Gr"unden durchbrochen werden.  Einerseits kommt
es hin und wieder vor, da"s der Zeilen- oder Seitenumbruch
einmal unbefriedigende Resultate liefert und dies nur durch
Einf"ugen von Low-Level-Befehlen ge"andert werden kann,
andererseits bieten Styles manchmal gew"unschte
Gliederungs"-m"oglichkeiten nicht an, so da"s man diese im
Notbehelf realisieren mu"s.

\p Und damit sind wir wieder bei Ihrem Problem.
Der einfachste Weg, den man
verwenden kann, ist der einfach nach \cs{paragraph} die Sequenz
\glq\verb|\ \\|\grq\ einzuf"ugen.  Dies ist jedoch nur dann
sinnvoll, wenn man dies einmalig---als Ausnahme---einf"ugen
mu"s (falls  z.\,B.\ \LaTeX\ nur an dieser Stelle umbrechen sollte,
der Aufwand einer allgemeineren L"osung zu gro"s w"are oder
einfach nur ein Termin eingehalten werden mu"s).

\r Und wie gehe ich sonst vor?

\p Will man dagegen nach jedem \cs{paragraph}-Befehl eine neue
Zeile beginnen, sollte man besser diesen Befehl selbst "andern
und im Dokument selbst keine "Anderung vornehmen.  Dadurch
spart man sich im Endeffekt eine Menge Zeit und hat sp"ater
immer noch die M"oglichkeit, das Aussehen dieses Befehls erneut
zu "andern, ohne dann diese "Anderung wieder r"uckg"angig
machen zu m"ussen.

\r Eine "au"sert akzeptable L"osung.

\p Die sogenannten "`standard styles"' wie {\em article\/} oder
{\em report\/} oder {\em book\/}, die mit \LaTeX\ mitgeliefert
werden, sollte man als {\em Beispiele\/} ansehen, wie man seine
eigenen Styles definieren kann.  Au"serdem sind diese Styles
eigentlich nicht f"ur das in Europa "ubliche Papierformat
DIN~A4 gemacht worden, so da"s man daf"ur auf alle F"alle
entsprechende Anpassungen verwenden sollte.

\r Also "andere ich \sty{article} in entsprechender Weise.

\p Auf gar keinen Fall!

\smallskip
\begin{center}
Layout-"Anderungen d"urfen {\bf niemals} in den\\
Original {\tt .sty}-Dateien vorgenommen werden!\\
Hierf"ur erstelle man sich besondere {\tt .sty}-Dateien,\\
die via \cs{documentstyle[...]} eingelesen werden.\\
{\bf Ver"andern Sie niemals die Originaldateien!}
\end{center}
\smallskip

Wenn man also \sty{article} "andern will, sollte man entweder
den Style umbenennen oder nur den zu "andernden Teil in einer
Styleoption neu definieren.

\p Wieso weisen Sie so eindringlich darauf hin, die
Originaldateien nicht abzu"andern?

\p Weil Sie sich damit in den Abgrund der
Inkompatibilit"at\index{inkompatibel} begeben.

\r Und wie finde ich die zu "andernden Stellen?

\p Erfahrene \TeX{}ler bieten die folgende Vorgehensweise an.
\begin{enumerate}
\item Durchforsten Sie das \LaTeX-Manual von L.~{\sc Lamport}!
\item Zu jeder {\tt .sty}-Datei existiert eine dokumentierte
Version mit der Endung {\tt doc}\index{doc-Datei@{\tt
.doc}-Datei}; zu \sty{article} geh"ort also die dokumentierte
Datei {\tt article.doc}. Durchsuchen Sie diese als n"achstes!
\item Falls die bisherige Suche nicht zum Erfolg f"uhrte,
m"ussen Sie {\tt latex.tex} selbst durchforsten.
\item Als letzte Quelle sollte das \TeX{}book von \DEK\
herangezogen werden.
\end{enumerate}

\r Ich verfasse also eine {\tt .sty}-Datei mit den gew"unschten
"Anderungen und lese sie wie andere {\tt .sty}-Dateien ein.
Welchen Inhalt sollte sie f"ur diesen Fall besitzen?

\p Hier hilft uns {\tt art1{\it x}.doc} weiter.  Dort finden
wir an entsprechender Stelle die Definition von \cs{paragraph},
deren Zuweisung von \cs{afterskip} von \glq\verb|0pt|\grq\ auf
\glq\verb|1ex plus .1ex|\grq\ ge"andert wurde.\footnote{In
"alteren Stylefiles fehlt der interne Befehl {\tt
\string\reset@font}.  In diesem Fall sollte man \LaTeX-Version
{\it und\/} alle Stylefiles auf den neuesten Stand bringen!}
%
\begin{ogfudatim}
\def\paragraph{\@startsection
  {paragraph}%    NAME
  {4}%            LEVEL
  {0pt}%          INDENTation of heading from left margin
  {3.25ex plus1ex minus.2ex}% BEFORESKIP
                  % (if &lt; 0pt supress indentation
                  % of following heading)
  {1ex plus .1ex}%   AFTERSKIP (if &lt;= 0pt =&gt; run-in header)
  {\reset@font\normalsize\bf}%  STYLE
}
\end{ogfudatim}
%
Ob man sich in dem damit gesetzten Dokument dann zwischen den
vielen "Uberschriften noch auskennt, ist allerdings das Problem
des Layout-Designers oder---schlimmer noch---des Lesers.

\r Sie sagen es: grundlegende "Anderungen des Layouts sollten
professionellen Layoutern vorbehalten bleiben.

\p Und diese "Anderungen wiederum k"onnen meist nur sachgerecht
von \LaTeX-Profis vorgenommen werden.

\r Ich gebe Ihnen ganz und gar recht.  Jedoch sind manchmal aus
verschiedensten Gr"unden {\em kleinere\/} "Anderungen
vorzunehmen.  (So bestehen einige Dozenten auf einen
sogenannten "`doppelten"'
Zeilenabstand\index{Zeilenabstand!doppelter}%
\index{Aendern@\"Andern!des Zeilenabstandes} bei
wissenschaftlichen Arbeiten; "uber die typographische Qualit"at
einer derartigen Verordnung m"ussen wir gewi"s nicht streiten.)

\p Ganz gewi"s nicht.

\r In diesen F"allen ist doch gut zu wissen, wie man ungef"ahr
vorzugehen hat, falls einmal kein \LaTeX-Profi greifbar und
dennoch einmal eine Kleinigkeit, wie zum Beispiel Kopf- oder
Fu"szeilen\index{Aendern@\"Andern!von Kopf- und Fu\ss zeilen},
etwas abzu"andern ist.

\p Auch diese "Anderungen sind dann in einer eigenen {\tt
.sty}-Datei unterzubringen. F"ur "Anderungen der Kopf- bzw.\
Fu"szeilen finden wir folgenden Code in \sty{article}.
%
\begin{ogfudatim}
\if@twoside                       % zweiseitiges Dokument?
 \def\ps@headings{\let\@mkboth\markboth
   \def\@oddfoot{}\def\@evenfoot{}%  Keine Fusszeile auf Seite
   \def\@evenhead{\rm\thepage \hfil \sl\leftmark}% Linke
                                                 % Kopfzeile
   \def\@oddhead{{\sl\rightmark}\hfil \rm\thepage}% Rechte
                                                  % Kopfzeile
   % \rightmark und \leftmark werden mit \markboth bzw.
   % \markright gesetzt.
   % \section setzt \leftmark auf #1 und \rightmark auf {}
   \def\sectionmark##1{\markboth
     {\uppercase{\ifnum\c@secnumdepth&gt;\z@
                 \thesection\hskip 1em\relax \fi ##1}}%
     {}}%
   % \subsection setzt nur \rightmark und #1,
   % \leftmark bleibt dabei unveraendert
   \def\subsectionmark##1{\markright
     {\ifnum\c@secnumdepth&gt;\@ne
      \thesubsection\hskip 1em\relax \fi ##1}}}
\else
 % bei einseitigem Dokument wird obiges etwas "optimiert"
 \def\ps@headings{\let\@mkboth\markboth
   \def\@oddfoot{}\def\@evenfoot{}%  Leere Fusszeile
   \def\@oddhead{{\sl\rightmark}\hfil \rm\thepage}% Kopfzeile
   \def\sectionmark##1{\markright
     {\uppercase{\ifnum\c@secnumdepth&gt;\z@
                 \thesection\hskip 1em\relax \fi ##1}}}}
\fi
\end{ogfudatim}
So k"onnen Sie also durch die Deklaration von
%
\begin{ogfudatim}
\def\@oddfoot{\hfil OGFUDA\hfil}
\def\@evenfoot{\hfil {\sc Rainer Juhser} im Gespr"ach
               mit {\sc Pete T.\ Rex} \hfil}
\end{ogfudatim}
%
\makeatletter
  % Durch die Redefinition
  \def\@oddfoot{\gdef\@oddfoot{}\hfil OGFUDA\hfil}
  \def\@evenfoot{\gdef\@evenfoot{}\hfil {\sc Rainer Juhser}
     im Gespr"ach mit {\sc Pete T.\ Rex}\hfil}
\makeatother
%
die Fu"szeilen erzeugen, die Sie auf den folgenden beiden
Seiten sehen. Wird f"ur dieses Dokument nur ein Stil f"ur ein
einseitiges Dokument verwendet, so erscheint der in
{\tt \string\@evenfoot} definierte Text nicht, da es dann
keine geraden bzw.\ besser R"uckseiten (``even pages'') gibt.


\subsection{"Anderung des Zeilenabstandes}

\r Ausgezeichnet!  Und wie ist dem Problem des zweizeiligen
Zeilenabstandes\index{Zeilenabstand!doppelter} beizukommen?

\makeatletter
\def\norm@lsize{\@setsize\norm@lsize{18pt}\xiipt\@xiipt}
\norm@lsize
\makeatother

\p Auf die folgende Art.  In \sty{art12} findet sich die
Anweisungsfolge.
%
\begin{ogfudatim}
\def\@normalsize{\@setsize\normalsize{14.5pt}\xiipt\@xiipt[...]}
\end{ogfudatim}
%

"Andert man den Wert \glq\verb|12pt|\grq\ auf beispielsweise
{\tt 18pt}, so erhalten Sie etwa anderthalbzeiligen
Zeilenabstand\index{Zeilenabstand!anderthalbfacher}.  Dieser
Absatz ist mit dieser Einstellung geschrieben.\footnote{Wie Sie
sehen, wirkt der ver"anderte Zeilenabstand%
\index{Zeilenabstand!in Fussnoten@in Fu\ss noten} {\em nicht\/}
in Fu"snoten, da f"ur Fu"snoten eine kleiner Fontgr"o"se
verwendet wird; w"unschen Sie auch hier einen vergr"o"serten
Zeilenabstand, mu"s die Deklaration von {\tt
\string\footnotesize} analog der oben ge"anderten Definition
von {\tt\string\normalsize} erfolgen.} Normalerweise ist der
Zeilenabstand in \sty{art12}, dessen
\makeatletter
\def\foot@notesize{\@setsize\footnotesize{15pt}\xpt\@xpt}%
Stil\footnote{\foot@notesize Hier sehen Sie einen etwa
anderthalbzeiligen Zeilenabstand innerhalb der Fu"snote.  Dies
wird erreicht durch eine Neudeklaration von
{\tt\string\footnotesize}.}
\makeatother
hier verwendet wird, $14{,}5$\,pt.

% wieder zurueckschalten, darauf achten, dass Paragraph
% vorher(!) abgeschlossen wird.
\par\normalsize

\r Dieser Anblick l"a"st mich grausen\index{Grausen}.

\p Tja, Sie sprechen mir aus dem Herzen, aber was soll man
machen, wenn h"oherer \ind{Zwang} vorliegt?

\r Das Beste daraus machen.  Aber zwei Fragen stellen sich mir
in diesem Zusammenhang.  Zun"achst scheint die von Ihnen
vorgeschlagene L"osung schrift"-gr"o"sen"-abh"angig zu sein.
Wie "ublich fassen wir die vorzunehmende "Anderung in eine
eigene {\tt .sty}-Datei mit dem Namen \sty{grausen}.  Falls wir
jetzt aber unser Dokument statt mit
%
\begin{ogfudatim}
\documentstyle[12pt,grausen,...]{article}
\end{ogfudatim}
%
mit
%
\begin{ogfudatim}
\documentstyle[10pt,grausen,...]{article},
\end{ogfudatim}
%
"ubersetzen, so erhalten wir das Ganze in einer
$10$\,pt-Grundschrift gesetzt, wobei der Zeilenabstand dann
allerdings fast zweizeilig ist; $18$\,pt \ind{Zeilenabstand}
sind hier nicht mehr \ind{anderthalbzeilig}.  Vielleicht w"aren
etwa $15$\,pt angebrachter.

\p Ein ausgezeichneter Einwand!  In der Tat sollten wir dann
schon N"agel mit K"opfen machen, und zwar so.  Um \sty{grausen}
von der Gr"o"se der \ind{Grundschrift} unabh"angig zu machen,
verwenden wir das interne Makro \verb|\@ptsize|.  Es enth"alt
eine $0$, $1$ oder~$2$, falls eine $10$\,pt-, $11$\,pt- oder
eine $12$\,pt-Schriftgr"o"se ausgew"ahlt wurde.

\r Demnach hat sich also \verb|\@ptsize| die Einerziffer der
jeweils ge"-w"ahlten Grundschrift"-gr"o"se gemerkt.

\p So ist es.  Dies k"onnen wir nun ausnutzen.  Die Datei
\sty{grausen} sollte die folgenden Zeilen enthalten.
%
\begin{ogfudatim}
\ifcase \@ptsize
  \def\@normalsize{\@setsize\normalsize{15pt}\xpt\@xpt[...]}
\or
  \def\@normalsize{\@setsize\normalsize{16.5pt}\xipt\@xipt[...]}
\or
  \def\@normalsize{\@setsize\normalsize{18pt}\xiipt\@xiipt[...]}
\fi
\end{ogfudatim}
%
Die mit \glq\verb|[...]|\grq\ bezeichneten Stellen enthalten
jeweils den Originalcode aus der Gr"o"sendatei; dieser betrifft
im wesentlichen die verschiedenen Zeilenabst"ande im
mathematischen Satz (die ihrerseits noch einer Anpassung
bed"urfen).

\r Aha. Wollten wir zus"atzlich noch den Abstand der
Fu"snotenzeilen ver"andern, k"onnten wir unter der jeweiligen
Definition von \cs{normalsize} die entsprechend ge"anderte
Definition von \cs{footnotesize} notieren.

\p Wie gesagt, N"agel mit K"opfen zu machen bedeutet hier,
ebenfalls die \cs{small}-, \cs{scriptsize}- und die anderen
Fontdeklarationen anzupassen.  Beachten Sie bitte, da"s ein
mittels
%
\begin{ogfudatim}
{\small ...}
\end{ogfudatim}
%
gesetzter Absatz zwingend mit einer Leerzeile enden mu"s, also
etwa so
%
\begin{ogfudatim}
{\small text ...
text.

}
\end{ogfudatim}
%
zu notieren ist; andernfalls liest \TeX{} den gesamten durch
\glq\verb|{|\grq\ und \glq\verb|}|\grq\ begrenzten Absatz ein
und restauriert hinter der schlie"senden Klammer den Wert von
\cs{baselineskip}, bevor der komplette Absatz umgebrochen wird.
Da als Zeilenabstand eines Absatzes der beim Umbruch aktuelle
Wert des Parameters \cs{baselineskip} verwendet wird, erh"alt
man sonst den Wert der vor der durch \verb|{| begonnenen
Gruppe.

\r Gut zu wissen!


\subsection{Fu"snoten}


\r Meine zweite Frage betrifft noch einmal Fu"snoten.  Ich habe
bemerkt, da"s Sie den Ausdruck \qcs{footnotesize} innerhalb
einer Fu"snote verwenden; wie ich wei"s, ist jedoch die
Verwendung von \cs{verb} innerhalb von \cs{footnote} nicht
m"oglich.

\p Ganz recht.  Der Grund daf"ur ist, da"s das
\cs{footnote}-Kommando sein Argument auf einen Sitz verschluckt
und \verb|\verb=...=| keine Gelegenheit bekommt, die
Sonderzeichen zu "`entsch"arfen"'.  Der {\em category code\/},
der die syntaktischen Eigenschaften eines
Zeichens festlegt, kann danach nicht mehr ge"andert werden.
Und eben diese werden von \cs{verb} ver"andert, um alle Zeichen
zu inaktivieren.

\r Und wie haben Sie \qcs{footnotesize} in die Fu"snote
eingeschleust?

\p Ich notierte \glq\verb|\char`\\|\cs{footnotesize}\grq;
\verb|\char`\\| bzw.\
\verb|\char'134| bzw.\ \verb|\char92| veranla"st \TeX, das auf
der Position~92 befindliche Zeichen des aktuellen Zeichensatzes
zu verwenden (134 ist der Oktal-, 92 der Dezimalcode des
Zeichens \verb|\|).{\tolerance=6000\par}

\r Viele Anwender sind auf eine andere Gestaltung der Fu"snoten
angewiesen, als sie \LaTeX\ bietet. Dies betrifft zun"achst
einmal die Einr"uckungen der Fu"snoten.

\p Sie schneiden da ein "au"serst heikles Thema an! Nicht etwa,
weil Ihr Problem schwierig zu l"osen ist, sondern weil es
gro"se Kontroversen bez"uglich der Fu"snoten "uberhaupt gibt.
Diese Diskussion aufzugreifen, kann aber nicht unsere Sache
sein; vielmehr verweise ich Sie (sofern Sie daran interessiert
sind) auf Reiss Vorstudien~\cite{reiss} und den Anmerkungen von
Fisch und Strohschneider zu diesen
Vorstudien~\cite[S.~447--461]{fisch}.

\r Ich gebe Ihnen da wohl recht, aber was k"onnen Sie mir nun
in Bezug auf mein Problem berichten?

\p In {\tt article.doc} finden wir den entscheidenden Hinweis.
Dort findet sich der folgende Kode.\footnote{In dieser Fu"snote
werden die normalen Werte des momentan verwendeten Styles
verwendet.\par Und dies ist ein zweiter Absatz.}
%
\begin{ogfudatim}
\long\def\@makefntext#1{%
  \parindent 1em % (1)
  \noindent
  \hbox to 1.8em% (2)
        {\hss$\m@th^{\@thefnmark}$}#1}
\end{ogfudatim}
%
{%
\makeatletter
\long\def\@makefntext#1{\parindent 10em\noindent
            \hbox to10pt{\hss$\m@th^{\@thefnmark}$}#1}
\makeatother

Die mit (1) markierte Stelle%
\footnote{Hier werden in (1) die Werte $10$\,em und in (2) der
Wert $10$\,pt verwendet.\par Etwas ungew"ohnlich, aber dies
soll nur zur Verdeutlichung dienen.}
%
\makeatletter
\long\def\@makefntext#1{\parindent 0em\noindent
            \hbox to0pt{\hss$\m@th^{\@thefnmark}$}#1}
\makeatother
%
zieht die erste Zeile eines neuen Absatzes um~$1$\,em%
%
\footnote{F"ur diese Fu"snote wurden alle Werte auf~$0$\,pt
gesetzt, so da"s der Text mit dem linken Rand abschlie"st.\par
Die Fu"snotemarkierung ragt dabei mit der angegeben Definition
in den linken Rand hinaus.}
%
ein und die mit (2) markierte Stelle r"uckt den ersten Absatz
mit der Fu"snotenmarkierung um $10$\,pt ein.}
Ferner k"onnen Sie hier auch das Aussehen der Fu"snotenmarke
"andern.  Schreiben Sie in der letzten Zeile obiger Definition
statt
%
\begin{ogfudatim}
    \hbox to 1.8em{\hss$\m@th^{\@thefnmark}$}#1}
\end{ogfudatim}
die Erkl"arung
\begin{ogfudatim}
    \mbox{(\@thefnmark)} #1},
\end{ogfudatim}
%
{%
\makeatletter
\long\def\@makefntext#1{\parindent 1em\noindent
  \mbox{(\@thefnmark)} #1}
\makeatother
%
so erhalten Sie eine Fu"snotenmarkierung, die
hier\footnote{Eine unsinnige Fu"snote mehr.  Beachten Sie den
andersartig gestalteten Fu"snotenz"ahler!}
%
zu sehen ist.}

"Andern Sie diese beiden Werte gem"a"s Ihren Anforderungen
oder schreiben Sie das Makro komplett um
%
{%
\makeatletter
  \long\def\@makefntext#1{\parindent 1em\noindent
    \makebox[2em][r]{$\m@th\@thefnmark.\;\;$}#1}
\makeatother
%
und speichern dieses Makro z.\,B.\ unter dem Namen
\sty{myfootnt} ab.%
\footnote{Versuchen Sie auch einmal diese Einstellungen!  Diese
finden in einer Stil-Option Einsatz, die es erlaubt, im
zweispaltigen Satz die Fu"snoten ans Ende der rechten Spalten
auszugeben.\par Dieser Stil tr"agt den Namen \sty{ftnright} und
ist auf vielen \TeX-Servern zu finden.}}
%
Diese Datei kann dann bei Bedarf wie andere Stildateien auch
eingelesen werden.  Die letzte Fu"snote wurde "ubrigens mit
der Definition
%
\begin{ogfudatim}
\long\def\@makefntext#1{\parindent 1em%
  \noindent \makebox[2em][r]{$\m@th\@thefnmark.\;\;$}#1}
\end{ogfudatim}
%
formatiert.

\r Nun gut, bei n"aherem Hinsehen erschlie"st sich mir der
Kode.  Obwohl mir dieser Kode noch nicht ganz klar ist,
verlasse ich mich auf Ihren Rat.

\p Tja, selbst minimale "Anderungen des Layouts sind in der
vorliegenden \LaTeX-Version h"aufig nur mit Klimmz"ugen und
genaueren Kenntnissen der Internas zu erreichen.  Hoffen wir,
da"s sich das in neueren Versionen "andert. Sie sprachen aber
von mehreren Problemen?

\r Ja, ein weiteres Problem ist die seitenweise Numerierung der
Fu"snoten. Wie ist dies zu bewerkstelligen?

\p Auf eine einfache Art und Weise nicht.  Der Grund daf"ur
liegt daran, da"s die Fu"snotennummern genau zu dem Zeitpunkt
erfolgt, an dem die Fu"snote im Text erscheint. Die Nummer der
Fu"snore kann danach nicht mehr ge"andert werden.  Das Problem
ist nun, da"s die Bestimmung der Seitengrenzen erst
"`nachtr"aglich"' (asynchron zum Text) erfolgt.  Somit kann es
sein, da"s ein Textst"uck mit einer Fu"snote, deren Nummer
schon festgelegt wurde, auf die n"achste Seite geschoben wird,
da dieses Textst"uck nicht mehr auf die Seite pa"st.  In diesen
F"allen m"u"ste man also die Nummern dieser Fu"snoten
nachtr"aglich "andern, was nicht m"oglich ist.

Rein logisch gesehen, geh"ort die Fu"snotennumerierung zu den
textbezogenen Z"ahlern, unabh"angig davon, ob man sie
seitenweise z"ahlt oder nicht. (Einige \TeX hacker glauben,
dies sei einer der Punkte, die \DEK\ in \TeX\ etwas kurzsichtig
behandelt hat.)

Eine funktionierende L"osung ist \sty{footnpag} oder auch
\sty{pgefoot}, welche die {\tt .aux}-Datei benutzen, und
deshalb nur bei einer verh"altnism"a"sig kleinen Anzahl von
Fu"snoten angewendet werden k"onnen (falls Sie kein Big\-\TeX\
verwenden).

\r Nun verraten Sie mir noch, wie ich Fu"snoten innerhalb einer
\env{tabular} verwenden kann!

\p In einer \env{tabular} funktioniert das
\cs{footnote}-Kommando nicht mehr.  Hier m"ussen Sie schon
selbst Hand anlegen, und zwar mit den \cs{footnotemark}- und
\cs{footnotetext}-Kommando.

\r Erl"autern Sie mir bitte, wie!

\p Das \cs{footnotemark}-Kommando macht zweierlei: es setzt
eine Fu"s"-notenmarke wie "ublich an die angegebene Stelle und
erh"oht den Fu"snotenz"ahler {\tt footnote} um~$1$.
\cs{footnotetext} erzeugt den Fu"snotentext mit einer
Markierung, die dem aktuellen Wert des Fu"snotenz"ahlers
entspricht.  \cs{footnotetext} ver"andert den Wert des
Fu"snotenz"ahlers {\tt footnote} dabei nicht.

\r Ich k"onnte also beispielsweise eine Tabelle so eingeben:
%
\begin{ogfudatim}
\begin{tabular}{|c|l|}\hline
\TeX   &amp; 3.141\\ \hline
\LaTeX &amp; 2.09\footnotemark\\ \hline
\end{tabular}
\footnotetext{Version vom 25. M"arz 1992.}
\end{ogfudatim}
und erhielte das folgende Resultat.

\begin{center}
\begin{tabular}{|c|l|}\hline
\TeX   &amp; 3.141\\ \hline
\LaTeX &amp; 2.09\footnotemark\\ \hline
\end{tabular}
\footnotetext{Version vom 25. M"arz 1992.}
\end{center}

\p Genau.  Was aber ist zu tun, wenn Sie mehrere Fu"snoten in
einer Tabelle erzeugen wollen?

\r Warten Sie bitte\dots  Das gibt dann ein Problem, denn wenn ich
zwei Fu"snoten in einer Tabelle so eingebe.
%
\begin{ogfudatim}
\begin{tabular}{|c|l|}\hline
\TeX   &amp; 3.141\footnotemark\\ \hline
\LaTeX &amp; 2.09\footnotemark\\ \hline
\end{tabular}
\footnotetext{Version vom 16. M"arz 1992
(f"ur Insider: "`$3{:}16$"').}
\footnotetext{Version vom 25. M"arz 1992.}
\end{ogfudatim}
%
Dann erhalte ich nicht das gew"unschte Ergebnis, da ja jeder
Aufruf des Befehls \cs{footnotemark} den Fu"s"-noten"-z"ah"-ler
um~$1$ erh"oht.  Daher w"urde bei beiden Fu"snoten nur die
Marke der zweiten Fu"snoten verwendet.

\p Genau.  Gehen Sie daher so vor.
%
\begin{ogfudatim}
\begin{tabular}{|c|l|}\hline
\TeX   &amp; 3.141\footnotemark\\ \hline
\LaTeX &amp; 2.09\footnotemark\\ \hline
\end{tabular}
\addtocounter{footnote}{-1}
\footnotetext{Version vom 16. M"arz 1992
(f"ur Insider: "`$3{:}16$"').}
\stepcounter{footnote}
\footnotetext{Version vom 25. M"arz 1992.}
\end{ogfudatim}
%
Damit erhalten Sie das Gew"unschte:

\begin{center}
\begin{tabular}{|c|l|}\hline
\TeX   &amp; 3.141\footnotemark\\ \hline
\LaTeX &amp; 2.09\footnotemark\\ \hline
\end{tabular}.
\addtocounter{footnote}{-1}
\footnotetext{Version vom 16. M"arz 1992
(f"ur Insider: "`$3{:}16$"').}
\stepcounter{footnote}
\footnotetext{Version vom 25. M"arz 1992.}
\end{center}

\r Also mu"s in diesem Fall der Schreibende selbst f"ur die
richtige Numerierung der Fu"snoten sorgen.

\p Leider ist das so.

\r H"aufig geh"oren aber Fu"snoten sachlich zur Tabelle und
nicht zum umgebenden Text; wie kann ich erreichen, da"s die
Fu"snoten unmittelbar unter die Tabelle gesetzt werden?

\r Verwenden Sie in einem solchen Fall eine \env{minipage}, in
die Sie die Tabelle stellen, also etwa so:
%
\begin{ogfudatim}
\begin{minipage}{12cm}
\begin{tabular}{|c|l|}\hline
\TeX &amp; 3.141\footnote{Version vom 16. M"arz 1992
       (f"ur Insider: "`$3{:}16"'$).}\\ \hline
\LaTeX &amp; 2.09\footnote{Version vom 25. M"arz 1992.}\\ \hline
\end{tabular}
\end{minipage}
\end{ogfudatim}
%
und Sie erhalten das folgende Ergebnis.

\begin{center}
\begin{minipage}{12cm}
\begin{tabular}{|c|l|}\hline
\TeX &amp; 3.141\footnote{Version vom 16. M"arz 1992
       (f"ur Insider: "`$3{:}16$"').}\\ \hline
\LaTeX &amp; 2.09\footnote{Version vom 25. M"arz 1992.}\\ \hline
\end{tabular}
\end{minipage}
\end{center}

\r Aha.  Die \env{minipage} benutzt also ihren eigenen
Fu"snotenz"ahler.  Mich st"ort jetzt nur noch etwas die Linie,
die die Tabelle von der Fu"snote abgrenzt.  Wie kann ich diese
zum Verschwinden bringen?

\p Durch eine Neudeklaration des Befehls \cs{footnoterule}.
Allerdings sollte diese Neudeklaration nur {\em lokal\/}
innerhalb der \env{minipage} erfolgen, denn sonst erscheinen im
ganzen Dokument keine Trennlinien mehr zwischen Text und
Fu"snoten.  Notieren Sie daher etwa das Folgende.
%
\begin{ogfudatim}
\begin{minipage}{12cm}
\renewcommand{\footnoterule}{}  % &lt;&lt;&lt;===
\begin{tabular}{|c|l|}\hline
\TeX &amp; 3.141\footnote{Version vom 16. M"arz 1992
       (f"ur Insider: "`$3{:}16$"').}\\ \hline
\LaTeX &amp; 2.09\footnote{Version vom 25. M"arz 1992.}\\ \hline
\end{tabular}
\end{minipage}
\end{ogfudatim}
%
Als Ergebnis erhalten Sie dann die folgende Tabelle.

\begin{center}
\begin{minipage}{12cm}
\renewcommand{\footnoterule}{}
\begin{tabular}{|c|l|}\hline
\TeX &amp; 3.141\footnote{Version vom 16. M"arz 1992
       (f"ur Insider: "`$3{:}16$"').}\\ \hline
\LaTeX &amp; 2.09\footnote{Version vom 25. M"arz 1992.}\\ \hline
\end{tabular}
\end{minipage}
\end{center}

Sie k"onnen "ubrigens auch hier die Formatierung des
Fu"snotentextes, ganz genau wie oben vorgestellt, durch eine
"Anderung von \verb|\@makefntext| beeinflussen. Dazu verwenden
Sie am besten eine neudefinierte Umgebung, die z.\,B.\ die
\env{minipage} und die neuen Definitionen von \cs{footnoterule}
und \verb|\@makefntext| beinhalten.  Wie ich an andere Stelle
schon erw"ahnt habe, sollte das Layout m"oglichst durch Befehle
und Umgebungen in einem Style bzw.\ einer Styleoption und nicht
direkt im Dokument selbst realisiert werden.

\endinput
</pre></body></html>