diff options
-rw-r--r-- | Master/texmf-dist/doc/generic/german/00readme.1st | 160 | ||||
-rw-r--r-- | Master/texmf-dist/doc/generic/german/betatest/00readme.1st | 7 | ||||
-rw-r--r-- | Master/texmf-dist/doc/generic/german/gerdoc.pdf | bin | 207441 -> 0 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/generic/german/gerdoc.tex | 1488 | ||||
-rw-r--r-- | Master/texmf-dist/doc/generic/german/german.MISSING | 10 | ||||
-rw-r--r-- | Master/texmf-dist/doc/generic/german/hyphxmpl.cfg | 45 | ||||
-rw-r--r-- | Master/texmf-dist/source/generic/german/german.dtx | 2331 | ||||
-rw-r--r-- | Master/texmf-dist/source/generic/german/german.ins | 84 | ||||
-rw-r--r-- | Master/texmf-dist/tex/generic/german/german.sty | 674 | ||||
-rw-r--r-- | Master/texmf-dist/tex/generic/german/ngerman.sty | 680 | ||||
-rw-r--r-- | Master/tlpkg/tlpsrc/collection-langgerman.tlpsrc | 1 | ||||
-rw-r--r-- | Master/tlpkg/tlpsrc/german.tlpsrc | 1 |
12 files changed, 0 insertions, 5481 deletions
diff --git a/Master/texmf-dist/doc/generic/german/00readme.1st b/Master/texmf-dist/doc/generic/german/00readme.1st deleted file mode 100644 index 7b7171a2224..00000000000 --- a/Master/texmf-dist/doc/generic/german/00readme.1st +++ /dev/null @@ -1,160 +0,0 @@ -%% 00readme.1st -%% -%% README for the `german' files, version 2.5e of 1998-07-08 -%% -%% Copyright (C) 1998 by B.Raichle -%% All rights reserved. -%% - -Dieses Verzeichnis enthaelt Makropakete zum Schreiben -deutschsprachiger Texte. `german.sty' unterstuetzt die -traditionelle, `ngerman.sty' die neue Rechtschreibung. - -Zur Nutzung der Makropakete werden zusaetzlich die deutschen -Silbentrennmuster benoetigt; sie sind im CTAN zu finden als: - - language/hyphenation/ghyph31.tex (alte Rechtschreibung) - language/hyphenation/gnhyph01.tex (neue Rechtschreibung) - - - -Uebersicht ----------- - -Die vorliegende Verteilung enthaelt folgende Dateien: - - german.sty -- das Makropaket fuer die alte Rechtschreibung - ngerman.sty -- das Makropaket fuer die neue Rechtschreibung, - hyphxmpl.cfg -- Beispiel fuer die Konfigurationsdatei - `hyphen.cfg' zum Laden der Trennmuster - in LaTeX2e (Naeheres siehe `gerdoc.dvi') - - gerdoc.dvi -- deutschsprachige Anleitung - gerdoc.tex -- LaTeX-Quelltext - - german.dtx -- Docstrip-Archiv, - enthaelt die Makropakete u. hyphxmpl.cfg - german.ins -- Installationsskript fuer Docstrip - -Falls Sie das Docstrip-Archiv selbst entpacken wollen, benoetigen Sie -`docstrip.tex' v2.4 oder neuer, das in der LaTeX2e-Verteilung enthalten -ist. Das Installationsskript laesst sich sowohl mit LaTeX als auch mit -Plain-TeX ausfuehren. - - - -Dokumentation -------------- - -Eine Anleitung zur Installation und Verwendung der Makropakete und zur -Installation der Trennmuster finden Sie in der Datei `gerdoc.dvi'. -Der dazugehoerigen Quelltext `gerdoc.tex' laesst sich mit LaTeX2e oder -LaTeX 2.09 uebersetzen. Eine mit Plain-TeX uebersetzbare Version -existiert leider nicht. - - - -Interna -------- - -Die Dokumentation, die die Implementierung der Makropakete beschreibt, -erhalten Sie durch Uebersetzen der Datei `german.dtx' mit LaTeX. Als -`normaler' (La)TeX-Nutzer benoetigen Sie diese Dokumentation _nicht_. -Sie ist nur zur internen Dokumentation gedacht und es werden zum -Verstaendnis tiefergehende TeX-Kenntnisse vorausgesetzt. - - - -Fehlermeldungen ---------------- - -Bitte senden Sie Fehlermeldungen an: - - Bernd Raichle <raichle@Informatik.Uni-Stuttgart.DE> -oder an - Koordinator German-Style <german@dante.de> - - - -!!! AENDERUNGEN !!! Achtung !!! AENDERUNGEN !!! Achtung !!! ------------------------------------------------------------ - -Unterschiede zwischen Version 2.5d und 2.5e: - - * Fuer Texte in neuer Rechtschreibung wird zusaetzlich das Paket - `ngerman' bereitgestellt. - - * In den then- und else-Zweigen des Befehls \iflanguage duerfen nun - Makros stehen, deren Argumente erst nach \iflanguage folgen. - - * Dokumentation `germdoc' verbessert; Name geaendert in `gerdoc'. - - -Unterschiede zwischen Version 2.5c und 2.5d: - - * Die Anfuehrungszeichen "` und "' sowie "> und "< wurden mit den - EC-Fonts v1.0 nicht korrekt plaziert, da {} in den Definitionen ein - meist notwendiges Kerning verhindert haben. - - * \ss ergab mit einem mit Babel 3.5 erzeugten Format eine - Endlosschleife -- ausser mit LaTeX2e. Dies wurde abgefangen, - jedoch sollte man besser Babel Version 3.6 installieren, in dem - dieser Fehler behoben wurde. - - * "ff ergab fuer "f ohne folgendes `f' einen Fehler. - - * Dokumentation `germdoc.tex' und dokumentierter Code wurden - verbessert und auf neuesten Stand gebracht. - - * Im Entpack-Skript `german.ins' werden nun die Anweisungen von - `docstrip' Version 2.4 (oder neuer) verwendet, so dass die - Dateien gleichzeitig entpackt werden. - - -Unterschiede zwischen Version 2.5a/b und 2.5c: - - * Mit "ff erhaelt man nun eine ff-Ligatur. - - * Die schliessenden Anfuehrungszeichen wurden mit den DC-Fonts - Version 1.2 zu nah an das Wort gerueckt. Dies wurde verbessert. - - * Fuer das Paket `bibgerm', das ein internes Makro aus German-Style - umdefiniert hat und deshalb mit neueren Versionen nicht mehr - funktionierte, wurde in German-Style ein Patch eingebaut. Somit - kann man dieses Paket jetzt wieder zusammen mit German-Style - verwenden. (Besser waere es aber, wenn man `bibgerm' aendern und - "sauber" implementieren wuerde. Bitte nicht auf den Patch in - German-Style vertrauen, da dieser sicher in spaeteren Versionen - entfernt wird!) - - * Verschiedene kleinere Fehler (u.a. bei Verwendung mit AMS-TeX) - wurden berichtigt. - - -Wichtige Aenderungen im Vergleich zu Version 2.4: - - * \language = 1 wird nicht mehr als Default fuer die deutschen - Trennmuster angenommen, falls die `control sequence' \l@german - nicht definiert wurde. - Fuer diesen Fall werden Sie beim Laden der Style-Option ``german'' - durch eine entsprechende Warnung darauf hingewiesen. - - Ist \l@german undefiniert, wird __nicht__ getrennt!! - - Deshalb muessen Sie jetzt beim Installieren der deutschen - Trennmuster die `control sequence' \l@german definieren. - Dasselbe gilt auch fuer die (US-)englische Trennung. Mehr - dazu erfahren Sie in der Dokumentation "germdoc.tex". - - - * Nach der Installation von "german.sty" kann der erste - Formatierlauf Fehler beim Lesen von *.aux-, *.toc-, *.lof-, - *.lot-, u.a. -Datei erzeugen, da sich ein kleines Detail - geaendert hat. - - Sie koennen diese Fehler, die nur beim Lesen dieser Dateien - und beim ersten Formatierlauf auftreten sollten, ignorieren oder - Sie loeschen einfach diese Dateien nach dem Installieren der neuen - Version der Style-Option ``german''. - -%% finis diff --git a/Master/texmf-dist/doc/generic/german/betatest/00readme.1st b/Master/texmf-dist/doc/generic/german/betatest/00readme.1st deleted file mode 100644 index 2013a24b454..00000000000 --- a/Master/texmf-dist/doc/generic/german/betatest/00readme.1st +++ /dev/null @@ -1,7 +0,0 @@ -The version 2.5e (1998-07-14) of the `german' collection -has been moved to the parent directory language/german/. - -Future beta versions will be located _here_ again. - -Walter Schmidt <wschmi@ibm.net> - diff --git a/Master/texmf-dist/doc/generic/german/gerdoc.pdf b/Master/texmf-dist/doc/generic/german/gerdoc.pdf Binary files differdeleted file mode 100644 index aed3da91da6..00000000000 --- a/Master/texmf-dist/doc/generic/german/gerdoc.pdf +++ /dev/null diff --git a/Master/texmf-dist/doc/generic/german/gerdoc.tex b/Master/texmf-dist/doc/generic/german/gerdoc.tex deleted file mode 100644 index 49efee862dd..00000000000 --- a/Master/texmf-dist/doc/generic/german/gerdoc.tex +++ /dev/null @@ -1,1488 +0,0 @@ -%% File ``gerdoc.tex'', V. 2.5e <1998-07-08> -%% -%% Copyright (C) 1992, 1995-1997 by B.Raichle and DANTE e.V. -%% Copyright (C) 1998 by B.Raichle -%% All rights reserved. -%% -%% -%% "Anderungen: -%% -- Erste Fassung: Tagungsbericht (ca. 3 Seiten) -- -%% <87/11/27> Hubert Partl -%% Bericht "uber die Einigung auf einen "`Minimal Subset von -%% einheitlichen deutschen \TeX-Befehlen"' auf dem 6. Treffen der -%% deutschen \TeX-Interessenten in M"unster (Oktober 1987). -%% <90/04/??> Hubert Partl -%% Korrektur \selectlanguage statt \setlanguage, f"ur v2.3 -%% <92/04/12> br -%% erste Erweiterungen und Erg"anzungen des Berichts mit einer -%% kurzen Installationsanleitung und den "Anderungen im -%% German-Style, f"ur v2.4a -%% --- Neufassung: Benutzerhandbuch (ca. 20-22 Seiten) -- -%% <95/01/01> br -%% komplett "uberarbeitete, restrukturierte und stark erweiterte -%% Version mit ausf"uhrlicherer Benutzungs- und Installations- -%% anleitung, f"ur v2.5a -%% <95/01/20> br -%% vier(!) kleinere Korrekturen, f"ur v2.5b -%% <96/05/01> br -%% "uberarbeitete und korrigierte Version mit Neuerungen aus v2.5c -%% <97/05/01> br -%% "uberarbeitete Version mit einigen Umformulierungen und -%% Erg"anzungen, au"serdem Verweis auf neuere Pakete, fuer v2.5d -%% <1998-07-08> Walter Schmidt -%% Dokument in gerdoc.tex umbenannt, f"ur v2.5e. -%% Informationen zur neuen Rechtschreibung (Paket ngerman) erg"anzt. -%% F"ur den Begriff `Style-Option' nun `Paket' oder `Makropaket' verwendet. -%% In Kap.1 auf die Umschaltung der Trennmuster hingewiesen. -%% Bessere Erkl"arung des Befehls "= . -%% Erg"anzung: Tieferlegen der Umlaut-Punkte betrifft nur OT1-Fonts. -%% Kap. 2.2.5 ausf"uhrlicher und (hoffentlich) verst"andlicher gemacht. -%% Installationsanleitung komplett "uberarbeitet. -%% Das Beispiel `Laden nur einer einzigen Trennmusterdatei' entfernt. -%% Internet-Adressen aktualisiert. -%% *** Dank an H.Oberdiek (Freiburg) und P.Zimmermann (Eichst"att) -%% f"ur viele Hinweise auf Schreib- und Formulierungsfehler! *** -%% -\ifx\documentclass\undefined % LaTeX2e? - \documentstyle[11pt,a4,german]{article} -\else - \NeedsTeXFormat{LaTeX2e} - \documentclass[11pt,a4paper]{article} - \usepackage{german} - \addtolength{\textheight}{7\baselineskip} - \addtolength{\topmargin}{-5\baselineskip} - %%\usepackage[T1]{fontenc} -\fi - -\title{Kurzbeschreibung\\ -{\tt german.sty} und {\tt ngerman.sty} (Version~2.5)} - -\author{Bernd Raichle} - -\date{8.~Juli 1998\\ (f"ur die Version~2.5e)} - -\ifx\LaTeXe\undefined - \newcommand{\pLaTeXe}{% - \mbox{\LaTeX\kern.15em\(2_{\textstyle\varepsilon}\)}} - \newcommand{\LaTeXe}{\protect\pLaTeXe}\fi -\ifx\emergencystretch\undefined \else - \setlength{\emergencystretch}{1em}\fi -\newenvironment{beispiel}{% - \begin{quote}\small \begin{tabbing}% - {\tt 1234Merci bien12!1234}\quad \=ergibt:\qquad\=\kill -}{\end{tabbing}\end{quote}} -\renewcommand\labelitemi{\(\triangleright\)} -\renewcommand\labelitemii{\(\diamond\)} -\renewcommand\labelitemiii{\(\circ\)} -\newcommand\CS[1]{{\tt\symbol{`\\}#1}} -\hyphenation{Datei-name Datei-namen} -\makeatletter -\def\ps@firstpage{\let\@mkboth\@gobbletwo - \let\@oddhead\@empty\def\@oddfoot{\reset@font% - \makebox[0pt][l]{{\footnotesize \copyright{} 1998 B.~Raichle}} - \hfil\thepage\hfil} - \let\@evenhead\@empty\let\@evenfoot\@oddfoot} -\makeatother - -\begin{document} -\maketitle -\thispagestyle{firstpage} - -\begin{abstract} - Beim 6.~Treffen der deutschen \TeX-""Interessenten in M"unster - (Oktober 1987) wurde Einigung "uber ein "`Minimal Subset von - einheitlichen deutschen \TeX-Befeh\-len"' erzielt, das seitdem an - allen Installationen von \TeX\ und \LaTeX\ als Makropaket - "`german"' zur Ver"-f"u"-gung stehen und f"ur Texte in deutscher - Sprache 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. - In der Zwischenzeit wurde das Makropaket "`ngerman"' erg"anzt, - das die neue Rechtschreibung unterst"utzt. -\end{abstract} - -\tableofcontents - -\section{Allgemeines} - -Die Makropakete "`german"' und "`ngerman"' dienen mehreren Zwecken: -\begin{itemize}\tolerance=2000 -\item Sie aktivieren die der deutschen Sprache zugeordneten - Silbentrennmuster. -\item Der deutsche Schriftsatz weist einige Besonderheiten auf, die - in \TeX{} durch neue Makros und verschiedene "Anderungen - unterst"utzt und dem Benutzer angeboten werden k"onnen. Beispiele - sind die Makros f"ur die unterschiedlichen - Anf"uhrungszeichen und die "Anderung des Umlautmakros f"ur - OT1-codierte Schriften. -\item Zur Vereinfachung und Standardisierung der Eingabe von Umlauten - und des Buchstabens~"s wird die Kurznotation~\verb:"x: f"ur - Rechner einge"-f"uhrt, die die Eingabe dieser Zeichen nicht direkt - erlauben. Heutzutage unter"-st"utzen die meisten Rechnersysteme die - direkte Eingabe und Anzeige von Umlauten, jedoch ist die - Kurznotation weiterhin als Quasi-Standard zum Austausch von \TeX- - und \LaTeX-Dokumenten sinnvoll und f"ur deutschsprachige Texte weit - verbreitet. -\item Das Umschalten zwischen den Sprachen Deutsch, Englisch und - Franz"osisch wird rudiment"ar unterst"utzt. -\end{itemize} - -Je nachdem, ob ein deutschsprachiger Text in alter oder neuer -Rechtschreibung verfa"st ist, m"ussen f"ur \TeX{} unterschiedliche -Silbentrennmuster benutzt werden; au"serdem werden bestimmte Makros -nur f"ur Sonderf"alle der "`alten"' Silbentrennung ben"otigt. Dies -wird ber"ucksichtigt, indem f"ur die alte Rechtschreibung das Paket -"`german"', f"ur die neue aber das Paket "`ngerman"' zur Verf"ugung -steht. Wo im Folgenden von "`german"' die Rede ist, sind {\em beide} -Pakete gemeint; auf Unterschiede wird explizit hingewiesen. - - -\section{Verwendung} - -\subsection{Laden der Makropakete je nach Rechtschreibung} - -Je nachdem, ob ein deutschsprachiger Text nach der traditionellen -oder der "`neuen"' Rechtschreibung verfa"st ist, mu"s entweder das -Paket "`german"' oder das Paket "`ngerman"' benutzt werden. - -\paragraph{\LaTeX:} Mit \LaTeX\ (genauer: \LaTeXe) wird das -Makropaket mit -\begin{quote} - \verb:\usepackage{german}: -\end{quote} -oder -\begin{quote} - \verb:\usepackage{ngerman}: -\end{quote} -%nach der Deklaration der Dokumentenklasse mit \verb:\documentclass: -geladen. Momentan haben die Pakete keine eigenen Optionen und -werten auch keine Dokumenten"-klassen"-optionen aus. - -\paragraph{\LaTeX~2.09:} Mit der alten \LaTeX-Version oder im -\LaTeX~2.09-Kompatibi\-li\-t"ats"-modus von \LaTeXe{} wird das Paket -als Style-Option innerhalb des optionalen Arguments des -\verb:\documentstyle:-Befehls, beispielsweise mit -\begin{quote} - \verb:\documentstyle[11pt,german]{article}: -\end{quote} -angegeben. - -\paragraph{Plain-\protect\TeX:} Unter Plain-\TeX\ wird das -Paket als gew"ohnliche Makro"-datei mit dem \TeX-Befehl -\begin{quote} - \verb:\input german.sty: -\end{quote} -dazugeladen. - - -\subsection{Befehle} - -Der beim 6.~Treffen der deutschen \TeX-Interessenten in M"unster -festgelegte Befehlssatz wurde nach"-tr"aglich um einige Befehle -erweitert. Diese Erweiterungen werden zur Kenntlichmachung in der -folgenden Liste mit einem~\(\dagger\) versehen. - - -\subsubsection{Umlaute, Tremata und der Buchstabe "s} - -\begin{itemize} -\item \verb:\"a: ergibt ein "`a"' mit einem Trema. Das Paket - "`german"' definiert dieses Makro so um, da"s bei Verwendung von - OT1-codierten Schriften die Umlautpunkte etwas - nach unten verschoben werden (Original: {\originalTeX \"a}, mit - "`german"': \"a). -\item \verb:"a: als Kurzform f"ur \verb:\"a: (Umlaute, wie~"a) -- - ebenso f"ur die Vokale o und~u und die entsprechenden Gro"sbuchstaben. -\item \verb:"e: und \verb:"i: f"ur ein e und i mit Trema. -\item \verb:"s: als Kurzform f"ur \verb:\ss: (scharfes~s:~"s), - \verb:"S:\(^\dagger\) ergibt "`SS"', \verb:"z:\(^\dagger\) und - \verb:"Z:\(^\dagger\) kann f"ur~\ss\ bzw.\ SZ verwendet werden, - falls man Mi"sverst"andnisse bei der Verwendung in - gro"sgeschriebenen W"ortern vermeiden m"ochte. -\end{itemize} - -\paragraph{Verwendungsbeispiele} -\begin{beispiel} -\verb:sch"on: \> ergibt: \> sch"on \\ -\verb:sch\"on: \> ergibt: \> - sch\"on (statt: {\originalTeX sch\"on})\\[3pt] -\verb:Citro"en: \> ergibt: \> Citro"en \\[3pt] -\verb:Stra"se Ma"ze: \> ergibt: \> Stra"se Ma"ze \\ -\verb:STRA"SE MA"ZE: \> ergibt: \> STRA"SE MA"ZE \\ -\end{beispiel} - -\paragraph{Anmerkungen:} -Die Befehle f"ur Umlaute und scharfes~s 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 eventuell falsche Trennstellen finden (Beispiel: {\tt"ubert-ra-gen} -statt {\tt "uber-tra-gen}). Diese fehlerhaften Trennungen treten bei -der Verwendung von {\tt T1}-kodierten Schriften, wie beispielsweise -den {\tt EC}-Schriften, die man unter \LaTeXe{} ohne gro"se -Anpassungen verwenden kann, nicht auf. \TeX{}s Trennalgorithmus kann -Trennstellen prinzip"-bedingt nicht 100\%ig fehlerfrei finden. -Deshalb erhalten Sie, unabh"angig von der verwendeten Schrift, immer -einige, wenn auch nur sehr wenige fehlerhafte Wort"-trennungen. - - -\subsubsection{Zusammentreffen von drei gleichen Konsonanten und - \protect\mbox{"`ck"'} bei Silbentrennung} - -\begin{itemize} -\item \verb:"ck: f"ur \mbox{"`ck"'}, das als \mbox{"`k-k"'} getrennt - wird. -\item \verb:"ff: f"ur \mbox{"`ff"'}, das als \mbox{"`ff-f"'} getrennt - wird -- auch f"ur die anderen relevanten Konsonanten l, m, n, p, r - und~t. -\end{itemize} -% -Diese Befehle sind nur mit der alten Rechtschreibung -notwendig. - Regel~\(204\) der "`Richtlinien zur Rechtschreibung~\ldots"'~\cite{Duden} - bestimmte: {\it Treffen bei - Wortbildungen drei gleiche Konsonanten zusammen, dann setzt man nur - zwei, wenn ein Vokal folgt. Bei Silbentrennung tritt der dritte - Konsonant wieder ein.} {\it \mbox{ck} wird\/} nach Regel~\(179\) {\it - bei der Silbentrennung in \mbox{k-k} aufgel"ost.} - -\paragraph{Verwendungsbeispiele:} -\begin{beispiel} -\verb:Dru"cker: \> ergibt: \> Drucker bzw.\ Druk-ker \\ -\verb:Ro"lladen: \> ergibt: \> Rolladen bzw.\ Roll-laden \\ -\verb:Bettuch: \> ergibt: \> Bettuch bzw.\ Bet-tuch \\ -\verb:Be"ttuch: \> ergibt: \> Bettuch bzw.\ Bett-tuch \\ -\end{beispiel} - -\paragraph{Anmerkungen:} -Da man diese besonderen F"alle der Silbentrennung nur durch den -\TeX-Befehl \verb:\discretionary: als Trennausnahmen realisieren kann, -wird dadurch die Trennung in den restlichen Wortteilen und die -Ligaturbildung um diese Konsonanten beeinflu"st. - -\paragraph{Neue Rechtschreibung:} -Mit der neuen Rechtschreibung wird -das "`ck"' nicht mehr in \mbox{"`k-k"' } getrennt, -und Dreifachkonsonanten werden immer ausgeschrieben. -Im Paket "`ngerman"' haben diese Befehle deshalb eine ge"anderte Funktion. -Sollten sie hier irrt"umlich benutzt werden, dann wird diejenige -Ausgabe erzeugt, die offensichtlich gemeint ist, also ein "`ck"' mit -einer Trennstelle davor oder die drei Konsonanten; eine entsprechende -Warnung wird ausgegeben. - - -\subsubsection{Anf"uhrungszeichen} - -\begin{itemize} -\item \verb:"`: oder \verb:\glqq: f"ur untere und \verb:"': oder - \verb:\grqq: f"ur obere "`deutsche An\-f"uh\-rungs"-zeichen"' - (\glqq G"anse"-f"u"schen\grqq). -\item \verb:\glq: f"ur untere und \verb:\grq: f"ur obere \glq - halbierte An\-f"uh\-rungs"-zeichen\grq{} (bitte Anmerkungen zur - Verwendung beachten!). -\item \verb:"<: oder \verb:\flqq: f"ur linke und \verb:">: oder - \verb:\frqq: f"ur rechte "<An\-f"uh\-rungs"-zeichen"> in der - franz"osischen Form (\flqq\,guillemets\,\frqq). -\item \verb:\flq: f"ur linke und \verb:\frq: f"ur rechte \flq - halbierte An\-f"uh\-rungs"-zeichen\frq\ in der franz"osischen Form, -\item \verb:\dq: zum Ausdrucken des Doublequote-Zeichens~(\verb:":). -\end{itemize} -% -In~\cite{Duden} findet man: {\it Im deutschen Schriftsatz werden - vornehmlich die An"-f"uhrungszeichen "`\ldots"' und ">\ldots"< - angewendet. Die franz"osische Form "<\,\ldots\,"> ist im Deutschen - weniger gebr"auchlich; in der Schweiz hat sie sich f"ur den - Antiquasatz eingeb"urgert.} Die Regeln~\(10\)ff erg"anzen diese - Aussagen durch: {\it Eine Anf"uhrung in einer Anf"uhrung wird durch - halbe Anf"uhrungszeichen deutlich gemacht.} In franz"osischen - Texten ist hinter dem "offnenden und vor dem schlie"senden ein - zus"atzlicher Leerraum einzuf"ugen und es werden keine halben - Anf"uhrungszeichen verwendet. - -\paragraph{Verwendungsbeispiele:} -\begin{beispiel} -\verb:"`Ja, bitte!"': \> ergibt: \> "`Ja, bitte!"' \\[3pt] -\verb:"`Sag' doch nicht immer \glq Ja, bitte!{}\grq!"': \\ - \> ergibt: \> - "`Sag' doch nicht immer \glq Ja, bitte!{}\grq!"' \\[3pt] -\verb:">Ja, bitte!"<: \> ergibt: \> ">Ja, bitte!"< \\[3pt] -\verb:">Sag' doch nicht immer \frq Ja, bitte!\flq!"<: \\ - \> ergibt: \> - ">Sag' doch nicht immer \frq Ja, bitte!\flq!"< \\[3pt] -\verb:"<\,Merci bien\,!\,">: \> ergibt: \> "<\,Merci bien\,!\,"> \\ -\end{beispiel} - -\paragraph{Anmerkungen:} -Folgt \verb:\grq: auf ein Ausrufe- oder Fragezeichen, so sollte man -zwischen diesen beiden Zeichen, wie im Beispiel gezeigt, ein leeres -Klammerpaar~\verb:{}: oder \verb:{\kern0pt}: einf"ugen, um die -Ligaturen~\verb:!`:~(!`) bzw.~\verb:?`:~(?`) zu verhindern, die sonst -bei Verwendung von T1-kodierten Schriften gebildet w"urden. - -F"ur die Realisierung der Anf"uhrungszeichen existiert keine L"osung, -die uneingeschr"ankt f"ur alle Schriften verwendbar w"are. Bei der -momentanen Realisierung ist zu beachten, da"s bei Verwendung von -nicht-{\tt T1}-kodierten Schriften kein {\it Kerning\/} zwischen den -An\-f"uh\-rungs"-zeichen und den anderen Zeichen einge"-f"ugt wird. -Bei einigen Buch\-staben-Anf"uhrungs\-zeichen-Kombi"-nationen k"onnen -daher zu gro"-"se bzw.\ zu kleine Ab"-st"an"-de auftreten (Beispiel: -\mbox{"`\kern0ptV} statt~\mbox{"`\negthinspace V}). - -Relativ h"aufig ist in Dokumenten folgender Fehler zu beobachten: -Statt mit Hilfe von \verb:"`: und \verb:"': die Anf"uhrungszeichen -"`\ldots"' bzw.\ mit \verb:``: und \verb:'': die im -englischsprachigen Raum gebr"auchlichen Anf"uhrungszeichen ``\ldots'' -zu erzeugen, wird einfach der direkt auf der Tastatur zu findende -Double\-quote~\verb:": verwendet, der das falsche Ergebnis ''\ldots'' -erzeugt. Dieser Fehler ist leider in vielen mit \LaTeX\ erstellten -deutschsprachigen Texte zu beobachten, obwohl das Fehlen der unteren, -"offnenden Anf"uhrungszeichen auf"|fallen m"u"ste! Bei Verwendung -des Pakets "`german"' mit der dann ge"anderten Bedeutung des -Double\-quote kann dies au"serdem zu verschiedenen Fehlermeldungen -f"uhren. - -Ben"otigt man das Double\-quote-Zeichen, so mu"s man mit dem Paket -"`german"' die Befehle \verb:\dq: oder~\verb:\verb+"+: verwenden. Aus -Kompatibilit"ats"-gr"unden mit alten Versionen des Makropakets wird -auch noch~\verb:"{}: unter"-st"utzt. - - -\subsubsection{Trennhilfen f"ur die automatische Silbentrennung} - -\begin{itemize} -\item \verb:\-: f"ur eine Silbentrennstelle, wobei vor und nach - dieser Trennstelle die Silbentrennung unter"-dr"uckt wird (dies ist - der Original"-befehl in \TeX{} zur Kennzeichnung von Trennstellen). -\item \verb:"-: f"ur eine Silbentrennstelle an der angegebenen - Stelle; "ahnlich wie mit \verb:\-:, jedoch bleibt die automatische - Silbentrennung vor und nach dieser Trennstelle erhalten. Im - Unterschied zu \verb:\-: kann man mit \verb:"-: eine Trennstelle - ein"-f"ugen und alle weiteren Trennstellen werden von \TeX\ selbst - bestimmt, solange man dies nicht unterdr"uckt. -\item \verb:"": f"ur eine Silbentrennstelle an der angegebenen - Stelle, an der im Fall einer Trennung {\it kein\/} Bindestrich - hinzugef"ugt wird. -\item \verb:"|: zur Verhinderung von Ligaturen, "ahnlich wie - \verb:"-:, jedoch wird zu"-s"atzlich ein kleiner Zwischenraum zur - besseren Trennung der Einzelzeichen einer Ligatur eingef"ugt. -%\item \verb:\allowhyphens: dient zum Einf"ugen einer Wortfuge, wobei -% an dieser Stellen {\it keine\/} Silbentrennstelle eingef"ugt wird, -% aber die automatische Silbentrennung vor und nach dieser Stelle -% weiterhin erhalten bleibt. -\item \verb:-: f"ur einen Bindestrich (Divis) bei Zusammensetzungen - von W"ortern und Wort"-abk"urzungen; \TeX\ erlaubt eine Trennung - nach dem Bindestrich und trennt nie automatisch in den Wortteilen - vor und nach dem Bindestrich. -\item \verb:"~:\(^\dagger\) f"ur einen Bindestrich, an dem nicht - getrennt wird. -\item \verb:"=:\(^\dagger\) f"ur einen Bindestrich, an dem die - Trennung erlaubt ist; au"serdem darf vor und nach dieser Stelle - automatisch getrennt werden. -\end{itemize} - -\paragraph{Verwendungsbeispiele:}\hspace{0pt plus 1em} Die m"oglichen -Silbentrennstellen sind in den Beispielen durch das Zeichen~\(|\) -gekennzeichnet. -\begin{beispiel} -\verb:Auf"|lage: \> ergibt: \> Auf\(|\)la\(|\)ge \\ - \> \> (formatiert: Auf"|lage statt Auflage) \\[3pt] - -\verb:"ubertragen: \> ergibt: - \> "ubert\(|\)ra\(|\)gen (falsche Trennstelle) \\ -\verb:"uber\-tragen: \> ergibt: \> "uber\(|\)tragen \\ -\verb:"uber"-tragen: \> ergibt: \> "uber\(|\)tra\(|\)gen \\[3pt] - -\verb:bergauf und -ab: \> ergibt: - \> berg\(|\)auf und -\(|\)ab (falsche Trennstelle)\\ -\verb:bergauf und "~ab: \> ergibt: \> berg\(|\)auf und "~ab \\ -\verb:I-Punkt: \> ergibt: - \> I-\(|\)Punkt (schlechte Trennstelle)\\ -\verb:I"~Punkt: \> ergibt: \> I"~Punkt \\ -\verb:Arbeiter"=Unfall: \> ergibt: - \> Ar\(|\)bei\(|\)ter-\(|\)Un\(|\)fall\(|\)ver\(|\)si\(|\)che\(|\)rungs- \\ -\verb:versicherungsgesetz: \> \> ge\(|\)setz \\ -\end{beispiel} - -\pagebreak[0] -\paragraph{Tips:} -\begin{itemize} -\item Bei zusammengesetzten W"ortern, die falsche Trennstellen - aufweisen, sollte man zuerst die Trennhilfe~\verb:"-: in die - Wortfuge der Zusammensetzung ein"-f"ugen und nochmals testen, ob - danach richtig getrennt wird, bevor man weitere Trennhilfen - ein"-f"ugt. - \begin{beispiel} - \verb:"ubertragen: \> ergibt: \> "ubert\(|\)ra\(|\)gen \\ - \verb:"uber"-tragen: \> ergibt: \> "uber\(|\)tra\(|\)gen \\ - \verb:Bedienoberfl"ache: \> ergibt: - \> Be\(|\)dieno\(|\)ber\(|\)fl"ache \\ - \verb:Bedien"-oberfl"ache: \> ergibt: - \> Be\(|\)di\(|\)en\(|\)ober\(|\)fl"ache \\ - \verb:Be\-dien"-oberfl"ache: \> ergibt: - \> Be\(|\)dien\(|\)ober\(|\)fl"ache \\ - \end{beispiel} -\item Bei der Verwendung von Bindestrichen zur Er"-g"anzung ("`bergauf - und \mbox{-ab}"', "`\mbox{ein-}, zwei- oder dreimal"'), vor - Schr"ag"-strichen ("`\mbox{Ein-}\slash Aus\-gang"') und Klammern - ("`Prim"ar-\mbox{(Haupt-)}""Strom"') sollte man mit den Befehlen - \verb:\mbox:, \verb:"": und \verb:"~: vor den Satzzeichen die - Trennung unterbinden und eventuell nach den Satzzeichen wieder - erlauben. - \begin{beispiel} - \verb:bergauf und -ab: \> ergibt: - \> berg\(|\)auf und -\(|\)ab \\ - \verb:bergauf und \mbox{-ab}: \> ergibt: - \> berg\(|\)auf und -ab \\ - \verb:bergauf und "~ab: \> ergibt: - \> berg\(|\)auf und -ab \\ - \verb:Ein-/Ausgang: \> ergibt: \> Ein-\(|\)/Ausgang \\ - \verb:\mbox{Ein-}/""Ausgang: \> ergibt: \> Ein-/\(|\)Aus\(|\)gang \\ - \verb:Ein"~/""Ausgang: \> ergibt: \> Ein-/\(|\)Aus\(|\)gang \\ - \end{beispiel} -\item Der Befehl~\verb:"=: erlaubt - in den mit dem Bindestrich verbundenen - Wortteilen auch nahe am Bindestrich liegende Trennstellen, - die oft h"a"slich oder gar sinnwidrig sind. Zusammengesetzte W"orter sollten - normalerweise ohne Bindestrich geschrieben werden. - Wenn der Bindestrich dennoch zur Vermeidung von Mi"sverst"andnissen - n"otig ist, oder um das Schriftbild "ubersichtlicher zu machen, - und man neben der Trennung am - Bindestrich weitere Trennstellen erlauben will, sollte man mit - \verb:\-: und \verb:"-: wenige, wohl"-"uber"-legte Trennhilfen - ein"-f"ugen. - \begin{beispiel} -\verb:Arbeiter-Unfall: \> ergibt: \> Arbeiter-\(|\) \\ -\verb:versicherungsgesetz: \> \> Unfallversicherungsgesetz \\ -\verb:Arbeiter"=Unfall: \> ergibt: - \> Ar\(|\)bei\(|\)ter-\(|\)Un\(|\)fall\(|\) \\ -\verb:versicherungsgesetz: \> - \> ver\(|\)si\(|\)che\(|\)rungs\(|\)ge\(|\)setz \\ -\verb:Arbeiter-Unfall"-: \> ergibt: - \> Arbeiter-\(|\)Unfall\(|\) \\ -\verb:versicherungsgesetz: \> - \> ver\(|\)si\(|\)che\(|\)rungs\(|\)ge\(|\)setz \\ - \end{beispiel} - Der Befehl~\verb:"=: ist also vorzugsweise in automatisch - erstellten oder konvertierten Texten zu verwenden, wo - manuelle Trennhilfen nicht verf"ugbar sind. -\end{itemize} - - -%\subsubsection{Erstellen deutschsprachiger Dokumente und Einbinden -% von deutschsprachigen Texten in fremdsprachige Dokumente} -\subsubsection{Befehle zur Sprachauswahl} - -\begin{itemize} -\item \verb:\selectlanguage{:\mbox{\(\langle\)\it - Sprache\/\(\rangle\)}\verb:}: aktiviert - die der Sprache zugeordneten Trennmuster (siehe - auch~\ref{sec:languageundef}, S.~\pageref{sec:languageundef}) - und schaltet zwischen deutschen, - "oster"-reichischen, englischen, amerikanischen und franz"osischen - Datumsangaben und "Uber"-schriften um. - F"ur~\mbox{\(\langle\)\it Sprache\/\(\rangle\)} ist einer der - folgenden Namen zu verwenden: - \begin{itemize} - \item Mit dem Paket "`german"':\\ - \verb:german:, \verb:austrian:, - \verb:english:, \verb:USenglish: oder \verb:french: - \item Mit dem Paket "`ngerman"':\\ - \verb:ngerman:, \verb:naustrian:, - \verb:english:, \verb:USenglish: oder \verb:french:. - \end{itemize} -\item \verb:\germanTeX: zum Einschalten der deutschen \TeX-Befehle. - Dieser Befehl aktiviert alle \verb:"x:-Befehle, "andert das - \verb:\"x:-Makro, setzt durch einen Aufruf von - \CS{select\-language} die traditionellen deutschen Trennmuster in Kraft - und "andert die - Datumsangabe und "Uberschriften. {\em Dieser Befehl ist nur im Paket - "`german"' definiert.} -\item \verb:\ngermanTeX:\(^\dagger\) dito, aber aktiviert die - "`neuen"' deutschen Trennmuster. - {\em Dieser Befehl ist nur im Paket "`ngerman"' definiert.} -\item \verb:\originalTeX: zum Zur"uckschalten auf Original-\TeX\ bzw.\ - \mbox{-\LaTeX}: deaktiviert alle durch \verb:\germanTeX: oder - \verb:\ngermanTeX: eingeschalteten Befehle. -\end{itemize} -Zu jeder Sprache geh"oren ein spezifisches Datumsformat und -eigene, in den -\LaTeX-Klassen bzw.\ \mbox{-Styles}\footnote{Anpa"sbare Klassen bzw. - Styles sind seit Dezember~1991 Bestandteil der offiziellen - \LaTeX-Verteilung.} verwendete "Uber"-schriften: -\begin{quote}\small -\day=1 \month=1 \year=1995 % Beispieldatum (J\"anner!) -\begin{tabular}{@{}lll@{}} -\mbox{\(\langle\)\it Sprache\/\(\rangle\)}& -\verb:\today:&\verb:\chaptername:\\[3pt] -\verb:german:, \verb:ngerman: & \selectlanguage{german}\today - & \selectlanguage{german}\chaptername \\ -\verb:austrian:, \verb:naustrian: & \selectlanguage{austrian}\today - & \selectlanguage{austrian}\chaptername \\ -\verb:english: & \selectlanguage{english}\today - & \selectlanguage{english}\chaptername \\ -\verb:USenglish:& \selectlanguage{USenglish}\today - & \selectlanguage{USenglish}\chaptername \\ -\verb:french: & \selectlanguage{french}\today - & \selectlanguage{french}\chaptername -\end{tabular} -\end{quote} - -\paragraph{Voreinstellung:} -Nach dem Laden des Pakets "`german"' oder "`ngerman"' wird implizit -der Befehl \verb:\germanTeX: bzw. \verb:\ngermanTeX :ausgef"uhrt, -so da"s ohne weiteres Zutun -von Seiten des Anwenders die Sprache -\verb:german: bzw. \verb:ngerman: als Voreinstellung aktiviert wird. - -\paragraph{Verwendung:} - -\CS{selectlanguage} -%ist nicht dazu geeignet, innerhalb eines -%Dokuments zwischen mehreren Sprachen umzuschalten. Mit ihm bestimmt -%man die "`Haupt\-sprache"' des Dokuments, deshalb sollte dieser -ist prim"ar dazu bestimmt, die "`Hauptsprache"' eines Dokuments einzustellen. -%deshalb sollte der Befehl nur ein einziges Mal in einem Dokument in der Pr"a"-ambel -%verwendet werden. Dadurch -So k"onnen die Befehle aus dem Paket -"`german"' auch innerhalb eines fremdsprachigen Dokuments benutzt -werden: -\begin{quote}\small -\begin{verbatim} -\NeedsTeXFormat{latex2e} -\documentclass{article} -\usepackage{german} -%\germanTeX % nicht notwendig, wird durch das Laden von - % `german' implizit aufgerufen -\selectlanguage{USenglish} -\begin{document} -An english text with some german words, e.g., "Au"serung. -\end{document} -\end{verbatim} -\end{quote} -Benutzt man \CS{selectlanguage} zum Umschalten der Sprache -{\em innerhalb} eines Textes, etwa f"ur fremdsprachige Zitate, -dann ist zu beachten, da"s das Umschalten der "Uberschriften und der Datumsdarstellung -unerw"unschte Nebenwirkungen haben kann, z.\,B. wenn das aktuelle Datum in der -Fu"szeile erscheinen soll.\footnote{Eine zuk"unftige Version des Pakets "`german"' -wird vsl. zus"atzliche und angemessenere Befehle f"ur mehrsprachige Dokumente -zur Verf"ugung stellen.} - -Die Befehle \CS{originalTeX} und \CS{(n)germanTeX} dienen vor allem dazu, -f"ur einen Teil eines Dokuments das Verhalten des originalen, englischsprachigen -\LaTeX\ herzustellen, wenn dies aus Gr"unden der Kompatibilit"at mit -anderer Software notwendig werden sollte. H"aufig gen"ugen dazu aber die Befehle -\CS{mdqoff} und \CS{mdqon}, siehe Tab.~\ref{tab:cmds}, die nur die \verb:"x:-Makros -aus- und einschalten. - - -\begin{table} -\setlength{\partopsep}{0pt} -\begin{center} -\rule[.3\baselineskip]{.3\textwidth}{.1pt} -\renewcommand{\arraystretch}{1.1} -%\setlength{\tabcolsep}{.5\tabcolsep} -\begin{tabular}[b]{ll@{}} -\multicolumn{2}{@{\strut}l}{\it - Befehle mit aktivem Doublequote:}\\[4pt] -\verb:"a:, \verb:"A:, \verb:"o:, \verb:"O:, \verb:"u:, \verb:"U: - & Umlaute: "a, "A, "o, "O, "u, "U \\ -\verb:"s:, \verb:"S:, \verb:"z:, \verb:"Z: - & Buchstaben: "s, "S, "z und "Z \\ -\verb:"e:, \verb:"E:, \verb:"i:, \verb:"I: - & Buchstaben mit Trema: "e, "E, "i, "I \\[3pt] -\verb:"c:, \verb:"C: & ck \(\rightarrow\) k-k \\ -\verb:"f:, \verb:"l:, \verb:"m:, \verb:"n:, - \verb:"p:, \verb:"r:, \verb:"t:,\\ -\verb:"F:, \verb:"L:, \verb:"M:, \verb:"N:, - \verb:"P:, \verb:"R:, \verb:"T: - & ausfallender dritter Konsonant \\[3pt] -\verb:"`:, \verb:"': & "` "' \\ -\verb:">:, \verb:"<: & "> "< \\[3pt] -\verb:"-:, \verb:"|:, \verb:"": & Trennhilfen \\ -\verb:"~:, \verb:"=: & Bindestriche mit besonderem Verhalten \\[5pt] -\multicolumn{2}{p{.95\textwidth}}{% - Alle anderen {\tt\string"x}-Befehle, die mit keiner Bedeutung - belegt sind, erzeugen eine Fehlermeldung, um auf eine fehlerhafte - Eingabe hinzuweisen.}\\ - \\ -\multicolumn{2}{@{}l}{\it Befehle mit ge"andertem Verhalten:}\\[4pt] -\verb:\": & Umlautmakro mit tieferem Akzentzeichen, \\ - & ohne Unterdr"uckung der Silbentrennung \\ - \\[-3pt] -\multicolumn{2}{@{}l}{\it Befehle f"ur Anf"uhrungszeichen:}\\[4pt] -\CS{glqq}, \CS{grqq}, \CS{glq}, \CS{grq} - & Anf"uhrungszeichen: \glqq\ \grqq\ \glq\ \grq \\ -\CS{flqq}, \CS{frqq}, \CS{flq}, \CS{frq} - & dto., franz"osische Form: \flqq\ \frqq\ \flq\ \frq \\[3pt] -\CS{dq} & Doublequote-Zeichen: \dq \\ - \\ -\multicolumn{2}{@{}l}{\it Befehle zur Sprachumschaltung:}\\[4pt] -\CS{selectlanguage} & Trennmuster u. "Uberschriften wechseln\\ -\CS{originalTeX} - & deaktiviere deutsche \TeX-Befehle \\ -\CS{germanTeX} (nur mit "`german"') - & aktiviere deutsche \TeX-Befehle \\ -\CS{ngermanTeX} (nur mit "`ngerman"') - & aktiviere deutsche \TeX-Befehle \\ - \\ -\multicolumn{2}{@{}l}{\it Obsolete Befehle: - (Nicht mehr verwenden!)}\\[4pt] -\CS{3}, \CS{ck} - & alte Form von \ss\ und ck\,\(\rightarrow\)\,k-k\\ -\CS{setlanguage} & ersetzt durch \CS{selectlanguage}\\ - \\ -\multicolumn{2}{@{}l}{\it Low-Level-Befehle:}\\[4pt] -\CS{allowhyphens} & k"unstliche, nicht trennbare Wortfuge \\ -\CS{mdqoff}, \CS{mdqon} - & (de-)aktiviere Doublequote-Befehle -\end{tabular} -\rule{.3\textwidth}{.1pt} -\end{center} -\caption{Befehls"ubersicht} - \label{tab:cmds} -\end{table} - - -\subsection{Beschr"ankungen und bekannte Fehler}\label{sec:fehler} - -\paragraph{Double\-quote-Mechanismus:} -Da "`german"' das Double\-quote-Zeichen aktiviert und dessen -urspr"ungliche Bedeutung "andert, k"onnen Probleme mit anderen -Makropaketen und fremden Dokumenten auftreten: -\begin{itemize} -\item Ganzzahlige Konstanten k"onnen in \TeX\ auch in hexadezimaler - Notation mit einem voranstehenden Double\-quote eingegeben werden - (Beispiel: \verb:"FF: f"ur die Dezimalzahl~255). Beginnt die - Hexadezimalzahl mit einer Ziffer, so sollten mit neueren Versionen - des Pakets "`german"' keine Probleme auftreten. Beginnt die - Zahl stattdessen mit einem Buchstaben \mbox{A--F}, so tritt durch - die ge"-"anderte Bedeutung des Double\-quote meist der Fehler "`{\tt - Missing number, treated as zero}"' auf. - - Abhilfe: Hexadezimalzahlen, die mit einem Buchstaben beginnen, die - Ziffer~\(0\) voranstellen -- statt \verb:"FF: sollte man demnach - \verb:"0FF: verwenden. Eine andere M"oglichkeit besteht darin, den - Double\-quote mit Hilfe des \TeX-Primitivs \CS{string} (Bsp: - \verb:\string"FF:) oder mit einem vorangestellten \CS{original\-TeX} - bzw.\ \CS{mdqoff} zu deaktivieren. -\item Leerschritte nach einem aktivierten Double\-quote werden - ignoriert, d.\,h.\ sowohl \verb:" a: als auch~\verb:"a: erzeugen - dasselbe Ergebnis. Da dies eine Eigenschaft von \TeX\ selbst ist, - kann es nicht ohne andere Nachteile verhindert werden. -\item Nach einem aktivierten Double\-quote sollten keine geschweiften - Klammern folgen. Sowohl die Kombination mit einer "offnenden - Klammer~\verb:"{: als auch mit einer schlie"senden Klammer~\verb:"}: - f"uhrt zu Fehlern. -\end{itemize} -% -Treten die in den letzten beiden Punkten beschriebenen Fehler auf, -ist dies meist auf die falsche Eingabe von An"-f"uh\-rungs"-zeichen -zur"uckzuf"uhren. An"-f"uh\-rungs"-zeichen sind als -\verb:"`:\ldots\verb:"': (bzw.\ als \verb:``:\ldots\verb:'':) -einzugeben, die Verwendung eines einfachen Double\-quote f"uhrt zu -falschen Ergebnissen! - -\paragraph{OT1-kodierte Schriften:} -Bei Verwendung von Schriften in der Kodierung~{\tt OT1}, z.\,B.\ der -CM-Familie, gibt es zu"-s"atzlich folgende -Einschr"ankungen: -% -\begin{itemize} -\item Es werden nicht alle oder falsche Silbentrennstellen in W"ortern - mit Umlauten gefunden, insbesondere wird nicht direkt am Umlaut - getrennt. Hier mu"s man bei Bedarf mit dem Befehl~\verb:"-: - nachhelfen. -\item Da \TeX\ mit Hilfe der Makros im Paket "`german"' die - Umlaute und die An"-f"uh\-rungs"-zeichen aus mehreren Zeichen - aufbauen mu"s, findet {\it kein\/} Kerning und {\it keine\/} - Ligaturbildung mit den umgebenden Zeichen statt. Dies f"allt - insbesondere bei den Kombinationen \mbox{"`\kern0pt V}, - \mbox{"`\kern0pt W} und \mbox{f\kern0pt "'} auf und wird bei - schr"ag"-gestellten Schriften noch ver"-st"arkt. Eine Abhilfe ist - auf Makroebene nur sehr schwer realisierbar, so da"s man von Hand - mit den Befehlen \CS{neg\-thin\-space} und~\CS{/} f"ur korrektere - Ab"-st"ande sorgen mu"s. -\item Die Anf"uhrungszeichen in der franz"osischen Form "> und~"< - k"onnten, auch vom Aussehen, verbessert werden. Au"serdem wird nach - diesen An"-f"uh\-rungs"-zeichen nicht umbrochen, selbst wenn ein - Wortzwischenraum folgen sollte. -\item Die Typewriter-Schriften {\tt cmtt} -% besitzen keine Ligatur f"ur -% die doppelten An"-f"uhrungszeichen ({\tt`\kern0pt`} statt~`` und -% {\tt'\kern0pt'} statt~''), -% sondern nur ein Zeichen f"ur den - enthalten keine deutschen Anf"uhrungszeichen, sondern nur den einfachen - Double\-quote~{\tt\dq}. Daher er"-h"alt man mit \LaTeXe{} f"ur die - Eingabe \verb:"`..."': das unerwartete Ergebnis~"`\mbox{\tt - \begingroup\setbox2=\hbox{,}\setbox0=\hbox{\char34}% - \setbox0=\hbox{\dimen0=\ht0\advance\dimen0-\ht2\lower\dimen0\box0}% - \ht0=\ht2\dp0=\dp2\box0\endgroup...\char92}"'. - - Wer dies vermeiden will, mu"s die \LaTeXe-Deklarationen f"ur die - beiden Symbole \CS{text\-quote\-dblleft} und - \CS{text\-quote\-dblright} f"ur die OT1-Kodierung entsprechend - "andern. -\end{itemize} - -\paragraph{T1-kodierte Schriften:} -Die meisten der f"ur OT1-kodierte Schriften genannten Einschr"ankungen -existieren f"ur Schriften in der Kodierung~{\tt T1}, wie -beispielsweise die EC-Schrift\-familie, nicht, da diese Schriften -Umlaute und An"-f"uhrungszeichen enthalten. F"ur T1-kodierte -Schriften existiert nur die Einschr"ankung, da"s man bei Verwendung -des halben schlie"senden An"-f"uhrungszeichens~\CS{grq} ein leeres -Klammerpaar~\verb:{}: oder \verb:{\kern0pt}: ein"-f"ugen mu"s, wenn -\CS{grq} auf ein Ausrufe- oder Fragezeichen folgt. Andernfalls -er"-h"alt man sonst die Ligatur~\verb:!`:~(!`) bzw.~\verb:?`:~(?`). - -\paragraph{PostScript-Schriften:} -Zur Einbindung dieser Schriften in \TeX{} und \LaTeX{} existieren -unterschiedliche Versionen, wobei neuere Versionen die Verwendung von -Post\-Script-Schriften sowohl in der Kodierung~{\tt OT1} als auch in -der Kodierung~{\tt T1} und seit Anfang~1997 auch in der Kodierung~{\tt -TS1} der Text-Companion-Schriften erlauben. F"ur die jeweilige -Kodierung gelten die zuvor aufgez"ahlten Einschr"ankungen. - -Verwendet man mit \LaTeXe{} eine zu alte Version der Einbindung, so -erh"alt man mit dem Paket "`german"' fehlerhafte Akzent- und -Anf"uhrungszeichen. Bitte probieren Sie mit folgendem Testdokument -aus, ob sie ein zu altes Paket zur Verwendung von -Post\-Script-Schriften installiert haben. (Hinweis: Das Testdokument -verwendet "`german"' {\it nicht}, da der Test nur von -der verwendeten Einbindung der Post\-Script-Schriften abh"angt.) -% -\begin{quote}\small -\begin{verbatim} -\NeedsTeXFormat{LaTeX2e} -\documentclass{article} -\renewcommand\rmdefault{ptm}% oder: \usepackage{times} -\begin{document} -Test: \"a \"A \ss. -\end{document} -\end{verbatim} -\end{quote} -% -Erhalten Sie fehlerhafte Umlaute oder kein scharfes~s, so besorgen Sie -sich bitte eine neuere Version des Post\-Script-Schrift\-pakets und -installieren Sie die darin enthaltenen \mbox{{\sc tfm}-}, \mbox{{\sc -vf}-}, \mbox{{\sc tex}-}, {\sc fd}- und {\sc map}-Dateien nach -Anleitung. - -\paragraph{\LaTeXe{} (1.~Dezember~1994 und neuer):} -\LaTeXe{} benutzt als Standard"-schrift"-auswahlschema die -Version~\(2\) des~\mbox{NFSS}, das den neuen Schriftparameter -\CS{font\-encoding} zur Verf"ugung stellt. Dadurch k"onnen -sehr einfach Schriften in unterschiedlicher Kodierung verwendet -werden. So kann jetzt innerhalb eines Dokuments beliebig zwischen -{\tt OT1}- und {\tt T1}-kodierten Schriften gewechselt werden. - -Sollen Schriften in anderen Kodierungen verwendet werden, so m"ussen -nur die entsprechenden \LaTeXe-Deklarationen f"ur diese Kodierung mit -den Anweisungen \CS{Declare\-Text}\ldots{} durchgef"uhrt werden, damit -"`german"' die Lettern dieser Schrift korrekt verwenden kann. - -\paragraph{\LaTeXe{} (1.~Juni~1994):} -Da die erste "offentliche \LaTeXe-Version die Verwendung von Schriften -in unterschiedlicher Kodierung nur unvoll"-st"andig erlaubt, wird sie -von "`german"' nicht mehr unter"-st"utzt. Ein \mbox{Update} auf die -neueste \LaTeXe-Version ist auf alle F"alle ratsam! - -\paragraph{\LaTeX~2.09:} -Mit der mittlerweile veralteten \LaTeX-Version k"on\-nen andere als -die Schriften der Computer-Modern-Familie nur mit relativ gro"sen -Aufwand integriert werden. Die von den Entwicklern nicht mehr -gewartete Version~\(1\) des Schrift"-auswahlschemas~\mbox{NFSS} -erleichtert dies zwar, jedoch unterst"utzt diese Version die -Einbindung von Schriften in anderen Kodierungen noch nicht. - -Die Style-Option "`german"' unterst"utzt daher mit \LaTeX~2.09 nur -Schriften in der Kodierung~{\tt OT1}. Sollen Schriften mit einer -anderen Kodierung verwendet werden, so m"us\-sen die Makros \verb:\":, -\verb:\ss:, \verb:\flqq:,\,\ldots\,\verb:\grq: entsprechend -ge"-"andert werden. Weitere "Anderungen, insbesondere am -Double\-quote-Mechanismus, sind nicht notwendig. - -\paragraph{Plain-\protect\TeX:} Hier gilt das zuvor f"ur \LaTeX~2.09 -Gesagte. Es ist geplant, \mbox{NFSS} Version~\(2\) auch f"ur -Plain-\TeX\ verf"ugbar zu machen, so da"s man auch die unter \LaTeXe{} -verf"ugbaren Vorteile nutzen kann. Leider ist der Zeitpunkt der -Fertigstellung nicht absehbar. - - -\subsection{Wohin melde ich Fehler?} - -Wenn Sie einen Fehler in dieser Version 2.5e -der Makropakete "`german"' oder "`ngerman"' gefunden haben -oder Vorschl"age zu deren Verbesserung haben, schreiben Sie bitte an -\begin{quote} - Bernd Raichle\\ - Stettener Str. 73\\ - 73732 Esslingen-W"aldenbronn\\ - Germany\\[.5ex] - E-Mail: {\tt raichle@Informatik.Uni-Stuttgart.DE} -\end{quote} -oder an -\begin{quote} - DANTE, Deutschsprachige Anwendervereinigung - \TeX\ e.V\negthinspace. \\ - Betreuung "`german.sty"' \\ - Postfach 10\,18\,40 \\ - 69008 Heidelberg \\ - Germany\\[.5ex] - E-Mail: {\tt german@dante.de} -\end{quote} -Ein Kontakt per {\it electronic mail\/} wird bevorzugt. - -Der Fehlermeldung sollten Sie die komplette Eingabedatei beilegen, mit -der dieser Fehler erzeugt werden kann. In Ihrem eigenen Interesse -sollte diese Eingabedatei m"og"-lichst klein sein und nur die wirklich -zur Reproduktion des Fehlers notwendigen Klassen, Pakete, Styles, -Style-Optionen und Makrodateien laden. Andernfalls gestaltet sich die -Fehlersuche zu aufwendig und/oder es fehlen verwendete Makrodateien, -um den Fehler nachvollziehen zu k"onnen. F"ugen Sie auch die -Protokolldatei f"ur diese Eingabedatei mit an, da diese weitere -Hinweise auf die verwendeten Makros enth"alt. Um die Protokolldatei -klein zu halten, brechen Sie bitte bei einem Fehler \TeX{} bzw.\ -\LaTeX{} mit~{\tt x} und nicht mit~{\tt q} ab. - -Bevor Sie einen Fehler melden, vergewissern Sie sich bitte, da"s der -Fehler tats"achlich durch das Makropaket "`german"' und nicht durch -eine fehlerhafte Eingabe Ihrerseits oder einen Folgefehler eines zuvor -aufgetretenen Fehlers verursacht wird. Sehen Sie bitte auch in der -Protokolldatei nach, ob diese eventuell Hinweise auf die Fehlerursache -gibt. Sehr h"aufig gibt es Fehler in Zusammenhang mit Konstanten in -hexadezimaler Schreibweise, die zur Fehlermeldung "`{\tt Missing -number, treated as zero}"' f"uhren. Dieser "`Fehler"' ist bekannt und -ist in dieser Anleitung in Abschnitt~\ref{sec:fehler} -% auf Seite~\pageref{sec:fehler} -beschrieben. - - -% \condbreak{.2\textheight} -- bedingtes \newpage -\vspace{0pt plus.2\textheight} -\pagebreak[3] -\vspace{0pt plus-.2\textheight} - -\section{Installation} - -F"ur die Benutzung der Pakete "`german"' und "`ngerman"' ben"otigen -Sie folgende Dateien: -% -\begin{enumerate}\sloppy -\item {\tt german.sty} und {\tt ngerman.sty}, die Makropakete selbst; -\item {\tt ghyph31.tex}, die deutschen Trennmuster - f"ur die alte Rechtschreibung (nur mit {\tt german.sty}) in - der z.\,Z.\ aktuellen Version~3.1a vom 13.~Februar 1994;\\ - {\em Vorsicht\/}: Auf der CD TeX\,Live\,3 hei"st diese Datei - {\tt dehyphen.tex}; -\item {\tt gnhyph01.tex}, die deutschen Trennmuster - f"ur die neue Recht\-schreibung (nur mit {\tt ngerman.sty}); -\item wahlweise weitere Dateien mit Trennmustern f"ur andere - Sprachen; -\item evtl. {\tt hyphxmpl.cfg}, eine Beispieldatei f"ur die - Konfiguration der Trennmuster. -\end{enumerate} - - -\subsection{Vorbereitungen f"ur Benutzer}\label{sec:benutzerinit} - -Als gew"ohnlicher \TeX- bzw.\ \LaTeX-Benutzer m"ussen Sie nur daf"ur -sorgen, da"s die Dateien {\tt german.sty} und {\tt ngerman.sty} -in der neuesten Version vorhanden sind und geladen werden k"onnen. -Dazu sind diese Dateien einfach in ein Verzeichnis zu kopieren, -in dem \TeX{} nach Makrodateien sucht. - -Erscheint beim Laden des Makropakets die -Meldung\label{sec:languageundef} -% -\begin{quote}\small -\verb:\language number for German undefined, default 255 used.: -\end{quote} -% -so haben Sie die deutschen Trennmuster nicht korrekt installiert und -erhalten eventuell fehlerhafte Trennungen, oder es wird nicht -getrennt. Wie Sie die Trennmuster installieren m"ussen, erfahren Sie -im n"achsten Abschnitt. - -M"oglicherweise hat Ihre Plain-\TeX- oder \LaTeX-Version eines der -Makropakete "`german"' oder "`ngerman"' bereits vorgeladen, -d.\,h., Sie m"ussen es nicht explizit als \LaTeXe-Paket bzw.\ als -Style-Option deklarieren oder die Makro\-datei laden. Sie sollten -dies dennoch {\it nicht\/} ausnutzen: Wenn Sie Ihre Dokumente -weitergeben wollen, vermeiden Sie dadurch un"-n"otige Probleme und -R"uck"-fragen. Am besten "andern Sie Ihre Installation so ab, da"s -"`german"' {\it nicht\/} vorgeladen wird, da Sie mit einem -vorgeladenen Makropaket zu anderen \TeX-Installationen i.\,d.\,R. -inkompatibel sind. - -\subsection{Vorbereitungen f"ur \protect\TeX-Administratoren} - -Damit Sie die Pakete "`german"' und "`ngerman"' den \TeX-Benutzern zur -Ver"-f"ugung stellen, m"ussen diese, falls noch nicht getan, -% ausgepackt und -installiert werden. Au"serdem m"ussen Sie alle Format"-dateien -mit den deutschen Trennmustern so erstellen, da"s die Makropakete -erkennen k"onnen, wie auf diese Trennmuster umgeschaltet wird. -Andernfalls wird nicht mehr oder falsch getrennt! - -\subsubsection{Installation der Makropakete} - - -Die Dateien {\tt german.sty} und {\tt ngerman.sty}, sollten Sie in -ein Verzeichnis kopieren, in dem \TeX\ nach Makrodateien sucht (Bsp: -{\tt{}.../texmf/""tex/""generic/""german/}). "Altere -Versionen dieser Dateien in weiteren Verzeichnissen, die -\TeX\ durchsucht, sollten Sie l"oschen. - -Bitte lesen Sie nun den n"achsten Abschnitt, da es sehr -wahrscheinlich ist, da"s die Trennmuster in Ihren bisher -verwendeten Formatdateien nicht korrekt oder nicht -vollst"andig installiert wurden. Ist dies der Fall, wird in -allen Dokumenten, die diese Pakete verwenden, nicht mehr -automatisch getrennt! - -\subsubsection{Installation der Trennmuster} - -\TeX\ kann ab Version~3.0 in einer einzigen Formatdatei -mehrere verschiedene Trennmuster halten. -%,so da"s mehrsprachige Dokumente mit korrekter Trennung m"oglich sind. -Zur Auswahl der Trennmuster einer -Sprache dient eine ganze Zahl von 0--255, die der Sprache beim Installieren der -Trennmuster zugeordnet worden sein mu"s. - -Beim Laden eines Satzes von Trennmustern w"ahrend der Installation -(Ini\TeX-Lauf) erfolgt die Zuordnung der Trennmuster zu einer -Sprache durch Zuweisung der f"ur diese Sprache ge"-w"ahlten Zahl an -das spezielle \TeX-Register \CS{language}. Ebenso werden sp"ater beim -"Uber"-setzen eines Dokuments die zu verwendenden Trennmuster durch -Zuweisung der Zahl an \CS{language} wieder aktiviert. Achtung: Weist -man \CS{language} beim "Uber"-setzen eines Dokuments einen Wert zu, -f"ur den Ini\TeX{} keine Trennmuster geladen hatte, so findet {\it keine\/} -automatische Silbentrennung statt. - -Wie werden nun die Nummern von 0--255 an die einzelnen Sprachen -vergeben? Als Quasi-Standard f"ur die Vergabe der Nummern hat sich -mittlerweile das im {\it - Babel-System\/}~\cite{Braams91,Goossens94a,Goossens94b} verwendete -Schema herausgebildet. -Dabei wird jede Sprache deklariert und an diese eine Nummer in -aufsteigender Folge von~0 an vergeben. Wichtig dabei ist, da"s die -jeweils zugeordnete Nummer in einer {\it control sequence\/} -\mbox{\CS{l@}\(\langle\)Sprache\(\rangle\)} abgespeichert wird. -So kann man sp"ater auf die Sprache unter ihrem Namen -zugreifen, also ohne die Nummer explizit angeben zu m"ussen. - -Der Code zum Laden der Trennmuster und zum Zuordnen der Sprachnamen -befindet sich in einer Makrodatei, die f"ur das -aktuelle \LaTeXe{} beispielsweise {\tt hyphen.cfg} hei"st. -Sie mu"s normalerweise neu erstellt oder zumindest angepa"st werden, -um festzulegen, welche Sprachen unterst"utzt werden sollen. - -Mit dem Babel-Paket wird eine besondere Version dieser Datei -ausgeliefert, die die Information "uber die zu ladenden Sprachen einer -weiteren Konfigurationsdatei {\tt language.dat} entnimmt, die ihrerseits -einfacher aufgebaut und leichter zu bearbeiten ist. - -Unabh"angig davon, welche -der beiden Methoden zur Konfiguration benutzt wird, kann das damit erzeugte -Format sowohl mit Babel als auch mit dem Paket "`german"' benutzt werden. -Die Version 3.6h des Babel-Pakets selbst -kennt allerdings noch keine Option f"ur "`Deutsch mit neuer Rechtschreibung"'. - -Gehen Sie zum Konfigurieren der Sprachunterst"utzung wie folgt vor: - -\paragraph{Schritt 1\protect\(^*\protect\):} -Sie verwenden den Konfigurationsmechanismus des Babel-Pakets; -dies ist standardm"a"sig z.\,B. mit teTeX oder dem Web2c-\TeX{} der -CD TeX\,Live der Fall. -In diesem Fall m"ussen in der Konfigurationsdatei {\tt language.dat} -die folgenden Zeilen (neben evtl. weiteren) eingetragen sein: -\begin{quote}\small -\begin{verbatim} - german ghyph31.tex - ngerman gnhyph01.tex -\end{verbatim} -\end{quote} -Damit wird die Zuordnung von Sprachnamen und Trenn\-muster\-dateien -festgelegt. -Evtl. fehlende Eintr"age sind am Ende der Datei zu erg"anzen. -(Mit der TeX\,Live-CD ist der Dateiname {\tt ghyph31.tex} -durch {\tt dehyphen.tex} zu ersetzen.) - -%Bitte beachten Sie, da"s innerhalb eines Dokuments nur -%{\em entweder} die vom Babel-Paket -%zur Verf"ugung gestellten Sprachanpassungen (einschl. "`german"') -%{\em oder} das Paket "`german"' benutzt werden sollen; -%ihre gleichzeitige Verwendung kann zu Problemen f"uhren! - -"Uberspringen Sie -nun die Schritte 1 und 2. Falls in Ihrem \TeX-System {\em nicht} der -Babel-Mechanismus zur Konfiguration der Trennmuster benutzt wird, -dann lesen Sie bitte weiter: - -\paragraph{Schritt 1:} -Sie ben"otigen zum Laden der Trennmusterdateien f"ur verschiedene -Sprachen eine Makrodatei, die (leider) je nach verwendetem -Format einen unterschiedlichen Dateinamen besitzt. Den Namen dieser -Datei k"onnen Sie der Tabelle in Schritt~\(2\) entnehmen, die Datei -selbst sollte folgenden Inhalt haben: -% -\begin{quote}\small -\begin{verbatim} -%% Konfigurationsdatei -- Trennmuster: `hyphen.cfg' -\message{== Loading hyphenation patterns:} - -%% american english -\chardef\l@USenglish=\language -%% british english als "Dialekt" -\chardef\l@english=\l@USenglish -\input hyphen - -%% german -\newlanguage\l@german \language=\l@german -%% oesterreichisch als "Dialekt": -\chardef\l@austrian=\l@german -\input ghyph31 - -%% new german -\newlanguage\l@ngerman \language=\l@ngerman -%% oesterreichisch (neu) als "Dialekt" -\chardef\l@naustrian=\l@ngerman -\input gnhyph01 - -%% weitere Sprachen nach folgendem Schema: -% \newlanguage\l@SPRACHE \language=\l@SPRACHE -% \chardef\l@DIALEKT=\l@SPRACHE -% \input SPRACHhyphen - -%% Default-Trennmuster: USenglish -\language=\l@USenglish \lefthyphenmin=2 \righthyphenmin=3 -\message{done.} -\endinput -\end{verbatim} -\end{quote} -% -In dem gezeigten Beispiel werden die -US-eng\-li\-schen Trennmuster, die "`alten"' und die "`neuen"' -deutschen Trennmuster geladen, wobei f"ur die britisch-englische und -f"ur die "oster"-reichische "`Sprache"' Synonyme deklariert werden. -Eine Datei mit genau diesem Inhalt wird unter dem Namen -\begin{quote} - {\tt hyphxmpl.cfg} -\end{quote} -zusammen mit dem Makropaket "`german"' verteilt. -Wollen Sie f"ur weitere Sprachen Trennmuster laden, -%-- beispielsweise existieren solche f"ur britisch-englische Silbentrennung -- -sollten -Sie in der Lage sein, die dazu notwendigen Zeilen anhand des -auskommentierten Schemas im gezeigten Beispiel zu -vervoll"-st"andigen. - -Es ist wichtig, da"s Sie die beiden Parameter \CS{left\-hyphen\-min} -und \CS{right\-hyphen\-min}, die die Mindest"-l"ange der nicht -trennbaren Wortpr"afixe und \mbox{-suffixe} angeben, am Ende der Datei -mit passenden Werten f"ur diejenige Sprache -vorbesetzen, mit der \TeX{} startet. Ansonsten erhalten Sie eventuell -Trennungen, bei denen einzelne Zeichen am Wortanfang oder \mbox{-ende} -abgetrennt werden. Es ist jedoch {\em nicht\/} notwendig, diese -beiden Parameter f"ur jede zu ladende Trennmusterdatei zu setzen, da -\TeX\ die Parameterwerte sowieso nicht mit den Trennmustern abspeichert. - - -\paragraph{Schritt 2:} -Entscheiden Sie sich, f"ur welches \TeX-Format Sie eine neue -Formatdatei erstellen wollen. Je nach zu erzeugendem Format hat die -in Schritt~\(1\) gezeigte Konfigurationsdatei einen anderen Namen: -% -\begin{quote} -\begin{tabular}{@{}ll@{}} -\qquad {\it Format} & {\it Dateiname} \\[3pt] -\LaTeXe{} (ab 1.~Dezember 1994) & {\tt hyphen.cfg}\\ -\LaTeXe{} (1.~Juni 1994) & {\tt lthyphen.cfg} \\ -\LaTeX 2.09 (ab Dezember 1991) & {\tt lhyphen.tex} \\ -\LaTeX 2.09 (vor Dezember 1991) & {\tt hyphen.tex} \\ -Plain-\TeX & {\tt hyphen.tex} -\end{tabular} -\end{quote} -% -Geben Sie der in Schritt~\(1\) erstellten Datei (oder dem -Beispiel {\tt hyphxmpl.cfg}) den entsprechenden -Dateinamen aus dieser Tabelle. - -{\it Zu Plain-\TeX{} und den "alteren \LaTeX-Versionen:\/} Da die -US-englischen Trennmuster, die als Mindestausstattung jeder -Installation beiliegen, den selben von Donald E.\ Knuth vergebenen -Namen {\tt hyphen.tex} haben, m"us\-sen Sie diese Trennmusterdatei -f"ur Plain-\TeX\ und die "alteren \LaTeX~2.09-Versionen in {\tt -ushyphen.tex} umbenennen, um Namens"-kollisionen zu vermeiden. -Vergessen Sie in diesem Fall nicht, auch in der Konfigurationsdatei -den Namen {\tt hyphen.tex} durch {\tt ushyphen.tex} zu ersetzen! - -\paragraph{Schritt 3:} -Bevor Sie nun mit Ini\TeX\ eine Formatdatei erstellen, sollten Sie -sich vergewissern, da"s Ihre \TeX-Version gen"ugend Platz f"ur die -Trennmuster reserviert. - -Um beispielsweise die amerikanischen und die beiden deutschen -Trennmusterdateien zu laden, ben"otigen Sie einen "`Trie"'-Wert, der -mindestens \(21547\) {\tt trie\_size} und \(625\) {\tt -trie\_op\_size} Platz bietet. Wollen Sie Trennmuster f"ur weitere -Sprachen, wie beispielsweise britisches Englisch, dazuladen, m"ussen -diese Werte er"-h"oht werden. Vergessen Sie sp"ater nicht, da"s Sie -auch bei der "Uber"-setzung der Dokumente entsprechend mehr Platz -f"ur die Trennmuster be"-n"otigen. - -Ob Sie diese Werte in Ihrer \TeX-Installation "andern m"ussen, und -wenn ja, wie, entnehmen Sie bitte der zugeh"origen -Dokumentation. -H"aufig kann man die -Gr"o"se der Trennmustertabelle "uber Umgebungsvariablen, spezielle -Konfigurationsdateien oder Optionen in der Kommandozeile festlegen. - -Mit emTeX beispielsweise mu"s die Voreinstellung f"ur {\tt trie\_size} -"uber die Option {\tt -mt} erh"oht werden, wenn die o.\,g. drei -Trennmusterdateien gleichzeitig verf"ugbar sein sollen: -\begin{quote} - \begin{tabular}{ll} - Format erzeugen: & {\tt -mt27000} \\ - \TeX-Lauf: & {\tt -mt23000} - \end{tabular} -\end{quote} - - -\paragraph{Schritt 4:} -Erzeugen Sie durch Aufruf von Ini\TeX\ aus der Datei, die die Makros -f"ur das \TeX-Format, z.\,B. \LaTeX, ent"-h"alt, die Formatdatei. -% -\iffalse -Zum Beispiel wird die \LaTeXe-Formatdatei unter {\sc Unix} durch den -Aufruf -% -\begin{quote}\small - \verb:initex latex.ltx: -\end{quote} -% -erzeugt. -\fi -% Unix ist kein gutes Beispiel, weil ausgerechnet das verbreitete -% teTeX ein Konfigurationsskript hat, so dass IniTeX normalerweise -% nie manuell aufgerufen werden muss. -% -Genaueres dar"uber, wie Sie eine Formatdatei erstellen, entnehmen -Sie bitte der zu Ihrem \TeX-System geh"orenden Beschreibung. - -W"ahrend Ini\TeX\ abl"auft, -sollten Sie darauf achten, da"s auch die oben -angegebene Konfigurationsdatei und die Trennmusterdateien eingelesen -werden. Wenn dies nicht geschieht, haben Sie einen falschen Namen -f"ur die Konfigurationsdatei ge"-w"ahlt. "Uber"-pr"ufen Sie nochmals -den Dateinamen und ziehen Sie die Format"-dokumentation zu Rate. - -Bricht Ini\TeX\ beim Laden der Trennmusterdateien mit der -Fehlermeldung -% -\begin{quote}\small - {\tt \TeX\ capacity exceeded, sorry - [pattern memory=}{\it x}{\tt ]} -\end{quote} -% -ab, so haben Sie {\tt trie\_size} zu klein gew"ahlt, bei -% -\begin{quote}\small - {\tt \TeX\ capacity exceeded, sorry - [pattern memory ops=}{\it x}{\tt ]} -\end{quote} -% -wurde {\tt trie\_op\_size} zu klein gew"ahlt. Falls dies bei Ihrer -\TeX-Implemen"-tierung m"og"-lich ist, sollten Sie in diesen F"allen -die Tabellen entsprechend ver"-gr"o"sern (siehe Schritt~3). -Ansonsten k"onnen Sie nicht alle in Ihrer Konfigurationsdatei -angegebenen Trennmusterdateien in einer einzigen Formatdatei -verwenden. - -\paragraph{Schritt~5:} -Wenn alles ohne Probleme durchlief, sollte zum Schlu"s eine Datei mit -Endung~{\tt .fmt} und eine Protokolldatei mit Endung~{\tt .log} -erstellt worden sein. Kopieren Sie beide Dateien in das Verzeichnis, -wo Ihre \TeX-Implementierung nach Formatdateien sucht, falls -dieser Schritt nicht automatisch erfolgt. Die Protokolldatei sollten -Sie nicht l"oschen, da Sie anhand dieser Datei noch Monate sp"ater -nachvollziehen k"onnen, wie Sie diese Formatdatei erstellt haben. - -Als Kontrolle, welche Trennmuster f"ur welche Sprachen geladen wurden, -k"onnen Sie das Ende der Protokolldatei betrachten. Sie sollten beim -Erstellen eines \LaTeXe-Formates ungef"ahr folgende Zeilen erhalten: -% -\begin{quote}\small -\begin{verbatim} -This is emTeX (tex386), Version 3.14159 [4b] (INITEX) ... -**latex.ltx -(latex.ltx (texsys.cfg) -... -(e:/texmf/tex/latex/local/hyphen.cfg -== Loading hyphenation patterns: -(e:/texmf/tex/generic/hyphen/hyphen.tex) -\l@german=\language1 - -(e:/texmf/tex/generic/hyphen/ghyph31.tex -German Hyphenation Patterns `ghyphen' Version 3.1a <94/02/13>) -\l@ngerman=\language2 - -(e:/texmf/tex/generic/hyphen/gnhyph01.tex -New German Hyphenation Patterns `gnhyph01' Rev. 22) done.) -... -Beginning to dump on file latex.fmt -... -14 hyphenation exceptions -Hyphenation trie of length 21547 has 625 ops out of 750 - 237 for language 2 - 207 for language 1 - 181 for language 0 -No pages of output. -\end{verbatim} -\end{quote} -% -Wie Sie in der vorletzten und den vorhergehenden Zeilen sehen, enth"alt die -Formatdatei Trennmuster f"ur drei Sprachen, denen die Nummern \(0\) -bis~\(2\) zugewiesen wurden. Zusammen be"-n"o"-tigen Sie -\(\mbox{\tt trie\_size}=21547\) und \(\mbox{\tt trie\_op\_size}=625\) -von \(750\)~vorhandenen Pl"atzen im "`Trie"'-Bereich. Au"serdem -wurden mit \CS{hyphenation} zus"atzlich \(14\)~Trennungsausnahmen -geladen. Laden Sie andere Trennmuster, unterscheiden sich Ihre Werte -nat"urlich von den hier gezeigten Werten. - -\vspace{\baselineskip} - -In der Konfigurationsdatei, in der die Trennmuster geladen werden, -werden die den Sprachen zugeordneten Nummern in den {\it control -sequences\/} \mbox{\CS{l@}\(\langle\)Sprache\(\rangle\)} -abgespeichert. Wird sp"ater beim "Uber"-setzen eines Dokuments auf -eine Sprache gewechselt, f"ur die keine {\it control sequence\/} -definiert wurde, so verwenden die Pakete "`german"' und "`ngerman"' die -folgenden Default-Werte: -% -\begin{quote}\small -\begin{tabular}{@{}lcl@{}} -\multicolumn{1}{@{}c}{\it Sprache~}&\it Wert&\it oder, - falls gesetzt, Wert der Sprache\\[3pt] - \tt USenglish & 255 & \tt english\\ - \tt english & 255 & \tt USenglish\\ - \tt german & 255 & \tt austrian\\ - \tt austrian & 255 & \tt german\\ - \tt ngerman & 255 & \tt naustrian\\ - \tt naustrian & 255 & \tt ngerman\\ - \tt french & 255 -\end{tabular} -\end{quote} -% -In "alteren Versionen der Style-Option "`german"' wurden den Sprachen -Werte zwischen \(0\) und~\(5\) zugewiesen. Ab Version~2.5a wird der -Wert~\(255\) verwendet, um die Trennung f"ur alle undefinierten Sprachen -zu unterbinden. Dies funktioniert in den meisten F"allen, da im -allgemeinen f"ur den Wert~\(255\) keine Trennmuster geladen werden. - - -\section{Sonstiges} - -\subsection{Geschichtliches} - -Die Style-Option "`german"', die das Erstellen deutschsprachiger -Texte mit \TeX\ vereinfacht, wurde von Dr.\ H.\ Partl (Technische -Universit"at Wien) realisiert und zusammengestellt. Sie war als -"`rasche L"osung"' entstanden, die den Vorteil hat, da"s sie keine -"Anderungen an der \TeX-Software, den Schriftdateien und den -Trennmustern erfordert, sondern direkt auf die Originalversion von -\TeX\ aufgesetzt werden kann~\cite{Partl87,Partl88}. Diese "`rasche -L"osung"' hat sich be"-w"ahrt und besitzt heutzutage ein weites -Verbreitungsgebiet im deutschsprachigen Raum und dar"uberhinaus. - -Folgende Personen haben durch Ideen und Code-Beispiele zum Erfolg der -Style-Option "`german"' beigetragen (die Liste erhebt keinen Anspruch -auf Voll"-st"andigkeit): W.~Appelt, F.~Hommes und andere -(Gesellschaft f"ur Mathematik und Datenverarbeitung St.~Augustin), -T.~Hofmann ({\sc Ciba-Geigy} Basel), N.~Schwarz (Universit"at -Bochum), J.~Schrod (TH Darmstadt), D.~Armbruster (Universit"at -Stuttgart), R.~Sch\"opf (Universit"at Mainz, Universit"at Heidelberg, -Zuse-Zentrum f"ur Informationsverarbeitung Berlin), F.~Mittelbach -(Universit"at Mainz, EDS R"usselsheim), J.~Knappen (Universit"at -Mainz), P.~Breitenlohner (Max-Planck-Institut M\"unchen), -H.~Oberdiek (Universit"at Freiburg) und viele -andere. - -F"ur die Anpassung an die neue Rechtschreibung -war W.~Schmidt verantwortlich. - -Seit Version~2.3e vom 31.~Juli 1991 werden die Pakete "`german"' und "`ngerman"' -von B.~Raichle (Universit"at Stuttgart) gepflegt und weiterentwickelt. - - - -\subsection{Verf"ugbarkeit der Makropakete} - -Die Makropakete "`german"' und "`ngerman"' kann man, wie fast jede andere -\TeX-Soft\-ware, vom {\it Comprehensive \TeX\ Archive Network}, kurz -\mbox{CTAN}, erhalten. Dieses Netzwerk besteht z.\,Z.\ aus den -ftp-Servern {\tt ftp.dante.de}, {\tt ftp.tex.ac.uk} und {\tt ctan.tug.org}, -wobei auf -jedem dieser Ser\-ver der gleiche Inhalt zu finden ist. -\mbox{CTAN} dient als sogenannter "`Back\-bone"', d.\,h.\ das -komplette Archiv oder Teile davon werden von diesen Servern auf vielen -weiteren Ser\-ver "`gespiegelt"' vorgehalten, so da"s Sie die f"ur Sie -g"unstigste Zugriffs"-m"oglichkeit w"ahlen k"onnen. Au"serdem ist der -Inhalt von \mbox{CTAN} von mehreren Anbietern auch auf CD-ROM -er"-h"altlich. - -Die Pakete, die zugeh"orige Dokumentation und die -deutschen Trennmuster finden Sie auf \mbox{CTAN} in den -Verzeichnissen -\begin{quote} -\begin{verbatim} -tex-archive/language/german/ -tex-archive/language/hyphenation/ -\end{verbatim} -\end{quote} - -Die Mitgliedschaft in DANTE~e.V\negthinspace.\ bietet eine weitere -M"og"-lichkeit an die \TeX-Soft\-ware -und viele Kontakte zu anderen \TeX-Anwendern zu gelangen. -Informationen "uber DANTE~e.V\negthinspace.\ erhalten Sie von -% -\begin{quote} - DANTE, Deutschsprachige Anwendervereinigung - \TeX\ e.V\negthinspace. \\ - Postfach 10\,18\,40 \\ - 69008 Heidelberg \\ - Federal Republic of Germany\\[4pt] - Tel.: +49 6221 2\,97\,66\\ - Fax: +49 6221 16\,79\,06\\ - E-Mail: {\tt dante@dante.de}\\[4pt] - {\sc www}: {\tt http://www.dante.de/}\\ - ftp: {\tt ftp://ftp.dante.de/tex-archive/usergrps/dante/} -\end{quote} - - -\subsection{\protect\TeX~2.x vs.\ \protect\TeX~3.x und die - Style-Option "`german"'} - -Seit Oktober~1987 ist \TeX\ in der Version~\(3.x\) verf"ugbar. Da -diese Version gegen"-"uber \TeX~\(2.x\) einige Erweiterungen besitzt, -soll hier kurz auf die wichtigsten "Anderungen in der Style-Option -"`german"' eingegangen werden. - -\TeX\ Version~3 f"uhrte neue {\it control sequences\/} f"ur neue -Primitive und interne Register ein. Darunter f"allt das in "alteren -Versionen der Style-Option "`german"' verwendete Makro -\CS{set\-language}, das ab Version~2.3 in \CS{select\-language} -umbenannt wurde. Da \CS{set\-language} ein \TeX~3-Primitiv ist und -deshalb keine auf"-w"arts"-kompatible Definition angeboten werden -kann, mu"s in "alteren Texten der alte Makroname durch den neuen Namen -ersetzt werden. - -Zu \TeX{}s internen Registern kamen u.\,a.\ \CS{language}, -\CS{left\-hyphen\-min} und \CS{right\-hyphen\-min} hinzu, um -Trennmuster f"ur mehr als eine Sprache unter"-st"utzen zu k"on\-nen. -Diese drei Register bestimmen die zu verwendenden Trennmuster 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 Trennmuster nie direkt "andern, sondern sollte dazu -das \CS{select\-language}-Makro verwenden. Ab Version~2.4a der -Style-Option "`german"' werden f"ur die Sprachen {\tt german} und -{\tt austrian} zu"-s"atzlich \CS{french\-spacing} und die Werte f"ur -\CS{left\-hyphen\-min} und \CS{right\-hyphen\-min} auf zwei gesetzt. - - -\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\hbadness=2500 -\item In Versionen vor~2.2 fehlen die Befehle \verb:"S:, \verb:"CK:, - \verb:"FF: f"ur Gro"sbuchstaben und die entsprechenden Befehle f"ur - die Konsonanten L, M, N, P und~T. -\item In Versionen bis~2.2 gab es die undokumentierten Makros - \CS{original\-@dospecials} und \CS{original\-@sanitize}, die die - urspr"unglichen Definitionen von \CS{do\-special} und \CS{@sanitize} - enthielten, und \CS{german\-@dospecials}, \CS{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 Bis Version~2.3e wurden bei Verwendung von~\verb:"|: zur - Verhinderung von Ligaturen keine weiteren Trennstellen im Wort - gefunden. -\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:-Dateien f"uhrt. Au"serdem werden jetzt bis auf - die Z"ah\-ler"-allokationen alle Definitionen und Zuweisungen lokal - aus\-ge\-f"uhrt. -\item In Version~2.4a wurden durch zu"-s"atzliche \CS{/}-Anweisungen - "Uberschneidungen der "offnenden An"-f"uh\-rungs"-zeichen mit - nachfolgenden Zeichen bei Verwendung der - Com\-pu\-ter-Modern-Schriften f"ur viele F"alle verhindert. - Undefinierte \verb:"x:-Befehle f"uhren jetzt zu einer Fehlermeldung - -- dies f"uhrt oft dazu, da"s viele einfache Tippfehler schon beim - "Ubersetzen aufgedeckt werden. Die Befehle \verb:"z:, \verb:"Z:, - \verb:"~: und \verb:"=: kamen neu dazu. -\item Version~2.5a ent"-h"alt Anpassungen an \LaTeXe{} zur Verwendung - von Schriften mit Kodierung {\tt OT1} und~{\tt T1}. Die Befehle - \verb:"r: und~\verb:"R: kamen hinzu. Die Defaults f"ur - "`undefinierte"' Sprachen sind jetzt~\(255\) mit entsprechenden - Warnungen, um die Benutzer zu zwingen, beim Laden der Trennmuster - gleich die verwendete \CS{language}-Nummer zu sichern (z.\,B.\ mit - dem Babel-System oder einer von Hand geschriebenen - Konfigurationsdatei). Intern wurden, neben der Verwendung von {\it - docstrip}, kleinere Optimierungen ausgef"uhrt. -\item Bis Version~2.5b wird bei \verb:"ff: die ff-Ligatur verhindert, - obwohl diese bei Ausfall des dritten~"`\mbox{f}"' stehen sollte. - Diese "Anderung ab Version~2.5c kann zu gering"-f"ugig anderen - Trennungen im direkt auf \verb:"ff: folgenden Wortteil f"uhren. -\item Version~2.5c f"ugt das explizite Kerning der oberen deutschen - Anf"uhrungszeichen~"' f"ur T1-kodierte Schriften nicht mehr ein, da - die EC-Schriften (und die DC-Schriften ab Version~1.2 als deren - Testversion) diese Anf"uhrungszeichen etwas weiter nach links - plazieren, so da"s es sonst zu "Uber"-schneidungen kommt. -\item Version~2.5d erlaubt bei T1-kodierten Schriften das dort - notwendige Kerning der Anf"uhrungszeichen sowohl bei \CS{glqq}, - \CS{grqq}, \CS{flqq} und \CS{frqq} als auch bei \verb:"`:, - \verb:"':, \verb:"<: und~\verb:">:. -\item Mit Version~2.5e wird zus"atzlich das Paket "`ngerman"' - eingef"uhrt. Die Implementierung des undokumentierten Befehls - \verb:\iflanguage: wird dahingehend ge"andert, da"s in seinen - "`then"'- und "`else"'"~Argumenten auch Makros verwendet werden k"onnen, - deren Parameter erst hinter dem \verb:\iflanguage:-Befehl folgen. - Das erm"oglicht Konstrukte wie - \verb:Sto\iflanguage{german}{"}{f}ffetzen:. -\end{itemize} - - - -\begin{thebibliography}{99}\tolerance=2000\hbadness=2000 -\bibitem[Duden, Bd.~1]{Duden} {\sc Duden}, - Rechtschreibung der deutschen Sprache und der - Fremd"-w"orter. Hrsg.\ von der {\sc Duden}-Redaktion. - Auf der Grundlage der amtlichen Rechtschreibregeln. - Mannheim; Wien; Z"urich: Bibliographisches Institut, - 19.~Auf"|lage, 1986. -\bibitem[Partl87]{Partl87} Hubert Partl, - {\it Ein "`Minimal Subset"' f"ur einheitliche deutsche - \TeX-Befehle}, Vortrag und Diskussion beim 6.~Treffen der - deutschen \TeX-""Interessenten in M"unster (1987). - Anm.: ver"offentlicht in einer Datei namens {\tt germdoc.tex}, - mittlerweile ersetzt durch das Ihnen vorliegende - Dokument "`Kurzbeschreibung -- {\tt (n)german.sty}"'. -\bibitem[Partl88]{Partl88} Hubert Partl, - German \TeX, {\em TUGboat\/} 9(1):70--72, 1988. -\bibitem[Braams91]{Braams91} Johannes Braams, - Babel, a multilingual style-option system for use with \LaTeX's - standard document styles, - {\it TUGboat\/} 12(2):291--301, Juni 1991. -\bibitem[Goossens94a]{Goossens94a} Michel Goossens, Frank Mittelbach und - Alexander Samarin, {\it The \LaTeX\ Companion}, - Addison-Wesley, Reading, 2.~Auf"|lage, 1994. -\bibitem[Goossens94b]{Goossens94b} Michel Goossens, Frank Mittelbach und - Alexander Samarin, {\it Der \LaTeX-Begleiter}, - Addison-Wesley, Bonn, 1.~Auf"|lage, 1994. - Anm.: "uber"-arbeitete, deutsche "Uber"-setzung - von~\cite{Goossens94a}. -\end{thebibliography} - -\end{document} diff --git a/Master/texmf-dist/doc/generic/german/german.MISSING b/Master/texmf-dist/doc/generic/german/german.MISSING deleted file mode 100644 index acfad9e270d..00000000000 --- a/Master/texmf-dist/doc/generic/german/german.MISSING +++ /dev/null @@ -1,10 +0,0 @@ -If you need the style option/package "german.sty", you can find the -newest version on CTAN in - - tex-archive/languages/german/ - - -The participating hosts in the Comprehensive TeX Archive Network -(CTAN) are: - ftp.dante.de (Germany) - ftp.tex.ac.uk (England) diff --git a/Master/texmf-dist/doc/generic/german/hyphxmpl.cfg b/Master/texmf-dist/doc/generic/german/hyphxmpl.cfg deleted file mode 100644 index bed73ccfc1c..00000000000 --- a/Master/texmf-dist/doc/generic/german/hyphxmpl.cfg +++ /dev/null @@ -1,45 +0,0 @@ -%% -%% This is file `hyphxmpl.cfg', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% german.dtx (with options: `hyphcfg') -%% -%% ---------------------------------------------- -%% Beispielkonfigurationsdatei fuer: `hyphen.cfg' -%% Naeheres siehe Dokumentation `gerdoc.tex'. -%% Copyleft 1995-1998 by Bernd Raichle. - -%% Konfigurationsdatei -- Trennmuster: `hyphen.cfg' -\message{== Loading hyphenation patterns:} - -%% american english -\chardef\l@USenglish=\language -%% british english als "Dialekt" -\chardef\l@english=\l@USenglish -\input hyphen - -%% german -\newlanguage\l@german \language=\l@german -%% oesterreichisch als "Dialekt" -\chardef\l@austrian=\l@german -\input ghyph31 - -%% new german -\newlanguage\l@ngerman \language=\l@ngerman -%% oesterreichisch (neu) als "Dialekt" -\chardef\l@naustrian=\l@ngerman -\input gnhyph01 - -%% weitere Sprachen nach folgendem Schema: -% \newlanguage\l@SPRACHE \language=\l@SPRACHE -% \chardef\l@DIALEKT=\l@SPRACHE -% \input SPRACHhyphen - -%% Default-Trennmuster: USenglish -\language=\l@USenglish \lefthyphenmin=2 \righthyphenmin=3 -\message{done.} -\endinput -%% -%% End of file `hyphxmpl.cfg'. diff --git a/Master/texmf-dist/source/generic/german/german.dtx b/Master/texmf-dist/source/generic/german/german.dtx deleted file mode 100644 index 50500e75a06..00000000000 --- a/Master/texmf-dist/source/generic/german/german.dtx +++ /dev/null @@ -1,2331 +0,0 @@ -% \iffalse meta-comment -%<*!hyphcfg> -%<*!driver> -% \begin{macrocode} -% -% Copyright (C) 1987-1990 by H.Partl -% Copyright (C) 1991-1997 by B.Raichle and DANTE e.V. -% Copyright (C) 1998 by B.Raichle -% All rights reserved. -% -% Please read the documentation file `gerdoc.tex' for more -% information of how to use this macro file and how to install -% the pattern files necessary for german hyphenation. -% -% \end{macrocode} -% -% INSTALLATION GUIDE: -% -% The distribution of the `german' package consists of a set of -% files, which are packed and documented in _one_ `docstrip archive -% file' called `german.dtx'. This archive file can be unpacked to -% create the necessary files containing the macros, implementation -% documentation, and other files. -% -% To unpack this archive file you need: -% -% * `german.ins' (containing docstrip installation instructions) -% -% * `german.dtx' (it is the file you are currently reading) -% -% * `docstrip.tex' version 2.4 or newer -% (You can find this file in the LaTeX2e release; -% `docstrip' can be used with plainTeX, too!) -% -% Then run `german.ins' through plainTeX or LaTeX to unpack the -% archive file: -% -% tex german.ins -% or -% latex german.ins -% -% This will create a set of files which contain the macro code or -% code to produce the implementation documentation of the `german' -% bundle of files. -% -% --------------- start of docstrip archive file ------------------ -% -% To get the formatted code documentation do the following steps -% -% latex german.dtx -% latex german.dtx -% makeindex -s gind.ist german.idx -% makeindex -s gglo.ist -o german.gls german.glo -% latex german.dtx -% -% -%</!driver> -%<*driver> -\ifx\documentclass\undefined % LaTeX2e or 2.09? - \documentstyle[newdoc,german]{article} - \ifx\LaTeXe\undefined - \newcommand{\LaTeXe}{% - \mbox{\LaTeX\kern.15em\(2_{\textstyle\varepsilon}\)}}\fi - \newcommand{\emph}[1]{{\em #1}} - \newcommand{\textit}[1]{{\it #1}} - \newcommand{\textbf}[1]{{\bf #1}} - \newcommand{\texttt}[1]{{\tt #1}} - \newcommand{\cs}[1]{{\tt\symbol{92}#1}} - \MakeShortverb{\|}\CodelineIndex -\else - \documentclass[a4paper]{ltxdoc} - \usepackage{german} - \EnableCrossrefs - %\DisableCrossrefs % Say \DisableCrossrefs if index is ready - \CodelineIndex \RecordChanges -\fi -\begin{document} -\setcounter{StandardModuleDepth}{0} -\DocInput{german.dtx} -\PrintIndex \PrintChanges -\end{document} -%</driver> -%<*!driver> -% -% \fi -% \CheckSum{2166} -% -% \CharacterTable -% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z -% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z -% Digits \0\1\2\3\4\5\6\7\8\9 -% Exclamation \! Double quote \" Hash (number) \# -% Dollar \$ Percent \% Ampersand \& -% Acute accent \' Left paren \( Right paren \) -% Asterisk \* Plus \+ Comma \, -% Minus \- Point \. Solidus \/ -% Colon \: Semicolon \; Less than \< -% Equals \= Greater than \> Question mark \? -% Commercial at \@ Left bracket \[ Backslash \\ -% Right bracket \] Circumflex \^ Underscore \_ -% Grave accent \` Left brace \{ Vertical bar \| -% Right brace \} Tilde \~} -% -% \DoNotIndex{\',\(,\),\-,\.,\/,\{,\},\^,\`,\|,\ ,\@,\x,\Z} -% \DoNotIndex{\@M,\@m,\m@ne,\z@,\z@skip,\@ne,\tw@,sixt@@n} -% \DoNotIndex{\count@,\dimen@,\advance,\day,\month,year,\relax} -% \DoNotIndex{\begin,\end,\bgroup,\egroup,\begingroup,\endgroup} -% \DoNotIndex{\bf,\em,\it,\rm,\tt,\textbf,\textit,\texttt,\emph} -% \DoNotIndex{\expandafter,\noexpand,\string,\the,\ifhmode,\ifmmode} -% \DoNotIndex{\ifcase,\or,\else,\fi,\if,\ifdim,\ifnum,\ifx} -% \DoNotIndex{\do,\afterassignment,\number,\escapechar,\space} -% \DoNotIndex{\def,\edef,\let,\newcommand,\undefined,\active} -% \DoNotIndex{\accent,\box,\dp,\ht,\wd,\char,\chardef,\discretionary} -% \DoNotIndex{\catcode,\csname,\endcsname,\hbox,\hskip,\kern} -% \DoNotIndex{\font,\fontdimen,\scriptscriptstyle,\textstyle} -% \DoNotIndex{\lccode,\lowercase,\sfcode,\spacefactor,\penalty} -% \DoNotIndex{\mathchar,\mathchardef,\mathaccent,\varepsilon,\m@th} -% \DoNotIndex{\empty,\@empty,\leavevmode,\makeatletter,\mbox} -% \DoNotIndex{\errhelp,\errmessage,\message,\wlog,\write,\immediate} -% \DoNotIndex{\lower,\raise,\sfcode,\spacefactor,\setbox,\toks} -% \DoNotIndex{\documentclass,\documentstyle,\LaTeX,\LaTeXe,\TeX} -% \DoNotIndex{\ProvidesPackage,\usepackage,\CodelineIndex,\cs} -% \DoNotIndex{\input,\endinput,\DocInput} -% -% -% \title{Die Makropakete "`german"' und "`ngerman"' f"ur \LaTeXe, \LaTeX~2.09, -% Plain-\TeX{} und andere darauf basierende Formate} -% \date{8.~Juli 1998} -% \author{Bernd Raichle \\ -% E-mail: \texttt{raichle@Informatik.Uni-Stuttgart.DE}} -% \maketitle -% -% Dieses Dokument beschreibt Interna, Einschr"ankungen und einige -% Tricks und Kniffe, die bei der Implementierung der Makropakete -% "`german"' und "`ngerman"' verwendet werden. -% Wie diese Pakete installiert -% und verwendet werden, ist in der "`Kurzbeschreibung -- -% \texttt{german.sty} (Version~2.5)"' zu finden. Diese ist in der -% Datei \texttt{gerdoc.tex} zu finden, die mit der Datei -% \texttt{german.dtx} bzw. den Makropaketen mitgeliefert wird -% und ist f"ur den Endanwender gedacht. -% -% Das vorliegende Dokument ist \emph{nicht} f"ur den Endanwender -% gedacht. Es beschreibt die Implementierung und ist zum einen f"ur -% den zuk"unftige Verwalter dieser Pakete gedacht, zum anderen -% f"ur alle Makro-Schreiber, die Ideen und Verbesserungsvorschl"age -% direkt am Code austesten wollen. -% -% Der Code der beiden Pakete "`german"' und "`ngerman"' ist weitgehend -% identisch. Wo im folgenden nur von "`german"' die Rede ist, sind -% \emph{beide} Pakete gemeint; auf Unterschiede wird stets explizit -% hingewiesen. Mit |<old>| gekennzeichnete Codezeilen geh"oren zu -% "`german"', mit |<new>| gekennzeichnete zu "`ngerman"'. -% -% \changes{2.5e (beta 1)}{98/05/05}{Es kann wahlweise "`german"' oder "`ngerman"' -% erzeugt werden, indem \textsc{DocStrip} mit den Optionen \texttt{old} -% oder \texttt{new} aufgerufen wird.} -% \StopEventually{} -% -% \tableofcontents -% -% \ifx\emergencystretch\undefined \else -% \setlength{\emergencystretch}{2em} -% \fi -% \hbadness=2000 -% -% \section{Identifikation des Pakets} -% -% Damit diese Datei problemlos mehrmals eingelesen werden kann, wird -% hier getestet, ob die Datei bereits geladen wurde. Dadurch wird -% verhindert, da"s Makros, Z"ahler, etc.\ noch einmal und damit -% unn"otig definiert werden und in einigen F"allen auch -% zus"atzliche Ressourcen belegen. Damit auch Nutzer mit -% vorgeladenen, alten "`german"'-Versionen in den Genu"s dieser -% neuen Version kommen, wird nicht wie in "alteren Versionen die -% Existenz der Anweisung Befehl |\mdqon| "uberpr"uft, sondern auf -% eine Versionsnummer abgetestet. Diese Versionsnummer besteht aus -% der Jahreszahl und einer pro Jahr fortlaufenden Nummer. -% -% Die \textit{control sequence} f"ur die Versionsnummer sollte mit -% keinem anderen Paket kollidieren. Daher wird der Pr"afix -% \texttt{grmn@} bzw. \texttt{ngrm@} im Namen verwendet. Da AMS-\TeX{} ein aktives -% At-Zeichen verwendet, wird dieses hier explizit mit |\string| -% deaktiviert, bis wir den |\catcode| "andern. -% -% \changes{2.5c}{96/02/26}{Total falsche Logik zur Verhinderung -% mehrmaligen Lesen des Styles korrigiert, \cs{ifdim} durch -% \cs{ifnum} ersetzt, \cs{grmn@VersionNo} mu"s mit \cs{csname} -% erzeugt werden, da \cs{catcode} des At-Zeichens noch unbekannt -% ist, Versionsnummer sollte in allen F"allen gesetzt werden.} -% \changes{2.5c}{96/04/21}{Mit AMS-\TeX{} aktives At-Zeichen -% in \cs{grmn@VersionNo} explizit mit \cs{string} deaktivieren -% (found by \texttt{Michael.Schgraffer@uibk.ac.at}, 95/10/10).} -% \changes{2.5e (beta 2)}{98/05/12}{Abgefragte Versionsnummer korrigiert; -% 9805 statt 9701)} -% \begin{macrocode} -%<old>\expandafter\ifx\csname grmn\string @VersionNo\endcsname\relax -%<new>\expandafter\ifx\csname ngrm\string @VersionNo\endcsname\relax -\else -%<old> \ifnum\number\csname grmn\string @VersionNo\endcsname<9806\relax -%<new> \ifnum\number\csname ngrm\string @VersionNo\endcsname<9806\relax -%<old> \else \germanTeX \expandafter\expandafter\expandafter\endinput -%<new> \else \ngermanTeX \expandafter\expandafter\expandafter\endinput - \fi\fi -% \end{macrocode} -% -% Ist "`german"' noch nicht geladen oder wurde bisher eine "altere -% Version verwendet, so wird der Rest dieser Datei abgearbeitet. -% Zuerst wird die Versionsnummer gesetzt. Da diese gr"o"ser als 255 -% ist, wird dazu |\mathchardef| verwendet. -% \begin{macrocode} -%<old>\expandafter\mathchardef\csname grmn\string @VersionNo\endcsname -%<new>\expandafter\mathchardef\csname ngrm\string @VersionNo\endcsname -=9806\relax % = v2.5e -% \end{macrocode} -% -% -% Die Style-Option "`german"' soll sowohl von Plain-\TeX\ als auch -% von den unterschiedlichen \LaTeX-Versionen verwendet werden -% k"onnen. Deshalb wird f"ur die Ausgabe das Primitiv |\message| -% verwendet. -% \changes{2.5e (beta 2)}{98/05/12}{Meldungen korrigiert und vereinfacht.} -% -% \begin{macrocode} -\message{v2.5e 1998-07-08} -% \end{macrocode} -% -% F"ur \LaTeXe\ wird die Style-Option als Paket deklariert. Da -% andere Style-Optionen den Befehl |\ProvidesPackage| meist nur auf -% \texttt{undefined} abtesten, wird hier eine auf den ersten Blick -% komisch anmutende Konstruktion mit einer Gruppe verwendet. Sie -% verhindert aber, da"s ein vorher undefiniertes |\ProvidesPackage| -% danach die Bedeutung |\relax| hat. Dieser Gruppierungstrick wird -% noch einige Male verwendet. -% -% \begin{macrocode} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname ProvidesPackage\endcsname\relax\else -%<old> \ProvidesPackage{german}[1998/07/08 v2.5e % -%<new> \ProvidesPackage{ngerman}[1998/07/08 v2.5e % - Support for writing german texts (br)] -\fi -% \end{macrocode} -% -% Da diese Datei auch mit einem simplen |\input| geladen werden -% kann, andererseits aber auf interne Befehle zugegriffen werden -% mu"s, wird der \textit{category code} des Zeichens~\texttt{@} -% gerettet, bevor er auf "`letter"' ge"andert wird. -% -% \begin{macrocode} -\chardef\atcode=\catcode`\@ -\catcode`\@=11 % \makeatletter -% \end{macrocode} -% -% -% \section{Kompatibilit"atsmakros} -% -% \subsection{Low-Level-Makros} -% -% Einige Makros aus dem \LaTeX-Format sind sehr hilfreich und werden, -% falls sie nicht definiert wurden, hier definiert. -% \changes{2.5c}{95/01/24}{Im Makro \cs{@ifundefined} wurde in den -% Namen der beiden Hilfsmakros in v2.5a/b das \texttt{dq} -% vergessen.} -% \begin{macrocode} -\expandafter\ifx\csname @ifundefined\endcsname\relax - \def\@ifundefined#1{% - \expandafter\ifx\csname #1\endcsname\relax - \expandafter\grmn@dqfirst\else\expandafter\grmn@dqsecond\fi} -\fi -% \end{macrocode} -% Die Makros |\grmn@dqfirst|\label{grmndqfirst} und |\grmn@dqsecond| -% werden sp"ater nochmals verwendet. -% \begin{macrocode} -\def\grmn@dqfirst#1#2{#1} -\def\grmn@dqsecond#1#2{#2} -% \end{macrocode} -% -% \subsection{Kompatibilit"atsmakros f"ur NFSS, Version~2} -% -% Das neue Schriftauswahlschema~NFSS hat in Version~2 den neuen -% Schriftparameter |\fontencoding|. NFSS~2 wurde offiziell im -% ersten \LaTeXe-Release vom 1.~Juni 1994 eingef"uhrt, jedoch im -% n"achsten Release vom 1.~Dezember 1995 durch Fehlerberichtigungen, -% Erweiterungen und neu eingef"uhrte Befehle verbessert. -% -% Im folgenden wird angenommen, da"s NFSS~2 vorhanden ist, wenn der -% Befehl |\DeclareTextSymbol| definiert ist. -% -% \begin{macrocode} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname DeclareTextSymbol\endcsname\relax -% \end{macrocode} -% -% \subsubsection{Makros f"ur Textzeichen -- ohne NFSS~2} -% -% Der symbolische Name |\SS| f"ur ein SS mu"s f"ur \LaTeX~2.09 und -% Plain-\TeX{} definiert werden, falls er noch nicht bekannt ist. -% \changes{2.5d}{97/04/13}{F"ur \texttt{\symbol{`\"}S} wird -% \cs{SS} verwendet, das in \LaTeXe{} bereits definiert ist.} -% \begin{macrocode} -\@ifundefined{SS}{\def\SS{SS}}{} -% \end{macrocode} -% -% -% Die nachfolgenden Abschnitte beschreiben die notwendigen -% Deklarationen f"ur NFSS~2. -% \begin{macrocode} -\else -% \end{macrocode} -% -% \subsubsection{Deklarationsmakros} -% -% Die neueren NFSS~2-Versionen haben einige Befehle, die f"ur Symbole -% und Akzentmakros Defaultwerte f"ur diejenigen Schriften deklarieren, -% f"ur die keine expliziten Symboldeklarationen angegeben wurden. -% Diese Befehle werden f"ur "altere NFSS~2-Versionen in einer sehr -% stark vereinfachten Realisierung nachfolgend definiert. -% \emph{In diesen Definitionen werden einige Interna aus -% \LaTeXe/NFSS~2 verwendet, so da"s dieser Teil der Style-Option -% zuk"unftig m"oglicherweise zu Fehlern f"uhren kann! Dieser Teil ist -% als schlechtes Beispiel zu betrachten -- es zeigt, wie man solche -% Dinge m"oglichst nicht realisieren sollte. Jedoch sind diese -% Definitionen notwendig, damit diese Style-Option auch mit diesen -% "alteren Versionen laufen kann.} -% \textbf{Es ist daher immer ratsam, eine alte \LaTeXe-Release durch -% die neueste Version zu ersetzen.} -% Aus diesem Grund wird hier ein Hinweis f"ur den Benutzer dieses -% alten Release ausgegeben. In der n"achsten Version wird -% German-Style abbrechen oder den sehr viel einfacheren Code -% f"ur \LaTeX~2.09 verwenden. -% -% \changes{2.5c}{96/04/28}{Warnung und Hinweis auf Update bei -% Benutzung der veralteten \LaTeXe-Release vom Juni~1994.} -% \begin{macrocode} -% \changes{2.5e (beta 1) }{98/05/04}{Formulierung ge"andert.} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname ProvideTextCommandDefault\endcsname\relax - \immediate\write17{} - \immediate\write17{% -!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!} - \immediate\write17{% -!! Dies ist eine zu alte LaTeX2e-Version, die nicht} - \immediate\write17{% -!! alle fuer german/ngerman notwendigen Deklarationen} - \immediate\write17{% -!! zur Verfuegung stellt. Dennoch koennen Sie diese} - \immediate\write17{% -!! Pakete, eventuell mit kleinen Fehlern, verwenden.} - \immediate\write17{!!} - \immediate\write17{% -!! Bitte installieren Sie eine neuere LaTeX2e-Version,} - \immediate\write17{% -!! da zukuenftige Versionen der Pakete diese} - \immediate\write17{% -!! LaTeX2e-Version nicht mehr unterstuetzen werden!} - \immediate\write17{% -!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!} - \immediate\write17{} -\fi -% \end{macrocode} -% -% Weiterhin wird angenommen, da"s der Befehl |\providecommand| -% verf"ugbar ist. Dieser Befehl k"onnte in einer zuk"unftigen -% NFSS~2-Version, die f"ur Plain-\TeX\ angepa"st wurde, nicht mehr -% verf"ugbar sein. -% -% |\UseTextSymbol{|\meta{encoding}|}{|\meta{symbol}|}| schaltet die -% angegebene Schriftkodierung zur Ausgabe dieses Zeichens um. -% \begin{macrocode} -\@ifundefined{UseTextSymbol}{% - \def\UseTextSymbol#1#2{{\fontencoding{#1}\selectfont #2}} -}{} -% \end{macrocode} -% -% |\UseTextAccent{|\meta{encoding}|}{|\meta{accent}|}{|\meta{base}|}| -% verwendet das Akzentzeichen aus der Schrift mit der angegebenen, -% eventuell vom aktuellen Wert abweichenden Kodierung. -% \begin{macrocode} -\@ifundefined{UseTextAccent}{% - \def\UseTextAccent#1#2#3{% - {\let\@curr@enc\f@encoding - \fontencoding{#1}\selectfont - #2{\fontencoding\@curr@enc\selectfont #3}}}% -}{} -% \end{macrocode} -% -% |\ProvideTextCommand{|\meta{csname}|}{|\meta{encoding}|}[|^^A -% \meta{number}|][|\meta{default}|]{|\meta{definition}|}| definiert -% einen Befehl, der nur f"ur die angegebene Kodierung verwendet wird, -% falls dieser Befehl noch nicht f"ur diese Kodierung definiert -% wurde. -% \begin{macrocode} -\@ifundefined{ProvideTextCommand}{% - \def\ProvideTextCommand#1#2{% - %%% misses \RobustTextCommand{#1}{...etc.etc...}!! - \expandafter\providecommand\csname #2\string#1\endcsname}% -}{} -% \end{macrocode} -% -% |\ProvideTextCommandDefault{|\meta{command}|}{|\meta{definition}|}| -% definiert nun eine Defaultdefinition f"ur alle Kodierungen, f"ur -% die keine explizite Definition angegeben wurde. Leider w"urde eine -% einigerma"sen komplette Realisierung einer Re-Implementierung der -% neueren NFSS~2-Versionen entsprechen, so da"s hier einfach nur eine -% Definition f"ur die Kodierung~\glq U\grq{} get"atigt wird, die f"ur -% unbekannte Kodierungen verwendet wird. -% \begin{macrocode} -\@ifundefined{ProvideTextCommandDefault}{% - \def\ProvideTextCommandDefault#1{% - \ProvideTextCommand{#1}{U}}% -}{} -% \end{macrocode} -% -% Mit |\DeclareTextCompositeCommand{|\meta{command}|}{|^^A -% \meta{encoding}|}{|\meta{char}|}{|\meta{definition}|}| kann f"ur die -% Umlaut- und Trema-Kombinationen sehr bequem eine Definition -% angegeben werden. Bevor hier f"ur die "alteren NFSS~2-Versionen -% eine eigene L"osung "`gestrickt"' wird, verl"a"st sich die -% nachfolgende Definition auf einige \LaTeXe/NFSS~2-Interna! -% \begin{macrocode} -\@ifundefined{DeclareTextCompositeCommand}{% - \def\DeclareTextCompositeCommand#1#2#3#4{% - % define a `dummy' text composite - \DeclareTextComposite{#1}{#2}{#3}{`\Z}% - % then redefine this command including the new command - \expandafter\def\csname\expandafter\string\csname - #2\endcsname\string#1-\string#3\endcsname##1##2{#4}}% -}{} -% \end{macrocode} -% -% Damit ist gesichert, da"s bei Vorliegen von \LaTeXe/NFSS~2 die -% wichtigsten Deklarationen unabh"angig von der \LaTeXe-Version -% verf"ugbar sind. Dies vereinfacht die nachfolgenden Deklarationen. -% -% \subsubsection{Makros f"ur Textzeichen} -% -% Neben den zuvor aufgezeigten Makros definieren die neueren -% NFSS~2-Versionen noch symbolische Namen f"ur viele der in den -% Schriften vorhandenen Lettern. Im folgenden werden zum einen f"ur -% die "alteren Versionen die anschlie"send verwendeten symbolischen -% Namen nachdefiniert und zum anderen werden Definitionen, die in -% "alteren \LaTeXe/NFSS~2-Versionen fehlen, f"ur die -% Kodierung~\texttt{OT1} und Defaults f"ur einige Lettern -% nachgereicht. -% -% \paragraph{Spezielle Behandlung von Babel~v3.5:} -% -% Babel Version~3.5 definiert f"ur Nicht-\LaTeXe-Formate die -% wichtigsten NFSS~2-Anweisung zur Deklaration der symbolischen Namen. -% Dadurch meint der Code des German-Style, da"s selbst f"ur diese -% Formate ein vollst"andiges \LaTeXe{} mit NFSS~2 vorl"age. Leider -% fehlten in "alteren Babel-Versionen wichtige Standarddeklarationen, -% was zur Folge hat, da"s es bei deren Verwendung zu Fehlern wie -% z.\,B.\ Endlosschleifen kommen kann. Eine Endlosschleife wird dabei -% durch Deklaration eines Defaults mit -% \cs{Provide\-Text\-Command\-Default} verursacht, wenn das Symbol -% bisher noch nicht deklariert wurde. In Babel Version~3.6 -% werden daher jetzt die Symbole \cs{ss}, \cs{i}, -% \cs{textquotedblright} und \cs{textquoteright} deklariert, die in -% Version~3.5 fehlten. -% -% In den folgenden Deklarationen werden NFSS~2-Interna verwendet: -% Es wird beispielsweise angenommen, da"s die Existenz des Makros -% \texttt{\symbol{`\\}OT1\symbol{`\\}ss} -- ein Makro! -- anzeigt, -% da"s \cs{ss} f"ur NFSS~2 deklariert wurde. Ist dies f"ur die vier -% Symbole \cs{ss}, \cs{i}, \cs{textquotedblright} und -% \cs{textquoteright} der Fall, werden sie hier nachdeklariert. -% Dabei wird dies in der Protokolldatei vermerkt, um eventuell -% diese Ursache f"ur auftretende Fehler leichter erkennen zu k"onnen. -% \cs{textquotedblright} und \cs{textquoteright} werden sp"ater noch -% deklariert, so da"s dies hier noch nicht notwendig ist. -% -% \changes{2.5d}{97/04/13}{Die fehlenden Deklarationen f"ur \cs{ss} und -% \cs{i}, werden f"ur Babel~v3.5, falls ben"otigt, nachdeklariert. -% F"ur \cs{textquotedblright} und \cs{textquoteright} hier nicht -% notwendig, da dies hier ein paar Zeilen sp"ater gemacht wird.} -% \begin{macrocode} -\@ifundefined{OT1\string\ss}{% -%<old> \wlog{german: Re-declaration of \string\ss\space for OT1!}% -%<new> \wlog{ngerman: Re-declaration of \string\ss\space for OT1!}% - \DeclareTextSymbol{\ss}{OT1}{25}}{} -\@ifundefined{OT1\string\i}{% -%<old> \wlog{german: Re-declaration of \string\i\space for OT1!}% -%<new> \wlog{ngerman: Re-declaration of \string\i\space for OT1!}% - \DeclareTextSymbol{\i}{OT1}{16}}{} -% \end{macrocode} -% -% \paragraph{Defaults f"ur Symbole:} -% -% F"ur die Makros |\"|, |\ss|, |\i| und |\SS| sollte ein Default -% definiert sein. -% \changes{2.5d}{97/04/13}{F"ur \texttt{\symbol{`\"}S} wird -% \cs{SS} verwendet, das in \LaTeXe{} bereits definiert ist.} -% \begin{macrocode} -\ProvideTextCommandDefault{\"}{\UseTextAccent{OT1}{\"}} -\ProvideTextCommandDefault{\ss}{\UseTextSymbol{OT1}\ss} -\ProvideTextCommandDefault{\i}{\UseTextSymbol{OT1}\i} -\ProvideTextCommandDefault{\SS}{SS} -% \end{macrocode} -% -% Dann sollte auch sichergestellt sein, da"s symbolische Namen f"ur -% die Zeichen definiert sind, die in den Makros f"ur die -% Anf"uhrungszeichen verwendet werden. Die Defaults werden jeweils -% aus den Schriften in Kodierung~\texttt{OT1} genommen. -% -% Zuerst die Zeichen f"ur die Anf"uhrungszeichen "`\ldots"' und -% \glq\ldots\grq: -% \begin{macrocode} -\@ifundefined{textquotedblleft}{% - \ProvideTextCommandDefault{\textquotedblleft}{% - \UseTextSymbol{OT1}\textquotedblleft}% - \DeclareTextSymbol{\textquotedblleft}{OT1}{92}% -% \end{macrocode} -% (oder |\DeclareTextCommand{\textquotedblleft}{OT1}{``}|) -% \begin{macrocode} - \DeclareTextSymbol{\textquotedblleft}{T1}{16}% -}{} -\@ifundefined{textquotedblright}{% - \ProvideTextCommandDefault{\textquotedblright}{% - \UseTextSymbol{OT1}\textquotedblright}% - \DeclareTextSymbol{\textquotedblright}{OT1}{`\"}% -% \end{macrocode} -% (oder |\DeclareTextCommand{\textquotedblright}{OT1}{''}|) -% \begin{macrocode} - \DeclareTextSymbol{\textquotedblright}{T1}{17}% - %% \DeclareTextSymbol{\textquotedbl}{T1}{`\"}% -}{} -\@ifundefined{textquoteleft}{% - \ProvideTextCommandDefault{\textquoteleft}{% - \UseTextSymbol{OT1}\textquoteleft}% - \DeclareTextSymbol{\textquoteleft}{OT1}{`\`}% - \DeclareTextSymbol{\textquoteleft}{T1}{`\`}% -}{} -\@ifundefined{textquoteright}{% - \ProvideTextCommandDefault{\textquoteright}{% - \UseTextSymbol{OT1}\textquoteright}% - \DeclareTextSymbol{\textquoteright}{OT1}{`\'}% - \DeclareTextSymbol{\textquoteright}{T1}{`\'}% -}{} -\@ifundefined{quotesinglbase}{% - \DeclareTextSymbol{\quotesinglbase}{T1}{13}}{} -\@ifundefined{quotedblbase}{% - \DeclareTextSymbol{\quotedblbase}{T1}{18}}{} -% \end{macrocode} -% Danach die Anf"uhrungszeichen in franz"osischer Form ">\ldots"< und -% \frq\ldots\flq: -% \begin{macrocode} -\@ifundefined{guillemotleft}{% - \DeclareTextSymbol{\guillemotleft}{T1}{19}}{} -\@ifundefined{guillemotright}{% - \DeclareTextSymbol{\guillemotright}{T1}{20}}{} -\@ifundefined{guilsinglleft}{% - \DeclareTextSymbol{\guilsinglleft}{T1}{14}}{} -\@ifundefined{guilsinglright}{% - \DeclareTextSymbol{\guilsinglright}{T1}{15}}{} -% \end{macrocode} -% -% Damit sind die wichtigsten Makros so definiert, da"s die -% nachfolgenden Definitionen nur noch wenige F"alle unterscheiden -% m"ussen und damit "ubersichtlicher definiert werden k"onnen. -% -% Die nun folgenden Definitionen sind nicht nur f"ur NFSS~2 -% verwendbar, so da"s das \texttt{if}-NFSS~2 vorl"aufig beendet werden -% kann. -% \begin{macrocode} -\fi -% \end{macrocode} -% -% \section{Low-Level-Befehle f"ur die Style-Option} -% -% Die Style-Option verwendet Low-Level-Befehle zur Implementierung -% von An"-f"uhrungs"-zeichen, der Umlaute u.\,a. Einige dieser -% Befehle sind auch f"ur Benutzer verf"ugbar. -% -% \subsection{Verschiedenes} -% -% \LaTeX\ verwendet den Befehl |\protect|, um \emph{fragile} -% Kommandos zu sch"utzen. Dieser Befehl mu"s f"ur Plain-\TeX\ -% nachdefiniert werden. Folgendes Code-St"uck definiert diesen -% Befehl als |\relax|, falls er noch undefiniert ist, -% andernfalls wird |\protect| nicht ge"andert. -% \begin{macrocode} -\expandafter\let\expandafter\protect\csname protect\endcsname -% \end{macrocode} -% -% Mit |\allowhyphens| kann man \TeX\ signalisieren, da"s ein -% trennbarer Wortteil endet (durch den |\penalty1000|- oder -% |\nobreak|-Befehl) und ein neuer beginnt (durch den |\hskip|-Befehl, -% der \textit{glue} ein"-f"ugt). Dieser Trick ist in Anhang~D des -% \TeX{}book beschrieben, die Interna dazu in Anhang~H. -%\begin{verbatim} -%\def\allowhyphens{\nobreak \hskip 0pt plus 0pt\relax} -%\end{verbatim} -% entspricht der nachfolgenden Definition: -% \begin{macrocode} -\def\allowhyphens{\penalty\@M \hskip\z@skip} -% \end{macrocode} -% -% Neben den Umlauten mu"s auch daf"ur gesorgt werden, da"s am und nach -% dem Buchstaben~{\ss} getrennt werden kann, \TeX{} also diesen Letter -% als Wortbestandteil erkennt. Dazu mu"s dem Letter ein -% Lowercase-Code |\lccode| gr"o"ser als Null zugewiesen sein. -% |\ss|~entspricht f"ur Schriften in Kodierung~\texttt{OT1} dem -% Letter auf Position~|^^Y|. Um W"orter mit diesem Letter komplett -% trennbar zu machen, reicht es daher aus, wenn man den |\lccode| -% dieser Letter auf einen Wert ungleich Null setzt. F"ur ein |\ss| -% aus anderen Schriften mu"s dies in der entsprechenden Makrodatei -% getan werden, in dem die Schrift und der Befehl~|\ss| redefiniert -% wird. -% \begin{macrocode} -\lccode`\^^Y=`\^^Y -% \end{macrocode} -% -% \subsection{Anf"uhrungszeichen} -% -% Die deutschen Anf"uhrungszeichen werden f"ur Schriften, die keine -% geeigneten Lettern besitzen, durch Box-Manipulationen aus den im -% englischsprachigen Raum gebr"auchlichen Anf"uhrungszeichen erzeugt. -% -% |\set@low@box| verschiebt das Zeichen im Argument, normalerweise `` -% bzw.\ '', auf die H"ohe des Kommas in dieser Schrift. Achtung: Da -% das Makro den Inhalt der Box 0, 2 und ein L"angenregister "andert, -% sollte dieses Makro nur innerhalb einer Gruppe aufgerufen werden. -% \begin{macrocode} -\def\set@low@box#1{\setbox\tw@\hbox{,}\setbox\z@\hbox{#1}% - \setbox\z@\hbox{\dimen@\ht\z@ \advance\dimen@ -\ht\tw@ - \lower\dimen@\box\z@}% - \ht\z@\ht\tw@ \dp\z@\dp\tw@} -% \end{macrocode} -% -% Normalerweise wird der aktuelle |\spacefactor| nicht durch -% An"-f"uhrungs"-zeichen ge"-"andert, so da"s bei aktiviertem -% |\nonfrenchspacing| nach einem Satzzeichen und direkt nachfolgenden -% Anf"uhrungszeichen ein gr"o"serer Wortzwischenraum gelassen wird. -% Da \TeX\ den |\spacefactor| nach einem Box-Befehl auf~1000 setzt, -% mu"s man diesen Wert von Hand vorher retten und danach wieder -% setzen, um dieses Verhalten nicht zu "andern. -% \begin{macrocode} -\def\save@sf@q#1{{\ifhmode - \edef\@SF{\spacefactor\the\spacefactor}\else - \let\@SF\empty \fi \leavevmode #1\@SF}} -% \end{macrocode} -% -% \subsection{Umlaute} -% -% Wird ein Umlaut mit Hilfe des |\accent|-Primitivs erzeugt, werden -% bei den meisten Schriften die Umlautpunkte zu hoch gesetzt. Die -% Umlautpunkte entsprechen dadurch eher einem Trema. Das Makro -% |\umlaut| ersetzt das \TeX-Primitiv, um Umlaute mit etwas tieferen -% Umlautpunkten zu erzeugen. Die Funktionsweise beruht auf dem -% folgenden kleinen Trick: Das |\accent|-Primitiv hat die Eigenschaft, -% die aktuelle \textit{x-height} und die Gr"o"se des Buchstabens zu -% verwenden, um die vertikale Positionierung und in Abh"angigkeit -% des \textit{slant} der Schrift die horizontale Verschiebung der -% Punkte zu bestimmen. Um die Punkte etwas tiefer zu setzen, kann -% nun entweder die H"ohe des Buchstabens verkleinert oder die -% \textit{x-height} der Schrift tempor"ar vergr"o"sert werden. Da das -% |\accent|-Primitiv keine Box als Argument erlaubt, wird der zweite -% Weg gew"-"ahlt. Dabei mu"s beachtet werden, da"s "Anderungen der -% |\fontdimen| immer global ausgef"uhrt werden, so da"s man den -% urspr"unglichen Wert retten und danach wieder explizit -% zur"uckschreiben mu"s! -% \changes{2.5c}{95/01/24}{Abfrage auf L"angenregister \cs{grmnU@D} -% hatte wegen eines At-Zeichens zuviel auf \cs{grmn@U@D} getestet.} -% \begin{macrocode} -\expandafter\ifx\csname grmnU@D\endcsname\relax - \csname newdimen\endcsname\grmnU@D -\fi -\def\newumlaut#1{{\grmnU@D 1ex% - {\setbox\z@\hbox{\char127}\dimen@-.45ex\advance\dimen@\ht\z@ - \ifdim 1ex<\dimen@ \fontdimen5\font\dimen@ \fi}% - \accent127\fontdimen5\font\grmnU@D #1}\allowhyphens} -% \end{macrocode} -% -% F"ur Tremata wird das urspr"ungliche |\accent|-Primitive verwendet. -% Da die Style-Option das |\"|-Makro "andert, mu"s hier die originale -% Definition selbst verwendet werden, wobei durch das |\allowhyphens| -% nach dem Akzentprimitiv die Trennung im Rest des Wortes wieder -% erlaubt ist. F"ur \LaTeXe\ kann durch die ge"anderten Interna das -% |\"|-Makro direkt verwendet werden, wobei auch hier ein -% |\allowhyphens| die Trennung im nachfolgenden Wortteil wieder -% erlaubt. -% \begin{macrocode} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname DeclareTextSymbol\endcsname\relax - \def\highumlaut#1{{\accent127 #1}\allowhyphens} -\else - \def\highumlaut#1{\"{#1}\allowhyphens} -\fi -% \end{macrocode} -% -% \subsection{Aktivierter Double\-quote} -% -% Die Style-Option "`german"' verwendet ein aktiviertes -% Doublequote-Zeichen. Mit den Makros |\mdqon| und |\mdqoff| werden -% hierzu Befehle zum Hin- und Herschalten definiert. -% \begin{macrocode} -\def\mdqon{\catcode`\"\active} -\def\mdqoff{\catcode`\"12\relax} -% \end{macrocode} -% -% Der Mechanismus der die Double\-quote-Eingabe\-notation realisiert, -% verwendet folgende weitere symbolische Namen f"ur Makros und -% spezielle Zeichen. -% \changes{2.5d}{97/04/12}{"Uberbleibsel \cs{@UMLAUT}-Definition -% als \cs{\protect\dq} aus Vor-NFSS2-Zeiten entfernt.} -% \changes{2.5d}{97/04/13}{\cs{@SS} in \cs{@MATHss} umbenannt.} -% \changes{2.5d}{97/05/01}{In \cs{@MATHss} ein eigentlich -% "uberfl"ussiges \cs{mathord} eingef"ugt, das aber daf"ur sorgt, -% da"s Leerzeichen danach nicht ignoriert werden.} -% \begin{macrocode} -\begingroup \mdqoff -\def\x{\endgroup - \def\@MATHUMLAUT{\ddot}% = \mathaccent"707F - \def\@MATHss{\mathord{\mathchar"7019}}% TODO: correct? - \def\dq{"}}% TODO: or \textquotedbl? -\x -% \end{macrocode} -% -% Da das Zeichen aktiviert wird, mu"s es f"ur bestimmte Kontexte -% explizit wieder deaktiviert werden. Plain-\TeX\ und \LaTeX\ -% verwenden f"ur Umgebungen, wie \texttt{verbatim}, die Befehle -% |\dospecials| und |\@sanitize|, die Listen mit diesen speziellen -% Zeichen darstellen. Der Double\-quote wird an diese Listen -% angeh"angt. -% \begin{macrocode} -\begingroup - \def\do{\noexpand\do\noexpand}% - \edef\x{\endgroup - \def\noexpand\dospecials{\dospecials\do\"}}% -\x -% \end{macrocode} -% |\@sanitize| ist nur f"ur \LaTeX\ definiert, so da"s dessen -% Existenz explizit abgefragt wird. -% \begin{macrocode} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname @sanitize\endcsname\relax \else - \begingroup - \def\@makeother{\noexpand\@makeother\noexpand}% - \edef\x{\endgroup - \def\noexpand\@sanitize{\@sanitize\@makeother\"}}% - \x -\fi -% \end{macrocode} -% -% \subsection{Kompatibilit"at mit "alteren Versionen} -% -% "Altere Versionen der Style-Option "`german"' definieren die -% Befehle |\3| und |\ck|, die nicht mehr verwendet werden sollten. -% Damit alte Dokumente mit diesen Kommandos nicht ge"andert werden -% m"ussen, existieren diese Befehle auch noch f"ur Version~2.x. -% In "`ngerman"' wird |\ck| so definiert, da"s ein "`ck"' mit Trennstelle -% davor erzeugt wird; au"erdem wird eine Warnung ausgegeben. -% \changes{2.5e (beta 1)}{98/05/04}{ge"anderte Definition von \cs{ck} -% in "`ngerman"'} -% \begin{macrocode} -\let\grmn@original@three=\3 % \3 may be defined or undefined. -%<*old> -\def\ck{\penalty\@M\discretionary{k-}{}{c}k\allowhyphens} -%</old> -%<*new> -\def\ck{% - \ifnum\grmn@dqwarninglevel>\@ne - \grmn@dq@warning@obsolete{\string\ck}{ck}% - \fi - \penalty\@M\-\allowhyphens ck} -%</new> -% \end{macrocode} -% -% -% \section{Anf"uhrungszeichen} -% -% Die Makros |\glqq|, |\grqq|, |\glq|, |\grq|, |\flqq|, |\frqq|, -% |\flq| und |\frq| f"ur die Anf"uhrungzeichen k"onnen mit NFSS -% Version~2 (also mit \LaTeXe) abh"angig von der Kodierung der -% Schrift definiert werden. -% \begin{macrocode} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname DeclareTextSymbol\endcsname\relax -% \end{macrocode} -% -% \subsection{\ldots~ohne NFSS Version~2} -% -% Ohne NFSS Version~2 werden die Makros aus den "`alten"' Versionen -% dieser Style-Option verwendet. Da diese Makros auf alle Zeichen -% "uber symbolische Befehle oder Ligaturen zugreifen, sollten die -% Ergebnisse f"ur die meisten Schriften korrekt sein, jedoch wird -% wegen der nicht expandierbaren Tokens in den Makros kein Kerning -% zwischen dem Anf"uhrungszeichen und umgebenden Text durchgef"uhrt -% (und keine Ligaturen gebildet, auch wenn diese in bisher keiner -% mir bekannten und f"ur \TeX{} verf"ugbaren Schrift vorhanden sind). -% -% Zuerst einmal die Makros f"ur die Anf"uhrungszeichen "`\ldots"' und -% \glq\ldots\grq. Die Namen |\@glqq|, |\@grqq|, etc.\ der zu -% sch"utzenden internen Makros aus "alteren Version des German-Style -% werden eigentlich nicht mehr ben"otigt, werden hier aber zur -% Kompatibilit"at dennoch definiert. -% \changes{2.5d}{97/04/13}{Verwende Trick von \LaTeXe{} mit -% dem Leerzeichen im Namen des zu sch"utzenden Makros.} -% \begin{macrocode} -\expandafter\def\csname glqq \endcsname{% - \save@sf@q{\set@low@box{''\/}\box\z@\kern-.04em\allowhyphens}} -\edef\glqq{\noexpand\protect - \expandafter\noexpand\csname glqq \endcsname} -\let\@glqq=\glqq -\expandafter\def\csname grqq \endcsname{% - \save@sf@q{\kern-.07em``\kern.07em}}% ('') -\edef\grqq{\noexpand\protect - \expandafter\noexpand\csname grqq \endcsname} -\let\@grqq=\grqq -\expandafter\def\csname glq \endcsname{% - \save@sf@q{\set@low@box{'\/}\box\z@\kern-.04em\allowhyphens}} -\edef\glq{\noexpand\protect - \expandafter\noexpand\csname glq \endcsname} -\let\@glq=\glq -\expandafter\def\csname grq\endcsname{% - \save@sf@q{\kern-.0125em`\kern.07em}} -\edef\grq{\noexpand\protect - \expandafter\noexpand\csname grq \endcsname} -\let\@grq=\grq -% \end{macrocode} -% Danach folgen die Definitionen f"ur die franz"osische Form der -% Anf"uhrungszeichen "<\ldots"> und {\flq}\ldots{\frq}. Da die -% Definition auch f"ur Plain-\TeX\ verwendbar sein soll, k"onnte man -% das Aussehen durch eine etwas andere Definition noch verbessern. -% Auch hier werden die Namen der zu sch"utzenden internen Makros aus -% "alteren Version obwohl nicht notwendig zur Kompatibilit"at -% definiert. -% \changes{2.5c}{96/02/26}{Im Code f"ur die franz"osischen -% Anf"uhrungszeichen \cs{m@th} eingef"ugt.} -% \changes{2.5c}{96/04/28}{Die Boxen f"ur \cs{flqq}, \cs{frqq}, -% \cs{flq} und \cs{frq} werden mit \cs{raise.2ex} etwas zu tief -% gesetzt, deshalb wird jetzt \cs{raise.27ex} aus -% \texttt{french.sty} verwendet.} -% \changes{2.5d}{97/04/13}{Verwende Trick von \LaTeXe{} mit -% dem Leerzeichen im Namen des zu sch"utzenden Makros.} -% \changes{2.5d}{97/05/01}{In \cs{flqq} und \cs{frqq} um \cs{ll} -% bzw.\ \cs{gg} ein \cs{mathrel} eingef"ugt (klammern oder ein -% ein leeres Klammerpaar danach w"urde Abst"ande "andern). -% Damit kann das leere Klammerpaar in dern entsprechenden -% Doublequote-Notation f"ur die franz"osischen Anf"uhrungszeichen -% entfernt werden.} -% \begin{macrocode} -\expandafter\def\csname flqq \endcsname{% - \relax\ifmmode \mathrel{\ll}\else \save@sf@q{\penalty\@M - \raise .27ex\hbox{$\m@th\scriptscriptstyle \ll $}% - \allowhyphens}\fi} -\edef\flqq{\noexpand\protect - \expandafter\noexpand\csname flqq \endcsname} -\let\@flqq=\flqq -\expandafter\def\csname frqq \endcsname{% - \relax\ifmmode \mathrel{\gg}\else \save@sf@q{\penalty\@M - \raise .27ex\hbox{$\m@th\scriptscriptstyle \gg $}% - \allowhyphens}\fi} -\edef\frqq{\noexpand\protect - \expandafter\noexpand\csname frqq \endcsname} -\let\@frqq=\frqq -\expandafter\def\csname flq \endcsname{% - \relax\ifmmode <\else \save@sf@q{\penalty\@M - \raise .27ex\hbox{$\m@th\scriptscriptstyle <$}\allowhyphens}\fi} -\edef\flq{\noexpand\protect - \expandafter\noexpand\csname flq \endcsname} -\let\@flq=\flq -\expandafter\def\csname frq \endcsname{% - \relax\ifmmode >\else \save@sf@q{\penalty\@M - \raise .27ex\hbox{$\m@th\scriptscriptstyle >$}\allowhyphens}\fi} -\edef\frq{\noexpand\protect - \expandafter\noexpand\csname frq \endcsname} -\let\@frq=\frq -% \end{macrocode} -% Leider verhindert das |\nobreak| in |\allowhyphens| eine Trennung -% an einem Wortzwischenraum, der nach dem Anf"uhrungszeichen folgen -% kann. Da die obige Definition sowohl f"ur ">\ldots"< als auch f"ur -% "<\ldots"> verwendbar sein mu"s, kann man ohne weitere Tricks -% nichts an dieser Einschr"ankung "andern. -% -% -% Die nachfolgenden Abschnitte beschreiben die notwendigen -% Definitionen f"ur NFSS~2. -% \begin{macrocode} -\else -% \end{macrocode} -% -% \subsection{\ldots~mit NFSS Version~2} -% -% Das Makro |\glqq| entspricht dem in neueren \LaTeXe-Releases -% definiertem Symbol |\quotedblbase|. Die Definitionen dieses -% Symbols werden auch f"ur die \texttt{OT1}-kodierten Schriften -% erweitert, so da"s man eine relativ einfache Definition erh"alt. -% \begin{macrocode} -\DeclareRobustCommand{\glqq}{% - \ifmmode\hbox{\quotedblbase}\else\quotedblbase\fi} -\ProvideTextCommandDefault{\quotedblbase}{% - \UseTextSymbol{OT1}\quotedblbase} -\ProvideTextCommand{\quotedblbase}{OT1}{% - \save@sf@q{\set@low@box{\textquotedblright\/}\box\z@ - \kern-.04em\allowhyphens}} -% \end{macrocode} -% -% Leider existiert f"ur |\grqq| kein entsprechendes Pendant, so da"s -% man hier auf die "`alte"' Version zur"uckgreifen mu"s. Jedoch wird -% f"ur \texttt{T1}-kodierte Schriften keine \cs{kern}-Anweisungen -% eingef"ugt, da diese insbesondere bei den EC-Fonts und dessen -% Testversionen ab DC-Fonts Version~1.2 das Anf"uhrungszeichen zu -% weit nach links plazieren und dieses dadurch den davorstehenden -% Letter "uber"-schreiben k"onnte. -% \changes{2.5c}{96/02/26}{F"ur \texttt{T1}-kodierte Schriften, -% insbesondere den DC-Fonts~v1.2 d"urfen bei \cs{grqq} keine -% expliziten \cs{kern} eingef"ugt werden. Deshalb separate -% Deklarationen f"ur T1- und OT1-kodierte Schriften.} -% \begin{macrocode} -\ProvideTextCommand{\grqq}{T1}{\textquotedblleft} -\ProvideTextCommand{\grqq}{OT1}{% - \save@sf@q{\kern-.07em% - \ifmmode\hbox{\textquotedblleft}\else\textquotedblleft\fi - \kern.07em\relax}} -\ProvideTextCommandDefault{\grqq}{\UseTextSymbol{OT1}\grqq} -% \end{macrocode} -% Entsprechend werden die Symbole |\glq| und |\grq| definiert\,\ldots -% \begin{macrocode} -\DeclareRobustCommand{\glq}{% - \ifmmode\hbox{\quotesinglbase}\else\quotesinglbase\fi} -\ProvideTextCommandDefault{\quotesinglbase}{% - \UseTextSymbol{OT1}\quotesinglbase} -\ProvideTextCommand{\quotesinglbase}{OT1}{% - \save@sf@q{\set@low@box{\textquoteright\/}\box\z@ - \kern-.04em\allowhyphens}} -% \end{macrocode} -% \changes{2.5c}{96/04/27}{F"ur \texttt{T1}-kodierte Schriften -% bin ich mir momentan nicht sicher, ob f"ur \cs{grq} explizite -% \cs{kern} eingef"ugt werden sollten; die DC-Fonts~v1.2 haben -% Kerning f"ur ein als schlie"sendes Quote verwendetes Backquote, -% deshalb kein \cs{kern}.} -% \begin{macrocode} -\ProvideTextCommand{\grq}{T1}{\textquoteleft} -\ProvideTextCommand{\grq}{OT1}{% - \save@sf@q{\kern-.0125em% - \ifmmode\hbox{\textquoteleft}\else\textquoteleft\fi - \kern.07em\relax}} -\ProvideTextCommandDefault{\grq}{\UseTextSymbol{OT1}\grq} -% \end{macrocode} -% \ldots\,und auch die franz"osische Form der Anf"uhrungszeichen. -% \changes{2.5c}{96/02/26}{Im Code f"ur die franz"osischen -% Anf"uhrungszeichen \cs{m@th} eingef"ugt.} -% \changes{2.5c}{96/04/28}{Die Boxen f"ur \cs{flqq}, \cs{frqq}, -% \cs{flq} und \cs{frq} werden mit \cs{raise.2ex} etwas zu tief -% gesetzt, deshalb wird jetzt \cs{raise.27ex} aus -% \texttt{french.sty} verwendet.} -% \changes{2.5d}{97/05/01}{\cs{mathrel} bzw.\ \cs{mathbin} in -% \cs{flqq}, \cs{frqq}, \cs{flq} und \cs{frq} eingef"ugt.} -% \begin{macrocode} -\DeclareRobustCommand{\flqq}{% - \ifmmode\mathrel{\hbox{\guillemotleft}}\else\guillemotleft\fi} -\ProvideTextCommandDefault{\guillemotleft}{% - \UseTextSymbol{OT1}\guillemotleft} -\ProvideTextCommand{\guillemotleft}{OT1}{% - \ifmmode \ll \else \save@sf@q{\penalty\@M - \raise .27ex\hbox{$\m@th\scriptscriptstyle \ll $}% - \allowhyphens}\fi} -\DeclareRobustCommand{\frqq}{% - \ifmmode\mathrel{\hbox{\guillemotright}}\else\guillemotright\fi} -\ProvideTextCommandDefault{\guillemotright}{% - \UseTextSymbol{OT1}\guillemotright} -\ProvideTextCommand{\guillemotright}{OT1}{% - \ifmmode \gg \else \save@sf@q{\penalty\@M - \raise .27ex\hbox{$\m@th\scriptscriptstyle \gg $}% - \allowhyphens}\fi} -% \end{macrocode} -% \begin{macrocode} -\DeclareRobustCommand{\flq}{% - \ifmmode\mathbin{\hbox{\guilsinglleft}}\else\guilsinglleft\fi} -\ProvideTextCommandDefault{\guilsinglleft}{% - \UseTextSymbol{OT1}\guilsinglleft} -\ProvideTextCommand{\guilsinglleft}{OT1}{% - \ifmmode <\else \save@sf@q{\penalty\@M - \raise .27ex\hbox{$\m@th\scriptscriptstyle <$}\allowhyphens}\fi} -\DeclareRobustCommand{\frq}{% - \ifmmode\mathbin{\hbox{\guilsinglright}}\else\guilsinglright\fi} -\ProvideTextCommandDefault{\guilsinglright}{% - \UseTextSymbol{OT1}\guilsinglright} -\ProvideTextCommand{\guilsinglright}{OT1}{% - \ifmmode >\else \save@sf@q{\penalty\@M - \raise .27ex\hbox{$\m@th\scriptscriptstyle >$}\allowhyphens}\fi} -% \end{macrocode} -% -% Damit w"aren die Makros f"ur die Anf"uhrungszeichen definiert -% und die Unterscheidung mit/ohne NFSS Version~2 wird f"ur's erste -% nicht mehr ben"otigt. -% \begin{macrocode} -\fi -% \end{macrocode} -% -% -% \section{Anpassung der Umlautmakros} -% -% Wie schon bei der Definition des Befehls |\umlaut| erw"ahnt, -% mu"s das Akzentmakro f"ur die Umlaute angepa"st werden. -% -% Um sp"ater zwischen der Original- und der neuen Definition -% umschalten zu k"onnen, werden die internen Umschaltbefehle -% |\umlauthigh| und |\umlautlow| definiert. Da NFSS Version~2 -% schon wieder eine Sonderrolle -- im positiven Sinne -- spielen -% mu"s, ist wieder eine Unterscheidung der Versionen n"otig. -% \begin{macrocode} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname DeclareTextSymbol\endcsname\relax -% \end{macrocode} -% -% F"ur Versionen ohne NFSS Version~2 wird relativ einfach zwischen -% den beiden Versionen gewechselt. Wenn man Schriften mit ge"anderten -% Kodierungen verwenden will, mu"s dieses Makro ebenso angepa"st -% werden. -% \begin{macrocode} -\def\umlauthigh{\def\"##1{{\accent127 ##1}}} -\def\umlautlow{\def\"{\protect\newumlaut}} -% \end{macrocode} -% \begin{macrocode} -\else -% \end{macrocode} -% -% F"ur NFSS Version~2 ist das ganze etwas komplizierter. -% Da die Befehle |\DeclareText...| nicht mehr nach der Pr"aambel -% verwendet werden d"urfen, wird der neue symbolische Name -% |\grmn@OTumlaut| f"ur das Umlautmakro f"ur Schriften in -% Kodierung~\texttt{OT1} definiert. Beim Umschalten wird dann die -% Definition dieses Makro ver"andert. -% \begin{macrocode} -\def\umlauthigh{\def\grmn@OTumlaut##1{{\accent 127 ##1}}} -\def\umlautlow{\def\grmn@OTumlaut{\protect\newumlaut}} -\umlauthigh -% \end{macrocode} -% F"ur Schriften in Kodierung \texttt{OT1} und~\texttt{T1} werden hier -% Standarddefinitionen angegeben, in der das neue Makro verwendet -% wird. -% \begin{macrocode} -\DeclareTextAccent{\"}{T1}{4} -\DeclareTextAccent{\"}{OT1}{127} -\DeclareTextCompositeCommand{\"}{OT1}{a}{\grmn@OTumlaut{a}}% -\DeclareTextCompositeCommand{\"}{OT1}{o}{\grmn@OTumlaut{o}}% -\DeclareTextCompositeCommand{\"}{OT1}{u}{\grmn@OTumlaut{u}}% -\DeclareTextCompositeCommand{\"}{OT1}{A}{\grmn@OTumlaut{A}}% -\DeclareTextCompositeCommand{\"}{OT1}{O}{\grmn@OTumlaut{O}}% -\DeclareTextCompositeCommand{\"}{OT1}{U}{\grmn@OTumlaut{U}}% -\DeclareTextComposite{\"}{T1}{a}{228} -% \end{macrocode} -% -% Da diese Definitionen in einer "alteren Patch-Datei am Beginn eines -% Dokuments ge"andert werden, werden diese "Anderungen einfach -% nochmals mit den oben angegebenen Anweisungen "uberschrieben, -% obwohl dies eigentlich nur f"ur diese veraltete \LaTeXe-Version -% mit dieser Patch-Datei notwendig w"are. Dies sollte in einer -% der n"achsten Version des German-Style entfernt werden! -% \begin{macrocode} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname AtBeginDocument\endcsname\relax \else - \AtBeginDocument{% - \DeclareTextAccent{\"}{T1}{4}% % from `ltpatch.tex' - \DeclareTextAccent{\"}{OT1}{127}% % from `ltpatch.tex' - % \DeclareTextCommand{\"}{OT1}{\newumlaut}% from `ltpatch.tex' - % % has to be removed - \DeclareTextCompositeCommand{\"}{OT1}{a}{\grmn@OTumlaut{a}}% - \DeclareTextCompositeCommand{\"}{OT1}{o}{\grmn@OTumlaut{o}}% - \DeclareTextCompositeCommand{\"}{OT1}{u}{\grmn@OTumlaut{u}}% - \DeclareTextCompositeCommand{\"}{OT1}{A}{\grmn@OTumlaut{A}}% - \DeclareTextCompositeCommand{\"}{OT1}{O}{\grmn@OTumlaut{O}}% - \DeclareTextCompositeCommand{\"}{OT1}{U}{\grmn@OTumlaut{U}}% - \DeclareTextComposite{\"}{T1}{a}{228}% % from `ltpatch.tex' - } -\fi -% \end{macrocode} -% \begin{macrocode} -\fi -% \end{macrocode} -% -% -% \section{Mechanismus f"ur Doublequote-Notation} -% -% Die Eingabenotation |"x| f"ur Umlaute, spezielle Trennungen -% u.\,a., die die Style-Option "`german"' anbietet, wird durch den -% \textit{active character} Double\-quote realisiert. Dieses aktive -% Zeichen liest das folgende Token als sein Argument und entscheidet -% abh"angig von diesem Argument, welche Kommandos zur Realisierung -% verwendet werden sollen. -% -% Nach dieser Beschreibung scheint die Makrodefinition, die diesem -% aktiven Zeichen zugewiesen wird, relativ einfach zu realisieren zu -% sein: -%\begin{verbatim} -%\catcode`\"=\active -%\def "#1{\ifx#1a\newumlaut{a}\else ...etc.etc... \fi} -%\end{verbatim} -% Leider gibt es bei dieser einfachen Implementierung einige -% Fehlerm"oglichkeiten: Zum einen "uberliest \TeX\ vor jedem nicht -% begrenztem Argument eines Makros alle Leerzeichen, so da"s die -% beiden Eingaben |" a| und~|"a| nicht unterscheidbar sind. -% Zum zweiten erzeugen die Gruppenklammern |{| und~|}| -% als Argument Fehler, da bei einer "offnenden Klammer eine komplette -% Liste gelesen wird und eine schlie"sende Klammer zu einem Fehler -% f"uhrt. -% -% Will man diese Probleme mit der etwas "`schlaueren"' L"osung -%\begin{verbatim} -%\catcode`\"=\active -%\def "{\afterassignment\do@activedq \let\next= } -%\def\do@activedq{\ifx\next\bgroup \def\next{\dq\bgroup}\else -% \ifx\next\egroup \def\next{\dq\egroup}\else -% \expandafter\ifx\space\next \def\next{\dq\space}\else -% \ifx a\next \def\next{\newumlaut{a}}\else -% ...etc.etc... \fi\fi\fi...\fi \next} -%\end{verbatim} -% vermeiden, handelt man sich ein anderes, schwerwiegenderes Problem -% ein: In \TeX\ kann man ganzzahlige Konstanten auch in hexadezimaler -% Notation eingeben. Dazu wird einfach der hexadezimalen Zahl ein -% normales Double\-quote-Zeichen vorangestellt (Bsp.: |"FF| f"ur die -% Konstante~255). Mit der "`schlaueren"' L"osung meldet \TeX\ jedoch -% beim Einlesen aller hexadezimalen Konstanten bei aktiviertem -% Double\-quote eine fehlende Zahl. Der Grund ist einfach: -% Primitive, wie |\afterassignment| oder |\futurelet|, sind -% nicht expandierbar und nichtexpandierbare Token beenden das -% Scan\-nen einer Zahl. -% -% Um diesen schwerwiegenden Nachteil der "`schlaueren"' L"osung -% zu vermeiden (die "ahnlich in Version~2.3c/d verwendet wurde, wobei -% schon in den Versionen 2.2--2.3b ein |\protect| mit Bedeutung -% |\relax| diesen Fehler erzeugt hat), mu"s man wohl oder "ubel die -% erste L"osung verwenden und deren Nachteile in Kauf nehmen. -% -% Auf einen anderen Punkt mu"s auch geachtet werden: Damit \TeX\ f"ur -% die resultierenden Umlaute und An"-f"uhrungs"-zeichen ein Kerning -% durch"-f"uhrt und Ligaturen bildet, d"urfen vor und nach diesen -% Zeichen keine nichtexpandierbaren Token, wie Gruppenklammern, -% |\relax|, etc., in der Eingabe "`stehenbleiben"'. Dies mu"s -% insbesondere auch f"ur die F"alle gelten, in denen der -% Double\-quote eine hexadezimale Konstante einleitet! -% -% -% \subsection{Fehler bei undefinierten -% \protect\texttt{\char34x}-Kombinationen} -% -% F"ur Argumente des Double\-quote-Makros, f"ur die keine Bedeutung -% definiert wurde, sollte eine Fehlermeldung an den Benutzer -% ausgegeben werden. Dies verhindert zum einen, da"s einfache -% Tippfehler "uber"-sehen werden, zum anderen gibt es in sp"ateren -% Versionen, in denen f"ur weitere Argumente Bedeutungen definiert -% werden, weniger Fehler in alten Dokumenten. -% -% Mit dem (undokumentierten) Befehl |\dqwarninglevel| kann festgelegt -% werden, bei welchen Befehlen Warnungen ausgegeben werden: -% 0~bedeutet momentan keine Warnung, 1~nur f"ur undefinierte -% Kombinationen (Default) und 2~auch Warnungen f"ur die Befehle f"ur -% drei gleiche Konsonanten. -% -% Es bietet sich an, den Level~2 daf"ur zu verwenden, vor -% durch die Rechtschreibreform obsolet gewordenen Befehlen zu -% warnen, n"amlich Dreier"=Kombinationen und zus"atzlich die -% Befehle zur |ck|"~Trennung: |"ck| und |\ck|. -% \changes{2.5e (beta 1)}{98/05/04}{Level~2 f"ur neue Rechtschreibung.} -% \begin{macrocode} -\def\dqwarninglevel#1{\chardef\grmn@dqwarninglevel=#1\relax} -%<old> \dqwarninglevel{1} -%<new> \dqwarninglevel{2} -% \end{macrocode} -% -% Neuere \LaTeX-Versionen verwenden den in \TeX~3 vorhandenen -% Parameter |\inputlineno|, um mit jeder Fehlermeldung auch die -% Zeilennummer auszugeben. Da dies allgemein sinnvoll ist, wird das -% dazu benutzte \LaTeX-Makro definiert, falls es bei Verwendung von -% Plain-\TeX\ oder einer alten \LaTeX-Version noch nicht definiert -% ist und \TeX~3 verwendet wird (|\inputlineno| mu"s existieren -% und einen positiven Wert haben). -% \changes{2.5d}{97/05/01}{\cs{@empty} ist in Plain-\TeX{} nicht -% definiert, daher \cs{on@line} besser direkt definieren.} -% \begin{macrocode} -\expandafter\ifx\csname on@line\endcsname\relax - \ifx\inputlineno\undefined \def\on@line{}% - \else - \ifnum\inputlineno<\z@ \def\on@line{}% - \else \def\on@line{ on input line \the\inputlineno}% -\fi\fi\fi -% \end{macrocode} -% -% F"ur die Ausgabe von Warnungen und Fehlermeldungen werden -% weitere Makros definiert. -% \changes{2.5e (beta 1)}{98/05/04}{Neue Warnbefehle nur f"ur "`ngerman"'.} -% \begin{macrocode} -\def\grmn@dq@error#1{% - \errhelp{Use `` for a simple double quote character.}% -%<old> \errmessage{german: The command \dq\string#1 is undefined}} -%<new> \errmessage{ngerman: The command \dq\string#1 is undefined}} -\def\grmn@dq@warning#1{% - \immediate\write\sixt@@n -%<old> {german: \dq\string#1 is possibly wrong\on@line.}} -%<new> {ngerman: \dq\string#1 is possibly wrong\on@line.}} -% \end{macrocode} -% Der Befehl |\grmn@dq@warning@obsolete| l"ot den -% |\grmn@dq@warning|"~Befehl nur in den F"allen ab, bei denen -% der "`Warning"=Level"' auf zwei steht, also bei denen der Anwender -% auf den veralteten Befehl hingewiesen werden soll. -% Da der erste Parameter sowohl ein Befehlsname |\ck| als auch eine -% |"|"~Kombination sein kann, mu"s der Aufrufer daf"ur Sorge tragen, -% da"s die Parameter richtig geschrieben werden k"onnen. Als -% Beispiel sollte |"f| als |\dq f| und |\ck| als |\string\ck| -% "ubergeben werden). -% \begin{macrocode} -%<*new> -\def\grmn@dq@warning@obsolete#1#2{% - \immediate\write\sixt@@n - {ngerman: #1 is now obsolete, please use #2 instead\on@line.}} -%</new> -% \end{macrocode} -% F"ur die Dreier"=Kombinationen sind die |"|"~Befehle -% "uberfl"ussig geworden. Das Makro, abgeleitet aus -% |\grmn@dqdisc|, gibt daher eine Warnung aus und -% setzt die Buchstaben. Da drei gleiche Buchstaben nach dem -% zweiten getrennt werden d"urfen, wird die entsprechende -% Trennhilfe eingef"ugt (|"-|). -% \begin{macrocode} -%<*new> -\def\grmn@dqobsolete@three#1{#1#1% - \ifnum\grmn@dqwarninglevel>\@ne - \grmn@dq@warning@obsolete{\dq#1#1}{#1#1#1}% - \fi - \penalty\@M\-\allowhyphens} -%</new> -% \end{macrocode} -% Dasselbe wird nun f"ur die Kombination |"ck| gemacht, -% wobei hier die Trennhilfe vor den Buchstaben |ck| wie -% im |\ck|"~Befehl gesetzt wird. -% \begin{macrocode} -%<*new> -\def\grmn@dqobsolete@ck#1#2{% - \ifnum\grmn@dqwarninglevel>\@ne - \grmn@dq@warning@obsolete{\dq#1#2}{#1#2}% - \fi - \penalty\@M\-\allowhyphens#1} -%</new> -% \end{macrocode} -% -% -% \subsection{Definition der Double\-quote-Befehle} -% -% Jeder definierte Double\-quote-Befehl wird in einem eigenen Makro -% abgelegt, in dessen Name das Argument, also das einzelne Zeichen -% nach dem Double\-quote, als Schl"ussel verwendet wird. -% -% Das Makro |\grmn@dq@macro| hat zwei Argumente und erzeugt unter -% Verwendung des zweiten Arguments diesen Makronamen. Das erste -% Argument, ein einzelnes Token, wird vor diesen Makronamen gesetzt. -% Diese zuerst etwas komisch anmutende Kombination von Argumenten -% verhindert, da"s bei der Verwendung dieses Makros Unmengen von -% \cs{expandafter}-Anweisungen notwendig werden. Der Befehl -% \cs{string} verhindert, da"s aktive Zeichen als Argumente -% (z.\,B.\ eine Tilde) Fehler erzeugen. -% \begin{macrocode} -\def\grmn@dq@macro#1#2{% - \expandafter#1\csname @grmn@@\string #2dq\endcsname} -% \end{macrocode} -% -% Neue Befehlskombinationen k"onnen mit dem Befehl |\def@dqmacro| -% definiert werden. Argument~1 ist dabei das Zeichen im Befehl, -% Argument 2 und~3 die Expansionen, die jeweils f"ur Text- und -% Mathematik"-modus verwendet werden sollen. -% \begin{macrocode} -\def\def@dqmacro#1#2#3{% - \grmn@dqredefcheck{#1}% - \grmn@dq@macro\def{#1}{{#2}{#3}}} -% \end{macrocode} -% -% Ein Synonym f"ur einen schon zuvor definierten Befehl kann man mit -% |\let@dqmacro| definieren. -% \begin{macrocode} -\def\let@dqmacro#1#2{\begingroup - \grmn@dqredefcheck{#1}% - \edef\x{\endgroup \let - \grmn@dq@macro\noexpand{#1}\grmn@dq@macro\noexpand{#2}}% - \x} -% \end{macrocode} -% -% Wird ein zuvor definierter Befehl erneut definiert oder -% umdefiniert, sollte dies zumindest in der Protokolldatei erscheinen, -% um gemeldete Fehler, die darauf zur"uckzuf"uhren sind, einfacher -% erkennen zu k"onnen. Hier wird f"ur das Makro |\grmn@dqredefcheck|, -% das diese Zeile in die Protokolldatei schreibt, ein Dummy definiert, -% die sp"ater durch die end"-g"ultige Makrodefinition ersetzt wird. -% \begin{macrocode} -\def\grmn@dqredefcheck#1{} -% \end{macrocode} -% -% -% \subsection{Makros f"ur den aktiven Double\-quote} -% -% Das Makro |\@active@dq| wird sp"ater an das aktive -% Double\-quote-Zeichen gebunden. Dieses liest das n"achste Zeichen -% (mit den zuvor schon genannten Einschr"ankungen), pr"uft ab, ob -% hier"-f"ur eine Bedeutung definiert wurde und gibt in diesem Falle -% einen Fehler aus. -% \begin{macrocode} -\def\@active@dq#1{% - \grmn@dq@macro\ifx{#1}\relax - \ifnum\grmn@dqwarninglevel>\z@ \grmn@dq@error{#1}\fi - \expandafter\grmn@@normal@dq - \else - \expandafter\grmn@@active@dq - \fi {#1}} -% \end{macrocode} -% -% Leitet der Double\-quote eine hexadezimale Konstante ein, folgt -% also eine Ziffer oder ein Gro"sbuchstabe im Bereich~\mbox{A--F}, so -% soll "`nichts"' unternommen werden. Um diese speziellen Befehle zu -% erkennen, werden den zugeordneten \emph{control sequences} sp"ater -% die Bedeutung eines |\noexpand| zugeordnet. -% \changes{2.5b}{95/01/20}{Einziger Bugfix f"ur v2.5a: In -% \cs{grmn@@active@dq} wurde \cs{grmn@@normal@dq} (expandiert zu -% zwei einfachen Quotes) statt \cs{grmn@normal@dq} (expandiert zu -% einem Double\-quote) aufgerufen, so da"s es zu Fehlern bei -% Hexzahlen kam.} -% \begin{macrocode} -\def\grmn@@active@dq#1{% - \grmn@dq@macro\ifx{#1}\noexpand - \expandafter\grmn@normal@dq - \else - \expandafter\grmn@@@active@dq - \fi {#1}} -% \end{macrocode} -% -% F"ur die F"alle, in denen Anf"uhrungszeichen erzeugt werden sollen, -% werden zwei weitere Befehle aufgerufen: |\grmn@normal@dq| wird f"ur -% die hexadezimalen Konstanten verwendet, in denen ein Double\-quote -% ben"otigt wird. |\grmn@@normal@dq| wird dagegen im Fehlerfalle -% verwendet und gibt zwei einzelne Quotes aus, um Endlosschleifen bei -% der Expansion zu vermeiden. -% \begin{macrocode} -\def\grmn@@normal@dq#1{``#1} -\def\grmn@normal@dq#1{\dq #1} -% \end{macrocode} -% -% -% \subsection{Sch"utzen von zerbrechlichen Bedeutungen} -% -% Da die Double\-quote-Befehle auch zu zerbrechlichen Bedeutungen -% expandieren k"onnen, mu"s ein |\protect| o.\,"a.\ so -% eingef"ugt werden, da"s einerseits keine nicht expandierbaren Token -% eingef"ugt werden. Andererseits kann, wie im Falle einer Tilde, -% auch das Argument selbst expandierbar sein und mu"s zum mehrfachem -% Lesen und Schreiben entsprechend gesch"utzt werden. (Beispielsweise -% wird der Inhalt von \LaTeX{}s \texttt{aux}-Datei wieder in die -% \texttt{toc}-Datei geschrieben, bevor diese end"-g"ultig eingelesen -% wird.) -% -% Aufgrund letzterem folgt jetzt ein Hack mit \textit{category codes}, -% um beim Schreiben auf eine Datei keine zus"atzlichen Zeichen -% ein"-f"ugen zu m"ussen, wie dies noch in Version~2.4a gemacht -% wurde. -% -% Im folgenden ben"otigt dieser Hack geschweifte Klammern mit -% \textit{category code} "`other"'. Als tempor"arer Ersatz f"ur -% die \TeX-Klammern werden die runden Klammern verwendet. Au"serdem -% wird der in \LaTeXe\ verwendete Trick mit einem Leerzeichen im -% Makronamen verwendet, um diese speziellen Klammern f"ur "`interne"' -% Expansionen, wie beim Primitiv |\marks|, wieder korrekt -% einlesen zu k"onnen. -% \begin{macrocode} -\begingroup - \catcode`\(=1\lccode`\(=`\{\catcode`\{=12 - \catcode`\)=2\lccode`\)=`\}\catcode`\}=12 - \catcode`\ =11\relax% <= do not delete this and the -\lowercase(\endgroup% <=== following percent characters! -% \end{macrocode} -% -% Zuerst wird das m"oglicherweise expandierbare Argument durch den -% Befehl |\string| vor Expansion beim Schreiben auf eine Datei -% oder Erzeugen eines Mark gesch"utzt. Ist das Argument leer, so -% wird die nachfolgende geschweifte Klammer zu einer Klammer mit -% \textit{category code} "`other"'. Hierin liegt der Grund, wieso -% f"ur diese Definitionen die \textit{category codes} der -% geschweiften Klammern ge"-"andert wurden. -% \begin{macrocode} -\def\grmn@@@active@dq#1(% -\expandafter\grmn@@@@active@dq\expandafter{\string#1})% -% \end{macrocode} -% -% Nachdem das Argument gesch"utzt wurde, wird f"ur die F"alle, in -% denen |\protect| eine besondere Bedeutung hat, dieses -% eingef"ugt. Hat das |\protect| "`nur"' die Bedeutung eines -% |\relax| oder eines leeren Makros, so wird es nicht -% eingef"ugt, um Kerning und Ligaturbildung nicht zu verhindern. -% -% Die Makros \verb*:\active@dq : und \verb*:\dq@prtct :, die ein -% Leerzeichen im Namen haben, sind die "`internen"' Versionen des -% aktiven Double\-quote-Makros und eines Makros, das das Argument -% sch"utzt. Werden diese auf eine Datei geschrieben und wieder -% eingelesen, so werden beim Lesen die entsprechenden Makros ohne -% diese Leerzeichen am Ende des Namens expandiert. -% \begin{macrocode} -\def\grmn@@@@active@dq(% -\ifx\protect\relax\else\ifx\protect\empty\else% -\expandafter\expandafter\expandafter\protect% -\fi\fi% -\active@dq \dq@prtct )% -% \end{macrocode} -% -% Zuerst zum einfacheren Makropaar \verb*:\dq@prtct : und -% |\dq@prtct|, das das nachfolgende Argument beim wiederholten -% Einlesen von und Schreiben auf eine Datei sch"utzen soll. Beim -% Wiedereinlesen, bei dem das Makro |\dq@prtct| verwendet wird, sollen -% alle Zeichen (normalerweise nur Leerzeichen, in seltenen F"allen -% aber auch die Zeichen des Makros |\dq@prtct|) bis zur "offnenden -% Klammer ignoriert werden. Anschlie"send soll dieses Argument wieder -% gesch"utzt werden, wobei gleich noch ein |\dq@prtct| vorangestellt -% wird, um das Argument bei einem erneuten Schreiben wiederum zu -% sch"utzen. -% \begin{macrocode} -\def\dq@prtct#1#(\@dq@prtct)% -\def\@dq@prtct#1(\string\dq@prtct{\string#1})% -% \end{macrocode} -% Das Makro \verb*:\dq@prtct : k"onnte auf den ersten Blick einfacher -% definiert werden, da das Argument schon zuvor in -% |\grmn@@@active@dq| gesch"utzt wurde. Jedoch kann der Fall -% auftreten, da"s zuerst (mit |\protect|\(=\)|\relax|) expandiert und -% dann erst auf eine Datei geschrieben wird. Da auch in diesen -% F"allen zumindest die Zeichenkette |\dq@prtct| in diese Datei -% geschrieben werden mu"s, wird dies hier einfach getan\ldots -% \begin{macrocode} -\def\dq@prtct #1{#2}(\string\dq@prtct{\string#2})% -% \end{macrocode} -% -% Jetzt folgt noch das Makropaar \verb*:\active@dq : und -% |\active@dq|. F"ur die interne Variante \verb*:\active@dq : dieses -% Paars mu"s die zuvor eingef"ugte Zeichenkette |\dq@prtct| "uberlesen -% und die geschweiften Klammern mit \textit{category code} "`other"' -% durch "`richtige"' Klammern ersetzt werden. -% \begin{macrocode} -\def\active@dq #1{#2}(\grmn@active@@dq(#2))% -% \end{macrocode} -% -% Da die ge"anderten \textit{category codes} nicht mehr ben"otigt -% werden, wird das Argument des |\lowercase|-Befehl beendet und -% die Gruppe mit diesen "Anderungen geschlossen. -% \begin{macrocode} -)% -% \end{macrocode} -% -% Wird |\active@dq| von einer Datei eingelesen, m"ussen alle Token -% bis zur "offnenden Klammer (z.\,B.\ die Zeichenkette |\dq@prtct|) -% "uber"-lesen werden. Anschlie"send kann der Doublequote-Mechanismus -% "`angeschmissen"' werden, als ob ein normales Double\-quote gelesen -% worden w"are. Wir k"onnten auch |\grm@active@@dq| aufrufen, was -% jedoch den Nachteil h"atte, da"s nicht erneut Tokens gesch"utzt -% werden, falls dies notwendig sein m"u"ste. -% \changes{2.5c}{96/04/21}{In \cs{active@dq}, das nur in einer -% wiedereingelesen Datei auftauchen sollte, das urspr"ungliche -% \cs{grmn@active@@dq} durch \cs{@active@dq} ersetzt, um -% Protection-Mechanismus erneut zu durchlaufen.} -% \begin{macrocode} -\def\active@dq#1#{\@active@dq}% -% \end{macrocode} -% -% Zum Schlu"s bleibt nur noch die Auswahl der f"ur diese -% Double\-quote-Kombination abgelegte Definition abh"angig vom -% momentanen Modus. -% \begin{macrocode} -\def\grmn@active@@dq#1{% - \csname grmn@dq\ifmmode second\else first\fi - \expandafter\expandafter\expandafter\expandafter - \grmn@dq@macro\endcsname{#1}} -% \end{macrocode} -% Die Makros |\grmn@dqfirst| und |\grmn@dqsecond|, die hier verwendet -% werden, sind schon zuvor in Abschnitt~\ref{grmndqfirst} definiert -% worden. -% -% -% \subsection{Liste der Standard-Doublequote-Befehle} -% -% Bisher melden alle |"x|-Befehle einen Fehler, da noch kein -% einziger Double\-quote-Befehl definiert wurde. Da zumindest die -% Double\-quote-Kombinationen, die eine hexadezimale Konstante -% darstellen k"onnten, "`durchgelassen"' werden sollten, werden diese -% als erste definiert. Wie schon in den zuvor beschriebenen Makros -% erl"autert, wird den zugeordneten \textit{control sequences} die -% Bedeutung eines |\noexpand| zugeordnet, um diese spezielle -% Bedeutung zu markieren. -% \begin{macrocode} -\grmn@dq@macro\let{0}=\noexpand -\let@dqmacro{1}{0}\let@dqmacro{2}{0}\let@dqmacro{3}{0} -\let@dqmacro{4}{0}\let@dqmacro{5}{0}\let@dqmacro{6}{0} -\let@dqmacro{7}{0}\let@dqmacro{8}{0}\let@dqmacro{9}{0} -\let@dqmacro{A}{0}\let@dqmacro{B}{0}\let@dqmacro{C}{0} -\let@dqmacro{D}{0}\let@dqmacro{E}{0}\let@dqmacro{F}{0} -% \end{macrocode} -% Einige der gerade definierten Kombinationen werden sp"ater -% redefiniert. Darunter fallen die folgenden Gro"sbuchstaben: A, C, -% E und~F, denen dann die Bedeutungen Umlaut-A, -% \mbox{CK/K-K}-Trennung, Trema-E und \mbox{FF/FF-F}-Trennung -% zugewiesen wird. Deshalb kann es zu Problemen mit hexadezimalen -% Konstanten im Bereich |"A0|--|"FF| kommen. -% -% In "alteren Versionen der Style-Option "`german"' konnte man mit -% |"{}| ein normales Double\-quote erzeugen. Dies sollte aus -% Kompatibilit"at zu "alteren Texten, die dies ausnutzen, auch -% weiterhin m"oglich sein, auch wenn dies der Grund f"ur die zuvor -% beschriebenen Tricks mit den "Anderungen der \textit{category -% codes} ist. -% \changes{2.5d}{97/05/01}{Leeres Klammerpaar nach \cs{dq} f"ur -% \texttt{\protect\dq\symbol{`\{}\symbol{`\}}} entfernt.} -% \changes{2.5d}{97/05/01}{Leeres Klammerpaar nach \cs{dq} f"ur -% \texttt{\protect\dq\symbol{`\{}\symbol{`\}}} wieder eingef"ugt, -% da es dadurch mehrfach gelesen und geschrieben werden kann.} -% \begin{macrocode} -\def@dqmacro{}{\dq{}}{\dq{}} -% \end{macrocode} -% -% Die Definition der Kombinationen, die Umlaute erzeugen, ist -% entsprechend einfach, -% \changes{2.5d}{97/04/12}{"Uberbleibsel \cs{@UMLAUT} aus -% Vor-NFSS2-Zeiten durch \cs{\protect\dq} ersetzt.} -% \begin{macrocode} -\def@dqmacro{a}{\"a}{\@MATHUMLAUT a} -\def@dqmacro{o}{\"o}{\@MATHUMLAUT o} -\def@dqmacro{u}{\"u}{\@MATHUMLAUT u} -\def@dqmacro{A}{\"A}{\@MATHUMLAUT A} -\def@dqmacro{O}{\"O}{\@MATHUMLAUT O} -\def@dqmacro{U}{\"U}{\@MATHUMLAUT U} -% \end{macrocode} -% genauso wie diejenige f"ur den Buchstaben~\ss. Leider verhindert -% das leere Klammerpaar nach dem Token |\ss| in dieser Definition, die -% f"ur Plain-\TeX\ notwendig ist, da"s nach dem~\ss\ Ligaturen -% gebildet werden oder Kerning eingef"ugt werden kann. Dies soll in -% der n"achsten Version verbessert werden. -% \changes{2.5d}{97/04/13}{\cs{@SS} in \cs{@MATHss} umbenannt.} -% \changes{2.5d}{97/04/13}{F"ur \LaTeXe{} werden die leeren -% Klammerpaare nach \cs{ss} und \cs{@MATHss} entfernt.} -% \changes{2.5d}{97/04/13}{F"ur \texttt{\symbol{`\"}S} wird -% \cs{SS} verwendet, das in \LaTeXe{} bereits definiert ist -% (Hinweis von Jaakob Kind -% \texttt{j.kind@stochastik.rwth-aachen.de}, August 1996).} -% \changes{2.5d}{97/05/01}{Expansion von \cs{@MATHss} ist nach -% Einf"ugung eines \cs{mathord} ok, daher leeres Klammerpaar -% auch f"ur \LaTeX~2.09 und Plain-\TeX{} entfernt.} -% \begin{macrocode} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname DeclareTextSymbol\endcsname\relax - \def@dqmacro{s}{\ss{}}{\@MATHss} -\else - \def@dqmacro{s}{\ss}{\@MATHss} -\fi -\def@dqmacro{S}{\SS}{\SS} -\let@dqmacro{z}{s} -\def@dqmacro{Z}{SZ}{SZ} -% \end{macrocode} -% Spezielle Kombinationen f"ur Tremata sind, bis auf die Ausnahme -% des~"`i"' ohne \mbox{I-Punkt}, ebenso einfach\ldots -% \begin{macrocode} -\def@dqmacro{e}{\highumlaut e}{\@MATHUMLAUT e} -\def@dqmacro{E}{\highumlaut E}{\@MATHUMLAUT E} -\def@dqmacro{i}{\highumlaut{\i}}{\@MATHUMLAUT\imath} -\def@dqmacro{I}{\highumlaut I}{\@MATHUMLAUT I} -% \end{macrocode} -% \ldots\,wie die Definitionen f"ur die Anf"uhrungszeichen. Die hier -% eigentlich f"ur Plain-\TeX\ notwendigen leeren Klammerpaare, die -% Kerning und Ligaturbildung verhindern, konnten entfernt werden, -% nachdem sichergestellt ist, da"s nach vollst"andiger Expansion der -% Makros am Ende keine \textit{control sequence} verbleibt. -% \changes{2.5d}{97/04/13}{F"ur \LaTeXe{} werden die leeren -% Klammerpaare nach \cs{glqq}, \cs{grqq}, \cs{flqq} und -% \cs{frqq} entfernt.} -% \changes{2.5d}{97/05/01}{Leere Klammernpaare ebenso f"ur -% \LaTeX~2.09 und Plain-\TeX{} entfernen, nachdem daf"ur gesorgt -% wurde, da"s bei vollst"andiger Expansion am Ende keine cs -% verbleibt.} -% \begin{macrocode} -\def@dqmacro{`}{\glqq}{\glqq} -\def@dqmacro{'}{\grqq}{\grqq} -\def@dqmacro{<}{\flqq}{\flqq} -\def@dqmacro{>}{\frqq}{\frqq} -% \end{macrocode} -% -% Bei den Definitionen der Trennhilfen mu"s nur auf die -% Einschr"ankungen des Mathematik"-modus geachtet werden. -% \begin{macrocode} -\def@dqmacro{-}{\penalty\@M\-\allowhyphens}% - {\penalty\@M\-\allowhyphens} -\def@dqmacro{|}{\penalty\@M\discretionary{-}{}{\kern.03em}% - \allowhyphens}{} -\def@dqmacro{"}{\hskip\z@skip}{\hskip\z@skip} -% \end{macrocode} -% \begin{macrocode} -\def@dqmacro{~}{\leavevmode\hbox{-}}{-} -\def@dqmacro{=}{\penalty\@M-\hskip\z@skip}% - {\penalty\@M-\hskip\z@skip} -% \end{macrocode} -% -% Die restlichen Standard-Doublequote-Befehle werden je nach alter und -% neuer Rechtschreibung verschieden definiert. -% -% Mit "`german"' sollen -% Dreifachkonsonanten nur im Fall der Silbentrennung erzeugt werden: -% Um die Definitionen f"ur die Ausnahmen der Silbentrennung zu -% vereinfachen, wird das Makro |\grmn@dqdisc| verwendet, das die -% gemeinsamen Code-Teile enth"alt. -% \begin{macrocode} -%<*old> -\def\grmn@dqdisc#1#2{\penalty\@M - \ifnum\grmn@dqwarninglevel>\@ne \grmn@dq@warning{#1}\fi - \discretionary{#2-}{}{#1}\allowhyphens} -% \end{macrocode} -% Auch bei diesen Definitionen mu"s der Mathematikmodus separat -% gehandhabt werden. Wie man hier bemerken sollte, liest das -% Double\-quote-Makro nur das n"achste Zeichen und pr"uft nicht nach, -% ob nach der Kombination~|"c| auch ein~\texttt{k} folgt. Dies -% ist bis auf die Kombination~|"f| f"ur die meisten Schriften -% nicht notwendig, da in diesen keine Ligaturen definiert sind. -% \begin{macrocode} -\def@dqmacro{c}{\grmn@dqdisc ck}{c} -\def@dqmacro{C}{\grmn@dqdisc CK}{C} -% \end{macrocode} -% \begin{macrocode} -\def@dqmacro{l}{\grmn@dqdisc l{ll}}{l} -\def@dqmacro{L}{\grmn@dqdisc L{LL}}{L} -\def@dqmacro{m}{\grmn@dqdisc m{mm}}{m} -\def@dqmacro{M}{\grmn@dqdisc M{MM}}{M} -\def@dqmacro{n}{\grmn@dqdisc n{nn}}{n} -\def@dqmacro{N}{\grmn@dqdisc N{NN}}{N} -\def@dqmacro{p}{\grmn@dqdisc p{pp}}{p} -\def@dqmacro{P}{\grmn@dqdisc P{PP}}{P} -\def@dqmacro{r}{\grmn@dqdisc r{rr}}{r} -\def@dqmacro{R}{\grmn@dqdisc R{RR}}{R} -\def@dqmacro{t}{\grmn@dqdisc t{tt}}{t} -\def@dqmacro{T}{\grmn@dqdisc T{TT}}{T} -\def@dqmacro{F}{\grmn@dqdisc F{FF}}{F} -% \end{macrocode} -% -% \changes{2.5c}{96/04/21}{Bei \texttt{{\protect\dq}ff} sollte -% ff-Ligatur nicht unterdr"uckt werden (Bugfix von Joachim Schrod, -% ehemals f"ur Version 2.4, jedoch hier mit dem Trick des -% initialisierten \cs{grmn@dqnextff} erg"anzt).} -% \changes{2.5d}{97/04/13}{Fehler f"ur \texttt{{\protect\dq}f}, falls -% danach kein weiteres~f folgt, beseitigt (Hinweis von Carsten -% J"ager \texttt{jaeger@Physiology.RWTH-Aachen.DE}, M"arz 1997).} -% -% In den meisten Schriften ist f"ur \texttt{ff} eine Ligatur -% definiert, die auch in Wortfugen bei Ausfall des -% dritten~\glq f\grq{} verwendet werden sollte. Die hier verwendeten -% Makros sind zerbrechlich (\emph{fragile}, jedoch mit einer nicht -% ganz sauberen Abhilfe, siehe unten), was aber nur in -% nicht-\LaTeX-basierten Formaten zu Problemen f"uhren wird. F"ur -% diese Formate mu"s |\protect| in Primitiven wie |\edef|, |\write|, -% |\mark|, etc.\ entsprechend definiert werden! -% \begin{macrocode} -\def@dqmacro{f}{\grmn@dqdiscff}{f} -\def\grmn@dqdiscff{\penalty\@M - \ifnum\grmn@dqwarninglevel>\@ne \grmn@dq@warning f\fi - \afterassignment\grmn@dqinsertff \let\grmn@dqnextff= } -\def\grmn@dqinsertff{% - \if f\grmn@dqnextff - \expandafter\grmn@dqfirst\else\expandafter\grmn@dqsecond\fi - {\relax\discretionary{ff-}{f}{ff}\allowhyphens}{f\grmn@dqnextff}} -% \end{macrocode} -% -% F"ur die zuvor schon erw"ahnten F"alle, in denen |\protect| nicht -% entsprechend definiert wird, initialisieren wir |\grmn@dqnextff| auf -% den typischen Wert~\glq f\grq. Da die Makros f"ur die ff-Ligatur -% entsprechend definiert sind, vermeiden wir, wenn auch etwas -% kryptisch, in den Nur-Expansions"-f"allen eine Fehlermeldung und -% erhalten meist auch eine ff-Ligatur. Dazu haben wir au"serdem noch -% im Makro |\grmn@dqinsertff| ein |\relax| f"ur |\afterassignment| in -% den nur-expandierten Makrotext vor das |\discretionary| eingef"ugt. -% \begin{macrocode} -\let\grmn@dqnextff=f -%</old> -% \end{macrocode} -% -% Mit "`ngerman"' sollen die Makros dasjenige Ergebnis erzugen, -% das offenbar gemeint ist, aber es soll gleichzeitig eine Warnung ins -% Protokoll geschrieben werden: -% \changes{2.5e (beta 1)}{98/05/04}{Die Befehle f"ur Dreifachkonsonanten -% werden in "`ngerman"' sinnvoll definiert.} -% \begin{macrocode} -%<*new> -\def@dqmacro{c}{\grmn@dqobsolete@ck ck}{c} -\def@dqmacro{C}{\grmn@dqobsolete@ck CK}{C} -\def@dqmacro{l}{\grmn@dqobsolete@three l}{l} -\def@dqmacro{L}{\grmn@dqobsolete@three L}{L} -\def@dqmacro{m}{\grmn@dqobsolete@three m}{m} -\def@dqmacro{M}{\grmn@dqobsolete@three M}{M} -\def@dqmacro{n}{\grmn@dqobsolete@three n}{n} -\def@dqmacro{N}{\grmn@dqobsolete@three N}{N} -\def@dqmacro{p}{\grmn@dqobsolete@three p}{p} -\def@dqmacro{P}{\grmn@dqobsolete@three P}{P} -\def@dqmacro{r}{\grmn@dqobsolete@three r}{r} -\def@dqmacro{R}{\grmn@dqobsolete@three R}{R} -\def@dqmacro{t}{\grmn@dqobsolete@three t}{t} -\def@dqmacro{T}{\grmn@dqobsolete@three T}{T} -\def@dqmacro{F}{\grmn@dqobsolete@three F}{F} -\def@dqmacro{f}{\grmn@dqobsolete@three f}{f} -%</new> -% \end{macrocode} -% -% -% \subsection{Definition der Double\-quote-Befehle (cont.)} -% -% Wie schon bei der vorl"aufigen Definition des Makros -% |\grmn@dqredefcheck| er"-w"ahnt, sollten alle weiteren -% Definitionen von Double\-quote-Befehlen zumindest in der -% Protokolldatei erscheinen. Dann k"onnen von Benutzer gemeldete -% Fehler, wenn auch die Protokolldatei mitgeschickt wird, schneller -% eingegrenzt werden. Deshalb wird dieses Makro hier so definiert, -% da"s es bei jeder Verwendung von |\def@dqmacro| und |\let@dqmacro| -% eine Zeile in die Protokolldatei schreibt -- mit Informationen, -% welche Kombination definiert wird und ob eine alte Definition -% "uber"-schrieben wird. -% \changes{2.5d}{97/05/01}{\cs{immediate}\cs{write}\cs{m@ne} durch -% \cs{wlog} ersetzt.} -% \begin{macrocode} -\def\grmn@dqredefcheck#1{% -%<old> \wlog{german: \grmn@dq@macro\ifx{#1}\relax \else re\fi -%<new> \wlog{ngerman: \grmn@dq@macro\ifx{#1}\relax \else re\fi - defining dq-command for `\string#1'\on@line.}}% -% \end{macrocode} -% -% -% \section{Unterst"utzung f"ur Dokumente in verschiedenen Sprachen} -% -% Die Style-Option "`german"' unterst"utzt die Einbindung von -% Textteilen in deutscher Sprache in Dokumente, die auch in englisch -% oder franz"osisch geschrieben sind. Die folgenden Befehle sind -% dagegen nur bedingt f"ur "`mehrsprachige"' Texte geeignet, in denen -% zwei oder mehr Sprachen gleichrangig gesetzt werden. -% -% -% \subsection{Datumsangaben} -% \begin{macrocode} -%<old>\def\month@german{\ifcase\month \or -%<new>\def\month@ngerman{\ifcase\month \or - Januar\or Februar\or M\"arz\or April\or Mai\or Juni\or - Juli\or August\or September\or Oktober\or November\or Dezember\fi} -%<old>\def\dategerman{\def\today{\number\day.~\month@german -%<new>\def\datengerman{\def\today{\number\day.~\month@ngerman - \space\number\year}} -%<old>\def\dateaustrian{\def\today{\number\day.~\ifnum 1=\month -%<new>\def\datenaustrian{\def\today{\number\day.~\ifnum 1=\month -%<old> J\"anner\else \month@german\fi \space\number\year}} -%<new> J\"anner\else \month@ngerman\fi \space\number\year}} -% \end{macrocode} -% \begin{macrocode} -\def\month@english{\ifcase\month \or - January\or February\or March\or April\or May\or June\or - July\or August\or September\or October\or November\or December\fi} -\def\dateUSenglish{\def\today{\month@english - \space\number\day, \number\year}} -\def\dateenglish{\def\today{\number\day \ifcase\day \or - st\or nd\or rd\or th\or th\or th\or th\or th\or th\or th\or% 1..10 - th\or th\or th\or th\or th\or th\or th\or th\or th\or th\or% 11..20 - st\or nd\or rd\or th\or th\or th\or th\or th\or th\or th\or% 21..30 - st\fi - ~\month@english \space\number\year}} -% \end{macrocode} -% \begin{macrocode} -\def\datefrench{\def\today{\number\day \ifnum1=\day \/$^{\rm er}$\fi - \space\ifcase\month \or - janvier\or f\'evrier\or mars\or avril\or mai\or juin\or - juillet\or ao\^ut\or septembre\or - octobre\or novembre\or d\'ecembre\fi - \space\number\year}} -% \end{macrocode} -% -% \subsection{Textteile in "Uberschriften, etc.} -% -% Ab der \LaTeX~2.09-Release vom Dezember~1991 sind alle konstanten -% Textteile in den Standard-Styles und Style-Optionen durch Makros -% |\...name| ersetzt, so da"s man mit einigen Einschr"ankungen -% durch Redefinition dieser Makros eine Sprachanpassung erreichen -% kann. Will man diese Anpassung auch bei eigenen Styles und -% Style-Optionen erreichen, so sollte man die entsprechenden -% Textteile durch die entsprechenden Makros ersetzen, wobei man -% eine Default-Definition dieser Makros mitliefern sollte. -% -% Als Beispiel mu"s die Definition -%\begin{verbatim} -%\def\tableofcontents{\section*{Contents% -% \@mkboth{CONTENTS}{CONTENTS}}% -% \@starttoc{toc}} -%\end{verbatim} -% die in den alten \LaTeX-Releases vor Dezember~1991 in -% \texttt{article.sty} zu finden ist, durch -%\begin{verbatim} -%\def\contentsname{Contents} -%\def\tableofcontents{\section*{\contentsname -% \@mkboth{\uppercase{\contentsname}}% -% {\uppercase{\contentsname}}}% -% \@starttoc{toc}} -%\end{verbatim} -% ersetzt werden, um die englische "Uberschrift "`Contents"' f"ur -% das Inhaltsverzeichnis entsprechend anpassen zu k"onnen. -% -% F"ur die Standard-Klassen und Pakete von \LaTeXe\ wurde dies von -% Anfang an gemacht, so da"s hier keine "Anderungen notwendig sind. -% -% Die folgenden Makros |\captions|\meta{Sprache} definieren alle in -% den \LaTeX-Standard-Klassen und \mbox{-Paketen} verwendeten -% Textteile. -% \begin{macrocode} -%<old>\def\captionsgerman{% -%<new>\def\captionsngerman{% - \def\prefacename{Vorwort}% - \def\refname{Literatur}% - \def\abstractname{Zusammenfassung}% - \def\bibname{Literaturverzeichnis}% - \def\chaptername{Kapitel}% - \def\appendixname{Anhang}% - \def\contentsname{Inhaltsverzeichnis}% % oder nur: Inhalt - \def\listfigurename{Abbildungsverzeichnis}% - \def\listtablename{Tabellenverzeichnis}% - \def\indexname{Index}% - \def\figurename{Abbildung}% - \def\tablename{Tabelle}% % oder: Tafel - \def\partname{Teil}% - \def\enclname{Anlage(n)}% % oder: Beilage(n) - \def\ccname{Verteiler}% % oder: Kopien an - \def\headtoname{An}% - \def\pagename{Seite}% - \def\seename{siehe}% - \def\alsoname{siehe auch}} -%<old>\let\captionsaustrian=\captionsgerman -%<new>\let\captionsnaustrian=\captionsngerman -% \end{macrocode} -% \begin{macrocode} -\def\captionsenglish{% - \def\prefacename{Preface}% - \def\refname{References}% - \def\abstractname{Abstract}% - \def\bibname{Bibliography}% - \def\chaptername{Chapter}% - \def\appendixname{Appendix}% - \def\contentsname{Contents}% - \def\listfigurename{List of Figures}% - \def\listtablename{List of Tables}% - \def\indexname{Index}% - \def\figurename{Figure}% - \def\tablename{Table}% - \def\partname{Part}% - \def\enclname{encl}% - \def\ccname{cc}% - \def\headtoname{To}% - \def\pagename{Page}% - \def\seename{see}% - \def\alsoname{see also}} -\let\captionsUSenglish=\captionsenglish -% \end{macrocode} -% \begin{macrocode} -\def\captionsfrench{% - \def\prefacename{Pr\'eface}% - \def\refname{R\'ef\'erences}% - \def\abstractname{R\'esum\'e}% - \def\bibname{Bibliographie}% - \def\chaptername{Chapitre}% - \def\appendixname{Annexe}% - \def\contentsname{Table des mati\`eres}% - \def\listfigurename{Liste des figures}% - \def\listtablename{Liste des tableaux}% - \def\indexname{Index}% - \def\figurename{Figure}% - \def\tablename{Tableau}% - \def\partname{Partie}% - \def\enclname{P.~J.}% - \def\ccname{Copie \`a}% - \def\headtoname{A}% - \def\pagename{Page}% - \def\seename{voir}% - \def\alsoname{voir aussi}}% -% \end{macrocode} -% -% \subsection{Weitere sprachabh"angige Parameter} -% -% Die Sprache eines Dokuments bestimmt neben den Datumsangaben und -% den Textteilen in "Uberschriften auch noch weitere Parameter, wie -% z.\,B.\ ob nach einem Satzzeichen, wie Punkten und Kommas, ein -% gr"o"serer Wortzwischenraum eingef"ugt werden soll. Au"serdem -% sollten auch die den Trennmustern zugeordneten Parameter -% \texttt{\string\left\-hyphen\-min} und -% \texttt{\string\right\-hyphen\-min} auf entsprechende Werte gesetzt -% werden. -% -% Nach der neuen Rechtschreibung w"are |\lefthyphenmin=1| zul"assig. -% Dies wird allerdings von den Trennmustern \texttt{gnhyph01.tex} -% nicht unterst"utzt. -% -% \changes{2.5c}{96/04/28}{\cs{(no)extras(US)english} als -% expandierbare Makros statt als \cs{relax} definiert, damit -% k"onnen diese Makros einfacher erg"anzt werden.} -% \begin{macrocode} -\def\extrasUSenglish{} -\let\noextrasUSenglish=\extrasUSenglish -\let\extrasenglish=\extrasUSenglish -\let\noextrasenglish=\extrasenglish -% \end{macrocode} -% \changes{2.5c}{96/02/26}{Explizite Zuweisung an \cs{uchyph} -% hinzugef"ugt (found by R. Wonneberger, David M. Jones, -% 93/02/11).} -% \begin{macrocode} -%<old>\def\extrasgerman{\frenchspacing \uchyph\@ne -%<new>\def\extrasngerman{\frenchspacing \uchyph\@ne - \lefthyphenmin\tw@ \righthyphenmin\tw@} -%<old>\def\noextrasgerman{% -%<new>\def\noextrasngerman{% - \ifnum\sfcode`\.=\@m \else \noexpand\nonfrenchspacing \fi - \uchyph\the\uchyph\relax - \lefthyphenmin\the\lefthyphenmin - \righthyphenmin\the\righthyphenmin} -%<old>\let\extrasaustrian=\extrasgerman -%<new>\let\extrasnaustrian=\extrasngerman -%<old>\let\noextrasaustrian=\noextrasgerman -%<new>\let\noextrasnaustrian=\noextrasngerman -% \end{macrocode} -% \begin{macrocode} -\def\extrasfrench{\frenchspacing} -\def\noextrasfrench{% - \ifnum\sfcode`\.=\@m \else \noexpand\nonfrenchspacing \fi} -% \end{macrocode} -% -% -% \subsection{Default-Werte f"ur Trennmusterwerte deklarieren} -% -% Jeder Sprache und deren zugeordnetem Satz von Trennmustern sollte -% eine Nummer f"ur den \TeX-Parameter |\language| beim Erzeugen -% der Formatdatei zugewiesen worden sein. Diese Nummer ist f"ur -% jede Sprache in der \textit{control sequence} -% |\l@|\(\langle\)Sprache\(\rangle\) abgespeichert. -% -% Die Style-Option "`german"' verwendet die Sprachen -% \texttt{USenglish}, \texttt{english}, \texttt{german}, -% \texttt{austrian} und \texttt{french}. Sind f"ur diese Sprachen -% keine Nummern abgespeichert worden, werden diese hier als Dialekt -% einer schon definierten Sprache oder als~\(255\) definiert, so da"s -% nicht getrennt wird. -% -% Ist f"ur \texttt{german} bzw.\ dessen "`Dialekt"' \texttt{austrian} -% kein Wert definiert, wird eine entsprechende Meldung auf dem -% Benutzerterminal ausgegeben. F"ur die anderen Sprache erscheint -% diese Meldung nur in der Protokolldatei. -% -% "`german"' und "`ngerman"' unterscheiden sich -% durch die Bezeichner f"ur die jeweils unterst"utzten die Sprachen: -% F"ur die neue Rechtschreibung -% werden \texttt{ngerman} und \texttt{naustrian} an Stelle von -% \texttt{german} und \texttt{austrian} verwendet. -% -% -% \begin{macrocode} -\@ifundefined{l@USenglish}{% - \@ifundefined{l@english}{\chardef\l@USenglish=255 }% - {\chardef\l@USenglish=\l@english}% -%<old> \wlog{german -- \string\language\space number for USenglish % -%<new> \wlog{ngerman -- \string\language\space number for USenglish % - undefined, default \number\l@USenglish\space used.}% -}{} -% \end{macrocode} -% \begin{macrocode} -\@ifundefined{l@english}{% - \chardef\l@english=\l@USenglish -%<old> \wlog{german -- \string\language\space number for UKenglish % -%<new> \wlog{ngerman -- \string\language\space number for UKenglish % - undefined, default \number\l@english\space used.}% -}{} -% \end{macrocode} -% \begin{macrocode} -%<*old> -\@ifundefined{l@german}{% - \@ifundefined{l@austrian}{% - \chardef\l@german=255 % - \message{german -- \string\language\space number for German % - undefined, default \number\l@german\space used,}% - \message{german -- Please read \string"gerdoc.tex\string" how % - to install hyphenation patterns.}% - }{% - \chardef\l@german=\l@austrian - \wlog{german -- \string\language\space number for German % - undefined, default \number\l@german\space used.}% - }% -}{} -%</old> -%<*new> -\@ifundefined{l@ngerman}{% - \@ifundefined{l@naustrian}{% - \chardef\l@ngerman=255 % - \message{ngerman -- \string\language\space number for ngerman % - undefined, default \number\l@ngerman\space used,}% - \message{ngerman -- Please read \string"gerdoc.tex\string" how % - to install hyphenation patterns.}% - }{% - \chardef\l@ngerman=\l@naustrian - \wlog{ngerman -- \string\language\space number for ngerman % - undefined, default \number\l@ngerman\space used.}% - }% -}{} -%</new> -% \end{macrocode} -% \begin{macrocode} -%<*old> -\@ifundefined{l@austrian}{% - \chardef\l@austrian=\l@german - \wlog{german -- \string\language\space number for Austrian % - undefined, default \number\l@austrian\space used.}% -}{} -%</old> -%<*new> -\@ifundefined{l@naustrian}{% - \chardef\l@naustrian=\l@ngerman - \wlog{ngerman -- \string\language\space number for naustrian % - undefined, default \number\l@naustrian\space used.}% -}{} -%</new> -% \end{macrocode} -% \begin{macrocode} -\@ifundefined{l@french}{% - \chardef\l@french=255 -%<old> \wlog{german -- \string\language\space number for French % -%<new> \wlog{ngerman -- \string\language\space number for French % - undefined, default \number\l@french\space used.}% -}{} -% \end{macrocode} -% -% -% \subsection{Wechsel der Trennmuster, Datumsangabe und -% "Uberschriften} -% -% Ein Wechsel der Sprache mit |\selectlanguage{|\meta{Sprache}|}| -% schaltet einfach die Datumsangabe, Textteile, Trennmuster und -% andere Parameter f"ur die angegebene \meta{Sprache} um. -% -% F"ur die n"achste Version ist endlich eine Anpassung an das -% Babel-System geplant. Au"serdem fehlen momentan noch -% Standard-Makros, um die aktuelle Sprache abzufragen und abh"angig -% von dieser entsprechend reagieren zu k"onnen. -% -% Das Makro |\originalTeX| enth"alt alle Anweisungen, um die -% Parameter"-anpassungen r"uck"-g"angig machen zu k"onnen, die man -% beim Umschalten auf die momentane Sprache ge"-"andert hat. Dieses -% Makro mu"s immer expandierbar sein; darf also nicht als |\relax| -% definiert werden. Zu Beginn sind keine Anweisungen notwendig. -% (Anmerkung: Wegen Problemen mit dem Paket \texttt{bibgerm}, das -% einige der internen Makros von "`german"' umdefiniert, wurde der -% Name des Makros ge"andert -- dies sollte in einer endg"ultigen -% L"osung wieder verbessert werden, um beispielsweise kompatibel zu -% Babel zu werden.) -% \changes{2.5c}{96/02/26}{\cs{grmn@originalTeX} mu"s -% \cs{original@TeX} hei"sen, damit einige andere Pakete, wie -% `bibgerm' kompatibel bleiben. `bibgerm' sollte endlich verbessert -% und "`sauberer"' programmiert werden (die zus"atzlichen Strings -% kann man auch in die Makros \cs{extras\ldots} einf"ugen).} -% \changes{2.5c}{96/04/21}{\cs{original@TeX} hei"st in Babel -% \cs{originalTeX}, das in `german.sty' eine andere Bedeutung -% hat (TODO). -% Da ich in \cs{selectlanguage} den Leerzeichen-Trick verwende -% (um `bibgerman' zu "`hintergehen"'), hei"st \cs{original@TeX} -% bis zur endg"ultigen L"osung wieder \cs{grmn@originalTeX}.} -% \begin{macrocode} -\def\grmn@originalTeX{} -% \end{macrocode} -% -% \changes{2.5c}{96/04/21}{\cs{languagename} neu mit Babels -% Funktionalit"at eingef"uhrt, Hinweis auf m"ogliche other-Tokens.} -% -% Das Makro |\languagename| enth"alt den Namen der momentan -% eingeschalteten Sprache. Der Name ist eine Folge von -% Character-Tokens, die entweder einen |\catcode| von 11 (letter) oder -% 12 (other) besitzen k"onnen. Die Ursache f"ur Other-Tokens ist das -% Primitiv |\string|, das in |\selectlanguage| verwendet wird, um aus -% einer als Argument angegebenen \textit{control sequence} das -% Escape-Zeichen abzuspalten. (Die Dokumentation von Babel~3.5 gibt -% einen Test der aktuellen Sprache mit |\languagename| an, der wegen -% der Other-Tokens nicht immer funktionieren wird!) -% -% \begin{macrocode} -\def\languagename{} -% \end{macrocode} -% -% Mit dem Makro |\selectlanguage| wird auf die Sprache umgeschaltet. -% Dabei werden, nachdem abgefragt wurde, ob die Sprache definiert -% wurde, zuerst mit |\originalTeX| alle "Anderungen r"uck"-g"angig -% gemacht, bevor das Datum, die "Uberschriften, sonstige Parameter -% und die Trennmuster umgeschalten werden. -% (Anmerkung: |\originalTeX| hei"st im Moment noch -% |\grmn@originalTeX|, dies mu"s aber noch in der n"achsten Version -% ge"andert werden, um kompatibler zu Babel zu sein.) -% -% \changes{2.5c}{96/04/21}{Der Trick aus \LaTeXe{} mit dem -% abschlie"senden Leerzeichen im Namen des zu sch"utzenden Makros -% wird auch f"ur \cs{selectlanguage } verwendet. Da damit die -% Neudefinition im Paket `bibgerm' wirkungslos wird, verwende ich -% hier einen tempor"aren Patch (in Form des \cs{bibs\ldots}) f"ur -% dieses Paket. Besser w"are es aber, wenn `bibgerm' die -% zus"atzlichen Definitionen an \cs{extras\ldots} anh"angen w"urde.} -% \begin{macrocode} -\expandafter\def\csname selectlanguage \endcsname#1{\relax - \expandafter\ifx\csname l@#1\endcsname\relax - \errhelp{Your command will be ignored, type <return> to proceed}% - \errmessage{You haven't defined the language #1 yet}% - \else - \grmn@originalTeX - \edef\languagename{#1}% - \edef\grmn@originalTeX{\csname noextras#1\endcsname - \def\noexpand\grmn@originalTeX{}}% - \csname date#1\endcsname - \csname captions#1\endcsname - \csname extras#1\endcsname\relax - % Diese Zeile ist fuer `bibgerm' ... - \csname bibs#1\endcsname - % ... sie wird in spaeteren `german.sty'-Versionen nicht - % mehr vorhanden sein. Also nicht darauf verlassen! - \language \csname l@#1\endcsname\relax - \fi} -% \end{macrocode} -% -% Das Makro |\selectlanguage| ist \emph{fragile}. Deshalb wird es -% implizit mit einem |\protect| gesch"utzt. Da dadurch so oder so -% zwei Makros notwendig sind, k"onnen wir in dieses zweite Makro -% gleich noch weitere Funktionalit"at stecken (die aber vollst"andig -% expandierbar sein mu"s!): -% In "alteren Versionen dieser Style-Option mu"ste man die Sprache als -% \textit{control sequence}, z.\,B.\ |\german|, eingeben, w"ahrend man -% in den aktuellen Versionen nur noch den Namen, also |german|, -% verwenden sollte. Damit beides aus Kompatibilit"ats"-gr"unden -% m"oglich ist, wird hier einfach die \textit{control sequence} -% umgewandelt und das Escape-Zeichen, normalerweise ein Back\-slash, -% mit einem kleinen Kniff entfernt. -% \changes{2.5c}{96/04/21}{Der Trick aus \LaTeXe{} mit dem -% abschlie"senden Leerzeichen im Namen des zu sch"utzenden Makros -% wird auch f"ur \cs{selectlanguage} verwendet.} -% \begin{macrocode} -\begingroup\catcode`\ =11\relax% <= do not delete this and the -\toks0={\endgroup% <=== following percent characters! -\def\selectlanguage#1{\protect\selectlanguage {% -\ifnum\escapechar=\expandafter`\string#1\empty% -\else\string#1\empty\fi}}}% -\the\toks0\relax% -% \end{macrocode} -% -% -% In "alteren \texttt{.aux}-Dateien kann immer noch die alte interne -% Form \cs{p@select\-language} auftauchen. Daher wird diese hier -% nochmals definiert, um diese eigentlich unn"otigen Fehlermeldungen -% zu vermeiden. Au"serdem fr"agt \texttt{bibgerm.sty} die Existenz -% dieses Makros ab und, falls es nicht existiert, definiert -% \texttt{bibgerm.sty} ein eigenes Makro \cs{select\-language} mit der -% alten Definition aus \texttt{german.sty} Version~2.3. Dies mu"s -% auf alle F"alle vermieden werden! -% -% \changes{2.5c}{96/04/23}{\cs{p@selectlanguage} aus Kompatibilit"at -% mit v2.5b und noch "alteren Versionen wieder eingef"uhrt.} -% -% \begin{macrocode} -\def\p@selectlanguage{\selectlanguage} -% \end{macrocode} -% -% -% \changes{2.5c}{96/04/21}{\cs{iflanguage} neu eingef"uhrt.} -% \changes{2.5e (beta 1)}{98/05/04}{\cs{iflanguage} ge"andert.} -% -% Das Makro |\iflanguage| kann dazu benutzt werden, abh"angig von -% der aktuellen Sprache Aktionen auszuf"uhren. Das Makro hat drei -% Argumente. Das erste Argument ist die Sprache in Form einer -% Folge von Character-Tokens, das zweite und dritte Argument enth"alt -% die Aktionen, falls dies die aktuelle Sprache ist bzw.\ falls nicht. -% -% Mit dem folgenden |\iflanguage| kann man in den "`then"'- und -% "`else"'"~Argumenten auch Makros verwenden, deren Parameter -% hinter dem |\iflanguage|-Befehl folgen. Diese Implementation, -% abgeschaut von |\@ifundefined|, erm"oglicht -% Konstrukte wie |Sto\iflanguage{german}{"}{f}ffetzen|. -% -% |\iflanguage| kann sich in sp"ateren Version noch geringf"ugig -% "andern, falls dies im Babel-Paket geschehen sollte. -% -% \begin{macrocode} -\def\iflanguage#1{% - \ifx\csname l@#1\endcsname\relax - \expandafter\grmn@dqsecond - \else \ifnum\csname l@#1\endcsname=\language - \expandafter\expandafter\expandafter\grmn@dqfirst - \else - \expandafter\expandafter\expandafter\grmn@dqsecond - \fi\fi -} -% \end{macrocode} -% -% -% \subsection{Kompatibilit"at mit \protect\TeX~2} -% -% In \TeX\ Version 2.x konnte man Trennmuster f"ur nur eine einzige -% Sprache in einer Format"-datei laden und verwenden. Deshalb fehlen -% in dieser alten \TeX-Version, die von einigen, wenn auch wenigen -% Personen immer noch verwendet wird/werden mu"s, die Parameter -% |\language|, \texttt{\string\left\-hyphen\-min}, -% \texttt{\string\right\-hyphen\-min} und das Primitiv -% \texttt{\string\set\-language}. Um diese Style-Option mit dieser -% alten Version verwenden zu k"onnen, werden diese f"ur \TeX\ -% Version~2 einfach ohne Funktionalit"at nachimplementiert. -% -% Die Parameter sind einfache Z"ahler, die mit |\newcount| allokiert -% werden k"onnen und mit sinnvollen, wenn auch nie von \TeX\ selbst -% verwendete Werten initialisiert werden. Da |\newcount| in -% Plain-\TeX\ als "`outer"' deklariert ist, mu"s hier der Trick mit -% |\csname| verwendet werden. -% \begin{macrocode} -\expandafter\ifx\csname language\endcsname\relax - \csname newcount\endcsname\language - \language=0 \fi -\expandafter\ifx\csname lefthyphenmin\endcsname\relax - \csname newcount\endcsname\lefthyphenmin - \lefthyphenmin=2 \fi -\expandafter\ifx\csname righthyphenmin\endcsname\relax - \csname newcount\endcsname\righthyphenmin - \righthyphenmin=3 \fi -% \end{macrocode} -% -% F"ur das in \TeX~3 neu hinzugekommene Primitiv -% \texttt{\string\set\-language} k"onnte man eine relativ einfache -% Definition verwenden. Da jedoch Makros die Existenz dieses Befehls -% abpr"ufen und es dann mit der Bedeutung, die es in \TeX~3 besitzt, -% verwenden k"onnten, sollte es das Verhalten, insbesondere dessen -% Einschr"ankungen, dieses neuen Primitivs nachbilden. -% Da |\setlanguage| in "alteren Versionen dieser Style-Option zu -% Wechseln der Sprache verwendet wurde, kann man gleich in der -% Fehlermeldung auf das neue Makro |\selectlanguage| hinweisen. -% \begin{macrocode} -\expandafter\ifx\csname setlanguage\endcsname\relax - \def\setlanguage{\relax - \ifhmode \else - \errhelp{Use \selectlanguage to switch languages.}% - \errmessage{\setlanguage allowed only in horizontal mode}% - \fi - \begingroup\afterassignment\endgroup\count@=} -\fi -% \end{macrocode} -% -% \subsection{Ein-/Ausschalten der deutschen Befehle} -% \changes{2.5e (beta 3)}{98/05/28}{In {\tt ngerman.sty} wird nun -% \cs{ngermanTeX} definiert.} -% -% \begin{macrocode} -\begingroup \mdqon -\def\x{\endgroup - \def\originalTeX{\mdqoff \let"\dq \umlauthigh - \let\3\grmn@original@three - \selectlanguage{USenglish}}% -%<old> \def\germanTeX{\mdqon \let"\@active@dq \umlautlow -%<new> \def\ngermanTeX{\mdqon \let"\@active@dq \umlautlow - \let\grmn@original@three\3\let\3\ss -%<old> \selectlanguage{german}}}% -%<new> \selectlanguage{ngerman}}}% -\x -% \end{macrocode} -% -% Zum Schlu"s bleibt nur noch das R"ucksetzen des \textit{category -% codes} des Zeichens~\texttt{@} und das Einschalten der deutschen -% Befehle, das gleichzeitig die deutschen Trennmuster aktiviert, -% falls sie geladen wurden. -% \begin{macrocode} -\catcode`\@=\atcode % return to previous catcode -%<old>\germanTeX -%<new>\ngermanTeX -% \end{macrocode} -% -%\iffalse -%</!driver> -%</!hyphcfg> -%\fi -% -% \section{Beispieldatei \texttt{hyphen.cfg} zum Laden der -% Trennmuster} -% -% In \texttt{gerdoc.tex}, der Dokumentation zum German-Style, sind -% die Schritte zur Installation der Trennmuster genauer erl"autert. -% Zur Vereinfachung f"ur den Benutzer wird die Beispieldatei -% \texttt{hyphxmpl.cfg} zur Verf"ugung gestellt, die entweder direkt -% oder mit wenigen "Anderungen als Datei \texttt{hyphen.cfg} -% f"ur \LaTeXe{} verwendet werden kann. -% -% \begin{macrocode} -%<+hyphcfg>%% ---------------------------------------------- -%<+hyphcfg>%% Beispielkonfigurationsdatei fuer: `hyphen.cfg' -%<+hyphcfg>%% Naeheres siehe Dokumentation `gerdoc.tex'. -%<+hyphcfg>%% Copyleft 1995-1998 by Bernd Raichle. -%<+hyphcfg> -%<+hyphcfg>%% Konfigurationsdatei -- Trennmuster: `hyphen.cfg' -%<+hyphcfg>\message{== Loading hyphenation patterns:} -%<+hyphcfg> -%<+hyphcfg>%% american english -%<+hyphcfg>\chardef\l@USenglish=\language -%<+hyphcfg>%% british english als "Dialekt" -%<+hyphcfg>\chardef\l@english=\l@USenglish -%<+hyphcfg>\input hyphen -%<+hyphcfg> -%<+hyphcfg>%% german -%<+hyphcfg>\newlanguage\l@german \language=\l@german -%<+hyphcfg>%% oesterreichisch als "Dialekt" -%<+hyphcfg>\chardef\l@austrian=\l@german -%<+hyphcfg>\input ghyph31 -%<+hyphcfg> -%<+hyphcfg>%% new german -%<+hyphcfg>\newlanguage\l@ngerman \language=\l@ngerman -%<+hyphcfg>%% oesterreichisch (neu) als "Dialekt" -%<+hyphcfg>\chardef\l@naustrian=\l@ngerman -%<+hyphcfg>\input gnhyph01 -%<+hyphcfg> -%<+hyphcfg>%% weitere Sprachen nach folgendem Schema: -%<+hyphcfg>% \newlanguage\l@SPRACHE \language=\l@SPRACHE -%<+hyphcfg>% \chardef\l@DIALEKT=\l@SPRACHE -%<+hyphcfg>% \input SPRACHhyphen -%<+hyphcfg> -%<+hyphcfg>%% Default-Trennmuster: USenglish -%<+hyphcfg>\language=\l@USenglish \lefthyphenmin=2 \righthyphenmin=3 -%<+hyphcfg>\message{done.} -% \end{macrocode} -% -% Ich hoffe, das Lesen dieses dokumentierten Quellcodes hat einige -% Einblicke in die Implementierung der Style-Option "`german"' -% gegeben. Da ich sie haupt"-s"achlich als eigene Ged"achtnisst"utze -% geschrieben habe, kaum Korrekturen vorgenommen habe, ist sie -% unvoll"-st"andig, ent"-h"alt viele \mbox{Tipp-}, Ausdrucks- und -% sonstige Fehler. Man m"oge "uber diese hinwegsehen oder mir -% entsprechende Korrekturen zukommen lassen. Wichtiger ist mir -% jedoch, da"s der Makro-Code m"oglichst wenig Fehler enth"alt, soda"s -% jede Meldung eines Fehlers und jeder Verbesserungsvorschlag immer -% willkommen ist. Daf"ur schon jetzt meinen Dank! -% \pagebreak -% -% \Finale -\endinput -%% End of german.dtx diff --git a/Master/texmf-dist/source/generic/german/german.ins b/Master/texmf-dist/source/generic/german/german.ins deleted file mode 100644 index c68647ad303..00000000000 --- a/Master/texmf-dist/source/generic/german/german.ins +++ /dev/null @@ -1,84 +0,0 @@ -%% german.ins -%% -%% Docstrip installation instruction file -%% for the `german' collection, Version 2.5e of 1998-07-08 -%% -%% Copyright (C) 1991-1997 by B.Raichle and DANTE e.V. -%% Copyright (C) 1998,1999 by B.Raichle -%% - -\def\batchfile{german.ins} -\input docstrip.tex - -\expandafter\ifx\csname declarepreamble\endcsname\relax - \Msg{==> This file requires docstrip version 2.4} - \Msg{==> available from CTAN (e.g. ftp.dante.de) in} - \Msg{==> tex-archive/macros/latex/unpacked/docstrip.tex} - \Msg{}\expandafter\endinput\fi - -\keepsilent - -\preamble - -This file is part of the `german' collection, -providing German language support for -plain TeX or LaTeX version 2e/2.09. - ------------ Copyright (C) 1998, 1999 by B.Raichle ---------- -------------------- All rights reserved. ------------------- -Maintained by Bernd Raichle (Uni Stuttgart), -using ideas by H.Partl (TU Wien, Uni.f.Bodenkultur Wien) -and many other people. - - -IMPORTANT NOTICE: - -This program can be redistributed and/or modified under the terms -of the LaTeX Project Public License Distributed from CTAN -archives in directory macros/latex/base/lppl.txt; either -version 1 of the License, or any later version. - - -Error Reports (in case of UNCHANGED versions) should be sent to: - - Bernd Raichle <raichle@Informatik.Uni-Stuttgart.DE> - -\endpreamble - -\declarepreamble\emptypreamble -\endpreamble - -\Msg{*** Generating files ***} -\generate{% - \file{german.sty}{\from{german.dtx}{old}} - \file{ngerman.sty}{\from{german.dtx}{new}} -% \file{german.drv}{\from{german.dtx}{driver}} - \usepreamble\emptypreamble - \file{hyphxmpl.cfg}{\from{german.dtx}{hyphcfg}}% -} -\Msg{************************************************************} -\Msg{*} -\Msg{* To finish the installation you have to move the following} -\Msg{* files into a directory searched by TeX:} -\Msg{*} -\Msg{* \space\space german.sty ngerman.sty} -\Msg{*} -\Msg{* There exists a separate file `gerdoc.tex' containing} -\Msg{* the user documentation. Please get this file, run it} -\Msg{* through LaTeX (LaTeX2e or LaTeX 2.09):} -\Msg{*} -\Msg{* \space\space latex gerdoc.tex} -\Msg{*} -\Msg{* and follow the instructions how to install the hyphenation} -\Msg{* patterns when creating format files. The file `hyphxmpl.cfg'} -\Msg{* can be used as an example for LaTeX2e's `hyphen.cfg' file.} -\Msg{*} -\Msg{* (Gurus only!) To produce the implementation documentation you} -\Msg{* can run the file `german.dtx' through LaTeX:} -\Msg{* \space\space latex german.dtx} -\Msg{*} -\Msg{* Happy TeXing} -\Msg{************************************************************} -\endbatchfile -%% -%% End of file `german.ins'. diff --git a/Master/texmf-dist/tex/generic/german/german.sty b/Master/texmf-dist/tex/generic/german/german.sty deleted file mode 100644 index ef477d2bca9..00000000000 --- a/Master/texmf-dist/tex/generic/german/german.sty +++ /dev/null @@ -1,674 +0,0 @@ -%% -%% This is file `german.sty', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% german.dtx (with options: `old') -%% -%% This file is part of the `german' collection, -%% providing German language support for -%% plain TeX or LaTeX version 2e/2.09. -%% -%% ----------- Copyright (C) 1998, 1999 by B.Raichle ---------- -%% ------------------- All rights reserved. ------------------- -%% Maintained by Bernd Raichle (Uni Stuttgart), -%% using ideas by H.Partl (TU Wien, Uni.f.Bodenkultur Wien) -%% and many other people. -%% -%% -%% IMPORTANT NOTICE: -%% -%% This program can be redistributed and/or modified under the terms -%% of the LaTeX Project Public License Distributed from CTAN -%% archives in directory macros/latex/base/lppl.txt; either -%% version 1 of the License, or any later version. -%% -%% -%% Error Reports (in case of UNCHANGED versions) should be sent to: -%% -%% Bernd Raichle <raichle@Informatik.Uni-Stuttgart.DE> -%% -\expandafter\ifx\csname grmn\string @VersionNo\endcsname\relax -\else - \ifnum\number\csname grmn\string @VersionNo\endcsname<9806\relax - \else \germanTeX \expandafter\expandafter\expandafter\endinput - \fi\fi -\expandafter\mathchardef\csname grmn\string @VersionNo\endcsname -=9806\relax % = v2.5e -\message{v2.5e 1998-07-08} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname ProvidesPackage\endcsname\relax\else - \ProvidesPackage{german}[1998/07/08 v2.5e % - Support for writing german texts (br)] -\fi -\chardef\atcode=\catcode`\@ -\catcode`\@=11 % \makeatletter -\expandafter\ifx\csname @ifundefined\endcsname\relax - \def\@ifundefined#1{% - \expandafter\ifx\csname #1\endcsname\relax - \expandafter\grmn@dqfirst\else\expandafter\grmn@dqsecond\fi} -\fi -\def\grmn@dqfirst#1#2{#1} -\def\grmn@dqsecond#1#2{#2} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname DeclareTextSymbol\endcsname\relax -\@ifundefined{SS}{\def\SS{SS}}{} -\else -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname ProvideTextCommandDefault\endcsname\relax - \immediate\write17{} - \immediate\write17{% -!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!} - \immediate\write17{% -!! Dies ist eine zu alte LaTeX2e-Version, die nicht} - \immediate\write17{% -!! alle fuer german/ngerman notwendigen Deklarationen} - \immediate\write17{% -!! zur Verfuegung stellt. Dennoch koennen Sie diese} - \immediate\write17{% -!! Pakete, eventuell mit kleinen Fehlern, verwenden.} - \immediate\write17{!!} - \immediate\write17{% -!! Bitte installieren Sie eine neuere LaTeX2e-Version,} - \immediate\write17{% -!! da zukuenftige Versionen der Pakete diese} - \immediate\write17{% -!! LaTeX2e-Version nicht mehr unterstuetzen werden!} - \immediate\write17{% -!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!} - \immediate\write17{} -\fi -\@ifundefined{UseTextSymbol}{% - \def\UseTextSymbol#1#2{{\fontencoding{#1}\selectfont #2}} -}{} -\@ifundefined{UseTextAccent}{% - \def\UseTextAccent#1#2#3{% - {\let\@curr@enc\f@encoding - \fontencoding{#1}\selectfont - #2{\fontencoding\@curr@enc\selectfont #3}}}% -}{} -\@ifundefined{ProvideTextCommand}{% - \def\ProvideTextCommand#1#2{% - %%% misses \RobustTextCommand{#1}{...etc.etc...}!! - \expandafter\providecommand\csname #2\string#1\endcsname}% -}{} -\@ifundefined{ProvideTextCommandDefault}{% - \def\ProvideTextCommandDefault#1{% - \ProvideTextCommand{#1}{U}}% -}{} -\@ifundefined{DeclareTextCompositeCommand}{% - \def\DeclareTextCompositeCommand#1#2#3#4{% - % define a `dummy' text composite - \DeclareTextComposite{#1}{#2}{#3}{`\Z}% - % then redefine this command including the new command - \expandafter\def\csname\expandafter\string\csname - #2\endcsname\string#1-\string#3\endcsname##1##2{#4}}% -}{} -\@ifundefined{OT1\string\ss}{% - \wlog{german: Re-declaration of \string\ss\space for OT1!}% - \DeclareTextSymbol{\ss}{OT1}{25}}{} -\@ifundefined{OT1\string\i}{% - \wlog{german: Re-declaration of \string\i\space for OT1!}% - \DeclareTextSymbol{\i}{OT1}{16}}{} -\ProvideTextCommandDefault{\"}{\UseTextAccent{OT1}{\"}} -\ProvideTextCommandDefault{\ss}{\UseTextSymbol{OT1}\ss} -\ProvideTextCommandDefault{\i}{\UseTextSymbol{OT1}\i} -\ProvideTextCommandDefault{\SS}{SS} -\@ifundefined{textquotedblleft}{% - \ProvideTextCommandDefault{\textquotedblleft}{% - \UseTextSymbol{OT1}\textquotedblleft}% - \DeclareTextSymbol{\textquotedblleft}{OT1}{92}% - \DeclareTextSymbol{\textquotedblleft}{T1}{16}% -}{} -\@ifundefined{textquotedblright}{% - \ProvideTextCommandDefault{\textquotedblright}{% - \UseTextSymbol{OT1}\textquotedblright}% - \DeclareTextSymbol{\textquotedblright}{OT1}{`\"}% - \DeclareTextSymbol{\textquotedblright}{T1}{17}% - %% \DeclareTextSymbol{\textquotedbl}{T1}{`\"}% -}{} -\@ifundefined{textquoteleft}{% - \ProvideTextCommandDefault{\textquoteleft}{% - \UseTextSymbol{OT1}\textquoteleft}% - \DeclareTextSymbol{\textquoteleft}{OT1}{`\`}% - \DeclareTextSymbol{\textquoteleft}{T1}{`\`}% -}{} -\@ifundefined{textquoteright}{% - \ProvideTextCommandDefault{\textquoteright}{% - \UseTextSymbol{OT1}\textquoteright}% - \DeclareTextSymbol{\textquoteright}{OT1}{`\'}% - \DeclareTextSymbol{\textquoteright}{T1}{`\'}% -}{} -\@ifundefined{quotesinglbase}{% - \DeclareTextSymbol{\quotesinglbase}{T1}{13}}{} -\@ifundefined{quotedblbase}{% - \DeclareTextSymbol{\quotedblbase}{T1}{18}}{} -\@ifundefined{guillemotleft}{% - \DeclareTextSymbol{\guillemotleft}{T1}{19}}{} -\@ifundefined{guillemotright}{% - \DeclareTextSymbol{\guillemotright}{T1}{20}}{} -\@ifundefined{guilsinglleft}{% - \DeclareTextSymbol{\guilsinglleft}{T1}{14}}{} -\@ifundefined{guilsinglright}{% - \DeclareTextSymbol{\guilsinglright}{T1}{15}}{} -\fi -\expandafter\let\expandafter\protect\csname protect\endcsname -\def\allowhyphens{\penalty\@M \hskip\z@skip} -\lccode`\^^Y=`\^^Y -\def\set@low@box#1{\setbox\tw@\hbox{,}\setbox\z@\hbox{#1}% - \setbox\z@\hbox{\dimen@\ht\z@ \advance\dimen@ -\ht\tw@ - \lower\dimen@\box\z@}% - \ht\z@\ht\tw@ \dp\z@\dp\tw@} -\def\save@sf@q#1{{\ifhmode - \edef\@SF{\spacefactor\the\spacefactor}\else - \let\@SF\empty \fi \leavevmode #1\@SF}} -\expandafter\ifx\csname grmnU@D\endcsname\relax - \csname newdimen\endcsname\grmnU@D -\fi -\def\newumlaut#1{{\grmnU@D 1ex% - {\setbox\z@\hbox{\char127}\dimen@-.45ex\advance\dimen@\ht\z@ - \ifdim 1ex<\dimen@ \fontdimen5\font\dimen@ \fi}% - \accent127\fontdimen5\font\grmnU@D #1}\allowhyphens} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname DeclareTextSymbol\endcsname\relax - \def\highumlaut#1{{\accent127 #1}\allowhyphens} -\else - \def\highumlaut#1{\"{#1}\allowhyphens} -\fi -\def\mdqon{\catcode`\"\active} -\def\mdqoff{\catcode`\"12\relax} -\begingroup \mdqoff -\def\x{\endgroup - \def\@MATHUMLAUT{\ddot}% = \mathaccent"707F - \def\@MATHss{\mathord{\mathchar"7019}}% TODO: correct? - \def\dq{"}}% TODO: or \textquotedbl? -\x -\begingroup - \def\do{\noexpand\do\noexpand}% - \edef\x{\endgroup - \def\noexpand\dospecials{\dospecials\do\"}}% -\x -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname @sanitize\endcsname\relax \else - \begingroup - \def\@makeother{\noexpand\@makeother\noexpand}% - \edef\x{\endgroup - \def\noexpand\@sanitize{\@sanitize\@makeother\"}}% - \x -\fi -\let\grmn@original@three=\3 % \3 may be defined or undefined. -\def\ck{\penalty\@M\discretionary{k-}{}{c}k\allowhyphens} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname DeclareTextSymbol\endcsname\relax -\expandafter\def\csname glqq \endcsname{% - \save@sf@q{\set@low@box{''\/}\box\z@\kern-.04em\allowhyphens}} -\edef\glqq{\noexpand\protect - \expandafter\noexpand\csname glqq \endcsname} -\let\@glqq=\glqq -\expandafter\def\csname grqq \endcsname{% - \save@sf@q{\kern-.07em``\kern.07em}}% ('') -\edef\grqq{\noexpand\protect - \expandafter\noexpand\csname grqq \endcsname} -\let\@grqq=\grqq -\expandafter\def\csname glq \endcsname{% - \save@sf@q{\set@low@box{'\/}\box\z@\kern-.04em\allowhyphens}} -\edef\glq{\noexpand\protect - \expandafter\noexpand\csname glq \endcsname} -\let\@glq=\glq -\expandafter\def\csname grq\endcsname{% - \save@sf@q{\kern-.0125em`\kern.07em}} -\edef\grq{\noexpand\protect - \expandafter\noexpand\csname grq \endcsname} -\let\@grq=\grq -\expandafter\def\csname flqq \endcsname{% - \relax\ifmmode \mathrel{\ll}\else \save@sf@q{\penalty\@M - \raise .27ex\hbox{$\m@th\scriptscriptstyle \ll $}% - \allowhyphens}\fi} -\edef\flqq{\noexpand\protect - \expandafter\noexpand\csname flqq \endcsname} -\let\@flqq=\flqq -\expandafter\def\csname frqq \endcsname{% - \relax\ifmmode \mathrel{\gg}\else \save@sf@q{\penalty\@M - \raise .27ex\hbox{$\m@th\scriptscriptstyle \gg $}% - \allowhyphens}\fi} -\edef\frqq{\noexpand\protect - \expandafter\noexpand\csname frqq \endcsname} -\let\@frqq=\frqq -\expandafter\def\csname flq \endcsname{% - \relax\ifmmode <\else \save@sf@q{\penalty\@M - \raise .27ex\hbox{$\m@th\scriptscriptstyle <$}\allowhyphens}\fi} -\edef\flq{\noexpand\protect - \expandafter\noexpand\csname flq \endcsname} -\let\@flq=\flq -\expandafter\def\csname frq \endcsname{% - \relax\ifmmode >\else \save@sf@q{\penalty\@M - \raise .27ex\hbox{$\m@th\scriptscriptstyle >$}\allowhyphens}\fi} -\edef\frq{\noexpand\protect - \expandafter\noexpand\csname frq \endcsname} -\let\@frq=\frq -\else -\DeclareRobustCommand{\glqq}{% - \ifmmode\hbox{\quotedblbase}\else\quotedblbase\fi} -\ProvideTextCommandDefault{\quotedblbase}{% - \UseTextSymbol{OT1}\quotedblbase} -\ProvideTextCommand{\quotedblbase}{OT1}{% - \save@sf@q{\set@low@box{\textquotedblright\/}\box\z@ - \kern-.04em\allowhyphens}} -\ProvideTextCommand{\grqq}{T1}{\textquotedblleft} -\ProvideTextCommand{\grqq}{OT1}{% - \save@sf@q{\kern-.07em% - \ifmmode\hbox{\textquotedblleft}\else\textquotedblleft\fi - \kern.07em\relax}} -\ProvideTextCommandDefault{\grqq}{\UseTextSymbol{OT1}\grqq} -\DeclareRobustCommand{\glq}{% - \ifmmode\hbox{\quotesinglbase}\else\quotesinglbase\fi} -\ProvideTextCommandDefault{\quotesinglbase}{% - \UseTextSymbol{OT1}\quotesinglbase} -\ProvideTextCommand{\quotesinglbase}{OT1}{% - \save@sf@q{\set@low@box{\textquoteright\/}\box\z@ - \kern-.04em\allowhyphens}} -\ProvideTextCommand{\grq}{T1}{\textquoteleft} -\ProvideTextCommand{\grq}{OT1}{% - \save@sf@q{\kern-.0125em% - \ifmmode\hbox{\textquoteleft}\else\textquoteleft\fi - \kern.07em\relax}} -\ProvideTextCommandDefault{\grq}{\UseTextSymbol{OT1}\grq} -\DeclareRobustCommand{\flqq}{% - \ifmmode\mathrel{\hbox{\guillemotleft}}\else\guillemotleft\fi} -\ProvideTextCommandDefault{\guillemotleft}{% - \UseTextSymbol{OT1}\guillemotleft} -\ProvideTextCommand{\guillemotleft}{OT1}{% - \ifmmode \ll \else \save@sf@q{\penalty\@M - \raise .27ex\hbox{$\m@th\scriptscriptstyle \ll $}% - \allowhyphens}\fi} -\DeclareRobustCommand{\frqq}{% - \ifmmode\mathrel{\hbox{\guillemotright}}\else\guillemotright\fi} -\ProvideTextCommandDefault{\guillemotright}{% - \UseTextSymbol{OT1}\guillemotright} -\ProvideTextCommand{\guillemotright}{OT1}{% - \ifmmode \gg \else \save@sf@q{\penalty\@M - \raise .27ex\hbox{$\m@th\scriptscriptstyle \gg $}% - \allowhyphens}\fi} -\DeclareRobustCommand{\flq}{% - \ifmmode\mathbin{\hbox{\guilsinglleft}}\else\guilsinglleft\fi} -\ProvideTextCommandDefault{\guilsinglleft}{% - \UseTextSymbol{OT1}\guilsinglleft} -\ProvideTextCommand{\guilsinglleft}{OT1}{% - \ifmmode <\else \save@sf@q{\penalty\@M - \raise .27ex\hbox{$\m@th\scriptscriptstyle <$}\allowhyphens}\fi} -\DeclareRobustCommand{\frq}{% - \ifmmode\mathbin{\hbox{\guilsinglright}}\else\guilsinglright\fi} -\ProvideTextCommandDefault{\guilsinglright}{% - \UseTextSymbol{OT1}\guilsinglright} -\ProvideTextCommand{\guilsinglright}{OT1}{% - \ifmmode >\else \save@sf@q{\penalty\@M - \raise .27ex\hbox{$\m@th\scriptscriptstyle >$}\allowhyphens}\fi} -\fi -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname DeclareTextSymbol\endcsname\relax -\def\umlauthigh{\def\"##1{{\accent127 ##1}}} -\def\umlautlow{\def\"{\protect\newumlaut}} -\else -\def\umlauthigh{\def\grmn@OTumlaut##1{{\accent 127 ##1}}} -\def\umlautlow{\def\grmn@OTumlaut{\protect\newumlaut}} -\umlauthigh -\DeclareTextAccent{\"}{T1}{4} -\DeclareTextAccent{\"}{OT1}{127} -\DeclareTextCompositeCommand{\"}{OT1}{a}{\grmn@OTumlaut{a}}% -\DeclareTextCompositeCommand{\"}{OT1}{o}{\grmn@OTumlaut{o}}% -\DeclareTextCompositeCommand{\"}{OT1}{u}{\grmn@OTumlaut{u}}% -\DeclareTextCompositeCommand{\"}{OT1}{A}{\grmn@OTumlaut{A}}% -\DeclareTextCompositeCommand{\"}{OT1}{O}{\grmn@OTumlaut{O}}% -\DeclareTextCompositeCommand{\"}{OT1}{U}{\grmn@OTumlaut{U}}% -\DeclareTextComposite{\"}{T1}{a}{228} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname AtBeginDocument\endcsname\relax \else - \AtBeginDocument{% - \DeclareTextAccent{\"}{T1}{4}% % from `ltpatch.tex' - \DeclareTextAccent{\"}{OT1}{127}% % from `ltpatch.tex' - % \DeclareTextCommand{\"}{OT1}{\newumlaut}% from `ltpatch.tex' - % % has to be removed - \DeclareTextCompositeCommand{\"}{OT1}{a}{\grmn@OTumlaut{a}}% - \DeclareTextCompositeCommand{\"}{OT1}{o}{\grmn@OTumlaut{o}}% - \DeclareTextCompositeCommand{\"}{OT1}{u}{\grmn@OTumlaut{u}}% - \DeclareTextCompositeCommand{\"}{OT1}{A}{\grmn@OTumlaut{A}}% - \DeclareTextCompositeCommand{\"}{OT1}{O}{\grmn@OTumlaut{O}}% - \DeclareTextCompositeCommand{\"}{OT1}{U}{\grmn@OTumlaut{U}}% - \DeclareTextComposite{\"}{T1}{a}{228}% % from `ltpatch.tex' - } -\fi -\fi -\def\dqwarninglevel#1{\chardef\grmn@dqwarninglevel=#1\relax} - \dqwarninglevel{1} -\expandafter\ifx\csname on@line\endcsname\relax - \ifx\inputlineno\undefined \def\on@line{}% - \else - \ifnum\inputlineno<\z@ \def\on@line{}% - \else \def\on@line{ on input line \the\inputlineno}% -\fi\fi\fi -\def\grmn@dq@error#1{% - \errhelp{Use `` for a simple double quote character.}% - \errmessage{german: The command \dq\string#1 is undefined}} -\def\grmn@dq@warning#1{% - \immediate\write\sixt@@n - {german: \dq\string#1 is possibly wrong\on@line.}} -\def\grmn@dq@macro#1#2{% - \expandafter#1\csname @grmn@@\string #2dq\endcsname} -\def\def@dqmacro#1#2#3{% - \grmn@dqredefcheck{#1}% - \grmn@dq@macro\def{#1}{{#2}{#3}}} -\def\let@dqmacro#1#2{\begingroup - \grmn@dqredefcheck{#1}% - \edef\x{\endgroup \let - \grmn@dq@macro\noexpand{#1}\grmn@dq@macro\noexpand{#2}}% - \x} -\def\grmn@dqredefcheck#1{} -\def\@active@dq#1{% - \grmn@dq@macro\ifx{#1}\relax - \ifnum\grmn@dqwarninglevel>\z@ \grmn@dq@error{#1}\fi - \expandafter\grmn@@normal@dq - \else - \expandafter\grmn@@active@dq - \fi {#1}} -\def\grmn@@active@dq#1{% - \grmn@dq@macro\ifx{#1}\noexpand - \expandafter\grmn@normal@dq - \else - \expandafter\grmn@@@active@dq - \fi {#1}} -\def\grmn@@normal@dq#1{``#1} -\def\grmn@normal@dq#1{\dq #1} -\begingroup - \catcode`\(=1\lccode`\(=`\{\catcode`\{=12 - \catcode`\)=2\lccode`\)=`\}\catcode`\}=12 - \catcode`\ =11\relax% <= do not delete this and the -\lowercase(\endgroup% <=== following percent characters! -\def\grmn@@@active@dq#1(% -\expandafter\grmn@@@@active@dq\expandafter{\string#1})% -\def\grmn@@@@active@dq(% -\ifx\protect\relax\else\ifx\protect\empty\else% -\expandafter\expandafter\expandafter\protect% -\fi\fi% -\active@dq \dq@prtct )% -\def\dq@prtct#1#(\@dq@prtct)% -\def\@dq@prtct#1(\string\dq@prtct{\string#1})% -\def\dq@prtct #1{#2}(\string\dq@prtct{\string#2})% -\def\active@dq #1{#2}(\grmn@active@@dq(#2))% -)% -\def\active@dq#1#{\@active@dq}% -\def\grmn@active@@dq#1{% - \csname grmn@dq\ifmmode second\else first\fi - \expandafter\expandafter\expandafter\expandafter - \grmn@dq@macro\endcsname{#1}} -\grmn@dq@macro\let{0}=\noexpand -\let@dqmacro{1}{0}\let@dqmacro{2}{0}\let@dqmacro{3}{0} -\let@dqmacro{4}{0}\let@dqmacro{5}{0}\let@dqmacro{6}{0} -\let@dqmacro{7}{0}\let@dqmacro{8}{0}\let@dqmacro{9}{0} -\let@dqmacro{A}{0}\let@dqmacro{B}{0}\let@dqmacro{C}{0} -\let@dqmacro{D}{0}\let@dqmacro{E}{0}\let@dqmacro{F}{0} -\def@dqmacro{}{\dq{}}{\dq{}} -\def@dqmacro{a}{\"a}{\@MATHUMLAUT a} -\def@dqmacro{o}{\"o}{\@MATHUMLAUT o} -\def@dqmacro{u}{\"u}{\@MATHUMLAUT u} -\def@dqmacro{A}{\"A}{\@MATHUMLAUT A} -\def@dqmacro{O}{\"O}{\@MATHUMLAUT O} -\def@dqmacro{U}{\"U}{\@MATHUMLAUT U} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname DeclareTextSymbol\endcsname\relax - \def@dqmacro{s}{\ss{}}{\@MATHss} -\else - \def@dqmacro{s}{\ss}{\@MATHss} -\fi -\def@dqmacro{S}{\SS}{\SS} -\let@dqmacro{z}{s} -\def@dqmacro{Z}{SZ}{SZ} -\def@dqmacro{e}{\highumlaut e}{\@MATHUMLAUT e} -\def@dqmacro{E}{\highumlaut E}{\@MATHUMLAUT E} -\def@dqmacro{i}{\highumlaut{\i}}{\@MATHUMLAUT\imath} -\def@dqmacro{I}{\highumlaut I}{\@MATHUMLAUT I} -\def@dqmacro{`}{\glqq}{\glqq} -\def@dqmacro{'}{\grqq}{\grqq} -\def@dqmacro{<}{\flqq}{\flqq} -\def@dqmacro{>}{\frqq}{\frqq} -\def@dqmacro{-}{\penalty\@M\-\allowhyphens}% - {\penalty\@M\-\allowhyphens} -\def@dqmacro{|}{\penalty\@M\discretionary{-}{}{\kern.03em}% - \allowhyphens}{} -\def@dqmacro{"}{\hskip\z@skip}{\hskip\z@skip} -\def@dqmacro{~}{\leavevmode\hbox{-}}{-} -\def@dqmacro{=}{\penalty\@M-\hskip\z@skip}% - {\penalty\@M-\hskip\z@skip} -\def\grmn@dqdisc#1#2{\penalty\@M - \ifnum\grmn@dqwarninglevel>\@ne \grmn@dq@warning{#1}\fi - \discretionary{#2-}{}{#1}\allowhyphens} -\def@dqmacro{c}{\grmn@dqdisc ck}{c} -\def@dqmacro{C}{\grmn@dqdisc CK}{C} -\def@dqmacro{l}{\grmn@dqdisc l{ll}}{l} -\def@dqmacro{L}{\grmn@dqdisc L{LL}}{L} -\def@dqmacro{m}{\grmn@dqdisc m{mm}}{m} -\def@dqmacro{M}{\grmn@dqdisc M{MM}}{M} -\def@dqmacro{n}{\grmn@dqdisc n{nn}}{n} -\def@dqmacro{N}{\grmn@dqdisc N{NN}}{N} -\def@dqmacro{p}{\grmn@dqdisc p{pp}}{p} -\def@dqmacro{P}{\grmn@dqdisc P{PP}}{P} -\def@dqmacro{r}{\grmn@dqdisc r{rr}}{r} -\def@dqmacro{R}{\grmn@dqdisc R{RR}}{R} -\def@dqmacro{t}{\grmn@dqdisc t{tt}}{t} -\def@dqmacro{T}{\grmn@dqdisc T{TT}}{T} -\def@dqmacro{F}{\grmn@dqdisc F{FF}}{F} -\def@dqmacro{f}{\grmn@dqdiscff}{f} -\def\grmn@dqdiscff{\penalty\@M - \ifnum\grmn@dqwarninglevel>\@ne \grmn@dq@warning f\fi - \afterassignment\grmn@dqinsertff \let\grmn@dqnextff= } -\def\grmn@dqinsertff{% - \if f\grmn@dqnextff - \expandafter\grmn@dqfirst\else\expandafter\grmn@dqsecond\fi - {\relax\discretionary{ff-}{f}{ff}\allowhyphens}{f\grmn@dqnextff}} -\let\grmn@dqnextff=f -\def\grmn@dqredefcheck#1{% - \wlog{german: \grmn@dq@macro\ifx{#1}\relax \else re\fi - defining dq-command for `\string#1'\on@line.}}% -\def\month@german{\ifcase\month \or - Januar\or Februar\or M\"arz\or April\or Mai\or Juni\or - Juli\or August\or September\or Oktober\or November\or Dezember\fi} -\def\dategerman{\def\today{\number\day.~\month@german - \space\number\year}} -\def\dateaustrian{\def\today{\number\day.~\ifnum 1=\month - J\"anner\else \month@german\fi \space\number\year}} -\def\month@english{\ifcase\month \or - January\or February\or March\or April\or May\or June\or - July\or August\or September\or October\or November\or December\fi} -\def\dateUSenglish{\def\today{\month@english - \space\number\day, \number\year}} -\def\dateenglish{\def\today{\number\day \ifcase\day \or - st\or nd\or rd\or th\or th\or th\or th\or th\or th\or th\or% 1..10 - th\or th\or th\or th\or th\or th\or th\or th\or th\or th\or% 11..20 - st\or nd\or rd\or th\or th\or th\or th\or th\or th\or th\or% 21..30 - st\fi - ~\month@english \space\number\year}} -\def\datefrench{\def\today{\number\day \ifnum1=\day \/$^{\rm er}$\fi - \space\ifcase\month \or - janvier\or f\'evrier\or mars\or avril\or mai\or juin\or - juillet\or ao\^ut\or septembre\or - octobre\or novembre\or d\'ecembre\fi - \space\number\year}} -\def\captionsgerman{% - \def\prefacename{Vorwort}% - \def\refname{Literatur}% - \def\abstractname{Zusammenfassung}% - \def\bibname{Literaturverzeichnis}% - \def\chaptername{Kapitel}% - \def\appendixname{Anhang}% - \def\contentsname{Inhaltsverzeichnis}% % oder nur: Inhalt - \def\listfigurename{Abbildungsverzeichnis}% - \def\listtablename{Tabellenverzeichnis}% - \def\indexname{Index}% - \def\figurename{Abbildung}% - \def\tablename{Tabelle}% % oder: Tafel - \def\partname{Teil}% - \def\enclname{Anlage(n)}% % oder: Beilage(n) - \def\ccname{Verteiler}% % oder: Kopien an - \def\headtoname{An}% - \def\pagename{Seite}% - \def\seename{siehe}% - \def\alsoname{siehe auch}} -\let\captionsaustrian=\captionsgerman -\def\captionsenglish{% - \def\prefacename{Preface}% - \def\refname{References}% - \def\abstractname{Abstract}% - \def\bibname{Bibliography}% - \def\chaptername{Chapter}% - \def\appendixname{Appendix}% - \def\contentsname{Contents}% - \def\listfigurename{List of Figures}% - \def\listtablename{List of Tables}% - \def\indexname{Index}% - \def\figurename{Figure}% - \def\tablename{Table}% - \def\partname{Part}% - \def\enclname{encl}% - \def\ccname{cc}% - \def\headtoname{To}% - \def\pagename{Page}% - \def\seename{see}% - \def\alsoname{see also}} -\let\captionsUSenglish=\captionsenglish -\def\captionsfrench{% - \def\prefacename{Pr\'eface}% - \def\refname{R\'ef\'erences}% - \def\abstractname{R\'esum\'e}% - \def\bibname{Bibliographie}% - \def\chaptername{Chapitre}% - \def\appendixname{Annexe}% - \def\contentsname{Table des mati\`eres}% - \def\listfigurename{Liste des figures}% - \def\listtablename{Liste des tableaux}% - \def\indexname{Index}% - \def\figurename{Figure}% - \def\tablename{Tableau}% - \def\partname{Partie}% - \def\enclname{P.~J.}% - \def\ccname{Copie \`a}% - \def\headtoname{A}% - \def\pagename{Page}% - \def\seename{voir}% - \def\alsoname{voir aussi}}% -\def\extrasUSenglish{} -\let\noextrasUSenglish=\extrasUSenglish -\let\extrasenglish=\extrasUSenglish -\let\noextrasenglish=\extrasenglish -\def\extrasgerman{\frenchspacing \uchyph\@ne - \lefthyphenmin\tw@ \righthyphenmin\tw@} -\def\noextrasgerman{% - \ifnum\sfcode`\.=\@m \else \noexpand\nonfrenchspacing \fi - \uchyph\the\uchyph\relax - \lefthyphenmin\the\lefthyphenmin - \righthyphenmin\the\righthyphenmin} -\let\extrasaustrian=\extrasgerman -\let\noextrasaustrian=\noextrasgerman -\def\extrasfrench{\frenchspacing} -\def\noextrasfrench{% - \ifnum\sfcode`\.=\@m \else \noexpand\nonfrenchspacing \fi} -\@ifundefined{l@USenglish}{% - \@ifundefined{l@english}{\chardef\l@USenglish=255 }% - {\chardef\l@USenglish=\l@english}% - \wlog{german -- \string\language\space number for USenglish % - undefined, default \number\l@USenglish\space used.}% -}{} -\@ifundefined{l@english}{% - \chardef\l@english=\l@USenglish - \wlog{german -- \string\language\space number for UKenglish % - undefined, default \number\l@english\space used.}% -}{} -\@ifundefined{l@german}{% - \@ifundefined{l@austrian}{% - \chardef\l@german=255 % - \message{german -- \string\language\space number for German % - undefined, default \number\l@german\space used,}% - \message{german -- Please read \string"gerdoc.tex\string" how % - to install hyphenation patterns.}% - }{% - \chardef\l@german=\l@austrian - \wlog{german -- \string\language\space number for German % - undefined, default \number\l@german\space used.}% - }% -}{} -\@ifundefined{l@austrian}{% - \chardef\l@austrian=\l@german - \wlog{german -- \string\language\space number for Austrian % - undefined, default \number\l@austrian\space used.}% -}{} -\@ifundefined{l@french}{% - \chardef\l@french=255 - \wlog{german -- \string\language\space number for French % - undefined, default \number\l@french\space used.}% -}{} -\def\grmn@originalTeX{} -\def\languagename{} -\expandafter\def\csname selectlanguage \endcsname#1{\relax - \expandafter\ifx\csname l@#1\endcsname\relax - \errhelp{Your command will be ignored, type <return> to proceed}% - \errmessage{You haven't defined the language #1 yet}% - \else - \grmn@originalTeX - \edef\languagename{#1}% - \edef\grmn@originalTeX{\csname noextras#1\endcsname - \def\noexpand\grmn@originalTeX{}}% - \csname date#1\endcsname - \csname captions#1\endcsname - \csname extras#1\endcsname\relax - % Diese Zeile ist fuer `bibgerm' ... - \csname bibs#1\endcsname - % ... sie wird in spaeteren `german.sty'-Versionen nicht - % mehr vorhanden sein. Also nicht darauf verlassen! - \language \csname l@#1\endcsname\relax - \fi} -\begingroup\catcode`\ =11\relax% <= do not delete this and the -\toks0={\endgroup% <=== following percent characters! -\def\selectlanguage#1{\protect\selectlanguage {% -\ifnum\escapechar=\expandafter`\string#1\empty% -\else\string#1\empty\fi}}}% -\the\toks0\relax% -\def\p@selectlanguage{\selectlanguage} -\def\iflanguage#1{% - \ifx\csname l@#1\endcsname\relax - \expandafter\grmn@dqsecond - \else \ifnum\csname l@#1\endcsname=\language - \expandafter\expandafter\expandafter\grmn@dqfirst - \else - \expandafter\expandafter\expandafter\grmn@dqsecond - \fi\fi -} -\expandafter\ifx\csname language\endcsname\relax - \csname newcount\endcsname\language - \language=0 \fi -\expandafter\ifx\csname lefthyphenmin\endcsname\relax - \csname newcount\endcsname\lefthyphenmin - \lefthyphenmin=2 \fi -\expandafter\ifx\csname righthyphenmin\endcsname\relax - \csname newcount\endcsname\righthyphenmin - \righthyphenmin=3 \fi -\expandafter\ifx\csname setlanguage\endcsname\relax - \def\setlanguage{\relax - \ifhmode \else - \errhelp{Use \selectlanguage to switch languages.}% - \errmessage{\setlanguage allowed only in horizontal mode}% - \fi - \begingroup\afterassignment\endgroup\count@=} -\fi -\begingroup \mdqon -\def\x{\endgroup - \def\originalTeX{\mdqoff \let"\dq \umlauthigh - \let\3\grmn@original@three - \selectlanguage{USenglish}}% - \def\germanTeX{\mdqon \let"\@active@dq \umlautlow - \let\grmn@original@three\3\let\3\ss - \selectlanguage{german}}}% -\x -\catcode`\@=\atcode % return to previous catcode -\germanTeX -\endinput -%% -%% End of file `german.sty'. diff --git a/Master/texmf-dist/tex/generic/german/ngerman.sty b/Master/texmf-dist/tex/generic/german/ngerman.sty deleted file mode 100644 index 1fcdcb8da4b..00000000000 --- a/Master/texmf-dist/tex/generic/german/ngerman.sty +++ /dev/null @@ -1,680 +0,0 @@ -%% -%% This is file `ngerman.sty', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% german.dtx (with options: `new') -%% -%% This file is part of the `german' collection, -%% providing German language support for -%% plain TeX or LaTeX version 2e/2.09. -%% -%% ----------- Copyright (C) 1998, 1999 by B.Raichle ---------- -%% ------------------- All rights reserved. ------------------- -%% Maintained by Bernd Raichle (Uni Stuttgart), -%% using ideas by H.Partl (TU Wien, Uni.f.Bodenkultur Wien) -%% and many other people. -%% -%% -%% IMPORTANT NOTICE: -%% -%% This program can be redistributed and/or modified under the terms -%% of the LaTeX Project Public License Distributed from CTAN -%% archives in directory macros/latex/base/lppl.txt; either -%% version 1 of the License, or any later version. -%% -%% -%% Error Reports (in case of UNCHANGED versions) should be sent to: -%% -%% Bernd Raichle <raichle@Informatik.Uni-Stuttgart.DE> -%% -\expandafter\ifx\csname ngrm\string @VersionNo\endcsname\relax -\else - \ifnum\number\csname ngrm\string @VersionNo\endcsname<9806\relax - \else \ngermanTeX \expandafter\expandafter\expandafter\endinput - \fi\fi -\expandafter\mathchardef\csname ngrm\string @VersionNo\endcsname -=9806\relax % = v2.5e -\message{v2.5e 1998-07-08} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname ProvidesPackage\endcsname\relax\else - \ProvidesPackage{ngerman}[1998/07/08 v2.5e % - Support for writing german texts (br)] -\fi -\chardef\atcode=\catcode`\@ -\catcode`\@=11 % \makeatletter -\expandafter\ifx\csname @ifundefined\endcsname\relax - \def\@ifundefined#1{% - \expandafter\ifx\csname #1\endcsname\relax - \expandafter\grmn@dqfirst\else\expandafter\grmn@dqsecond\fi} -\fi -\def\grmn@dqfirst#1#2{#1} -\def\grmn@dqsecond#1#2{#2} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname DeclareTextSymbol\endcsname\relax -\@ifundefined{SS}{\def\SS{SS}}{} -\else -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname ProvideTextCommandDefault\endcsname\relax - \immediate\write17{} - \immediate\write17{% -!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!} - \immediate\write17{% -!! Dies ist eine zu alte LaTeX2e-Version, die nicht} - \immediate\write17{% -!! alle fuer german/ngerman notwendigen Deklarationen} - \immediate\write17{% -!! zur Verfuegung stellt. Dennoch koennen Sie diese} - \immediate\write17{% -!! Pakete, eventuell mit kleinen Fehlern, verwenden.} - \immediate\write17{!!} - \immediate\write17{% -!! Bitte installieren Sie eine neuere LaTeX2e-Version,} - \immediate\write17{% -!! da zukuenftige Versionen der Pakete diese} - \immediate\write17{% -!! LaTeX2e-Version nicht mehr unterstuetzen werden!} - \immediate\write17{% -!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!} - \immediate\write17{} -\fi -\@ifundefined{UseTextSymbol}{% - \def\UseTextSymbol#1#2{{\fontencoding{#1}\selectfont #2}} -}{} -\@ifundefined{UseTextAccent}{% - \def\UseTextAccent#1#2#3{% - {\let\@curr@enc\f@encoding - \fontencoding{#1}\selectfont - #2{\fontencoding\@curr@enc\selectfont #3}}}% -}{} -\@ifundefined{ProvideTextCommand}{% - \def\ProvideTextCommand#1#2{% - %%% misses \RobustTextCommand{#1}{...etc.etc...}!! - \expandafter\providecommand\csname #2\string#1\endcsname}% -}{} -\@ifundefined{ProvideTextCommandDefault}{% - \def\ProvideTextCommandDefault#1{% - \ProvideTextCommand{#1}{U}}% -}{} -\@ifundefined{DeclareTextCompositeCommand}{% - \def\DeclareTextCompositeCommand#1#2#3#4{% - % define a `dummy' text composite - \DeclareTextComposite{#1}{#2}{#3}{`\Z}% - % then redefine this command including the new command - \expandafter\def\csname\expandafter\string\csname - #2\endcsname\string#1-\string#3\endcsname##1##2{#4}}% -}{} -\@ifundefined{OT1\string\ss}{% - \wlog{ngerman: Re-declaration of \string\ss\space for OT1!}% - \DeclareTextSymbol{\ss}{OT1}{25}}{} -\@ifundefined{OT1\string\i}{% - \wlog{ngerman: Re-declaration of \string\i\space for OT1!}% - \DeclareTextSymbol{\i}{OT1}{16}}{} -\ProvideTextCommandDefault{\"}{\UseTextAccent{OT1}{\"}} -\ProvideTextCommandDefault{\ss}{\UseTextSymbol{OT1}\ss} -\ProvideTextCommandDefault{\i}{\UseTextSymbol{OT1}\i} -\ProvideTextCommandDefault{\SS}{SS} -\@ifundefined{textquotedblleft}{% - \ProvideTextCommandDefault{\textquotedblleft}{% - \UseTextSymbol{OT1}\textquotedblleft}% - \DeclareTextSymbol{\textquotedblleft}{OT1}{92}% - \DeclareTextSymbol{\textquotedblleft}{T1}{16}% -}{} -\@ifundefined{textquotedblright}{% - \ProvideTextCommandDefault{\textquotedblright}{% - \UseTextSymbol{OT1}\textquotedblright}% - \DeclareTextSymbol{\textquotedblright}{OT1}{`\"}% - \DeclareTextSymbol{\textquotedblright}{T1}{17}% - %% \DeclareTextSymbol{\textquotedbl}{T1}{`\"}% -}{} -\@ifundefined{textquoteleft}{% - \ProvideTextCommandDefault{\textquoteleft}{% - \UseTextSymbol{OT1}\textquoteleft}% - \DeclareTextSymbol{\textquoteleft}{OT1}{`\`}% - \DeclareTextSymbol{\textquoteleft}{T1}{`\`}% -}{} -\@ifundefined{textquoteright}{% - \ProvideTextCommandDefault{\textquoteright}{% - \UseTextSymbol{OT1}\textquoteright}% - \DeclareTextSymbol{\textquoteright}{OT1}{`\'}% - \DeclareTextSymbol{\textquoteright}{T1}{`\'}% -}{} -\@ifundefined{quotesinglbase}{% - \DeclareTextSymbol{\quotesinglbase}{T1}{13}}{} -\@ifundefined{quotedblbase}{% - \DeclareTextSymbol{\quotedblbase}{T1}{18}}{} -\@ifundefined{guillemotleft}{% - \DeclareTextSymbol{\guillemotleft}{T1}{19}}{} -\@ifundefined{guillemotright}{% - \DeclareTextSymbol{\guillemotright}{T1}{20}}{} -\@ifundefined{guilsinglleft}{% - \DeclareTextSymbol{\guilsinglleft}{T1}{14}}{} -\@ifundefined{guilsinglright}{% - \DeclareTextSymbol{\guilsinglright}{T1}{15}}{} -\fi -\expandafter\let\expandafter\protect\csname protect\endcsname -\def\allowhyphens{\penalty\@M \hskip\z@skip} -\lccode`\^^Y=`\^^Y -\def\set@low@box#1{\setbox\tw@\hbox{,}\setbox\z@\hbox{#1}% - \setbox\z@\hbox{\dimen@\ht\z@ \advance\dimen@ -\ht\tw@ - \lower\dimen@\box\z@}% - \ht\z@\ht\tw@ \dp\z@\dp\tw@} -\def\save@sf@q#1{{\ifhmode - \edef\@SF{\spacefactor\the\spacefactor}\else - \let\@SF\empty \fi \leavevmode #1\@SF}} -\expandafter\ifx\csname grmnU@D\endcsname\relax - \csname newdimen\endcsname\grmnU@D -\fi -\def\newumlaut#1{{\grmnU@D 1ex% - {\setbox\z@\hbox{\char127}\dimen@-.45ex\advance\dimen@\ht\z@ - \ifdim 1ex<\dimen@ \fontdimen5\font\dimen@ \fi}% - \accent127\fontdimen5\font\grmnU@D #1}\allowhyphens} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname DeclareTextSymbol\endcsname\relax - \def\highumlaut#1{{\accent127 #1}\allowhyphens} -\else - \def\highumlaut#1{\"{#1}\allowhyphens} -\fi -\def\mdqon{\catcode`\"\active} -\def\mdqoff{\catcode`\"12\relax} -\begingroup \mdqoff -\def\x{\endgroup - \def\@MATHUMLAUT{\ddot}% = \mathaccent"707F - \def\@MATHss{\mathord{\mathchar"7019}}% TODO: correct? - \def\dq{"}}% TODO: or \textquotedbl? -\x -\begingroup - \def\do{\noexpand\do\noexpand}% - \edef\x{\endgroup - \def\noexpand\dospecials{\dospecials\do\"}}% -\x -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname @sanitize\endcsname\relax \else - \begingroup - \def\@makeother{\noexpand\@makeother\noexpand}% - \edef\x{\endgroup - \def\noexpand\@sanitize{\@sanitize\@makeother\"}}% - \x -\fi -\let\grmn@original@three=\3 % \3 may be defined or undefined. -\def\ck{% - \ifnum\grmn@dqwarninglevel>\@ne - \grmn@dq@warning@obsolete{\string\ck}{ck}% - \fi - \penalty\@M\-\allowhyphens ck} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname DeclareTextSymbol\endcsname\relax -\expandafter\def\csname glqq \endcsname{% - \save@sf@q{\set@low@box{''\/}\box\z@\kern-.04em\allowhyphens}} -\edef\glqq{\noexpand\protect - \expandafter\noexpand\csname glqq \endcsname} -\let\@glqq=\glqq -\expandafter\def\csname grqq \endcsname{% - \save@sf@q{\kern-.07em``\kern.07em}}% ('') -\edef\grqq{\noexpand\protect - \expandafter\noexpand\csname grqq \endcsname} -\let\@grqq=\grqq -\expandafter\def\csname glq \endcsname{% - \save@sf@q{\set@low@box{'\/}\box\z@\kern-.04em\allowhyphens}} -\edef\glq{\noexpand\protect - \expandafter\noexpand\csname glq \endcsname} -\let\@glq=\glq -\expandafter\def\csname grq\endcsname{% - \save@sf@q{\kern-.0125em`\kern.07em}} -\edef\grq{\noexpand\protect - \expandafter\noexpand\csname grq \endcsname} -\let\@grq=\grq -\expandafter\def\csname flqq \endcsname{% - \relax\ifmmode \mathrel{\ll}\else \save@sf@q{\penalty\@M - \raise .27ex\hbox{$\m@th\scriptscriptstyle \ll $}% - \allowhyphens}\fi} -\edef\flqq{\noexpand\protect - \expandafter\noexpand\csname flqq \endcsname} -\let\@flqq=\flqq -\expandafter\def\csname frqq \endcsname{% - \relax\ifmmode \mathrel{\gg}\else \save@sf@q{\penalty\@M - \raise .27ex\hbox{$\m@th\scriptscriptstyle \gg $}% - \allowhyphens}\fi} -\edef\frqq{\noexpand\protect - \expandafter\noexpand\csname frqq \endcsname} -\let\@frqq=\frqq -\expandafter\def\csname flq \endcsname{% - \relax\ifmmode <\else \save@sf@q{\penalty\@M - \raise .27ex\hbox{$\m@th\scriptscriptstyle <$}\allowhyphens}\fi} -\edef\flq{\noexpand\protect - \expandafter\noexpand\csname flq \endcsname} -\let\@flq=\flq -\expandafter\def\csname frq \endcsname{% - \relax\ifmmode >\else \save@sf@q{\penalty\@M - \raise .27ex\hbox{$\m@th\scriptscriptstyle >$}\allowhyphens}\fi} -\edef\frq{\noexpand\protect - \expandafter\noexpand\csname frq \endcsname} -\let\@frq=\frq -\else -\DeclareRobustCommand{\glqq}{% - \ifmmode\hbox{\quotedblbase}\else\quotedblbase\fi} -\ProvideTextCommandDefault{\quotedblbase}{% - \UseTextSymbol{OT1}\quotedblbase} -\ProvideTextCommand{\quotedblbase}{OT1}{% - \save@sf@q{\set@low@box{\textquotedblright\/}\box\z@ - \kern-.04em\allowhyphens}} -\ProvideTextCommand{\grqq}{T1}{\textquotedblleft} -\ProvideTextCommand{\grqq}{OT1}{% - \save@sf@q{\kern-.07em% - \ifmmode\hbox{\textquotedblleft}\else\textquotedblleft\fi - \kern.07em\relax}} -\ProvideTextCommandDefault{\grqq}{\UseTextSymbol{OT1}\grqq} -\DeclareRobustCommand{\glq}{% - \ifmmode\hbox{\quotesinglbase}\else\quotesinglbase\fi} -\ProvideTextCommandDefault{\quotesinglbase}{% - \UseTextSymbol{OT1}\quotesinglbase} -\ProvideTextCommand{\quotesinglbase}{OT1}{% - \save@sf@q{\set@low@box{\textquoteright\/}\box\z@ - \kern-.04em\allowhyphens}} -\ProvideTextCommand{\grq}{T1}{\textquoteleft} -\ProvideTextCommand{\grq}{OT1}{% - \save@sf@q{\kern-.0125em% - \ifmmode\hbox{\textquoteleft}\else\textquoteleft\fi - \kern.07em\relax}} -\ProvideTextCommandDefault{\grq}{\UseTextSymbol{OT1}\grq} -\DeclareRobustCommand{\flqq}{% - \ifmmode\mathrel{\hbox{\guillemotleft}}\else\guillemotleft\fi} -\ProvideTextCommandDefault{\guillemotleft}{% - \UseTextSymbol{OT1}\guillemotleft} -\ProvideTextCommand{\guillemotleft}{OT1}{% - \ifmmode \ll \else \save@sf@q{\penalty\@M - \raise .27ex\hbox{$\m@th\scriptscriptstyle \ll $}% - \allowhyphens}\fi} -\DeclareRobustCommand{\frqq}{% - \ifmmode\mathrel{\hbox{\guillemotright}}\else\guillemotright\fi} -\ProvideTextCommandDefault{\guillemotright}{% - \UseTextSymbol{OT1}\guillemotright} -\ProvideTextCommand{\guillemotright}{OT1}{% - \ifmmode \gg \else \save@sf@q{\penalty\@M - \raise .27ex\hbox{$\m@th\scriptscriptstyle \gg $}% - \allowhyphens}\fi} -\DeclareRobustCommand{\flq}{% - \ifmmode\mathbin{\hbox{\guilsinglleft}}\else\guilsinglleft\fi} -\ProvideTextCommandDefault{\guilsinglleft}{% - \UseTextSymbol{OT1}\guilsinglleft} -\ProvideTextCommand{\guilsinglleft}{OT1}{% - \ifmmode <\else \save@sf@q{\penalty\@M - \raise .27ex\hbox{$\m@th\scriptscriptstyle <$}\allowhyphens}\fi} -\DeclareRobustCommand{\frq}{% - \ifmmode\mathbin{\hbox{\guilsinglright}}\else\guilsinglright\fi} -\ProvideTextCommandDefault{\guilsinglright}{% - \UseTextSymbol{OT1}\guilsinglright} -\ProvideTextCommand{\guilsinglright}{OT1}{% - \ifmmode >\else \save@sf@q{\penalty\@M - \raise .27ex\hbox{$\m@th\scriptscriptstyle >$}\allowhyphens}\fi} -\fi -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname DeclareTextSymbol\endcsname\relax -\def\umlauthigh{\def\"##1{{\accent127 ##1}}} -\def\umlautlow{\def\"{\protect\newumlaut}} -\else -\def\umlauthigh{\def\grmn@OTumlaut##1{{\accent 127 ##1}}} -\def\umlautlow{\def\grmn@OTumlaut{\protect\newumlaut}} -\umlauthigh -\DeclareTextAccent{\"}{T1}{4} -\DeclareTextAccent{\"}{OT1}{127} -\DeclareTextCompositeCommand{\"}{OT1}{a}{\grmn@OTumlaut{a}}% -\DeclareTextCompositeCommand{\"}{OT1}{o}{\grmn@OTumlaut{o}}% -\DeclareTextCompositeCommand{\"}{OT1}{u}{\grmn@OTumlaut{u}}% -\DeclareTextCompositeCommand{\"}{OT1}{A}{\grmn@OTumlaut{A}}% -\DeclareTextCompositeCommand{\"}{OT1}{O}{\grmn@OTumlaut{O}}% -\DeclareTextCompositeCommand{\"}{OT1}{U}{\grmn@OTumlaut{U}}% -\DeclareTextComposite{\"}{T1}{a}{228} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname AtBeginDocument\endcsname\relax \else - \AtBeginDocument{% - \DeclareTextAccent{\"}{T1}{4}% % from `ltpatch.tex' - \DeclareTextAccent{\"}{OT1}{127}% % from `ltpatch.tex' - % \DeclareTextCommand{\"}{OT1}{\newumlaut}% from `ltpatch.tex' - % % has to be removed - \DeclareTextCompositeCommand{\"}{OT1}{a}{\grmn@OTumlaut{a}}% - \DeclareTextCompositeCommand{\"}{OT1}{o}{\grmn@OTumlaut{o}}% - \DeclareTextCompositeCommand{\"}{OT1}{u}{\grmn@OTumlaut{u}}% - \DeclareTextCompositeCommand{\"}{OT1}{A}{\grmn@OTumlaut{A}}% - \DeclareTextCompositeCommand{\"}{OT1}{O}{\grmn@OTumlaut{O}}% - \DeclareTextCompositeCommand{\"}{OT1}{U}{\grmn@OTumlaut{U}}% - \DeclareTextComposite{\"}{T1}{a}{228}% % from `ltpatch.tex' - } -\fi -\fi -\def\dqwarninglevel#1{\chardef\grmn@dqwarninglevel=#1\relax} - \dqwarninglevel{2} -\expandafter\ifx\csname on@line\endcsname\relax - \ifx\inputlineno\undefined \def\on@line{}% - \else - \ifnum\inputlineno<\z@ \def\on@line{}% - \else \def\on@line{ on input line \the\inputlineno}% -\fi\fi\fi -\def\grmn@dq@error#1{% - \errhelp{Use `` for a simple double quote character.}% - \errmessage{ngerman: The command \dq\string#1 is undefined}} -\def\grmn@dq@warning#1{% - \immediate\write\sixt@@n - {ngerman: \dq\string#1 is possibly wrong\on@line.}} -\def\grmn@dq@warning@obsolete#1#2{% - \immediate\write\sixt@@n - {ngerman: #1 is now obsolete, please use #2 instead\on@line.}} -\def\grmn@dqobsolete@three#1{#1#1% - \ifnum\grmn@dqwarninglevel>\@ne - \grmn@dq@warning@obsolete{\dq#1#1}{#1#1#1}% - \fi - \penalty\@M\-\allowhyphens} -\def\grmn@dqobsolete@ck#1#2{% - \ifnum\grmn@dqwarninglevel>\@ne - \grmn@dq@warning@obsolete{\dq#1#2}{#1#2}% - \fi - \penalty\@M\-\allowhyphens#1} -\def\grmn@dq@macro#1#2{% - \expandafter#1\csname @grmn@@\string #2dq\endcsname} -\def\def@dqmacro#1#2#3{% - \grmn@dqredefcheck{#1}% - \grmn@dq@macro\def{#1}{{#2}{#3}}} -\def\let@dqmacro#1#2{\begingroup - \grmn@dqredefcheck{#1}% - \edef\x{\endgroup \let - \grmn@dq@macro\noexpand{#1}\grmn@dq@macro\noexpand{#2}}% - \x} -\def\grmn@dqredefcheck#1{} -\def\@active@dq#1{% - \grmn@dq@macro\ifx{#1}\relax - \ifnum\grmn@dqwarninglevel>\z@ \grmn@dq@error{#1}\fi - \expandafter\grmn@@normal@dq - \else - \expandafter\grmn@@active@dq - \fi {#1}} -\def\grmn@@active@dq#1{% - \grmn@dq@macro\ifx{#1}\noexpand - \expandafter\grmn@normal@dq - \else - \expandafter\grmn@@@active@dq - \fi {#1}} -\def\grmn@@normal@dq#1{``#1} -\def\grmn@normal@dq#1{\dq #1} -\begingroup - \catcode`\(=1\lccode`\(=`\{\catcode`\{=12 - \catcode`\)=2\lccode`\)=`\}\catcode`\}=12 - \catcode`\ =11\relax% <= do not delete this and the -\lowercase(\endgroup% <=== following percent characters! -\def\grmn@@@active@dq#1(% -\expandafter\grmn@@@@active@dq\expandafter{\string#1})% -\def\grmn@@@@active@dq(% -\ifx\protect\relax\else\ifx\protect\empty\else% -\expandafter\expandafter\expandafter\protect% -\fi\fi% -\active@dq \dq@prtct )% -\def\dq@prtct#1#(\@dq@prtct)% -\def\@dq@prtct#1(\string\dq@prtct{\string#1})% -\def\dq@prtct #1{#2}(\string\dq@prtct{\string#2})% -\def\active@dq #1{#2}(\grmn@active@@dq(#2))% -)% -\def\active@dq#1#{\@active@dq}% -\def\grmn@active@@dq#1{% - \csname grmn@dq\ifmmode second\else first\fi - \expandafter\expandafter\expandafter\expandafter - \grmn@dq@macro\endcsname{#1}} -\grmn@dq@macro\let{0}=\noexpand -\let@dqmacro{1}{0}\let@dqmacro{2}{0}\let@dqmacro{3}{0} -\let@dqmacro{4}{0}\let@dqmacro{5}{0}\let@dqmacro{6}{0} -\let@dqmacro{7}{0}\let@dqmacro{8}{0}\let@dqmacro{9}{0} -\let@dqmacro{A}{0}\let@dqmacro{B}{0}\let@dqmacro{C}{0} -\let@dqmacro{D}{0}\let@dqmacro{E}{0}\let@dqmacro{F}{0} -\def@dqmacro{}{\dq{}}{\dq{}} -\def@dqmacro{a}{\"a}{\@MATHUMLAUT a} -\def@dqmacro{o}{\"o}{\@MATHUMLAUT o} -\def@dqmacro{u}{\"u}{\@MATHUMLAUT u} -\def@dqmacro{A}{\"A}{\@MATHUMLAUT A} -\def@dqmacro{O}{\"O}{\@MATHUMLAUT O} -\def@dqmacro{U}{\"U}{\@MATHUMLAUT U} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname DeclareTextSymbol\endcsname\relax - \def@dqmacro{s}{\ss{}}{\@MATHss} -\else - \def@dqmacro{s}{\ss}{\@MATHss} -\fi -\def@dqmacro{S}{\SS}{\SS} -\let@dqmacro{z}{s} -\def@dqmacro{Z}{SZ}{SZ} -\def@dqmacro{e}{\highumlaut e}{\@MATHUMLAUT e} -\def@dqmacro{E}{\highumlaut E}{\@MATHUMLAUT E} -\def@dqmacro{i}{\highumlaut{\i}}{\@MATHUMLAUT\imath} -\def@dqmacro{I}{\highumlaut I}{\@MATHUMLAUT I} -\def@dqmacro{`}{\glqq}{\glqq} -\def@dqmacro{'}{\grqq}{\grqq} -\def@dqmacro{<}{\flqq}{\flqq} -\def@dqmacro{>}{\frqq}{\frqq} -\def@dqmacro{-}{\penalty\@M\-\allowhyphens}% - {\penalty\@M\-\allowhyphens} -\def@dqmacro{|}{\penalty\@M\discretionary{-}{}{\kern.03em}% - \allowhyphens}{} -\def@dqmacro{"}{\hskip\z@skip}{\hskip\z@skip} -\def@dqmacro{~}{\leavevmode\hbox{-}}{-} -\def@dqmacro{=}{\penalty\@M-\hskip\z@skip}% - {\penalty\@M-\hskip\z@skip} -\def@dqmacro{c}{\grmn@dqobsolete@ck ck}{c} -\def@dqmacro{C}{\grmn@dqobsolete@ck CK}{C} -\def@dqmacro{l}{\grmn@dqobsolete@three l}{l} -\def@dqmacro{L}{\grmn@dqobsolete@three L}{L} -\def@dqmacro{m}{\grmn@dqobsolete@three m}{m} -\def@dqmacro{M}{\grmn@dqobsolete@three M}{M} -\def@dqmacro{n}{\grmn@dqobsolete@three n}{n} -\def@dqmacro{N}{\grmn@dqobsolete@three N}{N} -\def@dqmacro{p}{\grmn@dqobsolete@three p}{p} -\def@dqmacro{P}{\grmn@dqobsolete@three P}{P} -\def@dqmacro{r}{\grmn@dqobsolete@three r}{r} -\def@dqmacro{R}{\grmn@dqobsolete@three R}{R} -\def@dqmacro{t}{\grmn@dqobsolete@three t}{t} -\def@dqmacro{T}{\grmn@dqobsolete@three T}{T} -\def@dqmacro{F}{\grmn@dqobsolete@three F}{F} -\def@dqmacro{f}{\grmn@dqobsolete@three f}{f} -\def\grmn@dqredefcheck#1{% - \wlog{ngerman: \grmn@dq@macro\ifx{#1}\relax \else re\fi - defining dq-command for `\string#1'\on@line.}}% -\def\month@ngerman{\ifcase\month \or - Januar\or Februar\or M\"arz\or April\or Mai\or Juni\or - Juli\or August\or September\or Oktober\or November\or Dezember\fi} -\def\datengerman{\def\today{\number\day.~\month@ngerman - \space\number\year}} -\def\datenaustrian{\def\today{\number\day.~\ifnum 1=\month - J\"anner\else \month@ngerman\fi \space\number\year}} -\def\month@english{\ifcase\month \or - January\or February\or March\or April\or May\or June\or - July\or August\or September\or October\or November\or December\fi} -\def\dateUSenglish{\def\today{\month@english - \space\number\day, \number\year}} -\def\dateenglish{\def\today{\number\day \ifcase\day \or - st\or nd\or rd\or th\or th\or th\or th\or th\or th\or th\or% 1..10 - th\or th\or th\or th\or th\or th\or th\or th\or th\or th\or% 11..20 - st\or nd\or rd\or th\or th\or th\or th\or th\or th\or th\or% 21..30 - st\fi - ~\month@english \space\number\year}} -\def\datefrench{\def\today{\number\day \ifnum1=\day \/$^{\rm er}$\fi - \space\ifcase\month \or - janvier\or f\'evrier\or mars\or avril\or mai\or juin\or - juillet\or ao\^ut\or septembre\or - octobre\or novembre\or d\'ecembre\fi - \space\number\year}} -\def\captionsngerman{% - \def\prefacename{Vorwort}% - \def\refname{Literatur}% - \def\abstractname{Zusammenfassung}% - \def\bibname{Literaturverzeichnis}% - \def\chaptername{Kapitel}% - \def\appendixname{Anhang}% - \def\contentsname{Inhaltsverzeichnis}% % oder nur: Inhalt - \def\listfigurename{Abbildungsverzeichnis}% - \def\listtablename{Tabellenverzeichnis}% - \def\indexname{Index}% - \def\figurename{Abbildung}% - \def\tablename{Tabelle}% % oder: Tafel - \def\partname{Teil}% - \def\enclname{Anlage(n)}% % oder: Beilage(n) - \def\ccname{Verteiler}% % oder: Kopien an - \def\headtoname{An}% - \def\pagename{Seite}% - \def\seename{siehe}% - \def\alsoname{siehe auch}} -\let\captionsnaustrian=\captionsngerman -\def\captionsenglish{% - \def\prefacename{Preface}% - \def\refname{References}% - \def\abstractname{Abstract}% - \def\bibname{Bibliography}% - \def\chaptername{Chapter}% - \def\appendixname{Appendix}% - \def\contentsname{Contents}% - \def\listfigurename{List of Figures}% - \def\listtablename{List of Tables}% - \def\indexname{Index}% - \def\figurename{Figure}% - \def\tablename{Table}% - \def\partname{Part}% - \def\enclname{encl}% - \def\ccname{cc}% - \def\headtoname{To}% - \def\pagename{Page}% - \def\seename{see}% - \def\alsoname{see also}} -\let\captionsUSenglish=\captionsenglish -\def\captionsfrench{% - \def\prefacename{Pr\'eface}% - \def\refname{R\'ef\'erences}% - \def\abstractname{R\'esum\'e}% - \def\bibname{Bibliographie}% - \def\chaptername{Chapitre}% - \def\appendixname{Annexe}% - \def\contentsname{Table des mati\`eres}% - \def\listfigurename{Liste des figures}% - \def\listtablename{Liste des tableaux}% - \def\indexname{Index}% - \def\figurename{Figure}% - \def\tablename{Tableau}% - \def\partname{Partie}% - \def\enclname{P.~J.}% - \def\ccname{Copie \`a}% - \def\headtoname{A}% - \def\pagename{Page}% - \def\seename{voir}% - \def\alsoname{voir aussi}}% -\def\extrasUSenglish{} -\let\noextrasUSenglish=\extrasUSenglish -\let\extrasenglish=\extrasUSenglish -\let\noextrasenglish=\extrasenglish -\def\extrasngerman{\frenchspacing \uchyph\@ne - \lefthyphenmin\tw@ \righthyphenmin\tw@} -\def\noextrasngerman{% - \ifnum\sfcode`\.=\@m \else \noexpand\nonfrenchspacing \fi - \uchyph\the\uchyph\relax - \lefthyphenmin\the\lefthyphenmin - \righthyphenmin\the\righthyphenmin} -\let\extrasnaustrian=\extrasngerman -\let\noextrasnaustrian=\noextrasngerman -\def\extrasfrench{\frenchspacing} -\def\noextrasfrench{% - \ifnum\sfcode`\.=\@m \else \noexpand\nonfrenchspacing \fi} -\@ifundefined{l@USenglish}{% - \@ifundefined{l@english}{\chardef\l@USenglish=255 }% - {\chardef\l@USenglish=\l@english}% - \wlog{ngerman -- \string\language\space number for USenglish % - undefined, default \number\l@USenglish\space used.}% -}{} -\@ifundefined{l@english}{% - \chardef\l@english=\l@USenglish - \wlog{ngerman -- \string\language\space number for UKenglish % - undefined, default \number\l@english\space used.}% -}{} -\@ifundefined{l@ngerman}{% - \@ifundefined{l@naustrian}{% - \chardef\l@ngerman=255 % - \message{ngerman -- \string\language\space number for ngerman % - undefined, default \number\l@ngerman\space used,}% - \message{ngerman -- Please read \string"gerdoc.tex\string" how % - to install hyphenation patterns.}% - }{% - \chardef\l@ngerman=\l@naustrian - \wlog{ngerman -- \string\language\space number for ngerman % - undefined, default \number\l@ngerman\space used.}% - }% -}{} -\@ifundefined{l@naustrian}{% - \chardef\l@naustrian=\l@ngerman - \wlog{ngerman -- \string\language\space number for naustrian % - undefined, default \number\l@naustrian\space used.}% -}{} -\@ifundefined{l@french}{% - \chardef\l@french=255 - \wlog{ngerman -- \string\language\space number for French % - undefined, default \number\l@french\space used.}% -}{} -\def\grmn@originalTeX{} -\def\languagename{} -\expandafter\def\csname selectlanguage \endcsname#1{\relax - \expandafter\ifx\csname l@#1\endcsname\relax - \errhelp{Your command will be ignored, type <return> to proceed}% - \errmessage{You haven't defined the language #1 yet}% - \else - \grmn@originalTeX - \edef\languagename{#1}% - \edef\grmn@originalTeX{\csname noextras#1\endcsname - \def\noexpand\grmn@originalTeX{}}% - \csname date#1\endcsname - \csname captions#1\endcsname - \csname extras#1\endcsname\relax - % Diese Zeile ist fuer `bibgerm' ... - \csname bibs#1\endcsname - % ... sie wird in spaeteren `german.sty'-Versionen nicht - % mehr vorhanden sein. Also nicht darauf verlassen! - \language \csname l@#1\endcsname\relax - \fi} -\begingroup\catcode`\ =11\relax% <= do not delete this and the -\toks0={\endgroup% <=== following percent characters! -\def\selectlanguage#1{\protect\selectlanguage {% -\ifnum\escapechar=\expandafter`\string#1\empty% -\else\string#1\empty\fi}}}% -\the\toks0\relax% -\def\p@selectlanguage{\selectlanguage} -\def\iflanguage#1{% - \ifx\csname l@#1\endcsname\relax - \expandafter\grmn@dqsecond - \else \ifnum\csname l@#1\endcsname=\language - \expandafter\expandafter\expandafter\grmn@dqfirst - \else - \expandafter\expandafter\expandafter\grmn@dqsecond - \fi\fi -} -\expandafter\ifx\csname language\endcsname\relax - \csname newcount\endcsname\language - \language=0 \fi -\expandafter\ifx\csname lefthyphenmin\endcsname\relax - \csname newcount\endcsname\lefthyphenmin - \lefthyphenmin=2 \fi -\expandafter\ifx\csname righthyphenmin\endcsname\relax - \csname newcount\endcsname\righthyphenmin - \righthyphenmin=3 \fi -\expandafter\ifx\csname setlanguage\endcsname\relax - \def\setlanguage{\relax - \ifhmode \else - \errhelp{Use \selectlanguage to switch languages.}% - \errmessage{\setlanguage allowed only in horizontal mode}% - \fi - \begingroup\afterassignment\endgroup\count@=} -\fi -\begingroup \mdqon -\def\x{\endgroup - \def\originalTeX{\mdqoff \let"\dq \umlauthigh - \let\3\grmn@original@three - \selectlanguage{USenglish}}% - \def\ngermanTeX{\mdqon \let"\@active@dq \umlautlow - \let\grmn@original@three\3\let\3\ss - \selectlanguage{ngerman}}}% -\x -\catcode`\@=\atcode % return to previous catcode -\ngermanTeX -\endinput -%% -%% End of file `ngerman.sty'. diff --git a/Master/tlpkg/tlpsrc/collection-langgerman.tlpsrc b/Master/tlpkg/tlpsrc/collection-langgerman.tlpsrc index 4448af3dab8..3f944fb324a 100644 --- a/Master/tlpkg/tlpsrc/collection-langgerman.tlpsrc +++ b/Master/tlpkg/tlpsrc/collection-langgerman.tlpsrc @@ -8,7 +8,6 @@ depend booktabs-de depend csquotes-de depend etoolbox-de depend geometry-de -depend german depend germbib depend germkorr depend hausarbeit-jura diff --git a/Master/tlpkg/tlpsrc/german.tlpsrc b/Master/tlpkg/tlpsrc/german.tlpsrc deleted file mode 100644 index bb8c81747c7..00000000000 --- a/Master/tlpkg/tlpsrc/german.tlpsrc +++ /dev/null @@ -1 +0,0 @@ -docpattern +!f texmf-dist/doc/latex/jurabib/docs/german/* |