diff options
author | Karl Berry <karl@freefriends.org> | 2013-05-17 23:01:36 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2013-05-17 23:01:36 +0000 |
commit | 673c5ec054703dad29c5af6499110f967a30bfcc (patch) | |
tree | 9b8063519f6aaccdd9abbf9ebdb2ba5b6576a527 /Master/texmf-dist/tex/generic/german | |
parent | da086f353a186c7cfc00ec708d0a743763e36ef5 (diff) |
restore german[.sty] from CTAN:language/german; not part of babel-german
git-svn-id: svn://tug.org/texlive/trunk@30539 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/generic/german')
-rw-r--r-- | Master/texmf-dist/tex/generic/german/german.sty | 674 | ||||
-rw-r--r-- | Master/texmf-dist/tex/generic/german/ngerman.sty | 680 |
2 files changed, 1354 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/generic/german/german.sty b/Master/texmf-dist/tex/generic/german/german.sty new file mode 100644 index 00000000000..ef477d2bca9 --- /dev/null +++ b/Master/texmf-dist/tex/generic/german/german.sty @@ -0,0 +1,674 @@ +%% +%% 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 new file mode 100644 index 00000000000..1fcdcb8da4b --- /dev/null +++ b/Master/texmf-dist/tex/generic/german/ngerman.sty @@ -0,0 +1,680 @@ +%% +%% 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'. |