diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/koma-script/source/scrkernel-language.dtx |
Initial commit
Diffstat (limited to 'macros/latex/contrib/koma-script/source/scrkernel-language.dtx')
-rw-r--r-- | macros/latex/contrib/koma-script/source/scrkernel-language.dtx | 1709 |
1 files changed, 1709 insertions, 0 deletions
diff --git a/macros/latex/contrib/koma-script/source/scrkernel-language.dtx b/macros/latex/contrib/koma-script/source/scrkernel-language.dtx new file mode 100644 index 0000000000..6181653de8 --- /dev/null +++ b/macros/latex/contrib/koma-script/source/scrkernel-language.dtx @@ -0,0 +1,1709 @@ +% \CheckSum{2080} +% \iffalse meta-comment +% ====================================================================== +% scrkernel-language.dtx +% Copyright (c) Markus Kohm, 2002-2018 +% +% This file is part of the LaTeX2e KOMA-Script bundle. +% +% This work may be distributed and/or modified under the conditions of +% the LaTeX Project Public License, version 1.3c of the license. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3c or later is part of all distributions of LaTeX +% version 2005/12/01 or later and of this work. +% +% This work has the LPPL maintenance status "author-maintained". +% +% The Current Maintainer and author of this work is Markus Kohm. +% +% This work consists of all files listed in manifest.txt. +% ---------------------------------------------------------------------- +% scrkernel-language.dtx +% Copyright (c) Markus Kohm, 2002-2018 +% +% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz, +% Version 1.3c, verteilt und/oder veraendert werden. +% Die neuste Version dieser Lizenz ist +% http://www.latex-project.org/lppl.txt +% und Version 1.3c ist Teil aller Verteilungen von LaTeX +% Version 2005/12/01 oder spaeter und dieses Werks. +% +% Dieses Werk hat den LPPL-Verwaltungs-Status "author-maintained" +% (allein durch den Autor verwaltet). +% +% Der Aktuelle Verwalter und Autor dieses Werkes ist Markus Kohm. +% +% Dieses Werk besteht aus den in manifest.txt aufgefuehrten Dateien. +% ====================================================================== +% \fi +% +% \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 \~} +% +% \iffalse +%%% From File: $Id: scrkernel-language.dtx 3011 2018-08-29 07:35:17Z kohm $ +%<option>%%% (run: option) +%<body>%%% (run: body) +%<*dtx> +% \fi +\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi +\begingroup + \def\filedate$#1: #2-#3-#4 #5${\gdef\filedate{#2/#3/#4}} + \filedate$Date: 2018-08-29 09:35:17 +0200 (Wed, 29 Aug 2018) $ + \def\filerevision$#1: #2 ${\gdef\filerevision{r#2}} + \filerevision$Revision: 1638 $ + \edef\reserved@a{% + \noexpand\endgroup + \noexpand\ProvidesFile{scrkernel-language.dtx} + [\filedate\space\filerevision\space + KOMA-Script (language)]% + }% +\reserved@a +% \iffalse +\documentclass[parskip=half-]{scrdoc} +\usepackage[english,ngerman]{babel} +\usepackage[latin1]{inputenc} +\CodelineIndex +\RecordChanges +\GetFileInfo{scrkernel-language.dtx} +\title{\KOMAScript{} \partname\ \texttt{\filename}% + \footnote{Dies ist Version \fileversion\ von Datei + \texttt{\filename}.}} +\date{\filedate} +\author{Markus Kohm} + +\begin{document} + \maketitle + \tableofcontents + \DocInput{\filename} +\end{document} +%</dtx> +% \fi +% +% \selectlanguage{ngerman} +% +% \changes{v2.95}{2002/07/01}{% +% erste Version aus der Aufteilung von \texttt{scrclass.dtx}} +% +% \section{Sprachabhängigkeiten} +% +% Aus verschiedenen Gründen ist es nicht so einfach, neue, +% sprachabhängige Begriffe zu definieren oder vorhandene +% umzudefinieren. Mit \KOMAScript{} geht das etwas einfacher. +% +% +% \StopEventually{\PrintIndex\PrintChanges} +% +% \iffalse +%<*option> +% \fi +% +% \subsection{Option} +% Für Briefe gibt es die Möglichkeit, zwischen symbolischem und numerischem +% Datum umzuschalten. +% +% \iffalse +%<*letter> +% \fi +% +% \begin{option}{numericaldate} +% \changes{v2.8q}{2001/10/07}{Neue Option (an Stelle von +% \texttt{scrdate} und \texttt{orgdate})}^^A +% \changes{v2.97d}{2007/10/03}{\cs{PackageInfo} durch \cs{PackageInfoNoLine} +% ersetzt}^^A +% \changes{v3.17}{2015/03/10}{Speicherung des aktuellen Werts}^^A +% Es kann zwischen dem Originaldatum, das beispielsweise von +% \texttt{german.sty} definiert wird, und dem \texttt{scrlttr2}-Datum +% gewählt werden. Natürlich gibt es diese Optionen nur bei Briefen. +% \begin{macro}{\if@orgdate} +% \begin{macro}{\@orgdatetrue} +% \begin{macro}{\@orgdatefalse} +% Die Einstellung wird in einem Schalter gespeichert. +% \begin{macrocode} +\newif\if@orgdate\@orgdatetrue +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% Dummerweise besitzt der alte Schalter genau die gegenteilige +% Bedeutung der Option, deshalb muss der Schalter zweimal invertiert +% werden. +% \begin{macrocode} +\KOMA@key{numericaldate}[true]{% + \if@orgdate\@orgdatefalse\else\@orgdatetrue\fi + \KOMA@set@ifkey{numericaldate}{@orgdate}{#1}% + \KOMA@kav@replacebool{.% +%<class> \KOMAClassFileName +%<package&letter> scrletter.\scr@pkgextension + }{numericaldate}{@orgdate}% + \if@orgdate\@orgdatefalse\else\@orgdatetrue\fi +} +\KOMA@kav@add{.% +%<class> \KOMAClassFileName +%<package&letter> scrletter.\scr@pkgextension +}{orgdate}{true} +% \end{macrocode} +% \begin{option}{scrdate} +% \changes{v3.01a}{2008/11/21}{deprecated}^^A +% \begin{option}{orgdate} +% \changes{v3.01a}{2008/11/21}{deprecated}^^A +% \begin{macrocode} +\KOMA@DeclareDeprecatedOption{scrdate}{numericaldate=true} +\KOMA@DeclareDeprecatedOption{orgdate}{numericaldate=false} +% \end{macrocode} +% \end{option} +% \end{option} +% \end{option} +% +% \iffalse +%</letter> +% \fi +% +% +% \iffalse +%</option> +%<*body> +% \fi +% +% \subsection{Definitionen für sprachabhängige Bezeichner} +% +% Dieser Teil ist so grundlegend, dass er ab Version~3.00 in das Paket +% \textsf{scrbase} ausgelagert wird. +% +% \iffalse +%<*package&base> +% \fi +% +% \begin{macro}{\defcaptionname} +% \changes{3.12}{2013/07/29}{neu}^^A +% \changes{v3.20}{2016/04/12}{\cs{@ifstar} durch \cs{kernel@ifstar} +% ersetzt}^^A +% Für eine Reihe von Sprachen (durch Komma separierte Liste in \#1) +% wird ein Makro (\#2) auf einen bestimmten Inhalt (\#3) definiert. Die +% Sternversion verwendet dabei zwingend \cs{extras\meta{Sprache}}, während +% die Normalversion \cs{captions\meta{Sprache}} verwendet, außer wenn der +% Begriff bereits in \cs{extras\meta{Sprache}} definiert ist. Falls der +% Befehl in der Dokumentpräambel aufgerufen wird, wird er verzögert. +% \begin{macrocode} +\newcommand*{\defcaptionname}{% + \kernel@ifstar\scr@def@scaptionname\scr@def@captionname +} +% \end{macrocode} +% \begin{macro}{\scr@def@scaptionname} +% \changes{v3.12}{2013/07/30}{neu (intern)}^^A +% Die Sternvariante von \cs{defcaptionname}. Die Argumente sind dieselben. +% \begin{macrocode} +\newcommand*{\scr@def@scaptionname}[3]{% +% \end{macrocode} +% Als erstes findet die Verzögerung bis \cs{begin{document}} statt. +% \begin{macrocode} + \if@atdocument \expandafter\@firstofone + \else \expandafter\AtBeginDocument + \fi + {% +% \end{macrocode} +% Dann arbeiten wir in einer lokalen Schleife alle Sprachen aus Argument \#1 +% ab und \dots +% \changes{v3.26}{2018/08/29}{diverse \cs{expandafter} eingespart}^^A +% \begin{macrocode} + \begingroup + \let\reserved@b\endgroup + \edef\scr@reserved@a{#1}% + \@onelevel@sanitize\scr@reserved@a + \@for\scr@reserved@a:=\scr@reserved@a\do{% +% \end{macrocode} +% \dots\ fügen dabei \cs{extras\meta{Sprache}} die Definition \#3 für \#2 +% hinzu. +% \begin{macrocode} + \scr@trim@spaces\scr@reserved@a + \ifx\scr@reserved@a\@empty + \PackageWarning{scrbase}{empty language at \string\defcaptionname}% + \else + \expandafter\ifx\csname extras\scr@reserved@a\endcsname\relax + \expandafter\expandafter\expandafter\gdef + \else + \expandafter\expandafter\expandafter\g@addto@macro + \fi + \csname extras\scr@reserved@a\endcsname{% + \def#2{#3}% + }% +% \end{macrocode} +% Wenn etwas hinzugefügt wurde, muss außerdem \cs{reserved@b} so umdefiniert +% werden, dass dies ggf. auch unmittelbar Geltung bekommt. +% \begin{macrocode} + \scr@def@activateactivelanguageaftergroup{#2}{#3}% + \fi + }% + \reserved@b + }% +} +% \end{macrocode} +% \begin{macro}{\scr@def@activateactivelanguageaftergroup} +% \changes{v3.12}{2013/07/30}{neu (intern)}^^A +% Wenn die Sprache in \cs{reserved@a} die aktuelle Sprache \cs{languagename} +% ist oder die Sprachnummer zur Sprache \cs{reserved@a} die aktuelle +% Sprachnummer \cs{language} ist, dann wird \cs{reserved@b} so umdefiniert, +% dass es die aktuelle Gruppe beendet und \#1 als \#2 definiert. +% \begin{macrocode} +\newcommand*{\scr@def@activateactivelanguageaftergroup}[2]{% + \@onelevel@sanitize\languagename + \@tempswafalse +%<trace> \typeout{compare `\languagename' and `\scr@reserved@a'}% + \ifx\languagename\scr@reserved@a + \@tempswatrue + \else +% \end{macrocode} +% \changes{v3.20}{2016/01/05}{Sonderbehandlung für \textsf{polyglossia}}^^A +% Bei Verwendung von \textsf{polyglossia} gibt es die Besonderheit, dass alle +% Deutschen Sprachen als \texttt{german} definiert sind. Die Unterscheidung +% zwischen Deutsch, Österreichisch und Schweizerisch geschieht über zwei +% boolsche Schalter. Für die Unterscheidung alte oder neue Rechtschreibung +% existiert ein weiterer Schalter. Mit ein paar trickreichen Vergleichen kann +% man das zusätzlich behandeln. Natürlich muss es so gemacht werden, dass es +% mit babel trotzdem noch funktioniert. +% \begin{macrocode} + \edef\scr@reserved@b{\detokenize{german}}% + \ifx\languagename\scr@reserved@b + \edef\scr@reserved@b{% + \expandafter\ifx\csname if@german@oldspelling\expandafter\endcsname + \csname iffalse\endcsname n\fi + \expandafter\ifx\csname if@austrian@locale\expandafter\endcsname + \csname iftrue\endcsname austrian\else + \expandafter\ifx\csname if@swiss@locale\expandafter\endcsname + \csname iftrue\endcsname swiss\else german\fi\fi + }% +%<trace> \typeout{compare also `\scr@reserved@a' and `\scr@reserved@b'}% + \@onelevel@sanitize\scr@reserved@b + \ifx\scr@reserved@a\scr@reserved@b \@tempswatrue\fi + \fi + \if@tempswa\else + \ifcsname l@\scr@reserved@a\endcsname + \expandafter\ifnum\csname l@\scr@reserved@a\endcsname=\language + \@tempswatrue + \fi + \fi + \fi + \fi + \if@tempswa + \def\reserved@b{\endgroup + \PackageInfo{scrbase}{activating \languagename\space \string#1}% + \def#1{#2}% + }% + \fi +} +% \end{macrocode} +% \end{macro}^^A \scr@def@activateactivelanguageaftergroup +% \end{macro}^^A \scr@def@scaptionname +% \begin{macro}{\scr@def@captionname} +% \changes{v3.12}{2013/07/30}{neu (intern)}^^A +% Die Normalvariante von \cs{defcaptionname}, mit denselben Argumenten. +% \begin{macrocode} +\newcommand*{\scr@def@captionname}[3]{% +% \end{macrocode} +% Als erstes findet die Verzögerung bis \cs{begin{document}} statt. +% \begin{macrocode} + \if@atdocument \expandafter\@firstofone + \else \expandafter\AtBeginDocument + \fi + {% +% \end{macrocode} +% Dann arbeiten wir in einer lokalen Schleife alle Sprachen aus Argument \#1 +% ab und \dots +% \changes{v3.26}{2018/08/29}{diverse \cs{expandafter} eingespart}^^A +% \begin{macrocode} + \begingroup + \let\reserved@b\endgroup + \edef\scr@reserved@a{#1}% + \@onelevel@sanitize\scr@reserved@a + \@for\scr@reserved@a:=\scr@reserved@a\do{% + \scr@trim@spaces\scr@reserved@a + \ifx\scr@reserved@a\@empty + \PackageWarning{scrbase}{empty language at \string\defcaptionname}% + \else +% \end{macrocode} +% \dots\ testen dabei, ob \#2 bereits in \cs{extras\meta{Sprache}} definiert +% ist. +% \begin{macrocode} + \@tempswafalse + \begingroup + \@tempswafalse + \ifcsname extras\scr@reserved@a\endcsname + \let#2\relax + \csname extras\scr@reserved@a\endcsname + \ifx #2\relax \else \aftergroup\@tempswatrue \fi + \fi + \endgroup +% \end{macrocode} +% Wenn \#2 bereits in \cs{extras\meta{Sprache}} definiert ist, \dots +% \begin{macrocode} + \if@tempswa +% \end{macrocode} +% \dots\ dann definieren wir es genau hier neu, +% \begin{macrocode} + \expandafter\g@addto@macro\csname extras\scr@reserved@a\endcsname{% + \def#2{#3}% + }% + \else +% \end{macrocode} +% \dots\ anderenfalls definieren wir es in \cs{captions\meta{Sprache}} neu. +% \begin{macrocode} + \expandafter\ifx\csname captions\scr@reserved@a\endcsname\relax + \expandafter\expandafter\expandafter\gdef + \else + \expandafter\expandafter\expandafter\g@addto@macro + \fi + \csname captions\scr@reserved@a\endcsname{% + \def#2{#3}% + }% + \fi +% \end{macrocode} +% Wenn etwas hinzugefügt wurde, muss außerdem \cs{reserved@b} so umdefiniert +% werden, dass dies ggf. auch unmittelbar Geltung bekommt. +% \begin{macrocode} + \scr@def@activateactivelanguageaftergroup{#2}{#3}% + \fi + }% + \reserved@b + }% +} +% \end{macrocode} +% \end{macro}^^A \scr@def@captionname +% \end{macro}^^A \defcaptionname +% +% \changes{v3.20}{2016/01/05}{Neue Sonderbehandlung für +% \texttt{polyglossia}}^^A +% Bei Verwendung von \textsf{polyglossia} haben wir nun bei den Sprachen +% \texttt{austrian}, \texttt{swiss}, \texttt{ngerman}, \texttt{naustrian} und +% \texttt{nswiss} das Problem, dass diese dort alle in \cs{captionsgerman} +% vermischt sind. Es werden also also beim Umschalten eventuell gar nicht die +% richtigen Befehle ausgeführt. Das lässt sich beispielsweise beheben, indem +% in \cs{init@extra@german} dafür gesorgt wid, dass eben diese doch noch +% ausgeführt werden: +% \begin{macrocode} +\AfterPackage*{polyglossia}{% + \scr@ifundefinedorrelax{init@extras@german}{% + \AfterFile{gloss-german.ldf}% + }{% + \@firstofone + }% + {% + \providecommand*\captionsngerman{}% + \providecommand*\captionsaustrian{}% + \providecommand*\captionsnaustrian{}% + \providecommand*\captionsswiss{}% + \providecommand*\captionsnswiss{}% + \csgappto{init@extras@german}{% + \if@austrian@locale + \csuse{captions\if@german@oldspelling\else n\fi austrian}% + \else + \if@swiss@locale + \csuse{captions\if@german@oldspelling\else n\fi swiss}% + \else + \if@german@oldspelling\else \csuse{captionsngerman}\fi + \fi + \fi + }% + }% +} +% \end{macrocode} +% Ich bin mir natürlich bewusst, dass dieser Code auch nur wieder ein Hack +% ist. Ideal ist das so nicht. Aber sehr viel sauberer geht es mit +% \textsf{polyglossia} unter Beibehaltung der Kompatibilität auch nicht mehr. +% +% \begin{macro}{\providecaptionname} +% \changes{v2.8q}{2001/11/08}{neu}^^A +% \changes{v2.9r}{2004/06/16}{Wenn die aktuelle Sprache, die geänderte +% ist, wird die Anderung sofort aktiviert.}^^A +% \changes{v2.95}{2006/03/10}{Ermittlung der aktuellen Sprache funktioniert +% auch, wenn \cs{languagename} mit seltsamen catcodes erstellt wurde.}^^A +% \changes{v3.00}{2008/05/02}{nach \textsf{scrbase} verschoben}^^A +% \changes{v3.01b}{2008/12/07}{missing make undefined}^^A +% \changes{v3.02c}{2009/02/17}{undefined test improved}^^A +% \changes{v3.12}{2013/07/30}{Neuimplementierung nach dem Muster von +% \cs{defcaptionname}}^^A +% \changes{v3.20}{2016/04/12}{\cs{@ifstar} durch \cs{kernel@ifstar} +% ersetzt}^^A +% Wie \cs{defcaptionname}, allerdings wird nur definiert, wenn die Sprache \#1 +% bereits existiert, aber der Begriff \#2 nicht existiert. Unter dieser +% Einschränkung verwendet die Sternvariante \cs{extras\meta{Sprache}}, während +% die Normalvariante \cs{captions\meta{Sprache}} verwendet. +% \begin{macrocode} +\newcommand*{\providecaptionname}{% + \kernel@ifstar\scr@provide@scaptionname\scr@provide@captionname +} +% \end{macrocode} +% \begin{macro}{\scr@provide@scaptionname} +% \changes{v3.12}{2013/07/30}{neu (intern)}^^A +% \changes{v3.26}{2018/08/29}{diverse \cs{expandafter} eingespart}^^A +% \begin{macrocode} +\newcommand*{\scr@provide@scaptionname}[3]{% + \if@atdocument \expandafter\@firstofone + \else \expandafter\AtBeginDocument + \fi + {% + \begingroup + \let\reserved@b\endgroup + \edef\scr@reserved@a{#1}% + \@onelevel@sanitize\scr@reserved@a + \@for\scr@reserved@a:=\scr@reserved@a\do{% + \scr@trim@spaces\scr@reserved@a + \ifx\scr@reserved@a\@empty + \PackageWarning{scrbase}{empty language at + \string\providecaptionname}% + \else +% \end{macrocode} +% Im Unterschied zu \cs{defcaptionname} wird hier nur etwas zu +% \cs{extras\meta{Sprache}} hinzugefügt, wenn das bereits definiert ist, +% aber \#2 selbst noch nicht definiert ist. +% \begin{macrocode} + \begingroup + \let#2\relax + \csname extras\scr@reserved@a\endcsname + \csname captions\scr@reserved@a\endcsname + \ifx #2\relax \aftergroup\@firstofone + \else +%<*trace> + \PackageInfo{scrbase}{letting \scr@reserved@a\space + \expandafter\string#2\MessageBreak + unchanged}% +%</trace> + \aftergroup\@gobble + \fi + \endgroup + {% + \expandafter\ifx\csname extras\scr@reserved@a\endcsname\relax +%<*trace> + \PackageInfo{scrbase}{letting + \expandafter\string\csname extras\scr@reserved@a\endcsname\space + unused}% +%</trace> + \expandafter\expandafter\expandafter\@gobbletwo + \else + \expandafter\expandafter\expandafter\g@addto@macro + \fi + \csname extras\scr@reserved@a\endcsname{% + \def#2{#3}% + }% + \scr@def@activateactivelanguageaftergroup{#2}{#3}% + }% + \fi + }% + \reserved@b + }% +} +% \end{macrocode} +% \end{macro}^^A \scr@provide@scaptionname +% \begin{macro}{\scr@provide@captionname} +% \changes{v3.12}{2013/07/30}{neu (intern)}^^A +% \changes{v3.26}{2018/08/29}{diverse \cs{expandafter} eingespart}^^A +% Die Normalvariante von \cs{providecaptionname}, mit denselben Argumenten. +% \begin{macrocode} +\newcommand*{\scr@provide@captionname}[3]{% + \if@atdocument \expandafter\@firstofone + \else \expandafter\AtBeginDocument + \fi + {% + \begingroup + \let\reserved@b\endgroup + \edef\scr@reserved@a{#1}% + \@onelevel@sanitize\scr@reserved@a + \@for\scr@reserved@a:=\scr@reserved@a\do{% + \scr@trim@spaces\scr@reserved@a + \ifx\scr@reserved@a\@empty + \PackageWarning{scrbase}{empty language at + \string\providecaptionname}% + \else +% \end{macrocode} +% Im Unterschied zu \cs{defcaptionname} wird hier nur etwas zu +% \cs{captions\meta{Sprache}} hinzugefügt, wenn das bereits definiert ist, +% aber \#2 selbst weder in \cs{extras\meta{Sprache}} noch in +% \cs{captions\meta{Sprache}} definiert ist. +% \begin{macrocode} + \begingroup + \let#2\relax + \csname captions\scr@reserved@a\endcsname + \csname extras\scr@reserved@a\endcsname + \ifx #2\relax \aftergroup\@firstofone + \else +%<*trace> + \PackageInfo{scrbase}{letting \scr@reserved@a + \expandafter\string#2\MessageBreak + unchanged}% +%</trace> + \aftergroup\@gobble + \fi + \endgroup + {% + \expandafter\ifx\csname captions\scr@reserved@a\endcsname\relax +%<*trace> + \PackageInfo{scrbase}{letting + \expandafter\string\csname extras\scr@reserved@a\endcsname\space + unused}% +%</trace> + \expandafter\expandafter\expandafter\@gobbletwo + \else + \expandafter\expandafter\expandafter\g@addto@macro + \fi + \csname captions\scr@reserved@a\endcsname{% + \def#2{#3}% + }% + \scr@def@activateactivelanguageaftergroup{#2}{#3}% + }% + \fi + }% + \reserved@b + }% +} +% \end{macrocode} +% \end{macro}^^A \scr@provide@captionname +% \end{macro}^^A \providecaptionname +% +% \begin{macro}{\newcaptionname} +% \changes{v2.8q}{2001/11/08}{neu}^^A +% \changes{v2.9r}{2004/06/16}{Wenn die aktuelle Sprache, die geänderte +% ist, wird die Anderung sofort aktiviert.}^^A +% \changes{v2.95}{2006/03/10}{Ermittlung der aktuellen Sprache funktioniert +% auch, wenn \cs{languagename} mit seltsamen catcodes erstellt wurde.}^^A +% \changes{v3.00}{2008/05/02}{nach \textsf{scrbase} verschoben}^^A +% \changes{v3.01b}{2008/12/07}{missing make undefined}^^A +% \changes{v3.02c}{2009/02/17}{undefined test improved}^^A +% \changes{v3.12}{2013/07/30}{Neuimplementierung nach dem Muster von +% \cs{defcaptionname}}^^A +% \changes{v3.20}{2016/04/12}{\cs{@ifstar} durch \cs{kernel@ifstar} +% ersetzt}^^A +% Wie \cs{defcaptionname} mit folgender Änderung: Existiert die +% Sprache und der Begriff, so wird ein Fehler ausgegeben. Existiert die +% Sprache aber nicht der Begriff, so wird er definiert. Existiert die Sprache +% nicht, so wird sie definiert. Unter dieser Prämisse verwendet die +% Sternversion \cs{extras\meta{Sprache}}, während die Normalversion +% \cs{captions\meta{Sprache}} verwendet. +% \begin{macrocode} +\newcommand*{\newcaptionname}{% + \kernel@ifstar\scr@new@scaptionname\scr@new@captionname +} +% \end{macrocode} +% \begin{macro}{\scr@new@scaptionname} +% \changes{v3.12}{2013/07/30}{neu (intern)}^^A +% \changes{v3.26}{2018/08/29}{diverse \cs{expandafter} eingespart}^^A +% Die Sternvariante von \cs{newcaptionname}. Die Argumente sind dieselben. +% \begin{macrocode} +\newcommand*{\scr@new@scaptionname}[3]{% + \if@atdocument \expandafter\@firstofone + \else \expandafter\AtBeginDocument + \fi + {% + \begingroup + \let\reserved@b\endgroup + \edef\scr@reserved@a{#1}% + \@onelevel@sanitize\scr@reserved@a + \@for\scr@reserved@a:=\scr@reserved@a\do{% + \scr@trim@spaces\scr@reserved@a + \ifx\scr@reserved@a\@empty + \PackageWarning{scrbase}{empty language at \string\newcaptionname}% + \else +% \end{macrocode} +% Im Unterschied zu \cs{defcaptionname} darf der Begriff noch nicht definiert +% sein. +% \begin{macrocode} + \begingroup + \let#2\relax + \csname captions\scr@reserved@a\endcsname + \csname extras\scr@reserved@a\endcsname + \ifx #2\relax + \else + \PackageError{scrbase}{% + `\string#2' already defined\MessageBreak + for language `\scr@reserved@a'% + }{% + You've told me to define `\string#2' for language + `\scr@reserved@a',\MessageBreak + but is has already been defined.\MessageBreak + Nevertheless, if you'll continue it will be redefined.% + }% + \fi + \endgroup + \expandafter\ifx\csname extras\scr@reserved@a\endcsname\relax + \expandafter\expandafter\expandafter\gdef + \else + \expandafter\expandafter\expandafter\g@addto@macro + \fi + \csname extras\scr@reserved@a\endcsname{% + \def#2{#3}% + }% + \scr@def@activateactivelanguageaftergroup{#2}{#3}% + \fi + }% + \reserved@b + }% +} +% \end{macrocode} +% \end{macro}^^A \scr@new@scaptionname +% \begin{macro}{\scr@new@captionname} +% \changes{v3.12}{2013/07/30}{neu (intern)}^^A +% \changes{v3.26}{2018/08/29}{diverse \cs{expandafter} eingespart}^^A +% Die Normalvariante von \cs{newcaptionname}, mit denselben Argumenten. +% \begin{macrocode} +\newcommand*{\scr@new@captionname}[3]{% + \if@atdocument \expandafter\@firstofone + \else \expandafter\AtBeginDocument + \fi + {% + \begingroup + \let\reserved@b\endgroup + \edef\scr@reserved@a{#1}% + \@onelevel@sanitize\scr@reserved@a + \@for\scr@reserved@a:=\scr@reserved@a\do{% + \scr@trim@spaces\scr@reserved@a + \ifx\scr@reserved@a\@empty + \PackageWarning{scrbase}{empty language at \string\newcaptionname}% + \else +% \end{macrocode} +% Im Unterschied zu \cs{defcaptionname} darf der Begriff noch nicht definiert +% sein. +% \begin{macrocode} + \begingroup + \let#2\relax + \csname captions\scr@reserved@a\endcsname + \csname extras\scr@reserved@a\endcsname + \ifx #2\relax + \else + \PackageError{scrbase}{% + `\string#2' already defined\MessageBreak + for language `\scr@reserved@a'% + }{% + You've told me to define `\string#2' for language + `\scr@reserved@a',\MessageBreak + but is has already been defined.\MessageBreak + Nevertheless, if you'll continue it will be redefined.% + }% + \fi + \endgroup + \expandafter\ifx\csname captions\scr@reserved@a\endcsname\relax + \expandafter\expandafter\expandafter\gdef + \else + \expandafter\expandafter\expandafter\g@addto@macro + \fi + \csname captions\scr@reserved@a\endcsname{% + \def#2{#3}% + }% + \scr@def@activateactivelanguageaftergroup{#2}{#3}% + \fi + }% + \reserved@b + }% +} +% \end{macrocode} +% \end{macro}^^A \scr@new@captionname +% \end{macro}^^A \newcaptionname +% +% \begin{macro}{\renewcaptionname} +% \changes{v2.8q}{2001/11/08}{neu}^^A +% \changes{v2.9r}{2004/06/16}{Wenn die aktuelle Sprache, die geänderte +% ist, wird die Anderung sofort aktiviert.}^^A +% \changes{v2.95}{2006/03/10}{Ermittlung der aktuellen Sprache funktioniert +% auch, wenn \cs{languagename} mit seltsamen catcodes erstellt wurde.}^^A +% \changes{v3.00}{2008/05/02}{nach \textsf{scrbase} verschoben}^^A +% \changes{v3.01b}{2008/12/07}{missing make undefined}^^A +% \changes{v3.02c}{2009/02/17}{undefined test improved}^^A +% \changes{v3.12}{2013/07/30}{Neuimplementierung nach dem Muster von +% \cs{defcaptionname}}^^A +% \changes{v3.20}{2016/04/12}{\cs{@ifstar} durch \cs{kernel@ifstar} +% ersetzt}^^A +% Wie \cs{defcaptionname} mit folgender Änderung: Existiert die +% Sprache nicht, so ist dies ein Fehler. Existiert die Sprache nicht aber der +% Begriff, so ist dies ebenfalls ein Fehler. Existieren Sprache und Begriff, +% so wird dieser umdefiniert. Unter dieser Voraussetzung ändert die +% Sternvariante immer \cs{extras\meta{Sprache}}, während die Normalvariante +% \cs{captions\meta{Sprache}} ändert, falls der Begriff nicht i +% \cs{extras\meta{Sprache}} definiert war, und sonst \cs{extras\meta{Sprache}}. +% \begin{macrocode} +\newcommand*{\renewcaptionname}{% + \kernel@ifstar\scr@renew@scaptionname\scr@renew@captionname +} +% \end{macrocode} +% \begin{macro}{\scr@renew@scaptionname} +% \changes{v3.12}{2013/07/30}{neu (intern)}^^A +% \changes{v3.26}{2018/08/29}{diverse \cs{expandafter} eingespart}^^A +% Die Sternvariante von \cs{renewcaptionname}. Die Argumente sind dieselben. +% \begin{macrocode} +\newcommand*{\scr@renew@scaptionname}[3]{% + \if@atdocument \expandafter\@firstofone + \else \expandafter\AtBeginDocument + \fi + {% + \begingroup + \let\reserved@b\endgroup + \edef\scr@reserved@a{#1}% + \@onelevel@sanitize\scr@reserved@a + \@for\scr@reserved@a:=\scr@reserved@a\do{% + \scr@trim@spaces\scr@reserved@a + \ifx\scr@reserved@a\@empty + \PackageWarning{scrbase}{empty language at \string\renewcaptionname}% + \else +% \end{macrocode} +% Im Unterschied zu \cs{defcaptionname} muss der Begriff bereits definiert +% sein. +% \begin{macrocode} + \begingroup + \let#2\relax + \csname captions\scr@reserved@a\endcsname + \csname extras\scr@reserved@a\endcsname + \ifx #2\relax + \PackageError{scrbase}{% + `\string#2' not defined at language `\scr@reserved@a'% + }{% + You've told me to redefine `\string#2' at language + `\scr@reserved@a',\MessageBreak + but is hasn't been defined before.\MessageBreak + Nevertheless, if you'll continue I'll define it at + `\expandafter\string\csname extras\scr@reserved@a\endcsname'% + }% + \fi + \endgroup + \expandafter\ifx\csname extras\scr@reserved@a\endcsname\relax + \expandafter\expandafter\expandafter\gdef + \else + \expandafter\expandafter\expandafter\g@addto@macro + \fi + \csname extras\scr@reserved@a\endcsname{% + \def#2{#3}% + }% + \scr@def@activateactivelanguageaftergroup{#2}{#3}% + \fi + }% + \reserved@b + }% +} +% \end{macrocode} +% \end{macro}^^A \scr@renew@scaptionname +% \begin{macro}{\scr@renew@captionname} +% \changes{v3.12}{2013/07/30}{neu (intern)}^^A +% \changes{v3.26}{2018/08/29}{diverse \cs{expandafter} eingespart}^^A +% Die Normalvariante von \cs{renewcaptionname}, mit denselben Argumenten. +% \begin{macrocode} +\newcommand*{\scr@renew@captionname}[3]{% + \if@atdocument \expandafter\@firstofone + \else \expandafter\AtBeginDocument + \fi + {% + \begingroup + \let\reserved@b\endgroup + \edef\scr@reserved@a{#1}% + \@onelevel@sanitize\scr@reserved@a + \@for\scr@reserved@a:=\scr@reserved@a\do{% + \scr@trim@spaces\scr@reserved@a + \ifx\scr@reserved@a\@empty + \PackageWarning{scrbase}{empty language at \string\renewcaptionname}% + \else +% \end{macrocode} +% Im Unterschied zu \cs{defcaptionname} muss der Begriff bereits definiert +% sein. +% \begin{macrocode} + \begingroup + \let#2\relax + \csname extras\scr@reserved@a\endcsname + \ifx #2\relax + \csname captions\scr@reserved@a\endcsname + \ifx #2\relax + \PackageError{scrbase}{% + `\string#2' not defined at language `\scr@reserved@a'% + }{% + You've told me to redefine `\string#2' at language + `\scr@reserved@a',\MessageBreak + but it hasn't been defined before.\MessageBreak + Nevertheless, if you'll continue I'll define it at + `\expandafter\string + \csname captions\scr@reserved@a\endcsname'% + }% + \fi + \expandafter\ifx\csname captions\scr@reserved@a\endcsname\relax + \expandafter\expandafter\expandafter\gdef + \else + \expandafter\expandafter\expandafter\g@addto@macro + \fi + \csname captions\scr@reserved@a\endcsname{\def#2{#3}}% + \else + \expandafter\ifx\csname extras\scr@reserved@a\endcsname\relax + \expandafter\expandafter\expandafter\gdef + \else + \expandafter\expandafter\expandafter\g@addto@macro + \fi + \csname extras\scr@reserved@a\endcsname{\def#2{#3}}% + \fi + \endgroup + \scr@def@activateactivelanguageaftergroup{#2}{#3}% + \fi + }% + \reserved@b + }% +} +% \end{macrocode} +% \end{macro}^^A \scr@renew@captionname +% \end{macro}^^A \renewcaptionname +% +% \iffalse +%</package&base> +% \fi +% +% +% \subsection{Definitionen für ein nummerisches Datum} +% Bei Briefen kann ein nummerisches oder ein symbolisches Datum verwendet +% werden. +% +% \iffalse +%<*letter> +% \fi +% +% \begin{macro}{\g@addnumerical@date} +% Dazu ist es notwendig, ggf. das bereits definierte symbolische Datum durch +% ein nummerisches zu ergänzen. +% \begin{macrocode} +\newcommand*{\g@addnumerical@date}[2]{% + \@ifundefined{date#1}{% +%<class> \ClassInfo{scrlttr2% +%<package> \PackageInfo{scrletter% + }{% + no date found for language `#1'\MessageBreak + --> skipped% + }% + }{% + \expandafter\g@addto@macro\csname date#1\endcsname{% + \let\sym@date=\today% + \def\num@date{#2}% + \def\today{\if@orgdate\sym@date\else\num@date\fi}% + }% + }% +} +% \end{macrocode} +% \end{macro} +% +% \iffalse +%</letter> +% \fi +% +% +% \subsection{Festlegungen für einzelne Sprachen} +% +% Es folgen nun für einzelne Sprachen konkrete Festlegungen, die für Briefe +% benötigt werden. +% +% \iffalse +%<*letter> +% \fi +% +% \begin{macro}{\captionsenglish} +% \changes{v3.13}{2014/01/07}{diverse neue Dialekte}^^A +% \begin{macro}{\dateenglish} +% \begin{macro}{\captionsUSenglish} +% \begin{macro}{\dateUSenglish} +% \begin{macro}{\captionsamerican} +% \changes{v2.4c}{1997/11/25}{american identisch mit USenglish definiert} +% \begin{macro}{\dateamerican} +% \changes{v2.4c}{1997/11/25}{american identisch mit USenglish definiert} +% \begin{macro}{\captionsbritish} +% \changes{v2.4c}{1997/11/25}{british identisch mit english definiert} +% \begin{macro}{\datebritish} +% \changes{v2.4c}{1997/11/25}{british identisch mit english definiert} +% \begin{macro}{\captionsUKenglish} +% \changes{v2.4c}{1997/11/25}{UKenglish identisch mit english definiert} +% \begin{macro}{\dateUKenglish} +% \changes{v2.4c}{1997/11/25}{UKenglish identisch mit english definiert} +% \begin{macro}{\captionsukenglish} +% \changes{v3.24}{2017/05/29}{ukenglish identisch mit UKenglish definiert} +% \begin{macro}{\dateukenglish} +% \changes{v3.24}{2017/05/29}{ukenglish identisch mit UKenglish definiert} +% \begin{macro}{\captionsusenglish} +% \changes{v3.24}{2017/05/29}{usenglish identisch mit USenglish definiert} +% \begin{macro}{\dateusenglish} +% \changes{v3.24}{2017/05/29}{usenglish identisch mit USenglish definiert} +% \begin{macro}{\captionsgerman} +% \changes{v3.13}{2014/01/07}{neue Dialekte}^^A +% \begin{macro}{\dategerman} +% \begin{macro}{\captionsngerman} +% \changes{v2.5}{1999/09/08}{ngerman neu und identisch mit german}^^A +% \changes{v3.12a}{2014/03/08}{außer \texttt{german} verwenden alle +% deutschen Sprachen »Telefon«}^^A +% \begin{macro}{\datengerman} +% \changes{v2.5}{1999/09/08}{ngerman neu und identisch mit german}^^A +% \begin{macro}{\captionsaustrian} +% \begin{macro}{\dateaustrian} +% \begin{macro}{\captionsnaustrian} +% \changes{v3.09}{2011/03/10}{naustrian neu und identisch mit austrian}^^A +% \begin{macro}{\datenaustrian} +% \changes{v3.09}{2011/03/10}{naustrian neu und identisch mit austrian}^^A +% \begin{macro}{\captionsfrench} +% \changes{v3.13}{2014/01/07}{diverse neue Dialekte}^^A +% \begin{macro}{\datefrench} +% \begin{macro}{\captionsitalian} +% \begin{macro}{\dateitalian} +% \changes{v2.3e}{1996/05/31}{Ich hoffe, dass das stimmt}^^A +% \begin{macro}{\captionsspanish} +% \begin{macro}{\datespanish} +% \changes{v2.4c}{1997/11/25}{Ich hoffe, dass das stimmt}^^A +% \changes{v2.4c}{1997/11/25}{Datumsumschaltung nicht mehr zwingend} +% \begin{macro}{\captionscroation} +% \changes{v2.8q}{2001/05/10}{Neu}^^A +% \begin{macro}{\datecroatian} +% \changes{v2.8q}{2001/05/10}{Neu}^^A +% \begin{macro}{\captionsdutch} +% \changes{v2.8q}{2002/02/01}{Neu}^^A +% \begin{macro}{\datedutch} +% \changes{v2.8q}{2002/02/01}{Neu}^^A +% \begin{macro}{\captionsfinnish} +% \changes{v2.9u}{2005/02/07}{Unterstützung für Finnisch (Dank Hannu +% Väisänen)}^^A +% \changes{v2.9u}{2005/02/07}{Neu}^^A +% \begin{macro}{\datefinnish} +% \changes{v2.9u}{2005/02/07}{Neu}^^A +% \changes{v3.01c}{2008/12/29}{Aktivierung korrigiert}^^A +% \begin{macro}{\captionsnorsk} +% \changes{v3.02}{2009/01/01}{Neu}^^A +% \begin{macro}{\datenorsk} +% \changes{v3.02}{2009/01/01}{Neu}^^A +% \begin{macro}{\captionsnorsk} +% \changes{v3.08}{2011/01/20}{Neu (Dank Benjamin Hell)}^^A +% \begin{macro}{\datenorsk} +% \changes{v3.08}{2011/01/20}{Neu (Dank Benjamin Hell)}^^A +% \begin{macro}{\captionspolish} +% \changes{v3.13}{2014/02/01}{Neu (Dank Blandyna Bogdol)}^^A +% \begin{macro}{\datepolish} +% \changes{v3.13}{2014/02/01}{Neu (Dank Blandyna Bogdol)}^^A +% \begin{macro}{\captionsczech} +% \changes{v3.13}{2014/02/10}{Neu (Dank Elke Schubert)}^^A +% \begin{macro}{\dateczech} +% \changes{v3.13}{2014/02/10}{Neu (Dank Elke Schubert)}^^A +% \begin{macro}{\dateslovak} +% \changes{v3.13}{2014/02/28}{Neu (Dank Elke Schubert)}^^A +% Weil es in früheren Versionen zu Problemen damit gekommen ist, +% werden diese jedoch erst bei |\begin{document}| definiert. Dabei +% wird |\providecaptionname| verwendet, so dass sie auch schon vor +% |\begin{document}| mit |\newcaptionname| anderslautend definiert +% werden können. +% \begin{table} +% \centering +% \begin{tabular}{ll} +% Sprache & Spender \\\hline\\[-1.6ex] +% Deutsch & Frank Neukam, Markus Kohm \\ +% English & Frank Neukam, Michael Dewey, Markus Kohm \\ +% Finnisch & Hannu Väisänen \\ +% Französisch & Frank Neukam, Henk Jongbloets \\ +% Holländisch & Henk Jongbloets \\ +% Italienisch & Simone Naldi \\ +% Kroatisch & Branka Lon\v{c}arevi\'{c} \\ +% Norwegisch & Sveinung Heggen \\ +% Polnish & Blandyna Bogdol \\ +% Schwedisch & Benjamin Hell\\ +% Spanisch & Ralph J.\ Hangleiter, Alejandro L\'opez-Valencia\\ +% Tschechisch & Elke Schubert\\ +% Slovakisch & Elke Schubert\\ +% \end{tabular} +% \caption{Liste der unterstützten Sprachen und der +% \emph{Sprachspender}} +% \end{table} +% Eine Besonderheit stellt die englische Sprache dar. Es wird +% versucht, diese als Notersatz immer zu definieren. +% \begin{macrocode} +\AtBeginDocument{% + \@ifundefined{captionsenglish}{\let\captionsenglish\@empty}{}% + \@ifundefined{dateenglish}{\def\dateenglish{% +% \end{macrocode} +% \iffalse +%</letter> +%<*letter|class> +% \fi +% \begin{macrocode} + \def\today{\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 + \space\number\day, \number\year}% +% \end{macrocode} +% \iffalse +%</letter|class> +%<*letter> +% \fi +% \begin{macrocode} + }% + }{}% + \providecaptionname{american,australian,british,canadian,% + english,newzealand,% + UKenglish,ukenglish,USenglish,usenglish}\yourrefname{Your ref.}% + \providecaptionname{american,australian,british,canadian,% + english,newzealand,% + UKenglish,ukenglish,USenglish,usenglish}\yourmailname{Your letter of}% + \providecaptionname{american,australian,british,canadian,% + english,newzealand,% + UKenglish,ukenglish,USenglish,usenglish}\myrefname{Our ref.}% + \providecaptionname{american,australian,british,canadian,% + english,newzealand,% + UKenglish,ukenglish,USenglish,usenglish}\customername{Customer no.}% + \providecaptionname{american,australian,british,canadian,% + english,newzealand,% + UKenglish,ukenglish,USenglish,usenglish}\invoicename{Invoice no.}% + \providecaptionname{american,australian,british,canadian,% + english,newzealand,% + UKenglish,ukenglish,USenglish,usenglish}\subjectname{Subject}% + \providecaptionname{american,australian,british,canadian,% + english,newzealand,% + UKenglish,ukenglish,USenglish,usenglish}\ccname{cc}% + \providecaptionname{american,australian,british,canadian,% + english,newzealand,% + UKenglish,ukenglish,USenglish,usenglish}\enclname{encl}% + \providecaptionname{american,australian,british,canadian,% + english,newzealand,% + UKenglish,ukenglish,USenglish,usenglish}\headtoname{To}% + \providecaptionname{american,australian,british,canadian,% + english,newzealand,% + UKenglish,ukenglish,USenglish,usenglish}\headfromname{From}% + \providecaptionname{american,australian,british,canadian,% + english,newzealand,% + UKenglish,ukenglish,USenglish,usenglish}\datename{Date}% + \providecaptionname{american,australian,british,canadian,% + english,newzealand,% + UKenglish,ukenglish,USenglish,usenglish}\pagename{Page}% + \providecaptionname{american,australian,british,canadian,% + english,newzealand,% + UKenglish,ukenglish,USenglish,usenglish}\phonename{Phone}% + \providecaptionname{american,australian,british,canadian,% + english,newzealand,% + UKenglish,ukenglish,USenglish,usenglish}\mobilephonename{Mobile phone}% + \providecaptionname{american,australian,british,canadian,% + english,newzealand,% + UKenglish,ukenglish,USenglish,usenglish}\faxname{Fax}% + \providecaptionname{american,australian,british,canadian,% + english,newzealand,% + UKenglish,ukenglish,USenglish,usenglish}\emailname{Email}% + \providecaptionname{american,australian,british,canadian,% + english,newzealand,% + UKenglish,ukenglish,USenglish,usenglish}\wwwname{Url}% + \providecaptionname{american,australian,british,canadian,% + english,newzealand,% + UKenglish,ukenglish,USenglish,usenglish}\bankname{Bank account}% + \g@addnumerical@date{american}{\number\month/\number\day/\number\year}% + \g@addnumerical@date{australien}{\number\day/\number\month/\number\year}% + \g@addnumerical@date{british}{\number\day/\number\month/\number\year}% + \g@addnumerical@date{canadian}{\number\year/\number\month/\number\day}% + \g@addnumerical@date{english}{\number\day/\number\month/\number\year}% + \g@addnumerical@date{newzealand}{\number\day/\number\month/\number\year}% + \g@addnumerical@date{UKenglish}{\number\day/\number\month/\number\year}% + \g@addnumerical@date{ukenglish}{\number\day/\number\month/\number\year}% + \g@addnumerical@date{USenglish}{\number\month/\number\day/\number\year}% + \g@addnumerical@date{usenglish}{\number\month/\number\day/\number\year}% + \providecaptionname{german,ngerman,austrian,naustrian,% + swissgerman,nswissgerman}\yourrefname{Ihr Zeichen}% + \providecaptionname{german,ngerman,austrian,naustrian,% + swissgerman,nswissgerman}\yourmailname{Ihr Schreiben vom}% + \providecaptionname{german,ngerman,austrian,naustrian,% + swissgerman,nswissgerman}\myrefname{Unser Zeichen}% + \providecaptionname{german,ngerman,austrian,naustrian,% + swissgerman,nswissgerman}\customername{Kundennummer}% + \providecaptionname{german,ngerman,austrian,naustrian,% + swissgerman,nswissgerman}\invoicename{Rechnungsnummer}% + \providecaptionname{german,ngerman,austrian,naustrian,% + swissgerman,nswissgerman}\subjectname{Betrifft}% + \providecaptionname{german,ngerman,austrian,naustrian,% + swissgerman,nswissgerman}\ccname{Kopien an}% + \providecaptionname{german,ngerman,austrian,naustrian,% + swissgerman,nswissgerman}\enclname{Anlage}% + \providecaptionname{german,ngerman,austrian,naustrian,% + swissgerman,nswissgerman}\headtoname{An}% + \providecaptionname{german,ngerman,austrian,naustrian,% + swissgerman,nswissgerman}\headfromname{Von}% + \providecaptionname{german,ngerman,austrian,naustrian,% + swissgerman,nswissgerman}\datename{Datum}% + \providecaptionname{german,ngerman,austrian,naustrian,% + swissgerman,nswissgerman}\pagename{Seite}% + \providecaptionname{german}\phonename{Telephon}% + \providecaptionname{ngerman,austrian,naustrian,% + swissgerman,nswissgerman}\phonename{Telefon}% + \providecaptionname{german}\mobilephonename{Mobiltelephon}% + \providecaptionname{ngerman,austrian,naustrian,% + swissgerman,nswissgerman}\mobilephonename{Mobiltelefon}% + \providecaptionname{german,ngerman,austrian,naustrian,% + swissgerman,nswissgerman}\faxname{Fax}% + \providecaptionname{german,ngerman,austrian,naustrian,% + swissgerman,nswissgerman}\emailname{E-Mail}% + \providecaptionname{german,ngerman,austrian,naustrian,% + swissgerman,nswissgerman}\wwwname{URL}% + \providecaptionname{german,ngerman,austrian,naustrian,% + swissgerman,nswissgerman}\bankname{Bankverbindung}% + \g@addnumerical@date{german}{\number\day.\,\number\month.\,\number\year}% + \g@addnumerical@date{ngerman}{\number\day.\,\number\month.\,\number\year}% + \g@addnumerical@date{austrian}{\number\day.\,\number\month.\,\number\year}% + \g@addnumerical@date{naustrian}{\number\day.\,\number\month.\,\number\year}% + \g@addnumerical@date{swissgerman}{\number\day.\,\number\month.\,\number\year}% + \g@addnumerical@date{nswissgerman}{% + \number\day.\,\number\month.\,\number\year}% + \providecaptionname{% + acadian,canadien,francais,french}\yourrefname{Vos r\'ef\'erences}% + \providecaptionname{% + acadian,canadien,francais,french}\yourmailname{Votre lettre du}% + \providecaptionname{% + acadian,canadien,francais,french}\myrefname{Nos r\'ef\'erences}% + \providecaptionname{% + acadian,canadien,francais,french}\customername{Num\'ero de client}% + \providecaptionname{% + acadian,canadien,francais,french}\invoicename{Num\'ero de facture}% + \providecaptionname{% + acadian,canadien,francais,french}\subjectname{Concernant}% + \providecaptionname{% + acadian,canadien,francais,french}\ccname{Copie \`a}% + \providecaptionname{% + acadian,canadien,francais,french}\enclname{Annexes}% + \providecaptionname{% + acadian,canadien,francais,french}\headtoname{A}% + \providecaptionname{% + acadian,canadien,francais,french}\headfromname{De}% + \providecaptionname{% + acadian,canadien,francais,french}\datename{Date}% + \providecaptionname{% + acadian,canadien,francais,french}\pagename{Page}% + \providecaptionname{% + acadian,canadien,francais,french}\phonename{T\'el\'ephone}% + \providecaptionname{% + acadian,canadien,francais,french}\mobilephonename{Portable}% + \providecaptionname{% + acadian,canadien,francais,french}\faxname{T\'el\'efax}% + \providecaptionname{% + acadian,canadien,francais,french}\emailname{E-mail}% + \providecaptionname{% + acadian,canadien,francais,french}\wwwname{URL}% + \providecaptionname{% + acadian,canadien,francais,french}\bankname{Compte en banque}% + \g@addnumerical@date{acadian}{\number\day.\,\number\month.\,\number\year}% + \g@addnumerical@date{canadien}{\number\year/\number\month/\number\day}% + \g@addnumerical@date{francais}{\number\day.\,\number\month.\,\number\year}% + \g@addnumerical@date{french}{\number\day.\,\number\month.\,\number\year}% + \providecaptionname{italian}\yourrefname{Vs./Rif.}% or Vostro Riferimento + \providecaptionname{italian}\yourmailname{Vs.~lettera del}% or Vostra + % lettera del + \providecaptionname{italian}\myrefname{Ns./Rif.}% or Nostro Riferimento + \providecaptionname{italian}\customername{Nr.~cliente}% or Cliente num. + \providecaptionname{italian}\invoicename{Nr.~fattura}% or Fattura num. + \providecaptionname{italian}\subjectname{Oggetto}% + \providecaptionname{italian}\ccname{Per conoscenza}% or Copia a + \providecaptionname{italian}\enclname{Allegato}% or (plural) Allegati + \providecaptionname{italian}\headtoname{A}% + \providecaptionname{italian}\headfromname{Da}% + \providecaptionname{italian}\datename{Data}% + \providecaptionname{italian}\pagename{Pagina}% + \providecaptionname{italian}\phonename{Telefono}% + \providecaptionname{italian}\mobilephonename{Telefonino}% + \providecaptionname{italian}\faxname{Fax}% + \providecaptionname{italian}\emailname{Email}% + \providecaptionname{italian}\wwwname{Sito Web}% + \providecaptionname{italian}\bankname{Conto bancario}% + \g@addnumerical@date{italian}{\number\day.\,\number\month.\,\number\year}% + \providecaptionname{spanish}\yourrefname{Su ref.}% + \providecaptionname{spanish}\yourmailname{Su carta de}% + \providecaptionname{spanish}\myrefname{Nuestra ref.}% + \providecaptionname{spanish}\customername{No. de cliente}% + \providecaptionname{spanish}\invoicename{No. de factura}% + \providecaptionname{spanish}\subjectname{Asunto}% + \providecaptionname{spanish}\ccname{Copias}% + \providecaptionname{spanish}\enclname{Adjunto}% + \providecaptionname{spanish}\headtoname{A}% + \providecaptionname{spanish}\headfromname{De}% + \providecaptionname{spanish}\datename{Fecha}% + \providecaptionname{spanish}\pagename{P\'agina}% + \providecaptionname{spanish}\phonename{Tel\'efono}% + \providecaptionname{spanish}\mobilephonename{M\'ovil}% + \providecaptionname{spanish}\faxname{Fax}% + \providecaptionname{spanish}\emailname{Email}% or Correo electr\'onico + \providecaptionname{spanish}\wwwname{URL}% or P\`agina web + \providecaptionname{spanish}\bankname{Cuenta bancaria}% + \g@addnumerical@date{spanish}{\number\day.\,\number\month.\,\number\year}% + \providecaptionname{croatian}\yourrefname{Va\v{s} znak}% + \providecaptionname{croatian}\yourmailname{Va\v{s}e pismo od}% + \providecaptionname{croatian}\myrefname{Na\v{s} znak}% + \providecaptionname{croatian}\customername{Broj kupca}% + \providecaptionname{croatian}\invoicename{Broj fakture}% + \providecaptionname{croatian}\subjectname{Predmet}% + \providecaptionname{croatian}\ccname{Kopija}% + \providecaptionname{croatian}\enclname{Privitak}% + \providecaptionname{croatian}\headtoname{Prima}% + \providecaptionname{croatian}\headfromname{\v{S}alje}% + \providecaptionname{croatian}\datename{Nadnevak}% + \providecaptionname{croatian}\pagename{Stranica}% + \providecaptionname{croatian}\phonename{Telefon}% + \providecaptionname{croatian}\mobilphonename{Mobitel}% + \providecaptionname{croatian}\faxname{Fax}% + \providecaptionname{croatian}\emailname{E-Mail}% + \providecaptionname{croatian}\wwwname{URL}% + \providecaptionname{croatian}\bankname{Bankovna veza}% + \g@addnumerical@date{croatian}{\number\day.\,\number\month.\,\number\year.}% + \providecaptionname{dutch}\yourrefname{Uw kenmerk}% + \providecaptionname{dutch}\yourmailname{Uw brief van}% + \providecaptionname{dutch}\myrefname{Ons kenmerk}% + \providecaptionname{dutch}\customername{Klant No.}% + \providecaptionname{dutch}\invoicename{Rekening No.}% + \providecaptionname{dutch}\subjectname{Onderwerp}% + \providecaptionname{dutch}\ccname{Kopie aan}% + \providecaptionname{dutch}\enclname{Bijlage(n)}% + \providecaptionname{dutch}\headtoname{Aan}% + \providecaptionname{dutch}\headfromname{Van}% + \providecaptionname{dutch}\datename{Datum}% + \providecaptionname{dutch}\pagename{Pagina}% + \providecaptionname{dutch}\phonename{Telefoon}% + \providecaptionname{dutch}\mobilephonename{Mobieltje}% + \providecaptionname{dutch}\faxname{Fax}% + \providecaptionname{dutch}\emailname{E--mail}% + \providecaptionname{dutch}\wwwname{URL}% + \providecaptionname{dutch}\bankname{Bankrekening}% + \g@addnumerical@date{dutch}{\number\day.\,\number\month.\,\number\year}% + \providecaptionname{finnish}\yourrefname{Viitteenne}% + \providecaptionname{finnish}\yourmailname{Kirjeenne}% + \providecaptionname{finnish}\myrefname{Viitteemme}% + \providecaptionname{finnish}\customername{Asiakasnumero}% + \providecaptionname{finnish}\invoicename{Laskun numero}% + \providecaptionname{finnish}\subjectname{Asia}% + \providecaptionname{finnish}\ccname{Jakelu}% + \providecaptionname{finnish}\enclname{Liitteet}% + \providecaptionname{finnish}\headtoname{Vastaanottaja}% + \providecaptionname{finnish}\headfromname{L\"ahett\"aj\"a}% + \providecaptionname{finnish}\datename{P\"aiv\"a}% + \providecaptionname{finnish}\pagename{Sivu}% + \providecaptionname{finnish}\phonename{Puhelin}% + \providecaptionname{finnish}\mobilephonename{Matkapuhelin}% + \providecaptionname{finnish}\faxname{Faksi}% + \providecaptionname{finnish}\emailname{S\"ahk\"oposti}% + \providecaptionname{finnish}\wwwname{URL}% + \providecaptionname{finnish}\bankname{Pankkitilin numero}% + \g@addnumerical@date{finnish}{\number\day.\number\month.\number\year}% + \providecaptionname{norsk}\yourrefname{Deres ref.}% + \providecaptionname{norsk}\yourmailname{Deres brev av:}% + \providecaptionname{norsk}\myrefname{V\aa{}r ref:}% + \providecaptionname{norsk}\customername{Kundenummer}% + \providecaptionname{norsk}\invoicename{Fakturanummer}% + \providecaptionname{norsk}\subjectname{Emne}% + \providecaptionname{norsk}\ccname{Kopi til}% + \providecaptionname{norsk}\enclname{Vedlegg}% + \providecaptionname{norsk}\headtoname{Til}% + \providecaptionname{norsk}\headfromname{Fra}% + \providecaptionname{norsk}\datename{Dato}% + \providecaptionname{norsk}\pagename{Side}% + \providecaptionname{norsk}\phonename{Telefon}% + \providecaptionname{norsk}\mobilephonename{Mobiltelefon}% + \providecaptionname{norsk}\faxname{Telefaks}% + \providecaptionname{norsk}\emailname{E-post}% + \providecaptionname{norsk}\wwwname{Url}% + \providecaptionname{norsk}\bankname{Bankkontonummer}% + \g@addnumerical@date{norsk}{\number\day.\number\month.\number\year}% + \providecaptionname{swedish}\yourrefname{Er ref}% + \providecaptionname{swedish}\yourmailname{Ert brev av}% + \providecaptionname{swedish}\myrefname{V\aa{}r ref}% + \providecaptionname{swedish}\customername{Kundnummer}% + \providecaptionname{swedish}\invoicename{Fakturanummer}% + \providecaptionname{swedish}\subjectname{\"Amne}% +% \end{macrocode} +% "`Kopia"' oder "`Kopia till"' geht beides -- da im Deutschen die +% lange Form verwendet wird nehmen wir die auch hier: +% \begin{macrocode} + \providecaptionname{swedish}\ccname{Kopia till}% +% \end{macrocode} +% "`Bilaga"' ist Singular. Bei mehreren Anlagen schreibt man +% "`Bilagor"'. Da wir nicht wissen, ob es eine oder mehrere Anlagen sind, +% haben wir ein kleines Problem und gehen mal von mehreren aus: +% \begin{macrocode} + \providecaptionname{swedish}\enclname{Bilagor}% Singular: Bilaga + \providecaptionname{swedish}\headtoname{Till}% + \providecaptionname{swedish}\headfromname{Fr\aa{}n}% + \providecaptionname{swedish}\datename{Datum}% + \providecaptionname{swedish}\pagename{Sida}% + \providecaptionname{swedish}\phonename{Telefon}% + \providecaptionname{swedish}\mobilephonename{Mobiltelefon}% + \providecaptionname{swedish}\faxname{Telefax}% + \providecaptionname{swedish}\emailname{E-post}% + \providecaptionname{swedish}\wwwname{Hemsida}% +% \end{macrocode} +% Für \cs{bankname} gibt es zwei verschiedene Ausdrücke, je nachdem um +% welche Kontoform es sich handelt: "`Bankgiro"' und "`PlusGiro"'. Beide +% sind etwa gleich verbreitet, evtl. mit einem leichten Vorteil für +% Bankgiro. +% \begin{macrocode} + \providecaptionname{swedish}\bankname{Bankgiro}% PlusGiro +% \end{macrocode} +% Statt der ISO-Variante wird hier die traditionelle Variante, +% "`18/1 2011"', verwendet. +% \begin{macrocode} + \g@addnumerical@date{swedish}{\number\day/\number\month~\number\year}% + \providecaptionname{polish}\yourrefname{Wasz znak}% + \providecaptionname{polish}\yourmailname{Wasze pismo z dnia}% + \providecaptionname{polish}\myrefname{Nasz znak}% + \providecaptionname{polish}\customername{Numer klienta}% + \providecaptionname{polish}\invoicename{Numer rachunku}% + \providecaptionname{polish}\subjectname{Dotyczy}% + \providecaptionname{polish}\ccname{Rozdzielnik}% + \providecaptionname{polish}\enclname{Za\l\aob{}czniki}% + \providecaptionname{polish}\headtoname{Do}% + \providecaptionname{polish}\headfromname{Od}% + \providecaptionname{polish}\datename{Data}% + \providecaptionname{polish}\pagename{Strona}% + \providecaptionname{polish}\phonename{Telefon}% + \providecaptionname{polish}\mobilephonename{Numer mobilny}% + \providecaptionname{polish}\faxname{Fax}% + \providecaptionname{polish}\emailname{E-mail}% + \providecaptionname{polish}\wwwname{URL}% + \providecaptionname{polish}\bankname{Konto}% + \g@addnumerical@date{polish}{\number\day.\,\number\month.\,\number\year}% + \providecaptionname{czech}\yourrefname{Va\v{s}e zna\v{c}ka}% + \providecaptionname{czech}\yourmailname{V\'{a}\v{s} dopis ze dne}% + \providecaptionname{czech}\myrefname{Na\v{s}e zna\v{c}ka}% + \providecaptionname{czech}\customername{Z\'akaznick\'e \v{c}\'{\i}slo}% + \providecaptionname{czech}\invoicename{Fakura\v{c}n\'{\i} \v{c}\'{\i}slo}% + \providecaptionname{czech}\subjectname{Pr\v{e}dm\v{e}t}% + \providecaptionname{czech}\ccname{Kopie}% + \providecaptionname{czech}\enclname{P\v{r}\'{\i}loha}% + \providecaptionname{czech}\headtoname{Komu}% + \providecaptionname{czech}\headfromname{Od}% + \providecaptionname{czech}\datename{Datum}% + \providecaptionname{czech}\pagename{Strana}% + \providecaptionname{czech}\phonename{Telefon}% + \providecaptionname{czech}\mobilephonename{Mobil}% + \providecaptionname{czech}\faxname{Fax}% + \providecaptionname{czech}\emailname{E-Mail}% + \providecaptionname{czech}\wwwname{URL}% + \providecaptionname{czech}\bankname{Bankovn\'{\i} spojen\'{\i}}% + \g@addnumerical@date{czech}{\number\day.\,\number\month.\,\number\year}% + \providecaptionname{slovak}\yourrefname{Va\v{s}a zna\v{c}ka}% + \providecaptionname{slovak}\yourmailname{V\'{a}\v{s} list zo d\v{n}a}% + \providecaptionname{slovak}\myrefname{Na\v{s}a zna\v{c}ka}% + \providecaptionname{slovak}\customername{Z\'akazn\'{\i}cke \v{c}\'{\i}slo}% + \providecaptionname{slovak}\invoicename{\'{C}\'{\i}slo fakt\'ury}% + \providecaptionname{slovak}\subjectname{Predmet}% + \providecaptionname{slovak}\ccname{K\'{o}pia pre koho}% + \providecaptionname{slovak}\enclname{Pr\'{\i}loha}% + \providecaptionname{slovak}\headtoname{Komu}% + \providecaptionname{slovak}\headfromname{Od}% + \providecaptionname{slovak}\datename{D\'{a}tum}% + \providecaptionname{slovak}\pagename{Strana}% + \providecaptionname{slovak}\phonename{Telef\'{o}n}% + \providecaptionname{slovak}\mobilephonename{Mobil}% + \providecaptionname{slovak}\faxname{Fax}% + \providecaptionname{slovak}\emailname{E-Mail}% + \providecaptionname{slovak}\wwwname{URL}% + \providecaptionname{slovak}\bankname{Bankov\'{e} spojenie}% + \g@addnumerical@date{slovak}{\number\day.\,\number\month.\,\number\year}% +% \end{macrocode} +% Zum Schluss findet noch die eigentliche Auswahl statt. Diese orientiert +% sich nun an der Auswahl nach german.sty~2.5b und verwendet keine festen +% Sprachzuordnungen mehr. Dafür sind nun keine Erweiterungen für andere +% Sprachen mehr möglich. +% \changes{v2.2c}{1995/03/20}{Im Sprachenvergleich fehlten die "`="' +% hinter \cs{language}} +% \changes{v2.4c}{1997/11/25}{Sprachauswahl um american, british, +% UKenglish und spanish erweitert}^^A +% \changes{v2.5}{1999/09/08}{Sprachauswahl um ngermen erweitert}^^A +% \changes{v2.5b}{2000/01/20}{Reaktivierung der Sprache geschieht +% nun via \cs{languagename}, soweit dies möglich ist} +% \changes{v2.5e}{2000/07/14}{Workaround für Sprache nohyphenation +% durch Format mit Babel-Erweiterung aber kein Babel package +% geladen}^^A +% \begin{macrocode} + \captionsenglish + \dateenglish +% \end{macrocode} +% \changes{v2.9i}{2002/09/04}{Workaround für den +% \texttt{hyphen.cfg}-Bug von Babel} +% \changes{v2.97c}{2007/08/10}{Text einer Warnung geändert}^^A +% \changes{v3.18a}{2015/07/03}{\cs{extras\dots} werden auch ausgeführt}^^A +% \changes{v3.18a}{2015/07/03}{sprachabhhängige Befehle mit \cs{@nameuse}}^^A +% Wird die \texttt{hyphen.cfg} von Babel verwendet, wird aber das +% \textsl{babel}-Paket nicht geladen, so ist \cs{languagename} häufig +% nicht korrekt, so dass dann \cs{selectlanguage} mit +% \cs{languagename} als Argument schief geht. Daher hier ein +% Workaround für das Problem. +% \begin{macrocode} + \begingroup\expandafter\expandafter\expandafter\endgroup + \expandafter\ifx\csname date\languagename\endcsname\relax +%<class> \ClassWarningNoLine{scrlttr2% +%<package> \PackageWarningNoLine{scrletter% + }{% + \string\language\space is \the\language, \string\languagename\space is + `\languagename'\MessageBreak + but \expandafter\string\csname + date\languagename\endcsname\space not defined!\MessageBreak + This seems to be a bug at you're `hyphen.cfg'.\MessageBreak + Undefining macro \string\languagename\space to avoid errors% + }% + \let\languagename=\undefined + \fi + \ifx\languagename\undefined +%<class> \ClassWarningNoLine{scrlttr2% +%<package> \PackageWarningNoLine{scrletter% + }{\string\languagename\space not + defined, using \string\language.\MessageBreak + This may result in use of wrong language!\MessageBreak + You should use a compatible language + package\MessageBreak + (e.g. `Babel', `german', `ngerman', ...)}% + \ifx\l@american\undefined\else\ifnum\language=\l@american + \@nameuse{captionsamerican}% + \@nameuse{extrasamerican}% + \@nameuse{dateamerican}% + \fi\fi + \ifx\l@australian\undefined\else\ifnum\language=\l@australian + \@nameuse{captionsaustralian}% + \@nameuse{extrasaustralian}% + \@nameuse{dateaustralian}% + \fi\fi + \ifx\l@british\undefined\else\ifnum\language=\l@british + \@nameuse{captionsbritish}% + \@nameuse{extrasbritish}% + \@nameuse{datebritish}% + \fi\fi + \ifx\l@canadian\undefined\else\ifnum\language=\l@canadian + \@nameuse{captionscanadian}% + \@nameuse{extrascanadian}% + \@nameuse{datecanadian}% + \fi\fi + \ifx\l@newzealand\undefined\else\ifnum\language=\l@newzealand + \@nameuse{captionsnewzealand}% + \@nameuse{extrasnewzealand}% + \@nameuse{datenewzealand}% + \fi\fi + \ifx\l@UKenglish\undefined\else\ifnum\language=\l@UKenglish + \@nameuse{captionsUKenglish}% + \@nameuse{extrasUKenglish}% + \@nameuse{dateUKenglish}% + \fi\fi + \ifx\l@ukenglish\undefined\else\ifnum\language=\l@ukenglish + \@nameuse{captionsukenglish}% + \@nameuse{extrasukenglish}% + \@nameuse{dateukenglish}% + \fi\fi + \ifx\l@USenglish\undefined\else\ifnum\language=\l@USenglish + \@nameuse{captionsUSenglish}% + \@nameuse{extrasUSenglish}% + \@nameuse{dateUSenglish}% + \fi\fi + \ifx\l@usenglish\undefined\else\ifnum\language=\l@usenglish + \@nameuse{captionsusenglish}% + \@nameuse{extrasusenglish}% + \@nameuse{dateusenglish}% + \fi\fi + \ifx\l@austrian\undefined\else\ifnum\language=\l@austrian + \@nameuse{captionsaustrian}% + \@nameuse{extrasaustrian}% + \@nameuse{dateaustrian}% + \fi\fi + \ifx\l@naustrian\undefined\else\ifnum\language=\l@naustrian + \@nameuse{captionsnaustrian}% + \@nameuse{extrasnaustrian}% + \@nameuse{datenaustrian}% + \fi\fi + \ifx\l@german\undefined\else\ifnum\language=\l@german + \@nameuse{captionsgerman}% + \@nameuse{extrasgerman}% + \@nameuse{dategerman}% + \fi\fi + \ifx\l@ngerman\undefined\else\ifnum\language=\l@ngerman + \@nameuse{captionsngerman}% + \@nameuse{extrasngerman}% + \@nameuse{datengerman}% + \fi\fi + \ifx\l@swissgerman\undefined\else\ifnum\language=\l@swissgerman + \@nameuse{captionsswissgerman}% + \@nameuse{extrasswissgerman}% + \@nameuse{dateswissgerman}% + \fi\fi + \ifx\l@nswissgerman\undefined\else\ifnum\language=\l@nswissgerman + \@nameuse{captionsnswissgerman}% + \@nameuse{extrasnswissgerman}% + \@nameuse{datenswissgerman}% + \fi\fi + \ifx\l@acadian\undefined\else\ifnum\language=\l@acadian + \@nameuse{captionsacadian}% + \@nameuse{extrasacadian}% + \@nameuse{dateacadian}% + \fi\fi + \ifx\l@canadien\undefined\else\ifnum\language=\l@canadien + \@nameuse{captionscanadien}% + \@nameuse{extrascanadien}% + \@nameuse{datecanadien}% + \fi\fi + \ifx\l@francais\undefined\else\ifnum\language=\l@francais + \@nameuse{captionsfrancais}% + \@nameuse{extrasfrancais}% + \@nameuse{datefrancais}% + \fi\fi + \ifx\l@french\undefined\else\ifnum\language=\l@french + \@nameuse{captionsfrench}% + \@nameuse{extrasfrench}% + \@nameuse{datefrench}% + \fi\fi + \ifx\l@italian\undefined\else\ifnum\language=\l@italian + \@nameuse{captionsitalian}% + \@nameuse{extrasitalian}% + \@nameuse{dateitalian}% + \fi\fi + \ifx\l@spanish\undefined\else\ifnum\language=\l@spanish + \@nameuse{captionsspanish}% + \@nameuse{extrasspanish}% + \@nameuse{datespanish}% + \fi\fi + \ifx\l@croatian\undefined\else\ifnum\language=\l@croatian + \@nameuse{captionscroatian}% + \@nameuse{extrascroatian}% + \@nameuse{datecroatian}% + \fi\fi + \ifx\l@dutch\undefined\else\ifnum\language=\l@dutch + \@nameuse{captionsdutch}% + \@nameuse{extrasdutch}% + \@nameuse{datedutch}% + \fi\fi + \ifx\l@finnish\undefined\else\ifnum\language=\l@finnish + \@nameuse{captionsfinnish}% + \@nameuse{extrasfinnish}% + \@nameuse{datefinnish}% + \fi\fi + \ifx\l@norsk\undefined\else\ifnum\language=\l@norsk + \@nameuse{captionsnorsk}% + \@nameuse{extrasnorsk}% + \@nameuse{datenorsk}% + \fi\fi + \ifx\l@swedish\undefined\else\ifnum\language=\l@swedish + \@nameuse{captionsswedish}% + \@nameuse{extrasswedish}% + \@nameuse{dateswedish}% + \fi\fi + \ifx\l@polish\undefined\else\ifnum\language=\l@polish + \@nameuse{captionspolish}% + \@nameuse{extraspolish}% + \@nameuse{datepolish}% + \fi\fi + \ifx\l@czech\undefined\else\ifnum\language=\l@czech + \@nameuse{captionsczech}% + \@nameuse{extrasczech}% + \@nameuse{dateczech}% + \fi\fi + \ifx\l@slovak\undefined\else\ifnum\language=\l@slovak + \@nameuse{captionsslovak}% + \@nameuse{extrasslovak}% + \@nameuse{dateslovak}% + \fi\fi + \else + \edef\@tempa{nohyphenation}% + \ifx\languagename\@tempa +%<class> \ClassWarningNoLine{scrlttr2% +%<package> \PackageWarningNoLine{scrletter% + }{% + You've selected language `\languagename'.\MessageBreak + Maybe your LaTeX format contains Babel extension\MessageBreak + but you have not selected a language using\MessageBreak + Babel package.\MessageBreak + Please select another language!\MessageBreak + Only as a workaround english captions and date\MessageBreak + will be used% + }% + \else +%<class> \ClassInfo{scrlttr2% +%<package> \PackageInfo{scrletter% + }{% + trying to activate captions and date\MessageBreak + of language `\languagename'% + }% +% \end{macrocode} +% \changes{v3.12}{2012/12/28}{Workaround für babels geänderte hyphen.cfg}^^A +% Irgendwann wurde in babel die hyphen.cfg geändert, so dass das früher sehr +% gut funktionierende |\expandafter\selectlanguage\expandafter{\languagename}| +% damit leider nicht mehr funktioniert, wenn babel nicht mehr geladen +% ist. Deshalb wird nun etwas direkter vorgegangen. Das kann mit einzelnen +% Sprachpaketen eventuell Nachteile bringen, funktioniert aber aktuell ohne +% Sprachpaket, mit babel und mit polyglossia. +% \begin{macrocode} + \csname date\languagename\endcsname + \csname captions\languagename\endcsname +%<class> \ClassInfo{scrlttr2% +%<package> \PackageInfo{scrletter% + }{% + used language is `\languagename'.\MessageBreak + Supported languages are: `english', `UKenglish',\MessageBreak + `ukenglish', `british', `american', `USenglish',\MessageBreak + `usenglish', `australian`,`canadian', `newzealand',\MessageBreak + `german', `ngerman', `austrian', `naustrian',\MessageBreak + `swissgerman', `nswissgermsn',\MessageBreak + `acadian', `canadien', `francais', `french', \MessageBreak + `dutch', `italian', `spanish', `polish',\MessageBreak + `croatian', `finnish', `norsk', `swedish',\MessageBreak + `czech', `slovak'% + }% + \fi + \fi +} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \iffalse +%</letter> +% \fi +% +% +% \iffalse +%</body> +% \fi +% +% \Finale +% +\endinput +% +% end of file `scrkernel-language.dtx' +%%% Local Variables: +%%% mode: doctex +%%% TeX-master: t +%%% End: |