summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/yplan
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/yplan
Initial commit
Diffstat (limited to 'macros/latex/contrib/yplan')
-rw-r--r--macros/latex/contrib/yplan/yplan326
-rw-r--r--macros/latex/contrib/yplan/yplan.doc97
-rw-r--r--macros/latex/contrib/yplan/yplan.sty294
l---------macros/latex/contrib/yplan/yplan.txt1
-rw-r--r--macros/latex/contrib/yplan/yplan00.doc75
l---------macros/latex/contrib/yplan/yplan00.txt1
-rw-r--r--macros/latex/contrib/yplan/yplan00a.tex182
-rw-r--r--macros/latex/contrib/yplan/yplan00b.tex185
8 files changed, 1161 insertions, 0 deletions
diff --git a/macros/latex/contrib/yplan/yplan b/macros/latex/contrib/yplan/yplan
new file mode 100644
index 0000000000..1bd69f867d
--- /dev/null
+++ b/macros/latex/contrib/yplan/yplan
@@ -0,0 +1,326 @@
+#!/usr/bin/perl
+# ===========
+# Filename : yplan[.pl]
+# Revision : 0.3, 2000-03-14
+# Purpose : Writes LaTeX2e code for an A4 year-planner,
+# : in the style designed by Dick Nickalls
+# Author : John Palmer,
+# : using matter from Dick Nickalls and Harald Harders
+# ===========
+# Revision History
+# 0.3, 2000-03-14 avoids long lines in the program where possible
+# 0.2, 2000-03-08 YEAR arg mandatory; PAGE arg added;
+# error-messages changed
+# 0.1, 2000-02-18 alternative languages added (after Harald Harders)
+# 2000-02-11 adding the bulk of the boilerplate
+# (copied from Dick Nickalls)
+# 1999-08-28 dividing into two pages and adding more TeX boilerplate
+# 1999-08-18 program begun: first attempt to align days of week
+# ===========
+# Usage: yplan LANGUAGE LETTERCASE PAGE YEAR >FILE.tex
+# where:
+# LANGUAGE is one of: english, german, french, italian, spanish,
+# portuguese, swedish, latin; if omitted, english is assumed;
+# LETTERCASE is one of: uppercase, lowercase; controls the setting
+# of month-names; if omitted, uppercase is assumed;
+# PAGE is one of: p1, p2; selects the first or second six months
+# of the chosen YEAR; if omitted, both pages are printed;
+# YEAR must be written with four digits;
+# FILE.tex is where to put the generated LaTeX code.
+# Acceptable variants:
+# Arguments wholly or partly in uppercase are translated to
+# lowercase.
+# Arguments are recognised even if given in the wrong order.
+# You may write any argument with - or / at the start, and, in
+# general, obvious extra characters at start and end of arguments
+# are ignored.
+# Fatal errors:
+# The program will stop with an error-message in these cases:
+# if YEAR missing; if YEAR <1999; if LANGUAGE not in the set above.
+# Location: in CTAN at macros/latex/contrib/other/yplan/yplan.pl
+#============
+# Things to do:
+#============
+sub Leapyear
+{
+ my $year = shift; # one argument
+ if (($year%4) != 0) {return 0}
+ elsif (($year%400) == 0) {return 1}
+ elsif (($year%100) == 0) {return 0}
+ else {return 1};
+}
+#============
+# Multilingual facilities Copyright 1999 Harald Harders
+# <harald.harders@dlr.de>
+# Adapted to Perl, with Swedish, Latin extensions,
+# by John Palmer, 2000
+
+@{$MonthsOfYear{english}} =
+('','January','February','March','April','May','June',
+'July','August','September','October','November','December');
+@{$DaysOfWeek{english}} = ('Su','Mo','Tu','We','Th','Fr','Sa');
+$LY{english} = 'leap year';
+
+@{$MonthsOfYear{german}} =
+( '','Januar','Februar','M\"arz','April','Mai','Juni',
+'Juli','August','September','Oktober','November','Dezember');
+@{$DaysOfWeek{german}} = ('So','Mo','Di','Mi','Do','Fr','Sa','So');
+$LY{german}= 'Schaltjahr';
+
+@{$MonthsOfYear{french}} =
+('','Janvier',"F\\'evrier",'Mars','Avril','Mai','Juin',
+'Juillet','Ao\^ut','Septembre','Octobre','Novembre',"D\\'ecembre");
+@{$DaysOfWeek{french}} = ('Di','Lu','Ma','Me','Je','Ve','Sa');
+$LY{french}= "ann\\'ee bissextile";
+
+@{$MonthsOfYear{italian}} =
+('','Gennaio','Febbraio','Marzo','Avrile','Maggio','Giugno',
+'Luglio','Agosto','Septembre','Ottobre','Novembre','Dicembre');
+@{$DaysOfWeek{italian}} = ('Do','Lu','Ma','Me','Gi','Ve','Sa');
+$LY{italian}= 'anno di salto';
+
+@{$MonthsOfYear{spanish}} =
+('','Enero','Febrero','Marcha','Abril','Mayo','Junio',
+'Julio','Agosto','Septiembre','Octubre','Noviembre','Diciembre');
+@{$DaysOfWeek{spanish}} = ('Do','Lu','Ma','Mi','Ju','Vi',"S\\'a");
+$LY{spanish}= 'A\~no bisiesto';
+
+@{$MonthsOfYear{portuguese}} =
+('','Janeiro','Fevereiro','Mar\c{c}o','Abril','Maio','Junho',
+'Julho','Agosto','Setembro','Outubro','Novembro','Dezembro');
+# \c needs special treatment when converting to uppercase
+@{$DaysOfWeek{portuguese}} =
+('Dom','Seg','Ter','Qua','Qui','Sex',"S\\'ab");
+$LY{portuguese}= 'Ano de pulo';
+
+@{$MonthsOfYear{swedish}} =
+('','Januari','Februari','Mars','April','Mai','Juni',
+'Juli','Augusti','September','October','November','December');
+@{$DaysOfWeek{swedish}} =
+('S\"o','M\aa{}','Ti','On','To','Fr','L\"o');
+$LY{swedish} = 'skott\aa{}r';
+
+@{$MonthsOfYear{latin}} =
+('','Ianuarius','Februarius','Martius','Aprilis','Maius','Iunius',
+'Iulius','Augustus','Septembris','Octobris','Nouembris','Decembris');
+@{$DaysOfWeek{latin}} = ('So','Lu','Ma','Me','Io','Ve','Sa');
+$LY{latin} = 'annvs bissextilis';
+# use v not u as it will be set as \textsc
+# Antiquarian note:
+# There is evidence for a seven-day cycle in Latin-speaking
+# communities in the 1st cent. AD. The days are: (dies) Solis,
+# Lunae, Martis, Mercurii, Iouis, Veneris, Saturni. Iulius, Augustus
+# were originally Quintilis, Sextilis but were renamed after two
+# personages of the 1st cent. BC. In Latin of this period there is
+# no distinction between I and J (I used for both) or between
+# U and V (lowercase u, uppercase V). ---JP
+#============
+# Set default values for the arguments:
+$Year = '';
+$Language = 'english';
+$Monthcase = 'uppercase';
+$Page = '';
+
+# Override them by actual arguments:
+foreach (@ARGV)
+{
+ if ($_ =~ m/(p1|p2)/i) { $Page = lc $1 }
+ elsif ($_ =~ m/([0-9]+)/) { $Year = $1 }
+ elsif ($_ =~ m/(uppercase|lowercase)/i) { $Monthcase = lc $1 }
+ elsif ($_ =~ m/([a-z]+)/i) { $Language = lc $1 };
+};
+if ($Year !~ /^\d+$/)
+{ die "Usage: yplan [language] [lowercase] [page] year >file.tex\n" };
+if ($Year < 1999)
+{ die "Years < 1999 not available\n" };
+if (! exists $MonthsOfYear{$Language})
+{ die "Language $Language not available\n" };
+if ($Monthcase =~ m/uppercase/)
+{ foreach (@{$MonthsOfYear{$Language}})
+ { $_ = uc $_; $_ =~ s/\\C/\\c/g;
+ if ($Language eq 'latin') {$_ =~ s/U/V/g}
+ }
+};
+$shortYear = $Year ; $shortYear =~ s/..(..)/$1/ ;
+#============
+# count days from 1999 January 1 to $Year January 1:
+$thisYear = 1999 ;
+$startDayofWeek[1] = 5 ;
+# 1999 January 1 is a Friday. 0=Sunday,1=Monday,etc.
+# count days from 1999 January 1 to $Year January 1:
+while ($thisYear < $Year)
+{
+ $daysinYear = Leapyear($thisYear) ? 366 : 365 ;
+ $startDayofWeek[1] = $startDayofWeek[1] + $daysinYear ;
+ $thisYear++;
+};
+$startDayofWeek[1] = $startDayofWeek[1] % 7 ;
+#============
+# make a list of the lengths of months:
+@monthLengths =
+( 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 ) ;
+$Ly = '';
+if (Leapyear($thisYear))
+{ $monthLengths[2] = 29 ; $Ly = $LY{$Language} };
+#============
+# for each month, determine the day of week of day 1 of the month
+for ($i=1; $i<12; $i++)
+{
+ $startDayofWeek[1+$i] =
+ ( $startDayofWeek[$i] + $monthLengths[$i] ) % 7;
+};
+#============
+# for each month, write an appropriately shifted array of daysofMonth;
+# meantime determine the greatest index (plus one) to any such array:
+$stopRow = 0;
+for ($i=1; $i<=12; $i++)
+{
+ $monthVec[$i] = (); # create the array
+ $j = $startDayofWeek[$i];
+ $k = 1;
+ while ($k <= @monthLengths[$i])
+ {
+ ${$monthVec[$i]}[$j] = $k;
+ $k++; $j++;
+ };
+ if ($stopRow < $j) { $stopRow = $j };
+};
+#============
+# fill in $monthVec[0] with the days of week:
+$j = 0;
+for ($i=0; $i<$stopRow; $i++)
+{
+ ${$monthVec[0]}[$i] = $j; $j++; $j %= 7;
+};
+#============
+# determine the least of @startDayofWeek:
+$topDayofWeek = 6;
+for ($i=1; $i<=12; $i++)
+{
+ if ($startDayofWeek[$i]<$topDayofWeek)
+ {$topDayofWeek=$startDayofWeek[$i]}
+};
+#============
+# emit the opening boilerplate:
+print <<ENDFRONT;
+%% Yplan
+%% Vertical year-planner calendar
+%%
+%% ---------------------------
+%% Copyright 1999 RWD Nickalls, 2000 John Palmer
+%% Multlingual support based on yplan.sty,
+%% copyright 1999 Harald Harders
+%% This program Yplan[.pl] can be redistributed and/or modified
+%% under the terms of the LaTeX Project Public License distributed
+%% from CTAN archives in directory macros/latex/base/lppl.txt;
+%% either version 1 of the License, or any later version.
+%% --------------------------
+%% Author of the original LaTeX source:
+%% Dr RWD Nickalls,
+%% Department of Anaesthesia,
+%% City Hospital,
+%% Nottingham, UK.
+%%
+%% dicknickalls\@compuserve.com
+%% TEL: +44-(0)-115-9691169 Ext:45637
+%% FAX: +44-(0)-115-9627713
+%%
+%% Author of the original multilingual package:
+%% Harald Harders,
+%% harald.harders\@dlr.de
+%%
+%% Author of the Perl program:
+%% John W Palmer,
+%% johnp\@bcs.org.uk
+%%
+%% Designed for LaTeX 2e, although it can be easily adapted for
+%% use with LaTeX 2.09, since it is only a big table.
+%%
+%% I designed this year planner as one year my
+%% A4 diary had no good year planner at the end
+%% The vertical size can be adjusted by changing \datestrut.
+%% ---enjoy! RWDN
+%%
+%%------------------------------------
+\\documentclass[a4paper]{article}
+%%------------------------------------
+\\setlength{\\topmargin}{-1cm}
+\\setlength{\\oddsidemargin}{-13.5mm}
+\\setlength{\\textwidth}{18.5cm}
+%%
+\\newcommand{\\monthstrut}{\\rule{0pt}{12pt}}
+%% \\monthstrut controls the white space above the month.
+%%
+\\newcommand{\\datestrut}{\\rule{0pt}{12pt}}
+%% \\datestrut controls the white space above the date.
+%%
+\\newcommand{\\bs}{\$\\backslash\$}
+%% Used in the footnotes.
+%%--------------------------------------
+\\begin{document}
+%---------------
+%% no pagenumbering
+\\pagestyle{empty}
+%--------------------
+ENDFRONT
+#============
+# start emitting rows. In each row, col 0 is a dayofWeek,
+# the remainder are daysofMonth for different months.
+
+$ema=6; $emb=12;
+if ($Page eq 'p1') { $emb = 6 } elsif ($Page eq 'p2') { $ema = 12 };
+for($endmonth=$ema; $endmonth<=$emb; $endmonth+=6)
+{
+print <<ENDHEAD;
+\\begin{table}
+\\hspace{1cm} {\\LARGE $Year}\\qquad\\textsc{$Ly}\\\\
+{\\ } \\\\
+\\begin{tabular}{|c||p{2.5cm}|p{2.5cm}|p{2.5cm}|p{2.5cm}|p{2.5cm}|p{2.5cm}|}
+ENDHEAD
+ print '%%',"\n";
+ print '\hline',"\n";
+ print ' \multicolumn{1}{|c||}{\monthstrut\ }',"\n" ;
+ for ($j=$endmonth-5; $j<=$endmonth; $j++)
+ {
+ print ' & \multicolumn{1}{|c|}{',
+ ${$MonthsOfYear{$Language}}[$j],'}',"\n";
+ };
+ print "\\\\\n\\hline\n\\hline\n";
+ for ($i=$topDayofWeek; $i<$stopRow; $i++)
+ {
+ print '\datestrut ',
+ ${$DaysOfWeek{$Language}}[${$monthVec[0]}[$i]];
+ for ($j=$endmonth-5; $j<=$endmonth; $j++)
+ {
+ if ($j>0) { print ' & ' };
+ print ${$monthVec[$j]}[$i];
+ };
+ print " \\\\\n"; # that's space, two backslashes and a newline
+ if (${$monthVec[0]}[$i]==0) # Sunday
+ { print '\hline\hline',"\n" } # full double rule at `end' of week
+ else
+ { print '\cline{1-1}'; # always put rule in day-of-week column
+ for ($j=$endmonth-5; $j<=$endmonth; $j++)
+ { if (${$monthVec[$j]}[$i] || ${$monthVec[$j]}[$i+1])
+ { print '\cline{',($j-$endmonth+7),'-',($j-$endmonth+7),'}' }
+ # in month columns put rule only above or below a day-number
+ };
+ print "\n";
+ if ($i==$stopRow-1) { print '\hline',"\n" };
+ # end of tabular matter
+ };
+ };
+print <<ENDFOOT;
+\\end{tabular}
+{\\ } \\\\
+%%\\newcommand{\\bs}{\$\\backslash\$}
+\\textsc{ctan}/macros/latex/contrib/other/yplan/yplan.pl%
+\\hfill\\hbox{\\copyright{} 1999 RWD Nickalls, H Harders, 2000 J Palmer}
+\\end{table}
+%-----------------
+ENDFOOT
+};
+print '\end{document}',"\n";
+#============
+# End of program
+#============
diff --git a/macros/latex/contrib/yplan/yplan.doc b/macros/latex/contrib/yplan/yplan.doc
new file mode 100644
index 0000000000..c61278bee4
--- /dev/null
+++ b/macros/latex/contrib/yplan/yplan.doc
@@ -0,0 +1,97 @@
+yplan.doc
+------------
+Date: 14th March, 2000
+--------------------
+This is the documentation for the Perl program yplan.
+Yplan is a vertical-type daily planner,
+showing all the days of a year on two A4 pages.
+%% --------------------------------------------
+%% Copyright 1999 RWD Nickalls & Harald Harders, 2000 John Palmer
+%% This program can be redistributed and/or modified under the terms
+%% of the LaTeX Project Public License Distributed from CTAN
+%% archives in directory macros/latex/base/lppl.txt; either
+%% version 1 of the License, or any later version.
+%% ---------------------------------------------
+
+Authors:
+ Dr RWD Nickalls,
+ Department of Anaesthesia,
+ City Hospital,
+ Nottingham, UK.
+ dicknickalls@compuserve.com
+ TEL: +44-(0)-115-9691169 Ext:45637
+ FAX: +44-(0)-115-9627713
+
+ Harald Harders
+ harald.harders@dlr.de
+
+ John Palmer
+ 4 Horyford Close, Preston, Weymouth DT3 6DJ, England
+ +44 1305 832240
+ johnp@bcs.org.uk
+ http://www.stx69.demon.co.uk/
+
+The file yplan, in CTAN/macros/latex/contrib/other/yplan/, is a Perl
+program which generates LaTeX2e code to print, for any chosen year
+from 1999 onward, a vertical-type daily planner (ie months along the
+top, days downwards), with each 6-month period fitting onto a single
+A4 sheet. They will also fit onto USA standard size paper. The
+vertical size can be adjusted by changing \datestrut. The generated
+files are really just large tables, and so you may wish to extract
+just the tables and modify them for your own use.
+
+Dick Nickalls was motivated to design this year-planner as his A4
+diary did not have good year-planner at the end.
+Harald Harders added support for several languages besides English,
+in the form of a LaTeX2e package yplan.sty.
+Hand-edited LaTeX files for 1999 and 2000 were issued, called
+yplan99a.tex, etc. (These are not made obsolete by the new program;
+they remain useful, for instance to those who don't have a Perl
+interpreter.)
+John Palmer then wrote the general Perl program which makes a LaTeX
+file for any chosen year. In doing so he incorporated Harald's
+alternative language support into the Perl code, in such a way that
+the yplan.sty file is no longer needed, and added the Swedish and
+Latin languages.
+
+The Perl code has been tested with perl 5.004 and 5.005, but should
+run with many earlier versions of Perl. It has been used successfully
+on both Linux and MS-DOS. The output from yplan runs nicely on
+LaTeX2e, and may have to be adjusted very slightly to run on LaTeX
+2.09.
+
+Here are the instructions for running yplan:
+
+The normal usage is
+ yplan LANGUAGE LETTERCASE PAGE YEAR >FILE.tex
+where:
+ LANGUAGE is one of: english, german, french, italian, spanish,
+ portuguese, swedish, latin. If LANGUAGE is omitted, english is
+ assumed.
+ LETTERCASE is one of: uppercase, lowercase. This controls the
+ setting of month-names. If LETTERCASE is omitted, uppercase is
+ assumed.
+ PAGE is one of: p1, p2. This selects the first or second six
+ months of the chosen YEAR; if PAGE is omitted, both pages are
+ printed.
+ YEAR must be written with four digits. YEAR may NOT be omitted.
+ FILE.tex is where to put the generated LaTeX code. (The output of
+ the program must be redirected to some file that can be processed
+ by LaTeX.)
+
+The following variants on this syntax are accepted:
+ Arguments wholly or partly in uppercase are translated to
+ lowercase.
+ Arguments are recognised even if given in the wrong order.
+ You may write any argument with - or / at the start, and, in
+ general, obvious extra characters at start and end of arguments
+ are ignored.
+
+Fatal errors:
+ The program will stop with an error-message in these cases:
+ if no YEAR is specified (in this case it prints a message showing
+ the correct way to use the program);
+ if YEAR < 1999 (years before 1999 are not provided for);
+ if LANGUAGE is specified but is not one of the set given above.
+------------------------------------------
+Dick Nickalls, Harald Harders, John Palmer
diff --git a/macros/latex/contrib/yplan/yplan.sty b/macros/latex/contrib/yplan/yplan.sty
new file mode 100644
index 0000000000..0aba1b2754
--- /dev/null
+++ b/macros/latex/contrib/yplan/yplan.sty
@@ -0,0 +1,294 @@
+%% yplan.sty
+%% Vertical Year planner calendar package file
+%%
+%% -----------------------------------------------
+%% Copyright 1999 Harald Harders
+%% This program can be redistributed and/or modified
+%% under the terms of the LaTeX Project Public License
+%% Distributed from CTAN archives in directory
+%% macros/latex/base/lppl.txt; either version 1 of
+%% the License, or any later version.
+%% -----------------------------------------------
+%%
+%% Harald Harders
+%% harald.harders@dlr.de
+%%
+%%
+%% Adds international support to the year planners of Dr RWD Nickalls.
+%%
+%%
+%% You can switch the language to either
+%% english, german, french, spanish, italian, portuguese
+%% by inserting the line
+%% \usepackage[<language>]{yplan}
+%% after the row containing the \documentclass command in the LaTeX
+%% file yplanYYa.tex or yplanYYb.tex, where YY stands for the year.
+%% You have to replace <language> by your language name.
+%% In addition you may use month names in lowercase letters (With an
+%% uppercase first letter) by adding the keyword lowercase to the
+%% optional parameters of the \usepackage command, e.g.
+%% \usepackage[german,lowercase]{yplan}
+%%
+%% Possible options:
+%% english (default) english language
+%% german german language
+%% french french language
+%% spanish spanish language
+%% italian italian language
+%% portuguese portuguese language
+%% uppercase (default) Uppercase months
+%% lowercase Lowercase months with uppercase first letter
+%%
+%%----------------------------------
+\ProvidesPackage{yplan}[1999/07/06]
+\RequirePackage{ifthen}
+%%----------------------------------
+\newboolean{upper}
+%%----------------------------------
+\DeclareOption{uppercase}{\setboolean{upper}{true}}
+\DeclareOption{lowercase}{\setboolean{upper}{false}}
+\DeclareOption{english}{\def\yplan@lang{english}}
+\DeclareOption{german}{\def\yplan@lang{german}}
+\DeclareOption{french}{\def\yplan@lang{french}}
+\DeclareOption{italian}{\def\yplan@lang{italian}}
+\DeclareOption{spanish}{\def\yplan@lang{spanish}}
+\DeclareOption{portuguese}{\def\yplan@lang{portuguese}}
+%%----------------------------------
+\DeclareOption*{\PackageWarning{yplan.sty}{Unknown option \CurrentOption}}
+%%----------------------------------
+\ExecuteOptions{english,uppercase}
+\ProcessOptions
+%%----------------------------------
+\AtBeginDocument{%
+\ifthenelse{\equal{\yplan@lang}{english}}{%
+ \ifthenelse{\boolean{upper}}{%
+ \def\January{JANUARY}
+ \def\February{FEBRUARY}
+ \def\March{MARCH}
+ \def\April{APRIL}
+ \def\May{MAY}
+ \def\June{JUNE}
+ \def\July{JULY}
+ \def\August{AUGUST}
+ \def\September{SEPTEMBER}
+ \def\October{OCTOBER}
+ \def\November{NOVEMBER}
+ \def\December{DECEMBER}
+ }{%
+ \def\January{January}
+ \def\February{February}
+ \def\March{March}
+ \def\April{April}
+ \def\May{May}
+ \def\June{June}
+ \def\July{July}
+ \def\August{August}
+ \def\September{September}
+ \def\October{October}
+ \def\November{November}
+ \def\December{December}
+ }
+ \def\Mo{Mo}
+ \def\Tu{Tu}
+ \def\We{We}
+ \def\Th{Th}
+ \def\Fr{Fr}
+ \def\Sa{Sa}
+ \def\Su{Su}
+ \def\leapyear{\textsc{leap year}}
+}{}
+%%----------------------------------
+\ifthenelse{\equal{\yplan@lang}{german}}{%
+ \ifthenelse{\boolean{upper}}{%
+ \def\January{JANUAR}
+ \def\February{FEBRUAR}
+ \def\March{M\"ARZ}
+ \def\April{APRIL}
+ \def\May{MAI}
+ \def\June{JUNI}
+ \def\July{JULI}
+ \def\August{AUGUST}
+ \def\September{SEPTEMBER}
+ \def\October{OKTOBER}
+ \def\November{NOVEMBER}
+ \def\December{DEZEMBER}
+ }{%
+ \def\January{Januar}
+ \def\February{Februar}
+ \def\March{M\"arz}
+ \def\April{April}
+ \def\May{Mai}
+ \def\June{Juni}
+ \def\July{Juli}
+ \def\August{August}
+ \def\September{September}
+ \def\October{Oktober}
+ \def\November{November}
+ \def\December{Dezember}
+ }
+ \def\Mo{Mo}
+ \def\Tu{Di}
+ \def\We{Mi}
+ \def\Th{Do}
+ \def\Fr{Fr}
+ \def\Sa{Sa}
+ \def\Su{So}
+ \def\leapyear{\textsc{Schaltjahr}}
+}{}
+%%----------------------------------
+\ifthenelse{\equal{\yplan@lang}{french}}{%
+ \ifthenelse{\boolean{upper}}{%
+ \def\January{JANVIER}
+ \def\February{F\'EVRIER}
+ \def\March{MARS}
+ \def\April{AVRIL}
+ \def\May{MAI}
+ \def\June{JUIN}
+ \def\July{JUILLIET}
+ \def\August{AO\^UT}
+ \def\September{SEPTEMBRE}
+ \def\October{OCTOBRE}
+ \def\November{NOVEMBRE}
+ \def\December{D\'ECEMBRE}
+ }{%
+ \def\January{Janvier}
+ \def\February{F\'evrier}
+ \def\March{Mars}
+ \def\April{Avril}
+ \def\May{Mai}
+ \def\June{Juin}
+ \def\July{Juillet}
+ \def\August{Ao\^ut}
+ \def\September{Septembre}
+ \def\October{Octobre}
+ \def\November{Novembre}
+ \def\December{Dec\'embre}
+ }
+ \def\Mo{Lu}
+ \def\Tu{Ma}
+ \def\We{Me}
+ \def\Th{Je}
+ \def\Fr{Ve}
+ \def\Sa{Sa}
+ \def\Su{Di}
+ \def\leapyear{\textsc{ann\'ee bissextile}}
+}{}
+%%----------------------------------
+\ifthenelse{\equal{\yplan@lang}{italian}}{%
+ \ifthenelse{\boolean{upper}}{%
+ \def\January{GENNAIO}
+ \def\February{FEBBRAIO}
+ \def\March{MARZO}
+ \def\April{AVRILE}
+ \def\May{MAGGIO}
+ \def\June{GIUGNO}
+ \def\July{LUGLIO}
+ \def\August{AGOSTO}
+ \def\September{SETTEMBRE}
+ \def\October{OTTOBRE}
+ \def\November{NOVEMBRE}
+ \def\December{DICEMBRE}
+ }{%
+ \def\January{Gennaio}
+ \def\February{Febbraio}
+ \def\March{Marzo}
+ \def\April{Avrile}
+ \def\May{Maggio}
+ \def\June{Giugno}
+ \def\July{Luglio}
+ \def\August{Agosto}
+ \def\September{Septembre}
+ \def\October{Ottobre}
+ \def\November{Novembre}
+ \def\December{Dicembre}
+ }
+ \def\Mo{Lu}
+ \def\Tu{Ma}
+ \def\We{Me}
+ \def\Th{Gi}
+ \def\Fr{Ve}
+ \def\Sa{Sa}
+ \def\Su{Do}
+ \def\leapyear{\textsc{anno di salto}}
+}{}
+%%----------------------------------
+\ifthenelse{\equal{\yplan@lang}{spanish}}{%
+ \ifthenelse{\boolean{upper}}{%
+ \def\January{ENERO}
+ \def\February{FEBRERO}
+ \def\March{MARCHA}
+ \def\April{ABRIL}
+ \def\May{MAYO}
+ \def\June{JUNIO}
+ \def\July{JULIO}
+ \def\August{AGOSTO}
+ \def\September{SEPTIEMBRE}
+ \def\October{OCTUBRE}
+ \def\November{NOVIEMBRE}
+ \def\December{DICIEMBRE}
+ }{%
+ \def\January{Enero}
+ \def\February{Febrero}
+ \def\March{Marcha}
+ \def\April{Abril}
+ \def\May{Mayo}
+ \def\June{Junio}
+ \def\July{Julio}
+ \def\August{Agosto}
+ \def\September{Septiembre}
+ \def\October{Octubre}
+ \def\November{Noviembre}
+ \def\December{Diciembre}
+ }
+ \def\Mo{Lu}
+ \def\Tu{Ma}
+ \def\We{Mi}
+ \def\Th{Ju}
+ \def\Fr{Vi}
+ \def\Sa{S\'a}
+ \def\Su{Do}
+ \def\leapyear{\textsc{A\~no bisiesto}}
+}{}
+%%----------------------------------
+\ifthenelse{\equal{\yplan@lang}{portuguese}}{%
+ \ifthenelse{\boolean{upper}}{%
+ \def\January{JANEIRO}
+ \def\February{FEVEREIRO}
+ \def\March{MAR\c{C}O}
+ \def\April{ABRIL}
+ \def\May{MAIO}
+ \def\June{JUNHO}
+ \def\July{JULHO}
+ \def\August{AGOSTO}
+ \def\September{SETEMBRO}
+ \def\October{OUTUBRO}
+ \def\November{NOVEMBRO}
+ \def\December{DEZEMBRO}
+ }{%
+ \def\January{Janeiro}
+ \def\February{Fevereiro}
+ \def\March{Mar\c{c}o}
+ \def\April{Abril}
+ \def\May{Maio}
+ \def\June{Junho}
+ \def\July{Julho}
+ \def\August{Agosto}
+ \def\September{Setembro}
+ \def\October{Outubro}
+ \def\November{Novembro}
+ \def\December{Dezembro}
+ }
+ \def\Mo{Seg}
+ \def\Tu{Ter}
+ \def\We{Qua}
+ \def\Th{Qui}
+ \def\Fr{Sex}
+ \def\Sa{S\'ab}
+ \def\Su{Dom}
+ \def\leapyear{\textsc{Ano de pulo}}
+}{}
+}
+%%----------------------------------
+\endinput
+%%----------------------------------
+%% EOF
diff --git a/macros/latex/contrib/yplan/yplan.txt b/macros/latex/contrib/yplan/yplan.txt
new file mode 120000
index 0000000000..c2e921332e
--- /dev/null
+++ b/macros/latex/contrib/yplan/yplan.txt
@@ -0,0 +1 @@
+yplan.doc \ No newline at end of file
diff --git a/macros/latex/contrib/yplan/yplan00.doc b/macros/latex/contrib/yplan/yplan00.doc
new file mode 100644
index 0000000000..c7a1ab1d97
--- /dev/null
+++ b/macros/latex/contrib/yplan/yplan00.doc
@@ -0,0 +1,75 @@
+yplan00.doc
+------------
+Date: August 4th, 1999
+--------------------
+This is the documentation for the yplan00a.tex and
+yplan00b.tex files. Yplan is a vertical-type daily
+planner.
+%% --------------------------------------------
+%% Copyright 1999 RWD Nickalls & Harald Harders
+%% This program can be redistributed and/or modified under the terms
+%% of the LaTeX Project Public License Distributed from CTAN
+%% archives in directory macros/latex/base/lppl.txt; either
+%% version 1 of the License, or any later version.
+%% ---------------------------------------------
+
+Authors:
+ Dr RWD Nickalls,
+ Department of Anaesthesia,
+ City Hospital,
+ Nottingham, UK.
+ dicknickalls@compuserve.com
+ TEL: +44-(0)-115-9691169 Ext:45637
+ FAX: +44-(0)-115-9627713
+
+ Harald Harders
+ harald.harders@dlr.de
+
+The Yplan00 YearPlanner consists of three files
+yplan00a.tex, yplan00b.tex, and yplan.sty
+which cover 6 months each as follows:-
+
+yplan00a.tex (January to June 2000)
+yplan00b.tex (July to December 2000)
+yplan.sty (Package file for international language support)
+
+in CTAN/macros/latex/contrib/other/yplan/
+
+These files will print a vertical-type daily planner
+(ie months along the top, days downwards), with each
+6-month period fitting onto a single A4 sheet.
+They will also fit onto USA standard size paper.
+The vertical size can be adjusted by changing \datestrut.
+These files are really just large tables, and so you
+may wish to extract just the tables and modify them
+for your own use.
+
+I was motivated to design this year-planner as my A4
+diary did not have good year-planner at the end.
+
+The files run nicely on Latex 2e, and may have to
+be adjusted very slightly to run on LaTeX 2.09.
+
+Dick Nickalls & Harald Harders
+
+International support (by Harald Harders)
+----------------------------------------
+You can switch the language to either
+english, german, french, spanish, italian, portuguese
+by inserting the line
+\usepackage[<language>]{yplan}
+after the row containing the \documentclass command in the files
+yplan00a.tex and yplan00b.tex.
+You have to replace <language> by your language name.
+In addition you may use month names in lowercase letters (With an
+uppercase first letter) by adding the keyword lowercase to the
+optional parameters of the \usepackage command, e.g.
+\usepackage[german,lowercase]{yplan}
+
+However when using yplan.sty the adaption to LaTeX 2.09 isn't
+possible anymore.
+
+If you find an error in the names or abbreviations please
+send me a note.
+
+Harald Harders
diff --git a/macros/latex/contrib/yplan/yplan00.txt b/macros/latex/contrib/yplan/yplan00.txt
new file mode 120000
index 0000000000..a32cbaeef9
--- /dev/null
+++ b/macros/latex/contrib/yplan/yplan00.txt
@@ -0,0 +1 @@
+yplan00.doc \ No newline at end of file
diff --git a/macros/latex/contrib/yplan/yplan00a.tex b/macros/latex/contrib/yplan/yplan00a.tex
new file mode 100644
index 0000000000..14e3a31ad3
--- /dev/null
+++ b/macros/latex/contrib/yplan/yplan00a.tex
@@ -0,0 +1,182 @@
+%% yplan00a.tex
+%% Vertical year-planner calendar (January to June 2000)
+%% ---------------------
+%% Date: August 4th, 1999
+%% -----------------------------------------------
+%% Copyright 1999 RWD Nickalls & Harald Harders
+%% This program can be redistributed and/or modified
+%% under the terms of the LaTeX Project Public License
+%% Distributed from CTAN archives in directory
+%% macros/latex/base/lppl.txt; either version 1 of
+%% the License, or any later version.
+%% -----------------------------------------------
+%% Dr RWD Nickalls,
+%% Department of Anaesthesia,
+%% City Hospital,
+%% Nottingham, UK.
+%% dicknickalls@compuserve.com
+%% TEL: +44-(0)-115-9691169 Ext:45637
+%% FAX: +44-(0)-115-9627713
+%%
+%% Harald Harders
+%% harald.harders@dlr.de
+%% ---------------------
+%% This year planner is for everyone who does not
+%% have a decent year planner in their diary.
+%% As usual, Necessity was the Mother of this invention.
+%% International support added by Harald Harders, 1999.
+%% ...enjoy!
+%% ---------------------
+%% Designed for LaTeX 2e, although it can be easily adapted for
+%% use with LaTeX 2.09, since it is only a big table.
+%% However when using yplan.sty the adaption to LaTeX 2.09
+%% is not possible anymore.
+%%
+%% The vertical size can be adjusted by changing \datestrut.
+%%
+%% You can switch the language to either
+%% english, german, french, spanish, italian, portuguese
+%% by inserting the line \usepackage[<language>]{yplan}
+%% immediately after the \documentclass command.
+%% You have to replace <language> by your language name.
+%% In addition, you may use month names in lowercase letters (With an
+%% uppercase first letter) by adding the keyword lowercase to the
+%% optional parameters of the \usepackage command, e.g.
+%% \usepackage[german,lowercase]{yplan}
+%% Default: english with uppercase months
+%%
+%%------------------------------------
+\documentclass[a4paper]{article}
+%\usepackage[german,lowercase]{yplan}
+%%------------------------------------
+\setlength{\topmargin}{-1cm}
+\setlength{\oddsidemargin}{-13.5mm}
+\setlength{\textwidth}{18.5cm}
+%%
+\def\January{JANUARY}
+\def\February{FEBRUARY}
+\def\March{MARCH}
+\def\April{APRIL}
+\def\May{MAY}
+\def\June{JUNE}
+\def\July{JULY}
+\def\August{AUGUST}
+\def\September{SEPTEMBER}
+\def\October{OCTOBER}
+\def\November{NOVEMBER}
+\def\December{DECEMBER}
+\def\Mo{Mo}
+\def\Tu{Tu}
+\def\We{We}
+\def\Th{Th}
+\def\Fr{Fr}
+\def\Sa{Sa}
+\def\Su{Su}
+\def\leapyear{\textsc{leap year}}
+%%
+%%
+\newcommand{\monthstrut}{\rule{0pt}{12pt}}
+%% \monthstrut controls the white space above the month.
+%%
+\newcommand{\datestrut}{\rule{0pt}{12pt}}
+%% \datestrut controls the white space above the date.
+%%--------------------------------------
+\begin{document}
+%---------------
+%% no pagenumbering
+\thispagestyle{empty}
+%--------------------
+\begin{table}
+\hspace{1cm}{\LARGE 2000}\hspace{8mm}\leapyear\\
+{\ } \\
+\begin{tabular}{|c||p{2.5cm}|p{2.5cm}|p{2.5cm}|p{2.5cm}|p{2.5cm}|p{2.5cm}|}
+\hline
+ \multicolumn{1}{|c||}{\monthstrut} &
+ \multicolumn{1}{|c|}{\January} &
+ \multicolumn{1}{|c|}{\February} &
+ \multicolumn{1}{|c|}{\March} &
+ \multicolumn{1}{|c|}{\April} &
+ \multicolumn{1}{|c|}{\May} &
+ \multicolumn{1}{|c|}{\June} \\
+\hline
+\hline
+%% Jan Feb Mar Apr May June
+\datestrut \Mo & & & & & 1 & \\
+\cline{1-1}\cline{3-3}\cline{6-6}
+\datestrut \Tu & &1 & & & 2 & \\
+\cline{1-1}\cline{3-4}\cline{6-6}
+\datestrut \We & &2 & 1 & & 3 & \\
+\cline{1-1}\cline{3-4}\cline{6-7}
+\datestrut \Th & &3 & 2 & & 4 & 1 \\
+\cline{1-1}\cline{3-4}\cline{6-7}
+\datestrut \Fr & &4 & 3 & & 5 & 2 \\
+\hline
+\datestrut \Sa & 1 &5 & 4 & 1 & 6 & 3 \\
+\hline
+\datestrut \Su & 2 &6 & 5 & 2 & 7 & 4 \\
+\hline\hline
+\datestrut \Mo & 3 &7 & 6 & 3 & 8 & 5 \\
+\hline
+\datestrut \Tu & 4 &8 & 7 & 4 & 9 & 6 \\
+\hline
+\datestrut \We & 5 &9 & 8 & 5 & 10 & 7 \\
+\hline
+\datestrut \Th & 6 &10 & 9 & 6 & 11 & 8 \\
+\hline
+\datestrut \Fr & 7 &11 & 10 & 7 & 12 & 9 \\
+\hline
+\datestrut \Sa & 8 &12 & 11 & 8 & 13 & 10 \\
+\hline
+\datestrut \Su & 9 &13 & 12 & 9 & 14 & 11 \\
+\hline \hline
+\datestrut \Mo & 10 &14 & 13 & 10 & 15 & 12 \\
+\hline
+\datestrut \Tu & 11 &15 & 14 & 11 & 16 & 13 \\
+\hline
+\datestrut \We & 12 &16 & 15 & 12 & 17 & 14 \\
+\hline
+\datestrut \Th & 13 &17 & 16 & 13 & 18 & 15 \\
+\hline
+\datestrut \Fr & 14 &18 & 17 & 14 & 19 & 16 \\
+\hline
+\datestrut \Sa & 15 &19 & 18 & 15 & 20 & 17 \\
+\hline
+\datestrut \Su & 16 &20 & 19 & 16 & 21 & 18 \\
+\hline \hline
+\datestrut \Mo & 17 &21 & 20 & 17 & 22 & 19 \\
+\hline
+\datestrut \Tu & 18 &22 & 21 & 18 & 23 & 20 \\
+\hline
+\datestrut \We & 19 &23 & 22 & 19 & 24 & 21 \\
+\hline
+\datestrut \Th & 20 &24 & 23 & 20 & 25 & 22 \\
+\hline
+\datestrut \Fr & 21 &25 & 24 & 21 & 26 & 23 \\
+\hline
+\datestrut \Sa & 22 &26 & 25 & 22 & 27 & 24 \\
+\hline
+\datestrut \Su & 23 &27 & 26 & 23 & 28 & 25 \\
+\hline \hline
+\datestrut \Mo & 24 &28 & 27 & 24 & 29 & 26 \\
+\hline
+\datestrut \Tu & 25 &29 & 28 & 25 & 30 & 27 \\
+\hline
+\datestrut \We & 26 & & 29 & 26 & 31 & 28 \\
+\cline{1-2}\cline{4-7}
+\datestrut \Th & 27 & & 30 & 27 & & 29 \\
+\cline{1-2}\cline{4-5}\cline{7-7}
+\datestrut \Fr & 28 & & 31 & 28 & & 30 \\
+\cline{1-2}\cline{4-5}\cline{7-7}
+\datestrut \Sa & 29 & & & 29 & & \\
+\cline{1-2}\cline{5-5}
+\datestrut \Su & 30 & & & 30 & & \\
+\hline\hline
+\datestrut \Mo & 31 & & & & & \\
+\hline
+\end{tabular}
+{\ } \\
+\textsc{ctan}/macros/latex/contrib/other/yplan/%
+yplan00A.tex% \hfill\hbox{\copyright\ 2000\ RWD Nickalls}
+\end{table}
+%-----------------
+\end{document}
diff --git a/macros/latex/contrib/yplan/yplan00b.tex b/macros/latex/contrib/yplan/yplan00b.tex
new file mode 100644
index 0000000000..3194137226
--- /dev/null
+++ b/macros/latex/contrib/yplan/yplan00b.tex
@@ -0,0 +1,185 @@
+%% yplan00b.tex
+%% Vertical Year planner calendar (July to December 2000)
+%% ---------------------
+%% Date: August 4th, 1999
+%% -----------------------------------------------
+%% Copyright 1999 RWD Nickalls & Harald Harders
+%% This program can be redistributed and/or modified
+%% under the terms of the LaTeX Project Public License
+%% Distributed from CTAN archives in directory
+%% macros/latex/base/lppl.txt; either version 1 of
+%% the License, or any later version.
+%% -----------------------------------------------
+%% Dr RWD Nickalls,
+%% Department of Anaesthesia,
+%% City Hospital,
+%% Nottingham, UK.
+%% dicknickalls@compuserve.com
+%% TEL: +44-(0)-115-9691169 Ext:45637
+%% FAX: +44-(0)-115-9627713
+%%
+%% Harald Harders
+%% harald.harders@dlr.de
+%% ---------------------
+%% This year planner is for everyone who does not
+%% have a decent year planner in their diary.
+%% As usual, Necessity was the Mother of this invention.
+%% International support added by Harald Harders, 1999.
+%% ...enjoy!
+%% ---------------------
+%% Designed for LaTeX 2e, although it can be easily adapted for
+%% use with LaTeX 2.09, since it is only a big table.
+%% However when using yplan.sty the adaption to LaTeX 2.09
+%% is not possible anymore.
+%%
+%% The vertical size can be adjusted by changing \datestrut.
+%%
+%% You can switch the language to either
+%% english, german, french, spanish, italian, portuguese
+%% by inserting the line \usepackage[<language>]{yplan}
+%% immediately after the \documentclass command.
+%% You have to replace <language> by your language name.
+%% In addition, you may use month names in lowercase letters (With an
+%% uppercase first letter) by adding the keyword lowercase to the
+%% optional parameters of the \usepackage command, e.g.
+%% \usepackage[german,lowercase]{yplan}
+%% Default: english with uppercase months
+%%
+%%----------------------------------
+\documentclass[a4paper]{article}
+%\usepackage[german,lowercase]{yplan}
+%%------------------------------------
+\setlength{\topmargin}{-1cm}
+\setlength{\oddsidemargin}{-13.5mm}
+\setlength{\textwidth}{18.5cm}
+%%
+%% Default language: english with uppercase months
+\def\January{JANUARY}
+\def\February{FEBRUARY}
+\def\March{MARCH}
+\def\April{APRIL}
+\def\May{MAY}
+\def\June{JUNE}
+\def\July{JULY}
+\def\August{AUGUST}
+\def\September{SEPTEMBER}
+\def\October{OCTOBER}
+\def\November{NOVEMBER}
+\def\December{DECEMBER}
+\def\Mo{Mo}
+\def\Tu{Tu}
+\def\We{We}
+\def\Th{Th}
+\def\Fr{Fr}
+\def\Sa{Sa}
+\def\Su{Su}
+\def\leapyear{\textsc{leap year}}
+%%
+%%
+\newcommand{\monthstrut}{\rule{0pt}{12pt}}
+%% \monthstrut controls the white space above the month.
+%%
+\newcommand{\datestrut}{\rule{0pt}{12pt}}
+%% \datestrut controls the white space above the date.
+%%--------------------------------------
+\begin{document}
+%%---------------
+%% no pagenumbering
+\thispagestyle{empty}
+%%--------------------
+\begin{table}
+\hspace{1cm}{\LARGE 2000}\hspace{8mm}\leapyear\\
+{\ } \\
+\begin{tabular}{|c||p{2.5cm}|p{2.5cm}|p{2.5cm}|p{2.5cm}|p{2.5cm}|p{2.5cm}|}
+\hline
+ \multicolumn{1}{|c||}{\monthstrut\ } &
+ \multicolumn{1}{|c|}{\July} &
+ \multicolumn{1}{|c|}{\August} &
+ \multicolumn{1}{|c|}{\September} &
+ \multicolumn{1}{|c|}{\October} &
+ \multicolumn{1}{|c|}{\November} &
+ \multicolumn{1}{|c|}{\December} \\
+\hline
+\hline
+%% July Aug Sept Oct Nov Dec
+\datestrut \Mo & & & & & & \\
+\cline{1-1}\cline{3-3}
+\datestrut \Tu & & 1 & & & & \\
+\cline{1-1}\cline{3-3}\cline{6-6}
+\datestrut \We & & 2 & & & 1 & \\
+\cline{1-1}\cline{3-3}\cline{6-6}
+\datestrut \Th & & 3 & & & 2 & \\
+\cline{1-1}\cline{3-4}\cline{6-7}
+\datestrut \Fr & & 4 & 1 & & 3 & 1 \\
+\cline{1-4}\cline{6-7}
+\datestrut \Sa & 1 & 5 & 2 & & 4 & 2 \\
+\hline
+\datestrut \Su & 2 & 6 & 3 & 1 & 5 & 3 \\
+\hline\hline
+\datestrut \Mo & 3 & 7 & 4 & 2 & 6 & 4 \\
+\hline
+\datestrut \Tu & 4 & 8 & 5 & 3 & 7 & 5 \\
+\hline
+\datestrut \We & 5 & 9 & 6 & 4 & 8 & 6 \\
+\hline
+\datestrut \Th & 6 & 10 & 7 & 5 & 9 & 7 \\
+\hline
+\datestrut \Fr & 7 & 11 & 8 & 6 & 10 & 8 \\
+\hline
+\datestrut \Sa & 8 & 12 & 9 & 7 & 11 & 9 \\
+\hline
+\datestrut \Su & 9 & 13 & 10 & 8 & 12 & 10 \\
+\hline\hline
+\datestrut \Mo & 10 & 14 & 11 & 9 & 13 & 11 \\
+\hline
+\datestrut \Tu & 11 & 15 & 12 & 10 & 14 & 12 \\
+\hline
+\datestrut \We & 12 & 16 & 13 & 11 & 15 & 13 \\
+\hline
+\datestrut \Th & 13 & 17 & 14 & 12 & 16 & 14 \\
+\hline
+\datestrut \Fr & 14 & 18 & 15 & 13 & 17 & 15 \\
+\hline
+\datestrut \Sa & 15 & 19 & 16 & 14 & 18 & 16 \\
+\hline
+\datestrut \Su & 16 & 20 & 17 & 15 & 19 & 17 \\
+\hline\hline
+\datestrut \Mo & 17 & 21 & 18 & 16 & 20 & 18 \\
+\hline
+\datestrut \Tu & 18 & 22 & 19 & 17 & 21 & 19 \\
+\hline
+\datestrut \We & 19 & 23 & 20 & 18 & 22 & 20 \\
+\hline
+\datestrut \Th & 20 & 24 & 21 & 19 & 23 & 21 \\
+\hline
+\datestrut \Fr & 21 & 25 & 22 & 20 & 24 & 22 \\
+\hline
+\datestrut \Sa & 22 & 26 & 23 & 21 & 25 & 23 \\
+\hline
+\datestrut \Su & 23 & 27 & 24 & 22 & 26 & 24 \\
+\hline\hline
+\datestrut \Mo & 24 & 28 & 25 & 23 & 27 & 25 \\
+\hline
+\datestrut \Tu & 25 & 29 & 26 & 24 & 28 & 26 \\
+\hline
+\datestrut \We & 26 & 30 & 27 & 25 & 29 & 27 \\
+\hline
+\datestrut \Th & 27 & 31 & 28 & 26 & 30 & 28 \\
+\hline
+\datestrut \Fr & 28 & & 29 & 27 & & 29 \\
+\cline{1-2}\cline{4-5}\cline{7-7}
+\datestrut \Sa & 29 & & 30 & 28 & & 30 \\
+\cline{1-2}\cline{4-5}\cline{7-7}
+\datestrut \Su & 30 & & & 29 & & 31 \\
+\hline\hline
+\datestrut \Mo & 31 & & & 30 & & \\
+\cline{1-2}\cline{5-5}
+\datestrut \Tu & & & & 31 & & \\
+\hline
+\end{tabular}
+{\ } \\
+\textsc{ctan}/macros/latex/contrib/other/yplan/%
+yplan00B.tex% \hfill\hbox{\copyright\ 2000\ RWD Nickalls}
+\end{table}
+%--------------
+\end{document}