texlive[44393] Master/texmf-dist: tikz-kalender (17may17)

commits+karl at tug.org commits+karl at tug.org
Wed May 17 23:52:22 CEST 2017


Revision: 44393
          http://tug.org/svn/texlive?view=revision&revision=44393
Author:   karl
Date:     2017-05-17 23:52:21 +0200 (Wed, 17 May 2017)
Log Message:
-----------
tikz-kalender (17may17)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/tikz-kalender/README.md
    trunk/Master/texmf-dist/tex/latex/tikz-kalender/tikz-kalender.cls

Added Paths:
-----------
    trunk/Master/texmf-dist/doc/latex/tikz-kalender/Feiertage-2016.events
    trunk/Master/texmf-dist/doc/latex/tikz-kalender/Geburtstage.events
    trunk/Master/texmf-dist/doc/latex/tikz-kalender/Schulferien-2016.events
    trunk/Master/texmf-dist/doc/latex/tikz-kalender/Sonstiges.events
    trunk/Master/texmf-dist/doc/latex/tikz-kalender/Urlaub.events
    trunk/Master/texmf-dist/doc/latex/tikz-kalender/tikz-kalender-example1.pdf
    trunk/Master/texmf-dist/doc/latex/tikz-kalender/tikz-kalender-example1.tex
    trunk/Master/texmf-dist/doc/latex/tikz-kalender/tikz-kalender-example2.pdf
    trunk/Master/texmf-dist/doc/latex/tikz-kalender/tikz-kalender-example2.tex
    trunk/Master/texmf-dist/tex/latex/tikz-kalender/tikz-kalender-translation.clo

Removed Paths:
-------------
    trunk/Master/texmf-dist/doc/latex/tikz-kalender/Kalender2016.pdf
    trunk/Master/texmf-dist/doc/latex/tikz-kalender/Kalender2016.tex
    trunk/Master/texmf-dist/doc/latex/tikz-kalender/events2016.tex

Added: trunk/Master/texmf-dist/doc/latex/tikz-kalender/Feiertage-2016.events
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-kalender/Feiertage-2016.events	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tikz-kalender/Feiertage-2016.events	2017-05-17 21:52:21 UTC (rev 44393)
@@ -0,0 +1,18 @@
+
+% Jährlich wiederkehrende Termine sollten das Makro \year enthalten.
+% Yearly events should contain the macro \year.
+
+\event*{\year-01-01}{Neujahr}
+\event*{2016-03-25}{Karfreitag}
+\event*{2016-03-27}{Ostersonntag}
+\event*{2016-03-28}{Ostermontag}
+\event*{\year-05-01}{Tag der Arbeit}
+\event*{2016-05-05}{Himmelfahrt}
+\event{2016-05-15}{Pfingstsonntag}
+\event*{2016-05-16}{Pfingstmontag}
+\event*{\year-10-03}{Tag der deutschen der deutschen Einheit}
+\event{\year-12-24}{Heiligabend}
+\event*{\year-12-25}{1. Weihnachtstag}
+\event*{\year-12-26}{2. Weihnachtstag}
+
+\endinput

Added: trunk/Master/texmf-dist/doc/latex/tikz-kalender/Geburtstage.events
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-kalender/Geburtstage.events	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tikz-kalender/Geburtstage.events	2017-05-17 21:52:21 UTC (rev 44393)
@@ -0,0 +1,8 @@
+
+% Jährlich wiederkehrende Termine sollten das Makro \year enthalten.
+% Yearly events should contain the macro \year.
+
+\event{\year-03-14}{Albert Einstein (1879)}
+\event{\year-10-09}{John Lennon (1940)}
+
+\endinput

Deleted: trunk/Master/texmf-dist/doc/latex/tikz-kalender/Kalender2016.pdf
===================================================================
(Binary files differ)

Deleted: trunk/Master/texmf-dist/doc/latex/tikz-kalender/Kalender2016.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-kalender/Kalender2016.tex	2017-05-17 21:51:34 UTC (rev 44392)
+++ trunk/Master/texmf-dist/doc/latex/tikz-kalender/Kalender2016.tex	2017-05-17 21:52:21 UTC (rev 44393)
@@ -1,19 +0,0 @@
-\listfiles
-\documentclass[svgnames,print]{tikz-kalender}
-% "print" means printer-fiendly twoside output
-
-\begin{document}
-  \makeKalender[%
-    year=2016,            % default: current year
-    title=Termine,
-    showweeknumbers,      % default: false
-    titleColor=dark,      % default: dark 
-    eventColor=medium,    % default: medium 
-    workdayColor=none,    % default: none 
-    saturdayColor=bright, % default: bright 
-    sundayColor=medium,   % default: medium
-    monthColor=white,     % default: white  
-    monthBGcolor=dark     % default: dark  
-  ]
-\end{document} 
-

Modified: trunk/Master/texmf-dist/doc/latex/tikz-kalender/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-kalender/README.md	2017-05-17 21:51:34 UTC (rev 44392)
+++ trunk/Master/texmf-dist/doc/latex/tikz-kalender/README.md	2017-05-17 21:52:21 UTC (rev 44393)
@@ -1,7 +1,12 @@
 ## A LaTeX based calendar using TikZ
 
-For usage see the example files »Kalender2016.tex« and »events2016.tex«. See also my [Git repository](https://github.com/rolfn/kalenderRN). The Code is inspired by this [document](http://www.texample.net/tikz/examples/a-calender-for-doublesided-din-a4/) and has the »Creative Commons attribution license (CC-BY-SA)«.
+For usage see the example files »tikz-kalender-example1.tex«, 
+»tikz-kalender-example2.tex«, and »*.events«. See also my [Git 
+repository](https://github.com/rolfn/kalenderRN). The Code is inspired by this 
+[document](http://www.texample.net/tikz/examples/a-calender-for-doublesided-din-a4/) 
+and has the »Creative Commons attribution license (CC-BY-SA)«.
 
-The class »tikz-kalender« requires »tikz« and the tkiz libraries »calc« and »calendar«. 
+The class »tikz-kalender« requires the package »tikz« and the tkiz libraries 
+»calc« and »calendar«. 
 
-Rolf Niepraschk, 2017-01-22
+Rolf Niepraschk, 2017-05-17

Added: trunk/Master/texmf-dist/doc/latex/tikz-kalender/Schulferien-2016.events
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-kalender/Schulferien-2016.events	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tikz-kalender/Schulferien-2016.events	2017-05-17 21:52:21 UTC (rev 44393)
@@ -0,0 +1,9 @@
+
+\period{2016-02-01}{2016-02-06}[color=LightGreen]% Winterferien in Berlin
+\period{2016-03-21}{2016-04-02}[color=LightGreen]% Osterferien in Berlin
+\period{2016-05-17}{2016-05-18}[color=LightGreen]% Pfingstferien in Berlin
+\period{2016-07-21}{2016-09-02}[color=LightGreen]% Sommerferien in Berlin
+\period{2016-10-17}{2016-10-28}[color=LightGreen]% Herbstferien in Berlin
+\period{2016-12-23}{2017-01-03}[color=LightGreen]% Weihnachtsferien in Berlin
+
+\endinput

Added: trunk/Master/texmf-dist/doc/latex/tikz-kalender/Sonstiges.events
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-kalender/Sonstiges.events	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tikz-kalender/Sonstiges.events	2017-05-17 21:52:21 UTC (rev 44393)
@@ -0,0 +1,4 @@
+
+\event*{2016-07-10}{Fußball-EM: Endspiel}[color=DarkTurquoise]
+
+\endinput

Added: trunk/Master/texmf-dist/doc/latex/tikz-kalender/Urlaub.events
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-kalender/Urlaub.events	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tikz-kalender/Urlaub.events	2017-05-17 21:52:21 UTC (rev 44393)
@@ -0,0 +1,4 @@
+
+\period{2016-09-12}{2016-10-04}[color=red!30,name=Urlaub]
+
+\endinput

Deleted: trunk/Master/texmf-dist/doc/latex/tikz-kalender/events2016.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-kalender/events2016.tex	2017-05-17 21:51:34 UTC (rev 44392)
+++ trunk/Master/texmf-dist/doc/latex/tikz-kalender/events2016.tex	2017-05-17 21:52:21 UTC (rev 44393)
@@ -1,31 +0,0 @@
-
-% Jährlich wiederkehrende Termine sollten das Makro \year enthalten.
-% Yearly events should contain the macro \year.
-
-\event*{\year-01-01}{Neujahr}
-\event{\year-03-14}{Albert Einstein (1879)}
-\event*{2016-03-25}{Karfreitag}
-\event*{2016-03-27}{Ostersonntag}
-\event*{2016-03-28}{Ostermontag}
-\event*{\year-05-01}{Tag der Arbeit}
-\event*{2016-05-05}{Himmelfahrt}
-\event{2016-05-15}{Pfingstsonntag}
-\event*{2016-05-16}{Pfingstmontag}
-\event*{\year-10-03}{Tag der dt. Einheit}
-\event{\year-10-09}{John Lennon (1940)}
-\event{\year-12-24}{Heiligabend}
-\event*{\year-12-25}{1. Weihnachtstag}
-\event*{\year-12-26}{2. Weihnachtstag}
-
-\event*{2016-07-10}{Fußball-EM: Endspiel}[color=DarkTurquoise]
-
-\period{2016-09-12}{2016-10-04}[color=red!30,name=Urlaub]
-
-\period{2016-02-01}{2016-02-06}[color=LightGreen]% Winterferien in Berlin
-\period{2016-03-21}{2016-04-02}[color=LightGreen]% Osterferien in Berlin
-\period{2016-05-17}{2016-05-18}[color=LightGreen]% Pfingstferien in Berlin
-\period{2016-07-21}{2016-09-02}[color=LightGreen]% Sommerferien in Berlin
-\period{2016-10-17}{2016-10-28}[color=LightGreen]% Herbstferien in Berlin
-\period{2016-12-23}{2017-01-03}[color=LightGreen]% Weihnachtsferien in Berlin
-
-\endinput

Added: trunk/Master/texmf-dist/doc/latex/tikz-kalender/tikz-kalender-example1.pdf
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/doc/latex/tikz-kalender/tikz-kalender-example1.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-kalender/tikz-kalender-example1.pdf	2017-05-17 21:51:34 UTC (rev 44392)
+++ trunk/Master/texmf-dist/doc/latex/tikz-kalender/tikz-kalender-example1.pdf	2017-05-17 21:52:21 UTC (rev 44393)

Property changes on: trunk/Master/texmf-dist/doc/latex/tikz-kalender/tikz-kalender-example1.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tikz-kalender/tikz-kalender-example1.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-kalender/tikz-kalender-example1.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tikz-kalender/tikz-kalender-example1.tex	2017-05-17 21:52:21 UTC (rev 44393)
@@ -0,0 +1,15 @@
+\listfiles
+\documentclass{tikz-kalender}
+
+% a simple calender
+
+\setup{%
+,year=2016
+,title={Termine}
+,events={Schulferien-2016,Feiertage-2016,Geburtstage,Urlaub,Sonstiges}
+}
+
+\begin{document}
+  \makeKalender
+\end{document} 
+


Property changes on: trunk/Master/texmf-dist/doc/latex/tikz-kalender/tikz-kalender-example1.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tikz-kalender/tikz-kalender-example2.pdf
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/doc/latex/tikz-kalender/tikz-kalender-example2.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-kalender/tikz-kalender-example2.pdf	2017-05-17 21:51:34 UTC (rev 44392)
+++ trunk/Master/texmf-dist/doc/latex/tikz-kalender/tikz-kalender-example2.pdf	2017-05-17 21:52:21 UTC (rev 44393)

Property changes on: trunk/Master/texmf-dist/doc/latex/tikz-kalender/tikz-kalender-example2.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tikz-kalender/tikz-kalender-example2.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-kalender/tikz-kalender-example2.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tikz-kalender/tikz-kalender-example2.tex	2017-05-17 21:52:21 UTC (rev 44393)
@@ -0,0 +1,36 @@
+\listfiles
+
+\documentclass{tikz-kalender}
+
+% all options:
+\setup{%
+,lang=german% language for day names and month names; default: english
+,paper=a0% papersize understandable by the geometry package; default: a4
+,year=2016% base of the calender calculation
+,yearFont={\itshape}% additional font definition
+,yearText={}%default: the content of the year option 
+,title={2016}
+,titleFont={\fontsize{1.4em}{1.4em}}% ~140% of default
+,titleColor=IndianRed3
+,showweeknumbers% default: false
+,events={Geburtstage}% events and periods (files with ending ".events")
+,print=true% printer-friendly orientation (double-side printing)
+,xcoloroptions={x11names}% additional options; default: svgnames
+%,monthFont% additional font definition
+%,dayFont% additional font definition
+%,dayNbFont% additional font definition
+%,weekNbFont% additional font definition
+%,eventFont% additional font definition
+%,eventColor% additional font definition
+%,periodColor% additional font definition
+%,monthBGcolor% additional font definition
+%,monthColor% additional font definition
+%,workdayColor% additional font definition
+%,saturdayColo% additional font definitionr
+%,sundayColor% additional font definition
+}
+
+\begin{document}
+  \makeKalender
+\end{document}
+


Property changes on: trunk/Master/texmf-dist/doc/latex/tikz-kalender/tikz-kalender-example2.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/latex/tikz-kalender/tikz-kalender-translation.clo
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikz-kalender/tikz-kalender-translation.clo	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/tikz-kalender/tikz-kalender-translation.clo	2017-05-17 21:52:21 UTC (rev 44393)
@@ -0,0 +1,23 @@
+\ProvidesFile{tikz-kalender-translation.clo}[2017/05/08 v1.0b
+  Calendar translations (RN)]
+
+% shorter strings
+\deftranslation[to=Polish]{Mon}{Po}% Poniedziałek
+\deftranslation[to=Polish]{Tue}{Wt}% Wtorek
+\deftranslation[to=Polish]{Wed}{\'{S}r}% Środa
+\deftranslation[to=Polish]{Thu}{Cz}% Czwartek
+\deftranslation[to=Polish]{Fri}{Pi}% Piątek
+\deftranslation[to=Polish]{Sat}{So}% Sobota
+\deftranslation[to=Polish]{Sun}{Ni}% Niedziela
+
+\deftranslation[to=English]{Mon}{Mo}
+\deftranslation[to=English]{Tue}{Tu}
+\deftranslation[to=English]{Wed}{We}
+\deftranslation[to=English]{Thu}{Th}
+\deftranslation[to=English]{Fri}{Fr}
+\deftranslation[to=English]{Sat}{Sa}
+\deftranslation[to=English]{Sun}{Su}
+
+\endinput
+%%
+%% End of file `tikz-kalender-translation.clo'.


Property changes on: trunk/Master/texmf-dist/tex/latex/tikz-kalender/tikz-kalender-translation.clo
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/latex/tikz-kalender/tikz-kalender.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikz-kalender/tikz-kalender.cls	2017-05-17 21:51:34 UTC (rev 44392)
+++ trunk/Master/texmf-dist/tex/latex/tikz-kalender/tikz-kalender.cls	2017-05-17 21:52:21 UTC (rev 44393)
@@ -7,30 +7,114 @@
 
 \setcounter{errorcontextlines}{100}
 \NeedsTeXFormat{LaTeX2e}[1999/12/01]
-\ProvidesClass{kalenderRN}[2017/01/22 v0.3c Calendar class (RN)]
+\ProvidesClass{tikz-kalender}[2017/05/17 v0.4a Calendar class (RN)] 
 
-\newif\ifRN at print \RN at printfalse
+\DeclareOption*{\OptionNotUsed}
+\ProcessOptions\relax
 
-\DeclareOption{print}{\RN at printtrue}
+\newcommand*\RN at events@files{}
+\newcommand*\RN at titleFont{}
+\newcommand*\RN at yearFont{}
+\newcommand*\RN at monthFont{}
+\newcommand*\RN at dayFont{}
+\newcommand*\RN at dayNbFont{}
+\newcommand*\RN at weekNbFont{}
+\newcommand*\RN at eventFont{}
+\newcommand*\RN at normalFont{}
+\newcommand*\RN at title{}
+\newcommand*\RN at year{}\edef\RN at year{\the\numexpr\year}
+\newcommand*\RN at yearText{\RN at year}
+\newcommand*\RN at period@name{}
+\newcommand*\RN at xcolorOptions{}
+\newcommand*\RN at events@I{}
+\newcommand*\RN at events@II{}
+\newcommand*\RN at backgrounds{}
+\newcommand*\RN at periods{}
+\newcommand*\RN at tempa{}
+\newcommand*\RN at tempb{}
 
-\DeclareOption*{\PassOptionsToPackage{\CurrentOption}{xcolor}}
-\ProcessOptions\relax
-\LoadClass[a4paper,ngerman,10pt]{article}
-\ifRN at print
-  \RequirePackage{graphicx}
-  \PassOptionsToPackage{portrait}{geometry}
-\else
-  \PassOptionsToPackage{landscape}{geometry}
-\fi
-\RequirePackage[a4paper,margin={0mm,0mm}]{geometry}
+\newcommand*\RN at titleColor{dark}
+\newcommand*\RN at eventColor{medium}
+\newcommand*\RN at monthBGcolor{dark}
+\newcommand*\RN at monthColor{white}
+\newcommand*\RN at workdayColor{none}
+\newcommand*\RN at saturdayColor{bright}
+\newcommand*\RN at sundayColor{medium}
+\newcommand*\RN at periodColor{period}
 
+\newcounter{weeknumber}
+\newsavebox\RN at pageI
+\newsavebox\RN at pageII
+\newsavebox\RN at tempbox
+
+\newdimen\RN at xunit
+\newdimen\RN at yunit
+\newdimen\RN at calheight
+\newdimen\RN at calwidth
+\newdimen\RN at daywidth 
+\newdimen\RN at daysep
+\newdimen\RN at dayheight
+\newdimen\RN at eventwidthL 
+\newdimen\RN at eventwidthS 
+
+\newif\ifRN at showweeknumbers \RN at showweeknumbersfalse
+\newif\ifRN at print \RN at printfalse
 \newif\ifRN at XeOrLua \RN at XeOrLuafalse
 \RequirePackage{ifluatex,ifxetex}
-\ifxetex\RN at XeOrLuatrue\else\ifluatex\RN at XeOrLuatrue\fi\fi
+\ifxetex\RN at XeOrLuatrue\else\ifluatex\RN at XeOrLuatrue\fi\fi 
 
+\LoadClass{article}
+
+\RequirePackage{pgfkeys,etoolbox,ragged2e}
+
+\pgfkeys{
+  /RN/.cd,
+  showweeknumbers/.is if = RN at showweeknumbers,
+  print/.is if = RN at print,
+  events/.store in=\RN at events@files,
+  titleFont/.store in=\RN at titleFont,
+  yearFont/.store in=\RN at yearFont,
+  monthFont/.store in=\RN at monthFont,
+  dayFont/.store in=\RN at dayFont,
+  dayNbFont/.store in=\RN at dayNbFont,
+  weekNbFont/.store in=\RN at weekNbFont,
+  eventFont/.store in=\RN at eventFont,% ???
+  title/.store in=\RN at title,
+  year/.store in=\RN at year,
+  yearText/.store in=\RN at yearText,
+  titleColor/.store in=\RN at titleColor,
+  eventColor/.store in=\RN at eventColor,
+  periodColor/.store in=\RN at periodColor,
+  monthBGcolor/.store in=\RN at monthBGcolor,
+  monthColor/.store in=\RN at monthColor,
+  workdayColor/.store in=\RN at workdayColor,
+  saturdayColor/.store in=\RN at saturdayColor,
+  sundayColor/.store in=\RN at sundayColor,
+  xcoloroptions/.code={\PassOptionsToPackage{#1}{xcolor}},
+  lang/.code={\PassOptionsToPackage{#1}{babel}%
+    \PassOptionsToPackage{#1}{translator}},
+  paper/.code={\PassOptionsToPackage{#1paper}{geometry}}
+}
+
+\newcommand*\setup[1]{\pgfqkeys{/RN}{#1}}
+
+\PassOptionsToPackage{english}{babel}
+\PassOptionsToPackage{english}{translator}
+\PassOptionsToPackage{a4paper}{geometry}
+\PassOptionsToPackage{svgnames}{xcolor}
+
 \ifRN at XeOrLua
-  \RequirePackage{fontspec}
-  \setsansfont{TeX Gyre Heros}[Ligatures=TeX]
+  \RequirePackage{fontspec,unicode-math}
+  \setmathfont{latinmodern-math}[%
+    Extension=.otf,math-style=ISO,bold-style=ISO,
+  ]
+  \setsansfont{texgyreheros}[%
+    Extension=.otf,Ligatures=TeX,
+    UprightFont= *-regular,
+    BoldFont=*-bold,
+    ItalicFont=*-italic,
+    BoldItalicFont=*-bolditalic
+  ]
 \else
   \RequirePackage[T1]{fontenc}
   \RequirePackage{textcomp}
@@ -40,130 +124,169 @@
 
 \renewcommand*\familydefault{\sfdefault}
 
-\RequirePackage{etoolbox}
 \AtEndPreamble{% "etoolbox"
+  \ifRN at print
+    \RequirePackage{graphicx}
+    \PassOptionsToPackage{portrait}{geometry}
+  \else
+    \PassOptionsToPackage{landscape}{geometry}
+  \fi
+  \RequirePackage[margin={0mm,0mm}]{geometry}
   \ifRN at XeOrLua\else
     \@ifpackageloaded{inputenc}{}{%
       \RequirePackage[utf8]{inputenc}%
     }%
   \fi
+  \RequirePackage{babel,translator,tikz}
+  \input{tikz-kalender-translation.clo}
+  \usetikzlibrary{calc}
+  \usetikzlibrary{calendar}
 }
 
-\RequirePackage[main=ngerman]{babel}
+\AtBeginDocument{%
+  \definecolor{dark}{HTML}{A57C00}
+  \colorlet{medium}{dark!35}
+  \colorlet{bright}{dark!20}
+  \colorlet{period}{gray!30}
+  \RN at calwidth=\ifRN at print\paperheight\else\paperwidth\fi
+  \RN at calheight=\ifRN at print\paperwidth\else\paperheight\fi 
+  \@tempcnta=\RN at calwidth
+  \divide\@tempcnta by \@M %
+  \RN at xunit=\@tempcnta sp %                  0.0845pt (a4)
+  \@tempcnta=\RN at calheight
+  \divide\@tempcnta by \@M %
+  \RN at yunit=\@tempcnta sp %                 0.05974pt (a4)
+  \RN at daywidth=1515\RN at xunit%                    45mm (a4)
+  \RN at daysep=118\RN at xunit   %                   3.5mm (a4)
+  \RN at dayheight=192\RN at xunit%                   5.7mm (a4)
+  \RN at setFont{RN at dayFont}{134}%                   8pt (a4)     
+  \RN at setFont{RN at dayNbFont}{167}%                10pt (a4)
+  \RN at setFont{RN at eventFont}{134}%                 8pt (a4)
+  \RN at setFont[\normalfont]{RN at normalFont}{167}%  10pt (a4)
+  \RN at setFont{RN at weekNbFont}{134}%                8pt (a4)
+  \RN at setFont[\bfseries]{RN at monthFont}{167}%     10pt (a4)
+  \RN at setFont[\bfseries]{RN at titleFont}{666}%     40pt (a4)
+  \RN at setFont[\bfseries]{RN at yearFont}{1000}%     60pt (a4)
+  \RN at normalFont
+  \settowidth\@tempdima{\RN at formatDayNb{99}\RN at formatDay{0}}%
+  \RN at eventwidthL=\dimexpr\RN at daywidth-\@tempdima
+  \settowidth\@tempdima{\setcounter{weeknumber}{99}%
+    \RN at formatWeekNb{weeknumber}%
+  }
+  \RN at eventwidthS=\dimexpr\RN at eventwidthL-\@tempdima
+}
 
-\RequirePackage[ngerman]{translator}
-
-\deftranslation[to=ngerman]{January}{Januar}
-\deftranslation[to=ngerman]{February}{Februar}
-\deftranslation[to=ngerman]{March}{März}
-\deftranslation[to=ngerman]{April}{April}
-\deftranslation[to=ngerman]{May}{Mai}
-\deftranslation[to=ngerman]{June}{Juni}
-\deftranslation[to=ngerman]{July}{Juli}
-\deftranslation[to=ngerman]{August}{August}
-\deftranslation[to=ngerman]{September}{September}
-\deftranslation[to=ngerman]{October}{Oktober}
-\deftranslation[to=ngerman]{November}{November}
-\deftranslation[to=ngerman]{December}{Dezember}
-\deftranslation[to=ngerman]{Mon}{Mo}
-\deftranslation[to=ngerman]{Tue}{Di}
-\deftranslation[to=ngerman]{Wed}{Mi}
-\deftranslation[to=ngerman]{Thu}{Do}
-\deftranslation[to=ngerman]{Fri}{Fr}
-\deftranslation[to=ngerman]{Sat}{Sb}
-\deftranslation[to=ngerman]{Sun}{So}
-
-\RequirePackage{tikz}
-\usetikzlibrary{calc}
-\usetikzlibrary{calendar}
-
-\RequirePackage{varwidth}
-
-\newcommand*\RN at year{}
-\edef\RN at year{\the\numexpr\year}
-
-\newsavebox\RN at pageI
-\newsavebox\RN at pageII
-\newsavebox\RN at tempbox
-\newdimen\RN at tempdima
-\newdimen\RN at tempdimb
-\newcommand*\RN at events@I{}
-\newcommand*\RN at events@II{}
-\newcommand*\RN at backgrounds{}
-\newcommand*\RN at periods{}
-\newcommand*\RN at title{}
-\newcommand*\RN at tempa{}
-\newcommand*\RN at tempb{}
-\newcounter{weeknumber}
-\newif\ifRN at showweeknumbers \RN at showweeknumbersfalse
-
 \pgfkeys{%
-  /CAL/.is family, /CAL,
-  showweeknumbers/.is if = RN at showweeknumbers,
-  title/.estore in = \RN at title,
-  year/.estore in = \RN at year,
-  default/.style={eventColor=medium,monthBGcolor=dark,monthColor=white,%
-    workdayColor=none,saturdayColor=bright,sundayColor=medium,titleColor=dark},
-  titleColor/.estore in = \RN at titleColor,
-  eventColor/.estore in = \RN at eventColor,
-  monthBGcolor/.estore in = \RN at monthBGcolor,
-  monthColor/.estore in = \RN at monthColor,
-  workdayColor/.estore in = \RN at workdayColor,
-  saturdayColor/.estore in = \RN at saturdayColor,
-  sundayColor/.estore in = \RN at sundayColor
-}
-\pgfkeys{%
-  /CAL/.is family, /CAL,
+  /RN/.is family, /RN,
   period/.cd,
-  default/.style={color=period,name={}},
-  color/.estore in = \RN at period@color,
-  name/.estore in = \RN at period@name
+  color/.estore in=\RN at periodColor,
+  name/.estore in=\RN at period@name
 }
 \pgfkeys{%
-  /CAL/.is family, /CAL,
+  /RN/.is family, /RN,
   event/.cd,
   color/.estore in = \RN at eventColor
 }
 
+\newcommand\RN at formatTitle[3]{%
+  \raisebox{-.3\height}{\parbox[b]{#1}{%
+    \color{\RN at titleColor}%
+    \makebox[0pt][l]{\RN at yearFont#2}\hfill
+    \RN at titleFont#3\hfill\mbox{}%
+  }}%
+}
+\newcommand*\RN at formatDayNb[1]{%
+  \RN at dayNbFont#1\hspace{50\RN at xunit}%
+}
+\newcommand*\RN at formatDay[1]{%
+  \RN at dayFont\pgfcalendarweekdayshortname{#1}%
+}
+\newcommand*\RN at formatWeekNb[1]{%
+  \hspace{30\RN at xunit}\RN at weekNbFont
+  \raisebox{.15ex}{[\raisebox{-.15ex}{\arabic{#1}}]}%
+  \hspace{20\RN at xunit}%
+}
+\newcommand*\RN at formatEventX[1]{%
+  \varwidth{\RN at eventwidthL}#1\strut\endvarwidth% ??????
+}
+\newcommand*\RN at formatEventXX[1]{%
+  \makebox[0pt][r]{\frame{\resizebox{\RN at eventwidthL}{!}{% ??????
+    \parbox[t][\RN at dayheight]{%
+    \RN at eventwidthL}{\RN at eventFont\raggedleft#1\strut}}}}%
+}
+\newcommand*\RN at formatEventXXX[2]{%
+  \makebox[0pt][r]{\resizebox{#1}{\RN at dayheight}{% ??????
+    \frame{\varwidth[t]{#1}#2\strut\endvarwidth}}}%  
+}
+\newcommand*\RN at formatEvent[2]{%
+  \RN at eventFont
+  \def\RN at tempa{\strut\hfill#2}%
+  \settowidth\@tempdima{\mbox{\RN at tempa}}%
+  \ifdim\@tempdima>#1 %
+    \@tempdimb=\dimexpr\f at size pt %
+    \@tempdimb=.8\@tempdimb%
+    \def\RN at tempa{\fontsize{\@tempdimb}{1.1\@tempdimb}\selectfont#2}%
+  \fi
+  \makebox[-50\RN at xunit][r]{\raisebox{0.55\totalheight}[\totalheight]{%
+    \parbox[c]{#1}{\RaggedLeft\nointerlineskip\RN at tempa}}}%  
+}
+
+\newcommand*\RN at setFont[3][]{%
+  \@tempdima=#3\RN at yunit \@tempdimb=1.2\@tempdima %
+  \expandafter\protected at edef\csname#2\endcsname{\noexpand\fontsize
+    {\the\@tempdima}{\the\@tempdimb}#1\csname#2\endcsname\noexpand\selectfont}%
+} 
+
 \newcommand*\period[2]{%
-  \@ifnextchar[{\period at i{#1}{#2}}{\period at i{#1}{#2}[]}
+  \@ifnextchar[{\RN at period@i{#1}{#2}}{\RN at period@i{#1}{#2}[]}%
 }
-\newcommand*\period at i{}
-\def\period at i#1#2[#3]{%
-  \pgfkeys{/CAL/period/.cd, default, #3}%
+\newcommand*\RN at period@i{}
+\def\RN at period@i#1#2[#3]{%
+  \begingroup
+  \pgfkeys{/RN/period/.cd, #3}%
   \edef\@tempa{%
     \noexpand\ifdate{between=#1 and #2}{%
-      \noexpand\tikzset{every day/.style={fill=\RN at period@color}}}{}%
+      \noexpand\tikzset{every day/.style={fill=\RN at periodColor}}}{}%
   }%
   \expandafter\g at addto@macro\expandafter\RN at periods\expandafter{\@tempa}%
   \ifx\RN at period@name\@empty\else
     \pgfcalendar{}{#1}{#2}{%
-      \edef\RN at tempa{\pgfcalendarcurrentyear-\pgfcalendarcurrentmonth-\pgfcalendarcurrentday}%
+      \edef\RN at tempa{\pgfcalendarcurrentyear-\pgfcalendarcurrentmonth-%
+        \pgfcalendarcurrentday}%
       \@ifundefined{event@\RN at tempa}{%
+        \let\RN at event@ii=\RN at event@ii at orig% activate again
+        % period name as event entry for event-less days
         \event{\RN at tempa}{\RN at period@name}%
-        \edef\RN at tempb{\noexpand\expandafter\noexpand\gdef
-          \noexpand\csname event@\RN at tempa\noexpand\endcsname{\RN at period@name}}%
+        \edef\RN at tempb{\noexpand\expandafter\noexpand\gdef\noexpand%
+          \csname event@\RN at tempa\noexpand\endcsname{\RN at period@name}}%
         \RN at tempb
       }{}%
     }%
   \fi
+  \endgroup
 }
+
 \newcommand*\event{%
   \@ifstar{\@tempswatrue\RN at event@i}{\@tempswafalse\RN at event@i}%
 }
 \newcommand*\RN at event@i[2]{%
-  \@ifnextchar[{\RN at event@ii{#1}{#2}}{\RN at event@ii{#1}{#2}[]}
+  \@ifnextchar[{\RN at event@ii{#1}{#2}}{\RN at event@ii{#1}{#2}[]}%
 }
+
 \newcommand*\RN at event@ii{}%
 \def\RN at event@ii#1#2[#3]{%
-  \pgfkeys{/CAL/event/.cd, #3}%
+  \begingroup
+  \pgfkeys{/RN/event/.cd, #3}%
   \@ifundefined{event@#1}{%
+    \@tempdima=\RN at eventwidthL
+    \ifRN at showweeknumbers
+      \pgfcalendarifdate{#1}{Monday}{\@tempdima=\RN at eventwidthS}{}%
+    \fi
     \protected at edef\@tempa{\noexpand\@ifundefined{pgf at sh@ns at cal-#1}{}{%
-      \noexpand\node[anchor=north west] at ($(cal-#1.north east)-(.6em,0em)$){%
-        \noexpand\makebox[0pt][r]{\noexpand\resizebox{!}{1.15ex}{%
-          \noexpand\varwidth{4.6cm}#2\noexpand\strut\noexpand\endvarwidth}}};}%
+      \noexpand\node[anchor=south west,inner sep=0pt] at (cal-#1.south east){%
+      \noexpand\RN at formatEvent{\the\@tempdima}{#2}};}%
     }%
-    \@namedef{event@#1}{#2}%
+    \expandafter\gdef\csname event@#1\endcsname{#2}%
     \pgfcalendarifdate{#1}{at most=06-last}% first half-year?
     {\expandafter\g at addto@macro\expandafter\RN at events@I\expandafter{\@tempa}}%
     {\expandafter\g at addto@macro\expandafter\RN at events@II\expandafter{\@tempa}}%
@@ -171,79 +294,78 @@
   \if at tempswa
     \edef\@tempa{%
       \noexpand\ifdate{equals=#1}{\noexpand\tikzset{%
-        every day/.style={fill=\RN at eventColor}}}{}
+        every day/.style={fill=\RN at eventColor}}}{}%
     }%
     \expandafter\g at addto@macro\expandafter\RN at backgrounds\expandafter{\@tempa}%
   \fi
+  \endgroup
 }
+\let\RN at event@ii at orig=\RN at event@ii
 
-\definecolor{dark}{HTML}{A57C00}
-\colorlet{medium}{dark!35}
-\colorlet{bright}{dark!20}
-\colorlet{period}{gray!30}
-
-\newcommand\RN@@title{%
-  \raisebox{-.3\height}{\parbox[b]{\wd\RN at tempbox}{%
-    \fontsize{60}{70}\selectfont\color{\RN at titleColor}%
-    \textbf{\RN at year}~\textbf{\Huge\RN at title}\hfill
-  }}%
-}
-
 \newcommand\RN at makeKalender[2]{%
   \sbox\RN at tempbox{%
     \begin{tikzpicture}[every day/.style={anchor=north}]%
-      \calendar[dates=#1 to #2,name=cal,day text={\%d=},day yshift=3em,%]%
+      \calendar[dates=#1 to #2,name=cal,day text={\%d=},%day yshift=3em,%  ????
         day code={%
-          \node[name=\pgfcalendarsuggestedname,every day,shape=rectangle,%
-            minimum height=.53cm,text width=4.4cm,draw=black]{\tikzdaytext};%
-            \draw(-1.8cm,-.1ex) node[anchor=west]{\footnotesize
-              \pgfcalendarweekdayshortname{\pgfcalendarcurrentweekday}%
-              \ifRN at showweeknumbers
-                \ifdate{Monday}{~~\stepcounter{weeknumber}\normalsize[%
-                  \mbox{\footnotesize\arabic{weeknumber}}]}{}%
-              \fi
-            };%
+          \node[name=\pgfcalendarsuggestedname,every day,%
+          shape=rectangle,minimum height=\RN at dayheight,%
+          text width=\RN at daywidth,draw=black
+          ]{\RN at formatDayNb{\tikzdaytext}%
+            \RN at formatDay{\pgfcalendarcurrentweekday}%
+            \ifRN at showweeknumbers
+              \ifdate{Monday}{\stepcounter{weeknumber}%
+                \RN at formatWeekNb{weeknumber}}{}%
+            \fi};
         },%
         execute before day scope={%
           \ifdate{day of month=1}{%
-            \pgftransformxshift{4.8cm}%
+            \pgftransformxshift{\dimexpr\RN at daywidth+\RN at daysep}%
             % Print month name
-            \draw (0,0)node [shape=rectangle,minimum height=.53cm,%
-              text width=4.4cm,fill=\RN at monthBGcolor,draw=\RN at monthBGcolor,%
-                text=\RN at monthColor,text centered]{%
-              \textbf{\pgfcalendarmonthname{\pgfcalendarcurrentmonth}}};}{}%
-          \ifdate{workday}{\tikzset{every day/.style={fill=\RN at workdayColor}}}{}%
+            \draw (0,0)node [shape=rectangle,minimum height=\RN at dayheight,%
+              text width=\RN at daywidth,fill=\RN at monthBGcolor,%
+              draw=\RN at monthBGcolor,text=\RN at monthColor,text centered]{%
+              \RN at monthFont\pgfcalendarmonthname{\pgfcalendarcurrentmonth}};
+          }{}%
+          \ifdate{workday}{\tikzset{every day/.style=%
+            {fill=\RN at workdayColor}}}{}%
           \RN at periods
-          \ifdate{Saturday}{\tikzset{every day/.style={fill=\RN at saturdayColor}}}{}%
-          \ifdate{Sunday}{\tikzset{every day/.style={fill=\RN at sundayColor}}}{}%
+          \ifdate{Saturday}{\tikzset{every day/.style=%
+            {fill=\RN at saturdayColor}}}{}%
+          \ifdate{Sunday}{\tikzset{every day/.style=%
+            {fill=\RN at sundayColor}}}{}%
           \RN at backgrounds
         },%
         execute at begin day scope={%
-          \pgftransformyshift{-.53*\pgfcalendarcurrentday cm}%
+          \pgftransformyshift{-\pgfcalendarcurrentday\RN at dayheight}%
         }%
       ];%
       \pgfcalendarifdate{#1}{at most=06-last}{\RN at events@I}{\RN at events@II}%
     \end{tikzpicture}%
   }%
-  \RN at tempdima=\ifRN at print\paperwidth\else\paperheight\fi
-  \RN at tempdimb=\ifRN at print\paperheight\else\paperwidth\fi
-  \parbox[c][\RN at tempdima]{\RN at tempdimb}{%
+  \parbox[c][\RN at calheight]{\RN at calwidth}{%
     \vfill
     \centering
-    \RN@@title\par
+    \RN at formatTitle{\wd\RN at tempbox}{\RN at yearText}{\RN at title}%
     \vfill
-    \usebox\RN at tempbox\par
+    \usebox\RN at tempbox
     \vfill
   }%
 }
 
-\newcommand*\makeKalender[1][]{%
-  \pgfkeys{/CAL/.cd, default, #1}%
+\newcommand*\makeKalender{%
   \setcounter{weeknumber}{0}%
   \begingroup
     \let\year=\RN at year
-    \InputIfFileExists{events\RN at year.tex}{}{}%
+    \def\RN at period@i##1##2[##3]{}% 1st loop: only the events 
+    \def\do##1{\InputIfFileExists{##1.events}{}{}}%
+    \expandafter\docsvlist\expandafter{\RN at events@files}%
   \endgroup
+  \begingroup
+    \let\year=\RN at year
+    \def\RN at event@ii##1##2[##3]{}% 2nd loop: only the periods 
+    \def\do##1{\InputIfFileExists{##1.events}{}{}}%
+    \expandafter\docsvlist\expandafter{\RN at events@files}%
+  \endgroup
   \sbox{\RN at pageI}{\RN at makeKalender{\RN at year-01-01}{\RN at year-06-30}}%
   \sbox{\RN at pageII}{\RN at makeKalender{\RN at year-07-01}{\RN at year-12-31}}%
   \ifRN at print
@@ -258,6 +380,16 @@
     \usebox\RN at pageII
   \fi
 }
+
+
+
 \setlength\parindent{0pt}
 \pagestyle{empty}
+
 \endinput
+%%
+%% End of file `tikz-kalender.cls'.
+
+
+
+



More information about the tex-live-commits mailing list