%\def\filename{germdoc.tex}
%\def\fileversion{2.4a}
%\def\filedate{92/04/12}
%
\documentstyle[11pt,a4,german]{article}

\begin{document}

\title{Kurzbeschreibung -- {\tt german.sty} (Version~2.4a)}
\author{Bernd Raichle}
\date{12.~April 1992}

\maketitle

\tableofcontents

\begin{abstract}

Beim 6.~Treffen der deutschen \TeX-""Interessenten in M"unster
(Oktober 1987) wurde Einigung "uber ein "`Minimal Subset von
einheitlichen deutschen \TeX-Befehlen"' erzielt, das seitdem an
allen Installationen von \TeX\ und \LaTeX\ durch die Style-Option
"`german"' zur Ver"-f"u"-gung stehen und f"ur deutschsprachige
Texte verwendet werden soll. Damit wird erreicht, da"s alle \TeX-
und \LaTeX-Dokumente, die diese Befehle enthalten, problemlos von
einem Rechner zum anderen "uber"-tragen werden k"onnen.

\end{abstract}


\section{Laden der Style-Option}

Vor der Verwendung der durch die Style-Option "`german"'
zu"-s"atzlich zur Ver"-f"u"-gung gestellten Befehle mu"s die
Style-Option geladen werden.

Unter {\tt plain}-\TeX\ wird dazu der \TeX-Befehl
\begin{quote}
\verb:\input german:
\end{quote}
benutzt, mit \LaTeX\ wird die Style-Option innerhalb des optionalen
Arguments des \verb:\documentstyle:-Befehls, z.\,B.\ mit
\begin{quote}
\verb:\documentstyle[11pt,german]{article}:
\end{quote}
angegeben.


\section{Verwendung}

\subsection{Befehle}


Der in M"unster festgelegte Befehlssatz umfa"st die folgenden
Befehle:
\begin{itemize}
\item
\verb:"a: als Abk"urzung f"ur \verb:\"a: (Umlaute, wie~"a)
-- auch f"ur alle anderen Vokale,

\item
\verb:"s: als Abk"urzung f"ur \verb:\ss: (scharfes~s: "s),
\verb:"S: ergibt "`SS"',

\item
\verb:"ck:  f"ur "`ck"', das als "`k-k"' getrennt wird,

\item
\verb:"ff: f"ur "`"ff"', das als "`ff-f"' getrennt wird -- auch
f"ur die anderen relevanten Konsonanten l, m, n, p und t,

\item
\verb:"`: oder \verb:\glqq: f"ur untere und
\verb:"': oder \verb:\grqq: f"ur obere
"`deutsche An\-f"uh\-rungs"-zeichen"'
(\glqq G"ansef"u"schen\grqq),

\item
\verb:\glq: f"ur untere und \verb:\grq: f"ur obere
\glq einfache An\-f"uh\-rungs"-zeichen\grq ,

\item
\verb:"<: oder \verb:\flqq: f"ur linke und
\verb:">: oder \verb:\frqq: f"ur rechte "<franz"osische
An\-f"uh\-rungs"-zeichen">
(\flqq guillemets\frqq),

\item
\verb:\flq: f"ur linke und
\verb:\frq: f"ur rechte \flq einfache
franz"osische\footnote{Diese Anf"uhrungszeichen werden in
franz"osischen Texten nicht benutzt. Sie werden in
deutschsprachigen Texten f"ur eine {\em Anf"uhrung in einer
Anf"uhrung\/} verwendet.} An\-f"uh\-rungs"-zeichen\frq,

\item
\verb."|. zur Verhinderung von Ligaturen,

\item
\verb:"-: f"ur eine Silbentrennstelle "ahnlich wie bei
\verb:\-:, bei der aber die automatische Silbentrennung vor und
nach dieser Trennstelle erhalten bleibt,

\item
\verb:"": f"ur eine analoge Trennstelle, bei der aber im Fall
der Trennung kein Bindestrich hinzugef"ugt wird,

\item
\verb:\dq: zum Ausdrucken des Doublequote-Zeichens~(\verb:":),

\item
\verb:\selectlanguage{:{\it n\/}\verb:}: zum Umschalten zwischen
deutschen, "osterreichischen, englischen, amerikanischen und
franz"osischen Datumsangaben und "Uberschriften. F"ur~{\it n\/}
ist dabei einer der folgenden Namen zu verwenden: \verb:german:,
\verb:austrian:, \verb:english:, \verb:USenglish: oder
\verb:french:,

\item
\verb:\originalTeX:
zum Zur"uckschalten auf Original-\TeX\ bzw.\ \mbox{-\LaTeX}.
(Inaktiviert alle \verb:"x:-Befehle.)

\item
\verb:\germanTeX:
zum Wiedereinschalten der deutschen \TeX-Befehle.
\end{itemize}

Die Befehle f"ur Umlaute, scharfes~s und zur Ein"-f"ugung einer
zu"-s"atzlichen Trennstelle sind so definiert, da"s auch in
Silben {\em vor\/} und {\em nach\/} dem Befehl die automatische
Silbentrennung funktioniert. Dabei kann \TeX\ jedoch nicht mehr
alle oder auch falsche Trennstellen finden (Beispiel: {\tt
"ubert-ra-gen}).

Au"serdem findet kein {\em Kerning} zwischen den
An\-f"uh\-rungs"-zeichen und den anderen Zeichen statt, d.\,h.\ bei
einigen Buchstaben\slash An"-f"uh"-rungs"-zeichen-Kombi"-nationen
treten zu gro"-"se bzw.\ zu kleine Ab"-st"an"-de auf.  (Beispiel: "`V
statt "`\negthinspace V)

{\bf Achtung!} F"ur \verb:"x:-Befehle, die mit keiner Bedeutung belegt
sind, erzeugt {\tt german.sty} eine Fehlermeldung, um auf eine
fehlerhafte Eingabe hinzuweisen.  Zum Ausdrucken eines
Doublequote-Zeichens sollte man besser \verb:\dq:, \verb:\verb+"+:
oder die \verb:``:-Ligatur verwenden.\footnote{Aus
Kompatibilit"atsgr"unden wird auch noch {\tt \string"\string{\string}}
unterst"utzt.}


\subsection{Wichtige "Anderungen seit Oktober~1987 -- \TeX~3}

\TeX\ Version~3 f"uhrte neue {\em control sequences\/} f"ur
neue Primitive und interne Register ein.

Darunter f"allt das in "alteren Versionen von {\tt german.sty}
verwendete Makro \verb:\setlanguage:, das daher ab Version~2.3 in
\verb:\selectlanguage: umbenannt wurde. In "alteren Texte sollte
der alte Makroname durch den neuen Namen ersetzt werden.

Das Argument von \verb:\selectlanguage:, mit dem die Sprache der
"Uber"-schrif"-ten"-texte und der Datumsangabe aus"-ge"-w"ahlt
wird, war bisher eine {\em control sequence\/} (z.\,B.\
\verb:\german:). Ab Version~2.4a sollte man als Argument einen
{\em String}, wie z.\,B.\ \verb:german:, verwenden. Es werden
jedoch weiterhin beide Argumenttypen unter"-st"utzt.

Zu \TeX's internen Registern kamen u.\,a.\ \verb:\language:, {\tt
\string\left\-hyphen\-min} und {\tt \string\right\-hyphen\-min}
hinzu. Diese drei Register bestimmen die zu verwendenden
Hyphenation Patterns und die Mindest"-l"an"-ge der nicht
trennbaren Wort"-pr"a"-fixe und \mbox{-suffixe}.
Der "`normale"' \TeX-Benutzer sollte diese Register zum Wechsel
der Hyphenation Patterns nie direkt "andern.
Seit Version~2.3 wird zu diesem Zweck der Sprachwechsel
(mit einigen M"an"-geln\footnote{Zum Beispiel wurden f"ur die
Sprachen {\tt german} und {\tt austrian} unterschiedliche
Hyphenation Patterns verwendet.}) mittels \verb:\selectlanguage:
unter"-st"utzt, ab Version~2.4a sind die wichtigsten M"an"-gel
beseitigt.

Mit Version~2.4a wird f"ur die Sprachen {\tt german} und {\tt
austrian} zu"-s"atzlich {\tt \string\french\-spacing} und die Werte
f"ur {\tt \string\left\-hyphen\-min} und {\tt
\string\right\-hyphen\-min} auf zwei gesetzt.  Bei Verwendung der
neuen Version unterscheidet sich daher der Satzumbruch in den meisten
F"allen im Vergleich zu "alteren {\tt german.sty}-Versionen.


\subsection{Verwendungsbeispiele}

Nachfolgend sind einige Beispiele f"ur die Verwendung dieser
Befehle.
\begin{quote}\small
\begin{tabbing}
%\verb:xxxMerci bienxxx:\qquad \= \kill
\verb:\glq Ja, bitte!\grq!"':\qquad \=\kill
\verb:sch"on: \> ergibt:\qquad
      sch"on \\[3pt]
\verb:Stra"se: \> ergibt:\qquad
      Stra"se \\[3pt]
\verb:STRA"SE: \> ergibt:\qquad
      STRA"SE \\[5pt]
\verb:"`Ja, bitte!"': \> ergibt:\qquad
      "`Ja, bitte!"' \\[3pt]
\verb:"`Sag' doch nicht immer:\\
\verb:\glq Ja, bitte!\grq!"': \> ergibt:\qquad
      "`Sag' doch nicht immer \glq Ja, bitte!\grq!"' \\[3pt]
\verb:">Ja, bitte!"<: \> ergibt:\qquad
      ">Ja, bitte!"< \\[3pt]
\verb:">Sag' doch nicht immer:\\
\verb:\frq Ja, bitte!\flq!"<: \> ergibt:\qquad
      ">Sag' doch nicht immer \frq Ja, bitte!\flq!"< \\[3pt]
\verb:"<Merci bien!">: \> ergibt:\qquad
      "<Merci bien!"> \\[5pt]
\verb:Dru"cker : \> ergibt:\qquad
      Drucker bzw.\ Druk-ker \\[3pt]
\verb:Ro"lladen: \> ergibt:\qquad
      Rolladen bzw.\ Roll-laden \\[3pt]
\verb:Auf"|lage: \> ergibt:\qquad
      Auf"|lage (statt Auflage)
\end{tabbing}
\end{quote}


Der Befehl \verb:\selectlanguage: pa"st die Datumsangabe und die
in den \LaTeX-Styles\footnote{Angepa"ste Styles sind seit
Dezember~1991 in der offiziellen \LaTeX-Distri"-bu"-ti"-on.}
verwendeten "Uber"-schriften an die Sprache an.

\begin{quote}\small\day=31 \month=1 \year=1987
\begin{tabular}{lll}
\verb:\selectlanguage:&\verb:\today:&\verb:\chaptername:\\[9pt]
\verb:german: & \selectlanguage{german}\today
              & \selectlanguage{german}\chaptername \\[3pt]
\verb:austrian: & \selectlanguage{austrian}\today
                & \selectlanguage{austrian}\chaptername \\[3pt]
\verb:english: & \selectlanguage{english}\today
               & \selectlanguage{english}\chaptername \\[3pt]
\verb:USenglish:& \selectlanguage{USenglish}\today
                & \selectlanguage{USenglish}\chaptername \\[3pt]
\verb:french: & \selectlanguage{french}\today
              & \selectlanguage{french}\chaptername
\end{tabular}
\end{quote}


\verb:\selectlanguage: ist ungeeignet, um innerhalb eines
Dokuments zwischen mehreren Sprachen umzuschalten. Dieser Befehl
sollte nur ein einziges Mal in einem Dokument in der Pr"aamble
verwendet werden. Dadurch k"onnen die deutschen Befehle auch
innerhalb eines fremdsprachigen Dokuments benutzt werden.

\begin{quote}
\begin{verbatim}
\documentstyle[german]{article}
%\germanTeX  % nicht notwendig, wird durch das Laden der
             % Style-Option automatisch ausgef"uhrt
\selectlanguage{USenglish}
\begin{document}
englischsprachiger Text mit "a, "s, "-, etc.
\end{document}
\end{verbatim}
\end{quote}


\section{Installation}

\TeX\ erlaubt seit Version~3.0 das Laden von Hyphenation
Patterns f"ur mehr als eine Sprache. Dazu wird jedem Satz an
Hyphenation Patterns ein Wert von 0--255 zugeordnet und vor dem
Laden der Patterns im Ini\TeX-Lauf wird das neue \TeX-Register
\verb:\language: auf diesen Wert gesetzt.

Zur Auswahl der Hyphenation Patterns beim "Ubersetzen eines
Dokuments wird \verb:\language: wieder auf den Wert gesetzt, der
beim Ini\TeX-Lauf f"ur diese Patterns gew"ahlt wurde.
Wird \verb:\language: auf einen Wert gesetzt, f"ur den keine
Patterns geladen wurde, findet {\it keine\/} Silbentrennung statt.

Bis {\tt german.sty} Version~2.3e wurde jeder Sprache ein fester
Wert zugeordnet, der nicht ge"andert werden konnte:
\begin{quote}
\begin{tabular}{lc@{\kern\tabcolsep\qquad}lc}
\bf Sprache&\bf Wert&\bf Sprache&\bf Wert\\
 \tt USenglish & 0& \tt french    & 3\\
 \tt german    & 1& \tt english   & 4\\
 \tt austrian  & 2
\end{tabular}
\end{quote}

Ab Version~2.4a kann der Wert f"ur jede Sprache durch eine {\em
control sequence\/} angegeben werden.  Der Name der {\em control
sequence\/} einer Sprache {\em language\/} ist dabei \mbox{{\tt
\string\l@}\em language}.

In Ini\TeX\ kann durch Einlesen des folgenden Beispielfiles nach dem
Laden von {\tt plain.tex} bzw.\ {\tt lplain.tex} die {\em control
sequences\/} f"ur englische und deutsche Patterns gesetzt werden.

\goodbreak
\begin{quote}
\begin{verbatim}
% Beispiel -- nach (l/s)plain.tex einlesen.
% hyphen.tex wurde schon eingelesen und
% beinhaltet die us-amerikanischen Patterns
% !! Nur fuer TeX Version 3.x !!
\catcode`\@=11
\chardef\l@USenglish=\language
\chardef\l@english=\l@USenglish

\newlanguage\l@german \language=\l@german
\chardef\l@austrian=\l@german
\input ghyphen

\language=\l@USenglish % USenglish as Default
\catcode`\@=12
\endinput
\end{verbatim}
\end{quote}

Sind einige der {\em control sequences\/} f"ur die folgenden
Sprachen undefiniert, so verwendet \verb:german.sty: die in der
Tabelle angegebenen Default-Werte:
\begin{quote}
\begin{tabular}{lcl}
\multicolumn{1}{c}{\bf Sprache}&\bf Wert&oder,
  falls gesetzt, Wert der Sprache\\
 \tt USenglish & 0 & \tt english\\
 \tt english   & 0 & \tt USenglish\\
 \tt german    & 1 & \tt austrian\\
 \tt austrian  & 1 & \tt german\\
 \tt french    & 2
\end{tabular}
\end{quote}


\section{Sonstige Bemerkungen}

--- {\em Hier geh"ort ein Hinweis, wie die Files
\verb:GERMAN.TEX: und/oder \verb:GERMAN.STY: bei Ihnen
installiert sind und wo das dokumentiert ist (Local Guide,
\LaTeX-Kurz"-beschreibung etc.)} --- Wir empfehlen auch allen
Benutzern, die \TeX\ an einem Personal Computer oder
Institutsrechner installiert haben, diese Files an ihren Rechner
zu "ubertragen und dort ebenfalls diese Konventionen zu
verwenden.


\subsection{Allgemeines}

Die Realisierung der deutschen \TeX-Befehle mit diesem von Dr.~Partl
an der Technischen Universit"at Wien zusammengestellten und von
DANTE~e.\,V. am FTP-Server in Stuttgart und am Listserver in
Heidelberg zur Verf"ugung gestellten File \verb:german.sty: ist vor
allem als "`rasche L"osung"' zu betrachten, die den Vorteil hat, da"s
sie keine "Anderungen an der \TeX-Software, den Font-Files und den
Hyphenation Patterns erfordert, sondern direkt auf die Originalversion
von \TeX\ aufgesetzt werden kann.

Die hier beschriebene Version von \verb:german.sty:
(Version~2.4a) ist f"ur plain-\TeX\ und \LaTeX\ Version~2.09
unter Verwendung der CM-Font"-familie konzipiert.

F"ur die Zukunft ist eine neue Version geplant, die die
EC-Font"-familie und die neuen \LaTeX-Versionen unter"-st"utzen
wird. Die Benutzer-Schnitt"-stelle (d.\,h.\ der oben angef"uhrte
Befehlssatz) wird dabei unver"-"andert bleiben, so da"s sich f"ur
die \TeX- und \LaTeX-Anwender keine Umstellungsprobleme ergeben
werden.


\subsection{Obsolete Befehle aus {\tt german.sty}, Version~1}

\begin{itemize}
\item \verb:\3: f"ur scharfes~s wird in der aktuellen Version
  {\em noch\/} unter"-st"utzt. In neuen Dokumenten sollte nur
  noch \verb:"s: verwendet werden, da der Befehl \verb:\3: in
  manchen Makro-Paketen (z.B.~WEBMAC) bereits f"ur andere Zwecke
  verwendet wird.
\item \verb:\ck: zur Auf"|l"osung von \verb:ck: in \verb:k-k:
  bei der Silbentrennung wird {\em noch\/} unterst"utzt.
\end{itemize}


\subsection{"Anderungen seit Version~2.0 (Oktober 1987)}

Zus"atzlich zu den in fr"uheren Abschnitten erw"ahnten
"Anderungen kommen folgende hinzu:

\begin{itemize}\tolerance=9999
\item In alten Versionen vor~2.2 fehlen die Befehle \verb:"S:,
  \verb:"CK:, \verb:"FF: f"ur Gro"sbuchstaben und die
  entsprechenden Befehle f"ur die Konsonenten L, M, N, P und T.
\item In Versionen bis~2.2 gab es die undokumentierten Makros
  {\tt \string\original\-@dospecials} und {\tt
  \string\original\-@sanitize}, die die urspr"unglichen
  Definitionen von \verb:\dospecial: und \verb:\@sanitize:
  enthielten, und {\tt \string\german\-@dospecials}, {\tt
  \string\german\-@sanitize}, die zu"-s"atzlich das
  Double\-quote~(\verb:":) enthielten. Diese Makros
  werden von einigen "`fremden"' Makros benutzt, obwohl sie
  undokumentiert und nur zur internen Verwendung bestimmt waren.
\item Ab Version~2.3e werden die etwas tieferen Umlautakzente
  durch ein ge"-"an"-der"-tes Makro erzeugt, das schneller ist
  und zu kleineren \verb:dvi:-Files f"uhrt.
\item Ab Version~2.3e werden alle Definitionen\slash Zuweisungen
  lokal aus\-ge\-f"uhrt. (Ausnahmen hiervon sind alle
  Z"ah\-ler"-allokationen.)
\item Bis Version~2.3e wurde bei Verwendung von \verb:"|: zur
  Verhinderung von Ligaturen keine weiteren Trennstellen im
  Wort gefunden.
\end{itemize}

\end{document}
