From 71c6e59d8e740ec08b9140c1b26516fbe2d45ca5 Mon Sep 17 00:00:00 2001 From: Thorsten Glaser <thorsten.glaser@teckids.org> Date: Sun, 8 Jan 2017 03:12:03 +0100 Subject: [PATCH] [verein.git] make official; drop dummy Feiertage; Logo within printing borders --- teckidscal.sty | 332 +++++++++++++++++++++----- teckidscaltmp.sty | 580 ---------------------------------------------- 2 files changed, 274 insertions(+), 638 deletions(-) delete mode 100644 teckidscaltmp.sty diff --git a/teckidscal.sty b/teckidscal.sty index 98480a3..01dcfe0 100644 --- a/teckidscal.sty +++ b/teckidscal.sty @@ -20,10 +20,11 @@ %- % Teckids e.V. Wandkalender-Utilities -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{teckidscal}[2016/11/18 0.1 Teckids e.V. Wandkalender-Utilities] -\RequirePackage{pgfkeys,pgfcalendar,pgfeaster} -\RequirePackage{etoolbox} +\NeedsTeXFormat{LaTeX2e}% +\ProvidesPackage{teckidscal}[2017/01/07 0.2 Teckids e.V. Wandkalender-Utilities]% +\RequirePackage{pgfkeys,pgfcalendar,pgfeaster}% +\RequirePackage{etoolbox}% +\RequirePackage{stringstrings}% % Externe Makros: % \teckidscalprep{1}{2016}{12}{2016} @@ -39,7 +40,8 @@ % \tkFromJD{2456737} ⇒ \tktmY-\tktmM-\tktmD % Kalenderzuweisungen: -% \tkDayName$JD = '1 Mo*' +% \tkDayNr$JD = '1' +% \tkDayName$JD = 'Mo*' % \tkDayKW$JD = '1' (ISO 8601 calendar week, only on Mondays) % \tkDayHoliday$JD = 'Neujahr' % \tkDayTeckids$JD = 'MGV' @@ -47,7 +49,7 @@ % 3 (Workday groß), 4 (Workday klein), 5 (Online-Meeting) % Renderlogik: 0 = auf weiß, 1 = fett auf grau, 2-5 = auf bunt -% Wandel von 0/1 auf 2+ muß bei 1 fett nach tkDayName übernehmen +% Wandel von 0/1 auf 2+ muß bei 1 fett nach tkDayNr/Name übernehmen % DayTeckids Vorrang vor DayHoliday (letzteres in Fußnote) % DayName, DayHoliday in schwarz % DayTeckids auf 0/1 in fett orange, auf 2-5 in fett weiß @@ -79,16 +81,57 @@ \ifx\csname#1\endcsname\undefined#3\else#2\fi% }% +\newcommand*{\tkCalColsep}{&}% + \newcount\tkcalbeg% JD erster Kalendertag \newcount\tkcalend% JD letzter Kalendertag \newcount\tkjd% JD Laufvariable \newcount\tktmY% temporäre Variable Jahr \newcount\tktmM% temporäre Variable Monat \newcount\tktmD% temporäre Variable Tag - \newcounter{tkFN}% Fußnote \gdef\tkFNtext{}% Fußnotentext +\newcount\tkCalNumMon% Anzahl Monate (= Spalten / 3) +\newcount\tkCalNumYr% Jahrescolspantracker + +\newtoks\tkCalToks% temporary token +\newtoks\tkCalLineY% current year's line +\expandafter\newtoks\csname tkCalLine0\endcsname% +\expandafter\newtoks\csname tkCalLine1\endcsname% +\expandafter\newtoks\csname tkCalLine2\endcsname% +\expandafter\newtoks\csname tkCalLine3\endcsname% +\expandafter\newtoks\csname tkCalLine4\endcsname% +\expandafter\newtoks\csname tkCalLine5\endcsname% +\expandafter\newtoks\csname tkCalLine6\endcsname% +\expandafter\newtoks\csname tkCalLine7\endcsname% +\expandafter\newtoks\csname tkCalLine8\endcsname% +\expandafter\newtoks\csname tkCalLine9\endcsname% +\expandafter\newtoks\csname tkCalLine10\endcsname% +\expandafter\newtoks\csname tkCalLine11\endcsname% +\expandafter\newtoks\csname tkCalLine12\endcsname% +\expandafter\newtoks\csname tkCalLine13\endcsname% +\expandafter\newtoks\csname tkCalLine14\endcsname% +\expandafter\newtoks\csname tkCalLine15\endcsname% +\expandafter\newtoks\csname tkCalLine16\endcsname% +\expandafter\newtoks\csname tkCalLine17\endcsname% +\expandafter\newtoks\csname tkCalLine18\endcsname% +\expandafter\newtoks\csname tkCalLine19\endcsname% +\expandafter\newtoks\csname tkCalLine20\endcsname% +\expandafter\newtoks\csname tkCalLine21\endcsname% +\expandafter\newtoks\csname tkCalLine22\endcsname% +\expandafter\newtoks\csname tkCalLine23\endcsname% +\expandafter\newtoks\csname tkCalLine24\endcsname% +\expandafter\newtoks\csname tkCalLine25\endcsname% +\expandafter\newtoks\csname tkCalLine26\endcsname% +\expandafter\newtoks\csname tkCalLine27\endcsname% +\expandafter\newtoks\csname tkCalLine28\endcsname% +\expandafter\newtoks\csname tkCalLine29\endcsname% +\expandafter\newtoks\csname tkCalLine30\endcsname% +\expandafter\newtoks\csname tkCalLine31\endcsname% +\newtoks\tkCalClineA% +\newtoks\tkCalClineB% + \newcommand{\tkToJD}[1]{% \pgfcalendardatetojulian{#1}{\tkjd}% }% @@ -121,6 +164,7 @@ \tkToJD{#1}% \expandafter\xdef\csname tkDayHoliday\number\tkjd\endcsname{#2}% \expandafter\xdef\csname tkDayType\number\tkjd\endcsname{1}% + \expandafter\xdef\csname tkDayNr\number\tkjd\endcsname{\csname tkDayNr\number\tkjd\endcsname *}% \expandafter\xdef\csname tkDayName\number\tkjd\endcsname{\csname tkDayName\number\tkjd\endcsname *}% }% @@ -163,7 +207,8 @@ {% \expandafter\xdef\csname tkDayType\number\tkjd\endcsname{1}% }% - \expandafter\xdef\csname tkDayName\number\tkjd\endcsname{\number\tktmD{} \csname tkCALday\number\@tempcntb\endcsname}% + \expandafter\xdef\csname tkDayNr\number\tkjd\endcsname{\number\tktmD}% + \expandafter\xdef\csname tkDayName\number\tkjd\endcsname{\csname tkCALday\number\@tempcntb\endcsname}% \ifnum\tkjd < \tkcalend% \advance\tkjd by 1% \repeat% @@ -174,9 +219,6 @@ \@tempcnta=\tktmY% \loop% \pgfcalendar@Easter\@tempcnta% -%% debugging -\tk@mkholiday{\@tempcnta-08-19}{Dummy-Feiertag Eins}% -\tk@mkholiday{\@tempcnta-02-01}{Dummy-Feiertag Zwei}% %% Neujahrstag (01.01.) \tk@mkholiday{\@tempcnta-01-01}{Neujahr}% %% Karfreitag (Ostersonntag - 2) @@ -189,7 +231,7 @@ \tkFromJD{\csname pgfcalendar@Easter@\the\@tempcnta\endcsname}% \tk@mkholiday{\tktmY-\tktmM-\tktmD+1}{Ostermontag}% %% Tag des Bekenntnisses zu Freiheit und Frieden, sozialer Gerechtigkeit, Völkerversöhnung und Menschenwürde (01.05.) - \tk@mkholiday{\@tempcnta-05-01}{Tag des Friedens und der Völkerversöhnung}% + \tk@mkholiday{\@tempcnta-05-01}{Maifeiertag} %Tag des Friedens und der Völkerversöhnung}% %% Christi-Himmelfahrts-Tag (Ostersonntag + 39) \tkFromJD{\csname pgfcalendar@Easter@\the\@tempcnta\endcsname}% \tk@mkholiday{\tktmY-\tktmM-\tktmD+39}{Christi Himmelfahrt}% @@ -203,7 +245,7 @@ \tkFromJD{\csname pgfcalendar@Easter@\the\@tempcnta\endcsname}% \tk@mkholiday{\tktmY-\tktmM-\tktmD+60}{Fronleichnam}% %% Tag der Deutschen Einheit (03.10.) - \tk@mkholiday{\@tempcnta-10-03}{Tag der Deutschen Einheit}% + \tk@mkholiday{\@tempcnta-10-03}{Tag der Dt. Einheit}% %% Allerheiligentag (01.11.) \tk@mkholiday{\@tempcnta-11-01}{Allerheiligen}% %% 1. Weihnachtstag (25.12.) @@ -219,9 +261,13 @@ \def\tk@BoldenDay{% \ifcase\csname tkDayType\number\tkjd\endcsname\or% + \expandafter\xdef\csname tkDayNr\number\tkjd\endcsname{% + \noexpand\textbf{\csname tkDayNr\number\tkjd\endcsname}% + }% \expandafter\xdef\csname tkDayName\number\tkjd\endcsname{% \noexpand\textbf{\csname tkDayName\number\tkjd\endcsname}% - }\fi% + }% + \fi% }% \newcommand{\teckidscalonline}[1]{% @@ -281,7 +327,7 @@ \newcommand{\teckidscallabel}[2][teckidsargdefaulted]{% \ifstrequal{#1}{teckidsargdefaulted}{\PackageError{teckidscal}% - {Das erste Argument zu \protect\teckidscallabel\space + {Das erste Argument zu \protect\teckidscallabel\space% darf nicht leer sein!}}{}% \tkToJD{#2}% \tkifdef{tkDayTeckids\number\tkjd}{\PackageError{teckidscal}% @@ -289,54 +335,224 @@ \expandafter\xdef\csname tkDayTeckids\number\tkjd\endcsname{#1}% }% -\newcommand{\teckidscalrender}[1]{% - \tkFromJD{\tkcalbeg}% - Jahresplan \tktmM/\tktmY–% - \tkFromJD{\tkcalend}% - \tktmM/\tktmY +\newcommand{\tkAmdToks}[1]{% + \tkCalToks=\expandafter{\the\tkCalToks #1}% +}% - \begin{itemize} - \tkjd=\tkcalbeg% - \@tempcnta=\z@% Jahr - \@tempcntb=\z@% Monat - \loop% - \tk@BoldenDay% - \tkFromJD{\tkjd}% - \ifnum\@tempcnta=\tktmY\else% - \item{=== \number\tktmY{} AD ===} - \@tempcnta=\tktmY% +\newcommand{\tkAddToks}[1]{% + \tkCalToks=\expandafter{\the\expandafter\tkCalToks #1}% +}% + +\newcommand{\tkAddTokp}[1]{% + \edef\1{#1}% + \tkCalToks=\expandafter{\the\expandafter\tkCalToks \expandafter{\1}}% +}% + +\newcommand{\teckidscalrender}[1]{% + \tkCalNumYr=\z@% + \tkCalNumMon=\z@% + \tkCalLineY={}% + \csname tkCalLine0\endcsname={}% + \csname tkCalLine1\endcsname={}% + \csname tkCalLine2\endcsname={}% + \csname tkCalLine3\endcsname={}% + \csname tkCalLine4\endcsname={}% + \csname tkCalLine5\endcsname={}% + \csname tkCalLine6\endcsname={}% + \csname tkCalLine7\endcsname={}% + \csname tkCalLine8\endcsname={}% + \csname tkCalLine9\endcsname={}% + \csname tkCalLine10\endcsname={}% + \csname tkCalLine11\endcsname={}% + \csname tkCalLine12\endcsname={}% + \csname tkCalLine13\endcsname={}% + \csname tkCalLine14\endcsname={}% + \csname tkCalLine15\endcsname={}% + \csname tkCalLine16\endcsname={}% + \csname tkCalLine17\endcsname={}% + \csname tkCalLine18\endcsname={}% + \csname tkCalLine19\endcsname={}% + \csname tkCalLine20\endcsname={}% + \csname tkCalLine21\endcsname={}% + \csname tkCalLine22\endcsname={}% + \csname tkCalLine23\endcsname={}% + \csname tkCalLine24\endcsname={}% + \csname tkCalLine25\endcsname={}% + \csname tkCalLine26\endcsname={}% + \csname tkCalLine27\endcsname={}% + \csname tkCalLine28\endcsname={}% + \csname tkCalLine29\endcsname={}% + \csname tkCalLine30\endcsname={}% + \csname tkCalLine31\endcsname={}% + \tkCalClineA={}% + \tkCalClineB={}% + \tkjd=\tkcalbeg% + \@tempcnta=\z@% Jahr + \@tempcntb=\z@% Monat + \loop% + \tkFromJD{\tkjd}% + \tk@BoldenDay% + \ifnum\@tempcnta=\tktmY\else% + \ifnum\@tempcnta=\z@\else% + \tkCalToks={}% + \tkAmdToks{\multicolumn}% + \tkAddTokp{\number\tkCalNumYr}% + \tkAmdToks{{|c|}}% + \tkAddTokp{\number\@tempcnta}% + \tkAmdToks{\tkCalColsep}% + \tkCalLineY=\expandafter{\the\expandafter\tkCalLineY \the\tkCalToks}% + \tkCalNumYr=0% \fi% - \ifnum\@tempcntb=\tktmM\else% - \item{= \csname tkCALmon\number\tktmM\endcsname{} =} - \@tempcntb=\tktmM% + \@tempcnta=\tktmY% + \fi% + \ifnum\@tempcntb=\tktmM\else% + \ifnum\count@<29% + \csname tkCalLine29\endcsname=\expandafter{\the\csname tkCalLine29\endcsname \tkCalColsep\tkCalColsep\tkCalColsep}% + \fi + \ifnum\count@<30% + \csname tkCalLine30\endcsname=\expandafter{\the\csname tkCalLine30\endcsname \tkCalColsep\tkCalColsep\tkCalColsep}% + \fi + \ifnum\count@<31% + \csname tkCalLine31\endcsname=\expandafter{\the\csname tkCalLine31\endcsname \tkCalColsep\tkCalColsep\tkCalColsep}% + \fi + \tkCalToks={}% + \ifnum\@tempcntb=\z@\else% + \tkAmdToks{\tkCalColsep}% \fi% - \item{\fcolorbox{black}{teckidscal\csname tkDayType\number\tkjd\endcsname}{% - \color{black}\csname tkDayName\number\tkjd\endcsname% - \tkifdef{tkDayHoliday\number\tkjd}{% - \tkifdef{tkDayTeckids\number\tkjd}{% - \stepcounter{tkFN}% - \textsuperscript{\thetkFN}% - \let\teckidsTmp\tkFNtext% - \xdef\tkFNtext{\teckidsTmp \dash \thetkFN) {}% - \tktmD.\tktmM.\tktmY: {}% - \csname tkDayHoliday\number\tkjd\endcsname}% - }{% - {} \csname tkDayHoliday\number\tkjd\endcsname% - }% - }{}% - \tkifdef{tkDayTeckids\number\tkjd}{% - \color{teckidscal\csname tkDayType\number\tkjd\endcsname Label}% - {} \textbf{\csname tkDayTeckids\number\tkjd\endcsname}% - }{}% + \tkAmdToks{\multicolumn{3}{|c|}}% + \tkAddToks{\csname tkCALmon\number\tktmM\endcsname}% + \csname tkCalLine0\endcsname=\expandafter{\the\expandafter\expandafter\csname tkCalLine0\endcsname \the\tkCalToks}% + \@tempcntb=\tktmM% + \advance\tkCalNumMon by 1% + \advance\tkCalNumYr by 3% + \fi% + % + \tkCalToks={}% + \ifnum\tkCalNumMon=1\else% + \tkAmdToks{\tkCalColsep}% + \fi% + % + \tkAmdToks{\cellcolor}% + \tkAddTokp{teckidscal\csname tkDayType\number\tkjd\endcsname}% + \tkAmdToks{\color{black}}% + \tkAddToks{\number\tktmD}% + \tkAmdToks{\tkCalColsep}% + \tkAmdToks{\cellcolor}% + \tkAddTokp{teckidscal\csname tkDayType\number\tkjd\endcsname}% + \tkAmdToks{\color{black}}% + \tkAddToks{\csname tkDayName\number\tkjd\endcsname}% + \tkifdef{tkDayHoliday\number\tkjd}{% + \tkifdef{tkDayTeckids\number\tkjd}{% + \stepcounter{tkFN}% + \tkAmdToks{\textsuperscript}% + \tkAddTokp{\thetkFN}% + \let\teckidsTmp\tkFNtext% + \xdef\tkFNtext{\teckidsTmp \dash \thetkFN) {}% + \tktmD.\tktmM.\tktmY: {}% + \csname tkDayHoliday\number\tkjd\endcsname}% + \tkAmdToks{\tkCalColsep}% + \tkAmdToks{\cellcolor}% + \tkAddTokp{teckidscal\csname tkDayType\number\tkjd\endcsname}% + \tkAmdToks{\color{black}}% + }{% + \tkAmdToks{\tkCalColsep}% + \tkAmdToks{\cellcolor}% + \tkAddTokp{teckidscal\csname tkDayType\number\tkjd\endcsname}% + \tkAmdToks{\color{black}}% + \tkAmdToks{\scriptsize}% + \tkAddToks{\csname tkDayHoliday\number\tkjd\endcsname}% + }% + }{% + \tkAmdToks{\tkCalColsep}% + \tkAmdToks{\cellcolor}% + \tkAddTokp{teckidscal\csname tkDayType\number\tkjd\endcsname}% + \tkAmdToks{\color{black}}% + }% + \tkifdef{tkDayTeckids\number\tkjd}{% + \tkAmdToks{\color}% + \tkAddTokp{teckidscal\csname tkDayType\number\tkjd\endcsname Label}% + \stringlength[q]{\csname tkDayTeckids\number\tkjd\endcsname}% + \ifnum\theresult>8% + \tkAmdToks{\scriptsize}% + \fi% + \tkAmdToks{\textbf}% + \tkAddTokp{\csname tkDayTeckids\number\tkjd\endcsname}% + }{% + \tkifdef{tkDayHoliday\number\tkjd}{}{% \tkifdef{tkDayKW\number\tkjd}{% - \color{teckidscalKW}\hspace{4em}% - {} \csname tkDayKW\number\tkjd\endcsname% + \tkAmdToks{\color{teckidscalKW}\hfill\normalsize}% + \tkAddToks{\csname tkDayKW\number\tkjd\endcsname}% }{}% - }}% - \ifnum\tkjd < \tkcalend% - \advance\tkjd by 1% - \repeat% - \end{itemize} + }% + }% + \csname tkCalLine\number\tktmD\endcsname=\expandafter{\the\expandafter\expandafter\csname tkCalLine\number\tktmD\endcsname \the\tkCalToks}% + \ifnum\tktmD<29\else\ifnum\tktmD>30\else% + \count@=\tkCalNumMon% + \advance\count@ by -1% + \multiply\count@ by 3% + \advance\count@ by 1% + \edef\1{\number\count@}% + \advance\count@ by 2% + \tkCalToks={\cline}% + \tkAddTokp{\1-\number\count@}% + \ifnum\tktmD=29% + \tkCalClineA=\expandafter{\the\expandafter\tkCalClineA \the\tkCalToks}% + \else% + \tkCalClineB=\expandafter{\the\expandafter\tkCalClineB \the\tkCalToks}% + \fi% + \fi\fi% + \count@=\tktmD% + \ifnum\tkjd < \tkcalend% + \advance\tkjd by 1% + \repeat% + % + \tkCalToks={}% + \tkAmdToks{\multicolumn}% + \tkAddTokp{\number\tkCalNumYr}% + \tkAmdToks{{|c|}}% + \tkAddTokp{\number\@tempcnta}% + \tkCalLineY=\expandafter{\the\expandafter\tkCalLineY \the\tkCalToks}% + +%\edef\TEMP{\the\tkCalClineA} +%\meaning\TEMP + +%\detokenize\expandafter{\the\tkCalClineA} + + \begin{tabu} to \linewidth {|*{\the\tkCalNumMon}{rlX[m]|}} + \hline\the\tkCalLineY\\\hline + \the\csname tkCalLine0\endcsname\\\hline + \the\csname tkCalLine1\endcsname\\\hline + \the\csname tkCalLine2\endcsname\\\hline + \the\csname tkCalLine3\endcsname\\\hline + \the\csname tkCalLine4\endcsname\\\hline + \the\csname tkCalLine5\endcsname\\\hline + \the\csname tkCalLine6\endcsname\\\hline + \the\csname tkCalLine7\endcsname\\\hline + \the\csname tkCalLine8\endcsname\\\hline + \the\csname tkCalLine9\endcsname\\\hline + \the\csname tkCalLine10\endcsname\\\hline + \the\csname tkCalLine11\endcsname\\\hline + \the\csname tkCalLine12\endcsname\\\hline + \the\csname tkCalLine13\endcsname\\\hline + \the\csname tkCalLine14\endcsname\\\hline + \the\csname tkCalLine15\endcsname\\\hline + \the\csname tkCalLine16\endcsname\\\hline + \the\csname tkCalLine17\endcsname\\\hline + \the\csname tkCalLine18\endcsname\\\hline + \the\csname tkCalLine19\endcsname\\\hline + \the\csname tkCalLine20\endcsname\\\hline + \the\csname tkCalLine21\endcsname\\\hline + \the\csname tkCalLine22\endcsname\\\hline + \the\csname tkCalLine23\endcsname\\\hline + \the\csname tkCalLine24\endcsname\\\hline + \the\csname tkCalLine25\endcsname\\\hline + \the\csname tkCalLine26\endcsname\\\hline + \the\csname tkCalLine27\endcsname\\\hline + \the\csname tkCalLine28\endcsname\\\hline + \the\csname tkCalLine29\endcsname\\\the\tkCalClineA + \the\csname tkCalLine30\endcsname\\\the\tkCalClineB + \the\csname tkCalLine31\endcsname\\\hline + \end{tabu} Legende:\keinumbruch diff --git a/teckidscaltmp.sty b/teckidscaltmp.sty deleted file mode 100644 index 2f036ea..0000000 --- a/teckidscaltmp.sty +++ /dev/null @@ -1,580 +0,0 @@ -% -*- mode: tex -*- -%- -% Copyright © 2016, 2017 -% Thorsten Glaser <thorsten.glaser@teckids.org> -% -% Provided that these terms and disclaimer and all copyright notices -% are retained or reproduced in an accompanying document, permission -% is granted to deal in this work without restriction, including un†-% limited rights to use, publicly perform, distribute, sell, modify, -% merge, give away, or sublicence. -% -% This work is provided “AS IS†and WITHOUT WARRANTY of any kind, to -% the utmost extent permitted by applicable law, neither express nor -% implied; without malicious intent or gross negligence. In no event -% may a licensor, author or contributor be held liable for indirect, -% direct, other damage, loss, or other issues arising in any way out -% of dealing in the work, even if advised of the possibility of such -% damage or existence of a defect, except proven that it results out -% of said person’s immediate fault when using the work as intended. -%- -% Teckids e.V. Wandkalender-Utilities - -\NeedsTeXFormat{LaTeX2e}% -\ProvidesPackage{teckidscaltmp}[2016/11/18 0.1 Teckids e.V. Wandkalender-Utilities]% -\RequirePackage{pgfkeys,pgfcalendar,pgfeaster}% -\RequirePackage{etoolbox}% -\RequirePackage{stringstrings}% - -% Externe Makros: -% \teckidscalprep{1}{2016}{12}{2016} -% \teckidscalonline{yyyy-mm-dd} Online-Treffen -% \teckidscalveranst[label]{yyyy-mm-dd} Veranstaltung -% \teckidscalworkday[label]{yyyy-mm-dd} Workday „groß“ -% \teckidscalworkklein[txt]{yyyy-mm-dd} Workday „klein“ -% \teckidscallabel[label]{yyyy-mm-dd} (nur Text: VS, PM, …} -% \teckidscalrender{Fußnoteneinleitung} - -% Interne Makros: -% \tkToJD{2016-12-31} ⇒ \tkjd -% \tkFromJD{2456737} ⇒ \tktmY-\tktmM-\tktmD - -% Kalenderzuweisungen: -% \tkDayNr$JD = '1' -% \tkDayName$JD = 'Mo*' -% \tkDayKW$JD = '1' (ISO 8601 calendar week, only on Mondays) -% \tkDayHoliday$JD = 'Neujahr' -% \tkDayTeckids$JD = 'MGV' -% \tkDayType$JD = 0 (normal), 1 (weekend/holiday), 2 (Veranstaltung), -% 3 (Workday groß), 4 (Workday klein), 5 (Online-Meeting) - -% Renderlogik: 0 = auf weiß, 1 = fett auf grau, 2-5 = auf bunt -% Wandel von 0/1 auf 2+ muß bei 1 fett nach tkDayNr/Name übernehmen -% DayTeckids Vorrang vor DayHoliday (letzteres in Fußnote) -% DayName, DayHoliday in schwarz -% DayTeckids auf 0/1 in fett orange, auf 2-5 in fett weiß - -\definecolor{teckidscal0Label}{HTML}{FF6600}% -\definecolor{teckidscal1Label}{HTML}{FF6600}% -\definecolor{teckidscal2Label}{HTML}{FFFFFF}% -\definecolor{teckidscal3Label}{HTML}{FFFFFF}% -\definecolor{teckidscal4Label}{HTML}{FFFFFF}% -\definecolor{teckidscal5Label}{HTML}{FFFFFF}% -\definecolor{teckidscal0}{HTML}{FFFFFF}% -\definecolor{teckidscal1}{HTML}{E6E6E6}% -\definecolor{teckidscal2}{HTML}{8730D0}% -\definecolor{teckidscal3}{HTML}{00CBFA}% -\definecolor{teckidscal4}{HTML}{00CC00}% -\definecolor{teckidscal5}{HTML}{D12A00}% -\definecolor{teckidscalKW}{HTML}{999999}% -\expandafter\def\csname teckidscalcolour0\endcsname{regulärer Wochentag}% -\expandafter\def\csname teckidscalcolour1\endcsname{Wochenende / \textbf{Feiertag*}}% -\expandafter\def\csname teckidscalcolour2\endcsname{Veranstaltung}% -\expandafter\def\csname teckidscalcolour3\endcsname{Workday „groß“}% -\expandafter\def\csname teckidscalcolour4\endcsname{Workday „klein“}% -\expandafter\def\csname teckidscalcolour5\endcsname{Online-Treffen}% -\def\teckidscalcolourLabel{Arbeitsgruppentreffen}% - -% From Bernd Raichle via http://www.gust.org.pl/projects/pearls/2006p/index_html -\def\tkifdef#1#2#3{% - \begingroup \expandafter \endgroup \expandafter% - \ifx\csname#1\endcsname\undefined#3\else#2\fi% -}% - -\newcommand*{\tkCalColsep}{&}% - -\newcount\tkcalbeg% JD erster Kalendertag -\newcount\tkcalend% JD letzter Kalendertag -\newcount\tkjd% JD Laufvariable -\newcount\tktmY% temporäre Variable Jahr -\newcount\tktmM% temporäre Variable Monat -\newcount\tktmD% temporäre Variable Tag -\newcounter{tkFN}% Fußnote -\gdef\tkFNtext{}% Fußnotentext - -\newcount\tkCalNumMon% Anzahl Monate (= Spalten / 3) -\newcount\tkCalNumYr% Jahrescolspantracker - -\newtoks\tkCalToks% temporary token -\newtoks\tkCalLineY% current year's line -\expandafter\newtoks\csname tkCalLine0\endcsname% -\expandafter\newtoks\csname tkCalLine1\endcsname% -\expandafter\newtoks\csname tkCalLine2\endcsname% -\expandafter\newtoks\csname tkCalLine3\endcsname% -\expandafter\newtoks\csname tkCalLine4\endcsname% -\expandafter\newtoks\csname tkCalLine5\endcsname% -\expandafter\newtoks\csname tkCalLine6\endcsname% -\expandafter\newtoks\csname tkCalLine7\endcsname% -\expandafter\newtoks\csname tkCalLine8\endcsname% -\expandafter\newtoks\csname tkCalLine9\endcsname% -\expandafter\newtoks\csname tkCalLine10\endcsname% -\expandafter\newtoks\csname tkCalLine11\endcsname% -\expandafter\newtoks\csname tkCalLine12\endcsname% -\expandafter\newtoks\csname tkCalLine13\endcsname% -\expandafter\newtoks\csname tkCalLine14\endcsname% -\expandafter\newtoks\csname tkCalLine15\endcsname% -\expandafter\newtoks\csname tkCalLine16\endcsname% -\expandafter\newtoks\csname tkCalLine17\endcsname% -\expandafter\newtoks\csname tkCalLine18\endcsname% -\expandafter\newtoks\csname tkCalLine19\endcsname% -\expandafter\newtoks\csname tkCalLine20\endcsname% -\expandafter\newtoks\csname tkCalLine21\endcsname% -\expandafter\newtoks\csname tkCalLine22\endcsname% -\expandafter\newtoks\csname tkCalLine23\endcsname% -\expandafter\newtoks\csname tkCalLine24\endcsname% -\expandafter\newtoks\csname tkCalLine25\endcsname% -\expandafter\newtoks\csname tkCalLine26\endcsname% -\expandafter\newtoks\csname tkCalLine27\endcsname% -\expandafter\newtoks\csname tkCalLine28\endcsname% -\expandafter\newtoks\csname tkCalLine29\endcsname% -\expandafter\newtoks\csname tkCalLine30\endcsname% -\expandafter\newtoks\csname tkCalLine31\endcsname% -\newtoks\tkCalClineA% -\newtoks\tkCalClineB% - -\newcommand{\tkToJD}[1]{% - \pgfcalendardatetojulian{#1}{\tkjd}% -}% -\newcommand{\tkFromJD}[1]{% - \pgfcalendarjuliantodate{#1}{\tktmY}{\tktmM}{\tktmD}% -}% - -\expandafter\def\csname tkCALday0\endcsname{Mo}% -\expandafter\def\csname tkCALday1\endcsname{Di}% -\expandafter\def\csname tkCALday2\endcsname{Mi}% -\expandafter\def\csname tkCALday3\endcsname{Do}% -\expandafter\def\csname tkCALday4\endcsname{Fr}% -\expandafter\def\csname tkCALday5\endcsname{Sa}% -\expandafter\def\csname tkCALday6\endcsname{So}% - -\expandafter\def\csname tkCALmon1\endcsname{Januar}% -\expandafter\def\csname tkCALmon2\endcsname{Februar}% -\expandafter\def\csname tkCALmon3\endcsname{März}% -\expandafter\def\csname tkCALmon4\endcsname{April}% -\expandafter\def\csname tkCALmon5\endcsname{Mai}% -\expandafter\def\csname tkCALmon6\endcsname{Juni}% -\expandafter\def\csname tkCALmon7\endcsname{Juli}% -\expandafter\def\csname tkCALmon8\endcsname{August}% -\expandafter\def\csname tkCALmon9\endcsname{September}% -\expandafter\def\csname tkCALmon10\endcsname{Oktober}% -\expandafter\def\csname tkCALmon11\endcsname{November}% -\expandafter\def\csname tkCALmon12\endcsname{Dezember}% - -\def\tk@mkholiday#1#2{% - \tkToJD{#1}% - \expandafter\xdef\csname tkDayHoliday\number\tkjd\endcsname{#2}% - \expandafter\xdef\csname tkDayType\number\tkjd\endcsname{1}% - \expandafter\xdef\csname tkDayNr\number\tkjd\endcsname{\csname tkDayNr\number\tkjd\endcsname *}% - \expandafter\xdef\csname tkDayName\number\tkjd\endcsname{\csname tkDayName\number\tkjd\endcsname *}% -}% - -% #1/#2=von Monat/Jahr #3/#4=bis Monat/Jahr -\newcommand{\teckidscalprep}[4]{% - %% Kalenderwochen (ganze Jahre plus eins) - \tkcalend=#4% - \advance\tkcalend by 1% - \tkcalbeg=#2% - \loop% - {% to allow nested loops - \tkToJD{\tkcalbeg-01-04}% - \loop% - \pgfcalendarjuliantoweekday{\tkjd}{\@tempcntb}% - \ifnum\@tempcntb = 0\else% - \advance\tkjd by -1% - \repeat% - \@tempcntb=1% - \loop% - \expandafter\xdef\csname tkDayKW\number\tkjd\endcsname{\number\@tempcntb{}}% - \ifnum\@tempcntb < 54% - \advance\tkjd by 7% - \advance\@tempcntb by 1% - \repeat% - }% - \ifnum\tkcalbeg < \tkcalend% - \advance\tkcalbeg by 1% - \repeat% - %% Kalendergrenzen - \tkToJD{#4-#3-last}\tkcalend=\tkjd% - \tkToJD{#2-#1-01}\tkcalbeg=\tkjd% - %% Wochentage, Wochenenden - \loop% - \tkFromJD{\tkjd}% - \pgfcalendarjuliantoweekday{\tkjd}{\@tempcntb}% - \pgfcalendarifdate{\tktmY-\tktmM-\tktmD}{workday}% - {% - \expandafter\xdef\csname tkDayType\number\tkjd\endcsname{0}% - }% - {% - \expandafter\xdef\csname tkDayType\number\tkjd\endcsname{1}% - }% - \expandafter\xdef\csname tkDayNr\number\tkjd\endcsname{\number\tktmD}% - \expandafter\xdef\csname tkDayName\number\tkjd\endcsname{\csname tkCALday\number\@tempcntb\endcsname}% - \ifnum\tkjd < \tkcalend% - \advance\tkjd by 1% - \repeat% - %% Feiertage in Nordrhein-Westfalen, mit gesetzlichen Namen - \tkFromJD{\tkcalend}% - \@tempcntb=\tktmY% - \tkFromJD{\tkcalbeg}% - \@tempcnta=\tktmY% - \loop% - \pgfcalendar@Easter\@tempcnta% -%% debugging -\tk@mkholiday{\@tempcnta-08-19}{Dummy FT1}% -\tk@mkholiday{\@tempcnta-02-01}{Dummy FT2}% - %% Neujahrstag (01.01.) - \tk@mkholiday{\@tempcnta-01-01}{Neujahr}% - %% Karfreitag (Ostersonntag - 2) - \tkFromJD{\csname pgfcalendar@Easter@\the\@tempcnta\endcsname}% - \tk@mkholiday{\tktmY-\tktmM-\tktmD+-2}{Karfreitag}% - %% Ostersonntag - \tkFromJD{\csname pgfcalendar@Easter@\the\@tempcnta\endcsname}% - \tk@mkholiday{\tktmY-\tktmM-\tktmD}{Ostersonntag}% - %% Ostermontag (Ostersonntag + 1) - \tkFromJD{\csname pgfcalendar@Easter@\the\@tempcnta\endcsname}% - \tk@mkholiday{\tktmY-\tktmM-\tktmD+1}{Ostermontag}% - %% Tag des Bekenntnisses zu Freiheit und Frieden, sozialer Gerechtigkeit, Völkerversöhnung und Menschenwürde (01.05.) - \tk@mkholiday{\@tempcnta-05-01}{Maifeiertag} %Tag des Friedens und der Völkerversöhnung}% - %% Christi-Himmelfahrts-Tag (Ostersonntag + 39) - \tkFromJD{\csname pgfcalendar@Easter@\the\@tempcnta\endcsname}% - \tk@mkholiday{\tktmY-\tktmM-\tktmD+39}{Christi Himmelfahrt}% - %% Pfingstsonntag (Ostersonntag + 49) - \tkFromJD{\csname pgfcalendar@Easter@\the\@tempcnta\endcsname}% - \tk@mkholiday{\tktmY-\tktmM-\tktmD+49}{Pfingstsonntag}% - %% Pfingstmontag (Ostersonntag + 50) - \tkFromJD{\csname pgfcalendar@Easter@\the\@tempcnta\endcsname}% - \tk@mkholiday{\tktmY-\tktmM-\tktmD+50}{Pfingstmontag}% - %% Fronleichnamstag (Ostersonntag + 60) - \tkFromJD{\csname pgfcalendar@Easter@\the\@tempcnta\endcsname}% - \tk@mkholiday{\tktmY-\tktmM-\tktmD+60}{Fronleichnam}% - %% Tag der Deutschen Einheit (03.10.) - \tk@mkholiday{\@tempcnta-10-03}{Tag der Dt. Einheit}% - %% Allerheiligentag (01.11.) - \tk@mkholiday{\@tempcnta-11-01}{Allerheiligen}% - %% 1. Weihnachtstag (25.12.) - \tk@mkholiday{\@tempcnta-12-25}{1. Weihnachtstag}% - %% 2. Weihnachtstag (26.12.) - \tk@mkholiday{\@tempcnta-12-26}{2. Weihnachtstag}% - \ifnum\@tempcnta<\@tempcntb% - \advance\@tempcnta by 1% - \repeat% - %% 500. Jahrestag der Reformation (31.10.2017) - \tk@mkholiday{2017-10-31}{500. Jahrestag der Reformation}% -}% - -\def\tk@BoldenDay{% - \ifcase\csname tkDayType\number\tkjd\endcsname\or% - \expandafter\xdef\csname tkDayNr\number\tkjd\endcsname{% - \noexpand\textbf{\csname tkDayNr\number\tkjd\endcsname}% - }% - \expandafter\xdef\csname tkDayName\number\tkjd\endcsname{% - \noexpand\textbf{\csname tkDayName\number\tkjd\endcsname}% - }% - \fi% -}% - -\newcommand{\teckidscalonline}[1]{% - \tkToJD{#1}% - \tk@BoldenDay% - \ifcase\csname tkDayType\number\tkjd\endcsname\or\else% - \PackageError{teckidscal}% - {Ein Tag kann nur einen Typ haben! Fehler in Tag #1}{}% - \fi% - \expandafter\xdef\csname tkDayType\number\tkjd\endcsname{5}% -}% - -\newcommand{\teckidscalveranst}[2][teckidsargdefaulted]{% - \tkToJD{#2}% - \ifstrequal{#1}{teckidsargdefaulted}{}{% - \tkifdef{tkDayTeckids\number\tkjd}{\PackageError{teckidscal}% - {Ein Tag kann nur ein Label haben! Fehler in Tag #2}{}}{}% - \expandafter\xdef\csname tkDayTeckids\number\tkjd\endcsname{#1}% - }% - \tk@BoldenDay% - \ifcase\csname tkDayType\number\tkjd\endcsname\or\else% - \PackageError{teckidscal}% - {Ein Tag kann nur einen Typ haben! Fehler in Tag #2}{}% - \fi% - \expandafter\xdef\csname tkDayType\number\tkjd\endcsname{2}% -}% - -\newcommand{\teckidscalworkday}[2][teckidsargdefaulted]{% - \tkToJD{#2}% - \ifstrequal{#1}{teckidsargdefaulted}{}{% - \tkifdef{tkDayTeckids\number\tkjd}{\PackageError{teckidscal}% - {Ein Tag kann nur ein Label haben! Fehler in Tag #2}{}}{}% - \expandafter\xdef\csname tkDayTeckids\number\tkjd\endcsname{#1}% - }% - \tk@BoldenDay% - \ifcase\csname tkDayType\number\tkjd\endcsname\or\else% - \PackageError{teckidscal}% - {Ein Tag kann nur einen Typ haben! Fehler in Tag #2}{}% - \fi% - \expandafter\xdef\csname tkDayType\number\tkjd\endcsname{3}% -}% - -\newcommand{\teckidscalworkklein}[2][teckidsargdefaulted]{% - \tkToJD{#2}% - \ifstrequal{#1}{teckidsargdefaulted}{}{% - \tkifdef{tkDayTeckids\number\tkjd}{\PackageError{teckidscal}% - {Ein Tag kann nur ein Label haben! Fehler in Tag #2}{}}{}% - \expandafter\xdef\csname tkDayTeckids\number\tkjd\endcsname{#1}% - }% - \tk@BoldenDay% - \ifcase\csname tkDayType\number\tkjd\endcsname\or\else% - \PackageError{teckidscal}% - {Ein Tag kann nur einen Typ haben! Fehler in Tag #2}{}% - \fi% - \expandafter\xdef\csname tkDayType\number\tkjd\endcsname{4}% -}% - -\newcommand{\teckidscallabel}[2][teckidsargdefaulted]{% - \ifstrequal{#1}{teckidsargdefaulted}{\PackageError{teckidscal}% - {Das erste Argument zu \protect\teckidscallabel\space% - darf nicht leer sein!}}{}% - \tkToJD{#2}% - \tkifdef{tkDayTeckids\number\tkjd}{\PackageError{teckidscal}% - {Ein Tag kann nur ein Label haben! Fehler in Tag #2}{}}{}% - \expandafter\xdef\csname tkDayTeckids\number\tkjd\endcsname{#1}% -}% - -\newcommand{\tkAmdToks}[1]{% - \tkCalToks=\expandafter{\the\tkCalToks #1}% -}% - -\newcommand{\tkAddToks}[1]{% - \tkCalToks=\expandafter{\the\expandafter\tkCalToks #1}% -}% - -\newcommand{\tkAddTokp}[1]{% - \edef\1{#1}% - \tkCalToks=\expandafter{\the\expandafter\tkCalToks \expandafter{\1}}% -}% - -\newcommand{\teckidscalrender}[1]{% - \tkCalNumYr=\z@% - \tkCalNumMon=\z@% - \tkCalLineY={}% - \csname tkCalLine0\endcsname={}% - \csname tkCalLine1\endcsname={}% - \csname tkCalLine2\endcsname={}% - \csname tkCalLine3\endcsname={}% - \csname tkCalLine4\endcsname={}% - \csname tkCalLine5\endcsname={}% - \csname tkCalLine6\endcsname={}% - \csname tkCalLine7\endcsname={}% - \csname tkCalLine8\endcsname={}% - \csname tkCalLine9\endcsname={}% - \csname tkCalLine10\endcsname={}% - \csname tkCalLine11\endcsname={}% - \csname tkCalLine12\endcsname={}% - \csname tkCalLine13\endcsname={}% - \csname tkCalLine14\endcsname={}% - \csname tkCalLine15\endcsname={}% - \csname tkCalLine16\endcsname={}% - \csname tkCalLine17\endcsname={}% - \csname tkCalLine18\endcsname={}% - \csname tkCalLine19\endcsname={}% - \csname tkCalLine20\endcsname={}% - \csname tkCalLine21\endcsname={}% - \csname tkCalLine22\endcsname={}% - \csname tkCalLine23\endcsname={}% - \csname tkCalLine24\endcsname={}% - \csname tkCalLine25\endcsname={}% - \csname tkCalLine26\endcsname={}% - \csname tkCalLine27\endcsname={}% - \csname tkCalLine28\endcsname={}% - \csname tkCalLine29\endcsname={}% - \csname tkCalLine30\endcsname={}% - \csname tkCalLine31\endcsname={}% - \tkCalClineA={}% - \tkCalClineB={}% - \tkjd=\tkcalbeg% - \@tempcnta=\z@% Jahr - \@tempcntb=\z@% Monat - \loop% - \tkFromJD{\tkjd}% - \tk@BoldenDay% - \ifnum\@tempcnta=\tktmY\else% - \ifnum\@tempcnta=\z@\else% - \tkCalToks={}% - \tkAmdToks{\multicolumn}% - \tkAddTokp{\number\tkCalNumYr}% - \tkAmdToks{{|c|}}% - \tkAddTokp{\number\@tempcnta}% - \tkAmdToks{\tkCalColsep}% - \tkCalLineY=\expandafter{\the\expandafter\tkCalLineY \the\tkCalToks}% - \tkCalNumYr=0% - \fi% - \@tempcnta=\tktmY% - \fi% - \ifnum\@tempcntb=\tktmM\else% - \ifnum\count@<29% - \csname tkCalLine29\endcsname=\expandafter{\the\csname tkCalLine29\endcsname \tkCalColsep\tkCalColsep\tkCalColsep}% - \fi - \ifnum\count@<30% - \csname tkCalLine30\endcsname=\expandafter{\the\csname tkCalLine30\endcsname \tkCalColsep\tkCalColsep\tkCalColsep}% - \fi - \ifnum\count@<31% - \csname tkCalLine31\endcsname=\expandafter{\the\csname tkCalLine31\endcsname \tkCalColsep\tkCalColsep\tkCalColsep}% - \fi - \tkCalToks={}% - \ifnum\@tempcntb=\z@\else% - \tkAmdToks{\tkCalColsep}% - \fi% - \tkAmdToks{\multicolumn{3}{|c|}}% - \tkAddToks{\csname tkCALmon\number\tktmM\endcsname}% - \csname tkCalLine0\endcsname=\expandafter{\the\expandafter\expandafter\csname tkCalLine0\endcsname \the\tkCalToks}% - \@tempcntb=\tktmM% - \advance\tkCalNumMon by 1% - \advance\tkCalNumYr by 3% - \fi% - % - \tkCalToks={}% - \ifnum\tkCalNumMon=1\else% - \tkAmdToks{\tkCalColsep}% - \fi% - % - \tkAmdToks{\cellcolor}% - \tkAddTokp{teckidscal\csname tkDayType\number\tkjd\endcsname}% - \tkAmdToks{\color{black}}% - \tkAddToks{\number\tktmD}% - \tkAmdToks{\tkCalColsep}% - \tkAmdToks{\cellcolor}% - \tkAddTokp{teckidscal\csname tkDayType\number\tkjd\endcsname}% - \tkAmdToks{\color{black}}% - \tkAddToks{\csname tkDayName\number\tkjd\endcsname}% - \tkifdef{tkDayHoliday\number\tkjd}{% - \tkifdef{tkDayTeckids\number\tkjd}{% - \stepcounter{tkFN}% - \tkAmdToks{\textsuperscript}% - \tkAddTokp{\thetkFN}% - \let\teckidsTmp\tkFNtext% - \xdef\tkFNtext{\teckidsTmp \dash \thetkFN) {}% - \tktmD.\tktmM.\tktmY: {}% - \csname tkDayHoliday\number\tkjd\endcsname}% - \tkAmdToks{\tkCalColsep}% - \tkAmdToks{\cellcolor}% - \tkAddTokp{teckidscal\csname tkDayType\number\tkjd\endcsname}% - \tkAmdToks{\color{black}}% - }{% - \tkAmdToks{\tkCalColsep}% - \tkAmdToks{\cellcolor}% - \tkAddTokp{teckidscal\csname tkDayType\number\tkjd\endcsname}% - \tkAmdToks{\color{black}}% - \tkAmdToks{\scriptsize}% - \tkAddToks{\csname tkDayHoliday\number\tkjd\endcsname}% - }% - }{% - \tkAmdToks{\tkCalColsep}% - \tkAmdToks{\cellcolor}% - \tkAddTokp{teckidscal\csname tkDayType\number\tkjd\endcsname}% - \tkAmdToks{\color{black}}% - }% - \tkifdef{tkDayTeckids\number\tkjd}{% - \tkAmdToks{\color}% - \tkAddTokp{teckidscal\csname tkDayType\number\tkjd\endcsname Label}% - \stringlength[q]{\csname tkDayTeckids\number\tkjd\endcsname}% - \ifnum\theresult>8% - \tkAmdToks{\scriptsize}% - \fi% - \tkAmdToks{\textbf}% - \tkAddTokp{\csname tkDayTeckids\number\tkjd\endcsname}% - }{% - \tkifdef{tkDayHoliday\number\tkjd}{}{% - \tkifdef{tkDayKW\number\tkjd}{% - \tkAmdToks{\color{teckidscalKW}\hfill\normalsize}% - \tkAddToks{\csname tkDayKW\number\tkjd\endcsname}% - }{}% - }% - }% - \csname tkCalLine\number\tktmD\endcsname=\expandafter{\the\expandafter\expandafter\csname tkCalLine\number\tktmD\endcsname \the\tkCalToks}% - \ifnum\tktmD<29\else\ifnum\tktmD>30\else% - \count@=\tkCalNumMon% - \advance\count@ by -1% - \multiply\count@ by 3% - \advance\count@ by 1% - \edef\1{\number\count@}% - \advance\count@ by 2% - \tkCalToks={\cline}% - \tkAddTokp{\1-\number\count@}% - \ifnum\tktmD=29% - \tkCalClineA=\expandafter{\the\expandafter\tkCalClineA \the\tkCalToks}% - \else% - \tkCalClineB=\expandafter{\the\expandafter\tkCalClineB \the\tkCalToks}% - \fi% - \fi\fi% - \count@=\tktmD% - \ifnum\tkjd < \tkcalend% - \advance\tkjd by 1% - \repeat% - % - \tkCalToks={}% - \tkAmdToks{\multicolumn}% - \tkAddTokp{\number\tkCalNumYr}% - \tkAmdToks{{|c|}}% - \tkAddTokp{\number\@tempcnta}% - \tkCalLineY=\expandafter{\the\expandafter\tkCalLineY \the\tkCalToks}% - -%\edef\TEMP{\the\tkCalClineA} -%\meaning\TEMP - -%\detokenize\expandafter{\the\tkCalClineA} - - \begin{tabu} to \linewidth {|*{\the\tkCalNumMon}{rlX[m]|}} - \hline\the\tkCalLineY\\\hline - \the\csname tkCalLine0\endcsname\\\hline - \the\csname tkCalLine1\endcsname\\\hline - \the\csname tkCalLine2\endcsname\\\hline - \the\csname tkCalLine3\endcsname\\\hline - \the\csname tkCalLine4\endcsname\\\hline - \the\csname tkCalLine5\endcsname\\\hline - \the\csname tkCalLine6\endcsname\\\hline - \the\csname tkCalLine7\endcsname\\\hline - \the\csname tkCalLine8\endcsname\\\hline - \the\csname tkCalLine9\endcsname\\\hline - \the\csname tkCalLine10\endcsname\\\hline - \the\csname tkCalLine11\endcsname\\\hline - \the\csname tkCalLine12\endcsname\\\hline - \the\csname tkCalLine13\endcsname\\\hline - \the\csname tkCalLine14\endcsname\\\hline - \the\csname tkCalLine15\endcsname\\\hline - \the\csname tkCalLine16\endcsname\\\hline - \the\csname tkCalLine17\endcsname\\\hline - \the\csname tkCalLine18\endcsname\\\hline - \the\csname tkCalLine19\endcsname\\\hline - \the\csname tkCalLine20\endcsname\\\hline - \the\csname tkCalLine21\endcsname\\\hline - \the\csname tkCalLine22\endcsname\\\hline - \the\csname tkCalLine23\endcsname\\\hline - \the\csname tkCalLine24\endcsname\\\hline - \the\csname tkCalLine25\endcsname\\\hline - \the\csname tkCalLine26\endcsname\\\hline - \the\csname tkCalLine27\endcsname\\\hline - \the\csname tkCalLine28\endcsname\\\hline - \the\csname tkCalLine29\endcsname\\\the\tkCalClineA - \the\csname tkCalLine30\endcsname\\\the\tkCalClineB - \the\csname tkCalLine31\endcsname\\\hline - \end{tabu} - - Legende:\keinumbruch - - \begin{itemize} - \@tempcnta=\z@% - \loop% - \item{\fcolorbox{black}{teckidscal\number\@tempcnta}{% - \color{black}\csname teckidscalcolour\number\@tempcnta\endcsname{} /% - \color{teckidscal\number\@tempcnta Label}% - {} \textbf{\teckidscalcolourLabel}% - }} - \ifnum\@tempcnta < 5% - \advance\@tempcnta by 1% - \repeat% - \end{itemize} - - #1 \tkFNtext - - \relax% -}% - -\endinput -- GitLab