diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/koma-script/doc/scrdate-de.tex')
-rw-r--r-- | Master/texmf-dist/source/latex/koma-script/doc/scrdate-de.tex | 333 |
1 files changed, 333 insertions, 0 deletions
diff --git a/Master/texmf-dist/source/latex/koma-script/doc/scrdate-de.tex b/Master/texmf-dist/source/latex/koma-script/doc/scrdate-de.tex new file mode 100644 index 00000000000..cbe41d99c1d --- /dev/null +++ b/Master/texmf-dist/source/latex/koma-script/doc/scrdate-de.tex @@ -0,0 +1,333 @@ +% ====================================================================== +% scrdate-de.tex +% Copyright (c) Markus Kohm, 2001-2022 +% +% 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.md. +% ====================================================================== +% +% Chapter about scrdate of the KOMA-Script guide +% Maintained by Markus Kohm +% +% ====================================================================== + +\KOMAProvidesFile{scrdate-de.tex} + [$Date: 2022-06-05 12:40:11 +0200 (So, 05. Jun 2022) $ + KOMA-Script guide (chapter: scrdate, scrtime)] + +\chapter{Der Wochentag mit \Package{scrdate}} +\labelbase{scrdate} +\BeginIndexGroup +\BeginIndex{Package}{scrdate} + +\iffalse% Varianten +Ursprünglich sollte das Paket \Package{scrdate} lediglich den Wochentag zum +aktuellen Datum liefern. Inzwischen bietet es dies und etwas mehr für jedes +beliebige Datum im Gregorianischen Kalender.% +\else% +Vor \the\numexpr\year-1995\relax{} Jahren nur für die Ausgabe des aktuellen +Wochentags entwickelt, bietet \Package{scrdate} inzwischen einiges mehr. +\fi + +\begin{Declaration} + \Macro{CenturyPart}\Parameter{Jahr} + \Macro{DecadePart}\Parameter{Jahr} +\end{Declaration}% +Die\ChangedAt{v3.05a}{\Package{scrdate}} Anweisung \Macro{CenturyPart} ergibt +den Wert der Jahrhundert-Stellen eines Jahres. Die Anweisung +\Macro{DecadePart} ergibt hingegen den Wert der übrigen Stellen, also der +Einer und Zehner. Dabei darf die Jahreszahl beliebig viele Stellen aufweisen. +Der Wert kann direkt zur Zuweisung an einen Zähler oder für Berechnungen mit +Hilfe von \Macro{numexpr}\IndexCmd{numexpr} verwendet werden. Für die +Ausgabe\textnote{Achtung!} als arabische Zahl ist \Macro{the}\IndexCmd{the} +voranzustellen. +% +\begin{Example} + Sie wollen berechnen, in welchem Jahrhundert das aktuelle Jahr liegt und + dies ausgeben. +\begin{lstcode} + Das Jahr \the\year\ ist das Jahr + \the\DecadePart{\year} des + \the\numexpr \CenturyPart{\year}+1\relax. + Jahrhunderts. +\end{lstcode} + Als Ergebnis erhalten Sie: + \begin{ShowOutput} + Das Jahr \the\year\ ist das Jahr \the\DecadePart{\year} des \the\numexpr + \CenturyPart{\year}+1\relax. Jahrhunderts. + \end{ShowOutput} + Durch die Korrektur der Ordnungszahl mit \Macro{numexpr} wäre 2000 + übrigens das Jahr 0 des 21.~Jahrhunderts. +\end{Example}% +\EndIndexGroup% +\ExampleEndFix + + +\begin{Declaration} + \Macro{DayNumber}\Parameter{Jahr}\Parameter{Monat}\Parameter{Tag} + \Macro{ISODayNumber}\Parameter{ISO-Datum} +\end{Declaration}% +Diese\ChangedAt{v3.05a}{\Package{scrdate}} beiden Anweisungen geben den Wert +der Nummer des Wochentags\Index{Wochentag} zu einem Datum zurück. Sie +unterscheiden sich nur in der Art der Angabe des Datums. Während bei +\Macro{DayNumber} Jahr, Monat und Tag des gewünschten Datums eigene Parameter +sind, wird bei \Macro{ISODayNumber} das Datum in ISO-Schreibweise +\PName{Jahr}\texttt{-}\PName{Monat}\texttt{-}\PName{Tag} angegeben. Dabei +spielt es keine Rolle, ob Monat und Tag ein- oder zweistellig angegeben +werden. Der Wert kann direkt zur Zuweisung an einen Zähler oder für +Berechnungen mit Hilfe von \Macro{numexpr}\IndexCmd{numexpr} verwendet +werden. Für die Ausgabe\textnote{Achtung!} als arabische Zahl ist +\Macro{the}\IndexCmd{the} voran zu stellen. + +\begin{Example} + Sie wollen die Nummer des Wochentags des 1.~Mai~2027 wissen. +\begin{lstcode} + Der 1.~Mai~2027 hat die Wochentagsnummer + \the\ISODayNumber{2027-5-1}. +\end{lstcode} + Als Ergebnis erhalten Sie: + \begin{ShowOutput} + Der 1.~Mai~2027 hat die Wochentagsnummer + \the\ISODayNumber{2027-5-1}. + \end{ShowOutput} +\end{Example} + +Als Besonderheit ist es sogar möglich, von einem vorgegebenen Datum eine +gewünschte Anzahl an Tagen in die Zukunft oder Vergangenheit zu gehen. +\begin{Example} + Sie wollen die Nummer des Wochentags wissen, den wir in 12~Tagen haben und + den wir 24~Tage vor dem 24.~Dezember~2027 gehabt haben werden. +\begin{lstcode} + In 12~Tagen haben wir die Wochentagsnummer + \the\DayNumber{\year}{\month}{\day+12} und + 24~Tage vor dem 24.~Dezember~2027 wird es + die Nummer \the\ISODayNumber{2027-12-24-24} + gewesen sein. +\end{lstcode} + Als Ergebnis erhalten Sie beispielsweise: + \begin{ShowOutput} + In 12~Tagen haben wir die Wochentagsnummer + \the\DayNumber{\year}{\month}{\day+12} und + 24~Tage vor dem 24.~Dezember~2027 wird es + die Nummer \the\ISODayNumber{2027-12-24-24} + gewesen sein. + \end{ShowOutput} +\end{Example} + +Die Wochentage werden dabei wie folgt nummeriert: Sonntag\,=\,0, Montag\,=\,1, +Dienstag\,=\,2, Mittwoch\,=\,3, Donnerstag\,=\,4, Freitag\,=\,5 und +Samstag\,=\,6.% +% +\EndIndexGroup + + +\begin{Declaration} + \Macro{DayNameByNumber}\Parameter{Wochentagsnummer} + \Macro{DayName}\Parameter{Jahr}\Parameter{Monat}\Parameter{Tag} + \Macro{ISODayName}\Parameter{ISO-Datum} +\end{Declaration}% +Üblicherweise\ChangedAt{v3.05a}{\Package{scrdate}} ist man weniger an der +Nummer eines Wochentags als dem Namen des Wochentags interessiert. Daher +liefert die Anweisung \Macro{DayNameByNumber} den Namen des Wochentags zu +einer Wochentagsnummer zurück, die man beispielsweise mit einer der beiden +zuvor erklärten Anweisungen \DescRef{\LabelBase.cmd.DayNumber} oder +\DescRef{\LabelBase.cmd.ISODayNumber} bestimmt hat. Die beiden Anweisungen +\Macro{DayName} und \Macro{ISODayName} liefern entsprechend den Wochentag zu +einem bestimmten Datum. + +\begin{Example} + Sie wollen den Wochentag des 24.~Dezembers~2027 wissen. +\begin{lstcode} + Bitte zahlen Sie bis zum \ISODayName{2027-12-24}, + den 24.\,12.~2027, die Summe von \dots +\end{lstcode} + Als Ergebnis erhalten Sie: + \begin{ShowOutput} + Bitte zahlen Sie bis zum + \ISODayName{2027-12-24}, den + 24.\,12.~2027, die Summe von \dots + \end{ShowOutput} +\end{Example} + +Als Besonderheit ist es auch hier möglich, in gewissem Umfang Berechnungen +anzustellen: +\begin{Example} + Sie wollen den Wochentag wissen, den wir in 12~Tagen haben und + den wir 24~Tage vor dem 24.~Dezember~2027 gehabt haben werden. +\begin{lstcode} + In 12~Tagen haben wir einen + \DayName{\year}{\month}{\day+12} und + 24~Tage vor dem 24.~Dezember~2027 ist ein + \ISODayName{2027-12-24-24}, während zwei Wochen + und drei Tage nach einem Mittwoch ein + \DayNameByNumber{3+2*7+3} folgt. +\end{lstcode} + Als Ergebnis erhalten Sie beispielsweise: + \begin{ShowOutput} + In 12~Tagen haben wir einen + \DayName{\year}{\month}{\day+12} und + 24~Tage vor dem 24.~Dezember~2027 ist ein + \ISODayName{2027-12-24-24}, während + zwei Wochen und drei Tage nach + einem Mittwoch ein \DayNameByNumber{3+2*7+3} + folgt. + \end{ShowOutput} +\end{Example}% +% +\EndIndexGroup +\ExampleEndFix + + +\begin{Declaration} + \Macro{ISOToday} + \Macro{IsoToday} + \Macro{todaysname} + \Macro{todaysnumber} +\end{Declaration}% +In den bisherigen Beispielen dieses Abschnitts wurde das aktuelle Datum immer +recht umständlich über die \TeX-Register \Macro{year}\IndexCmd{year}, +\Macro{month}\IndexCmd{month}, \Macro{day}\IndexCmd{day} bestimmt. Die +Anweisungen \Macro{ISOToday}\ChangedAt{v3.05a}{\Package{scrdate}} und +\Macro{IsoToday} liefern direkt das aktuelle Datum in ISO-Schreibweise. Sie +unterscheiden sich lediglich darin, dass \Macro{ISOToday} Monat und Tag immer +zweistellig ausgibt, während \Macro{IsoToday} Monat und Tag bei Werten kleiner +10 einstellig ausgibt. Die Anweisung \Macro{todaysname} bietet direkt den +aktuellen Wochentag, während \Macro{todaysnumber} den Wert des aktuellen +Wochentags liefert. Näheres zur Verwendung dieses Wertes ist den obigen +Erklärungen zu den Anweisungen \DescRef{scrdate.cmd.DayNumber} und +\DescRef{scrdate.cmd.ISODayNumber} zu entnehmen. + +\begin{Example} + Ich will Ihnen zeigen, an was für einem Wochentag dieses Dokument gesetzt + wurde. Dazu schreibe ich: +\begin{lstcode} + Dieses Dokument entstand an einem \todaysname. +\end{lstcode} + Das Ergebnis lautet: + \begin{ShowOutput} + Dieses Dokument entstand an einem \todaysname. + \end{ShowOutput} +\end{Example} + +\begin{Explain} + Wenn\textnote{Tipp!} Sie den Namen des Tages in Kleinbuchstaben benötigen, + weil das in der entsprechenden Sprache innerhalb des Satzes so üblich ist, + können Sie das erreichen, obwohl die Namen der Wochentage in + \Package{scrdate} alle groß geschrieben sind. Greifen Sie mit +\begin{lstcode} + \MakeLowercase{\todaysname} +\end{lstcode} + einfach auf die \LaTeX-Anweisung + \Macro{MakeLowercase}\IndexCmd{MakeLowercase}% + \important{\Macro{MakeLowercase}} zurück. Diese wandelt ihr Argument + komplett in Kleinbuchstaben. Natürlich funktioniert dieser Tipp auch für + obige Anweisungen + \DescRef{scrdate.cmd.DayNameByNumber}\IndexCmd{DayNameByNumber}, + \DescRef{scrdate.cmd.DayName}\IndexCmd{DayName} und + \DescRef{scrdate.cmd.ISODayName}\IndexCmd{ISODayName}.% +\end{Explain}% +\EndIndexGroup + + +\begin{Declaration} + \Macro{nameday}\Parameter{Name} +\end{Declaration}% +So wie mit \DescRef{maincls.cmd.date}\IndexCmd{date} die Ausgabe von +\Macro{today} direkt geändert werden kann, setzt \Macro{nameday} die Ausgabe +von \DescRef{scrdate.cmd.todaysname} auf den Wert \PName{Name}. +\begin{Example} + Sie setzen mit \DescRef{maincls.cmd.date} das aktuelle Datum auf einen + festen Wert. Für die Ausgabe des zugehörigen Wochentags interessiert es nur, + dass dieser Tag ein Werktag war. Daher schreiben Sie +\begin{lstcode} + \nameday{Werktag} +\end{lstcode} + und erhalten so mit dem Satz aus dem vorherigen Beispiel zu + \DescRef{scrdate.cmd.todaysname}: + \begin{ShowOutput}\nameday{Werktag} + Dieses Dokument entstand an einem {\todaysname}. + \end{ShowOutput} +\end{Example} +Für \DescRef{scrdate.cmd.ISOToday}\IndexCmd{ISOToday} und +\DescRef{scrdate.cmd.IsoToday}\IndexCmd{IsoToday} existieren keine +entsprechenden Anweisungen.% +\EndIndexGroup + + +\begin{Declaration} + \Macro{newdaylanguage}\Parameter{Sprache} + \Parameter{Montag}\Parameter{Dienstag} + \Parameter{Mittwoch}\Parameter{Donnerstag} + \Parameter{Freitag}\Parameter{Samstag} + \Parameter{Sonntag} +\end{Declaration} +Das \Package{scrdate}-Paket beherrscht derzeit die folgenden Sprachen: +\begin{itemize}\raggedright\setlength{\itemsep}{.5\itemsep} +\item Dänisch (\PValue{danish}), +\item Deutsch (\PValue{austrian}\ChangedAt{v3.08b}{\Package{scrdate}}, + \PValue{german}, \PValue{naustrian}, \PValue{ngerman}, \PValue{nswissgerman}, + \PValue{swissgerman}\ChangedAt{v3.13}{\Package{scrdate}}), +\item Englisch (\PValue{american}\ChangedAt{v3.13}{\Package{scrdate}}, + \PValue{australian}, \PValue{british}, \PValue{canadian}, \PValue{english}, + \PValue{newzealand}, \PValue{UKenglish}, \PValue{ukenglish}, + \PValue{USenglish}, \PValue{usenglish}), +\item Finnisch (\PValue{finnish}), +\item Französisch (\PValue{acadian}, \PValue{canadien}, + \PValue{francais}\ChangedAt{v3.13}{\Package{scrdate}}, \PValue{french}), +\item Italienisch (\PValue{italian}), +\item Kroatisch (\PValue{croatian}), +\item Niederländisch (\PValue{dutch}), +\item Norwegisch (\PValue{norsk}), +\item Polnisch (\PValue{polish}\ChangedAt{v3.13}{\Package{scrdate}}), +\item Schwedisch (\PValue{swedish}), +\item Slowakisch (\PValue{slovak}), +\item Spanisch (\PValue{spanish}), +\item Tschechisch (\PValue{czech}\ChangedAt{v3.13}{\Package{scrdate}}). +\end{itemize} +Es kann aber auch für andere Sprachen konfiguriert werden. Dazu gibt man als +erstes Argument von \Macro{newdaylanguage} den Namen der Sprache an und als +weitere Parameter die Namen der entsprechenden Wochentage. + +Bei der aktuellen Version ist es auch egal, ob \Package{scrdate} vor oder nach +\Package{ngerman}\IndexPackage{ngerman}, \Package{babel}\IndexPackage{babel} +oder ähnlichen Paketen geladen wird, in jedem Falle wird die korrekte Sprache +gewählt, vorausgesetzt diese wird unterstützt. + +\begin{Explain} + Etwas genauer ausgedrückt: Solange die Sprachauswahl in einer zu + \Package{babel}\IndexPackage{babel} kompatiblen Form erfolgt und die Sprache + \Package{scrdate} bekannt ist, wird die Sprache korrekt gewählt. Ist dies + nicht der Fall, werden (US-)englische Ausdrücke verwendet. +\end{Explain} + +Natürlich ist es sinnvoll Definitionen für bisher nicht unterstützte Sprachen +an den \KOMAScript-Autor zu melden. In diesem Fall stehen die Chancen gut, +dass künftige \KOMAScript-Versionen die Sprache ebenfalls unterstützen +werden.% +\EndIndexGroup +% +\EndIndexGroup + + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "scrguide-de.tex" +%%% coding: utf-8 +%%% ispell-local-dictionary: "de_DE" +%%% eval: (flyspell-mode 1) +%%% End: + + +% LocalWords: Gregorianischen Zählweise Ordnungszahl |