HISTORY file for `gcal'. Incomplete history (dates and events from my brain): v3.01 20000630 Some minor changes in the `doc/LL/texi/gcal.texi' documentation (fixed some typos and extended the manuals with description text for the new options). Now, text variable references like `$[FORMAT]TVAR TEXT' at the beginning of a Gcal resource file are expanded correctly if the contents of the TVAR that is used with the FORMAT instruction results in a *valid* Gcal date-part, that may be used in a resource file line. Now, the `--execute-command' option also works correctly for global text variable assignments like `-r$a?echo $HOME' or `-r$b=expr 2 + 2 2>&1' if it is written *before* such a text variable option in the command line (Sorry, it still does not work if it is given *behind* such a text variable option in the command line). Changed behavior of Gcal in terms how it choses the default style of year calendar sheets if the `--type' option is used. Fixed some typos in `./doc/mksamp.in'. Now, the `--grouping-text[=TEXT]' option also recognizes a '^'-CARET character for line break-up, global $TVAR references and `%?'... special texts that are used for text replacement. New `--heading-text=TEXT' option that can be used to create a self-defined title text for the fixed date list. The TEXT argument may contain '~'-TILDE and '^'-CARET characters for line break-up, global $TVAR references and `%?'... special texts that are used for text replacement. Fixed a typo in `./data/scripts/v2x2v300.pl'. Changed layout of Copyright texts to improve the legal clearness. Increased the version number to 3.01. v3.00 20000607 Some major changes in the `doc/LL/texi/gcal.texi' documentation. Changed my old and momentary (20000527) recent <esken@uni-muenster.de> eMail address to <esken@gmx.net>, because I do not know for how long my old address will remain valid. At any case, the <esken@gmx.net> eMail account will hopefully be available for a long time. Changed <bug-gnu-utils@gnu.org> eMail address to <bug-gcal@gnu.org>. The new `--cycle-end=ARG' and `--cycle-step=ARG' options can be used for flexibly displaying a table of astronomical %sun* and %moon* special text times and data within a given time interval that is valid for a single day. If the `--cycle-end=ARG' option is given, the argument of the `--time-offset' option serves as the CYCLE-START value! Changed behavior of ``empty'' text variables TVAR, which are not displayed AS-IS anymore if referenced. New `--adjust-value=ARG' option for setting a user-defined rise/set-based reference altitude which is respected by the %sun* and %*moon special texts, respectively, the shadow length factor that is respected by the %sun* special texts. New `--atmosphere=ARG' option for setting the air pressure and temperature, which are the main values to calculate the actual amount of atmospheric refraction that is respected by some times and data of the %sun* and %moon* special texts. If the air pressure argument is set to a value less equal zero, the %sun* and %moon* special texts do not correct some times and data by the amount of atmospheric refraction. The new `misc/mrms/*' files can be used to display the times at which moonset/moonrise has happened in the past resp., will happen in the future, based on the actual local time for several geographic locations around the world. Outsourced the astronomical functions into the new files `src/hd-astro.c', `src/hd-astro.h', `src/rc-astro.c' and `src/rc-astro.h'. Added new `data/bkk.rc', `data/ms.rc', `data/de-mdata.rc', `data/de-sdata.rc', `data/mdata.rc', `data/sdata.rc' and `data/sun-moon.rc' demonstration resource files. Increased the version number to 3.00. v2.50 20000303 Increased the year of copyright to 2000. Updated `doc/texinfo.tex' file (version 1999-10-01.07). Updated `doc/calendar.faq' file (Version 2.1 - 10 Oct 1999). Added four new `%?[ARG]' "special texts with other argument" for displaying moonrise, moonset, Moon's day length and Moon's night length approximately (%(, %), %[ and %]). Changed behavior of the `--starting-day' and `--type' options, which do not implicitly enable a month calendar sheet anymore. If the date given as an argument to the `--gregorian-reform' option is beyond the actual (Gregorian) system date, the actual (Gregorian) system date and a date which is given by the actual date modifier %DATE will be automatically converted to the proper proleptic Julian calendar date now. The maximum year number which may be given as an argument to the `--gregorian-reform' option is 10002 now. So it is possible to calculate proleptic Julian calendars likewise Chinese/Japanese calendar holidays/months until 31-Dec-9999. Changed behavior when analyzing the NLS $LANGUAGE, $LC_* and $LANG i18n environment variables. Any of these environment variables which are defined, but have an empty value, are unrespected now. Removed a bug that occurred when display time values, and that time values like `11:60' are now correctly displayed as `12:00'. New `--precise' option for displaying the precise, non-rounded, data and times of the %sun*, %moon* and %distance special text. New `--limit' option for displaying only the sunrise and sunset times of the %sun* special text which appear on the actual day. Improved astronomical functions (Sun/Moon times and data). Added 273 new countries/territories, which can be accessed by using the `--cc-holidays=CC[+CC+...]' option. New `--time-offset=ARG' option for setting a time offset value added, which is respected by `--astronomical-holidays' (Moon phase, solar and lunar eclipse, equinox, solstice), `--zodiacal-marker-holidays', `--celtic-holidays', `--chinese-flexible-holidays', `--chinese-flexible-months', `--japanese-flexible-holidays', `--japanese-flexible-months' and `--multicultural-new-year-holidays'. So it is possible to calculate such astronomically based events based on localtime instead of UT/GMT only. Works also for the %sun* and %moon* special texts. New `--bahai-months' option for including the Bahai calendar months into the eternal holiday list added. New `--chinese-flexible-months' option for including the Chinese calendar months based on the meridian given as a time factor by the `--time-offset' option into the eternal holiday list added. New `--chinese-months' option for including the Chinese calendar months into the eternal holiday list added. New `--coptic-months' option for including the Coptic calendar months into the eternal holiday list added. New `--ethiopic-months' option for including the Ethiopic calendar months into the eternal holiday list added. New `--french-revolutionary-months' option for including the French Revolutionary calendar months into the eternal holiday list added. New `--hebrew-months' option for including the Hebrew calendar months into the eternal holiday list added. New `--indian-civil-months' option for including the Indian civil calendar months into the eternal holiday list added. New `--islamic-civil-months' option for including the Islamic civil calendar months into the eternal holiday list added. New `--japanese-flexible-months' option for including the Japanese calendar months based on the meridian given as a time factor by the `--time-offset' option into the eternal holiday list added. New `--japanese-months' option for including the Japanese calendar months into the eternal holiday list added. New `--old-armenic-months' option for including the Old-Armenic calendar months into the eternal holiday list added. New `--old-egyptic-months' option for including the Old-Egyptic calendar months into the eternal holiday list added. New `--persian-jalaali-months' option for including the Persian ``Jalaali'' calendar months into the eternal holiday list added. New `--astronomical-holidays' option for including some astronomical data (Moon phase, equinox, solstice) into the eternal holiday list added. New `--bahai-holidays' option for including some Bahai calendar holidays into the eternal holiday list added. New `--celtic-holidays' option for including some Celtic calendar holidays into the eternal holiday list added. New `--chinese-flexible-holidays' option for including some Chinese calendar holidays based on the meridian given as a time factor by the `--time-offset' option into the eternal holiday list added. New `--chinese-holidays' option for including some Chinese calendar holidays into the eternal holiday list added. New `--hebrew-holidays' option for including some Hebrew calendar holidays into the eternal holiday list added. New `--islamic-civil-holidays' option for including some Islamic civil calendar holidays into the eternal holiday list added. New `--japanese-flexible-holidays' option for including some Japanese calendar holidays based on the meridian given as a time factor by the `--time-offset' option into the eternal holiday list added. New `--japanese-holidays' option for including some Japanese calendar holidays into the eternal holiday list added. New `--multicultural-new-year-holidays' option for including some multicultural New Year's Day holidays into the eternal holiday list added. Now, all dates of Easter-based holidays of the Orthodox Christian Eastern churches are implicitly converted to the appropriate Gregorian date according to the Gregorian Reformation period as respected in Greece. New `--orthodox-old-holidays' option for including some Orthodox Christian Eastern churches old calendar holidays into the eternal holiday list added. New `--orthodox-new-holidays' option for including some Orthodox Christian Eastern churches new calendar holidays into the eternal holiday list added. New `--persian-jalaali-holidays' option for including some Persian ``Jalaali'' calendar holidays into the eternal holiday list added. New `--zodiacal-marker-holidays' option for including some Zodiacal marker data (aka the Chinese/Japanese major/minor solar terms resp., aka the Chinese ZhongQi's/JieQi's) into the eternal holiday list added. Removed the `--without-standard-holidays' option. Removed a bug that occurred during century leap years when displaying holidays of Orthodox Churches. When using an external pager via $PAGER environment variable, possible command line arguments stored there are passed now. Changed option `--mail=ADDRESS' to `--mail[=ADDRESS]'. If no ADDRESS is specified, use contents of $MAILTO as ADDRESS. If $MAILTO is not set, use contents of $USER as ADDRESS. If $USER is not set, use contents of $LOGNAME as ADDRESS. If $LOGNAME is not set, do not send eMail. New text variable assignment `TVAR?COMMAND' implemented, which assigns that text to TVAR --interpreted by Gcal--, which is created by the COMMAND on the STDOUT channel. This kind of assigment is performed only in case the `--execute-command' option is given. New text variable assignment `TVAR:COMMAND' implemented, which assigns that text to TVAR --uninterpreted by Gcal--, which is created by the COMMAND on the STDOUT channel. This kind of assigment is performed only in case the `--execute-command' option is given. Removed the highlighting from the help screens and changed the layout of the basic help screen (`--help' option). Removed fixed date modifier [B] (== `--bypass-shell-command') completely but added `--execute-command' instead, which is set to FALSE by default for safer program execution. Changed the file searching mechanism for resource, response, and user included files, and that searching by using the GCALPATH environment variable is done prior before searching by using the HOME environment variable. Added `doc/mksamp.in' and the SED scripts `mks1sed.in' (expanded to `mksamp-1.sed'), and `mks2sed.in' (expanded to `mksamp-2.sed') for generating Texinfo files from the `doc/LL/examples/*.in' examples template files ready to include into the `doc/LL/texi/gcal.texi' documentation. Added all example resource files from the Gcal Texinfo reference manual to the `doc/LL/examples/' subdirectories. A '-' character leading one of the `%?' "special texts without any argument" (`%[FORMAT]y', `%[FORMAT]m', `%[FORMAT]w' and `%[FORMAT]d') switches the sign of the computed value. Renamed the Gcal supported environment variable LINES to GCAL_LINES, COLUMNS to GCAL_COLUMNS, LI to LINES and CO to COLUMNS. Changed `doc/Makefile.in' target `info' so it creates 8-bit `doc/LL/gcal.info*' files assuming the next official release of Texinfo's `info' reader supports 8-bit characters. New `Makefile.in' and `doc/Makefile.in' target `html' implemented so that `doc/LL/gcal.html' files are now part of the distribution. Removed `doc/Makefile.in' target `txt' so that no 8-bit plain text `doc/LL/gcal.txt' files are part of the distribution anymore. Added new `doc/LL/txi-LL.tex' files. The new `misc/wloc/*' files can be used to create location files which contain the air line distances and the direction/course angles between several geographic locations around the world. The new `misc/ddiff/*' files can be used to create Gcal location resource files which contain the day/night lengths and differences for all days of the year for any location around the world. Added new `data/birthday.rc', `data/wloc.rc', `data/wtt1.rc', `data/wtt2.rc' and `data/wtt3.rc' demo resource files. Added new `%[FORMAT]?[ARG]' "special text with other argument" for displaying either the air line distance between two geographical point locations or the course/direction angle between two geographical point locations (%b). Fixed date modifier [J] (== `--suppress-text-part') added. New `--transform-year=BASE_YEAR' option for setting the base year of the calendar. The text converters `src/txt2gcal.c' and `src/gcal2txt.c' also respect the optional format instruction which can be used by many special texts `%?'... and all text variables TVAR. New command implemented: MM-MM JJJJ+JJJJ which displays a range of selected months of specified years. New `--suppress-holiday-list-separator' option (== `-G') for suppressing the leading blank line shown before the holiday list title added. New `--translate-string=TEXT' option for defining the translatable country specific special character pairs added. Added new `%[FORMAT]?[ARG]' "special text with other argument" for displaying the current system time total minutes (%'). Added new `%[FORMAT]?[ARG]' "special text with other argument" for displaying the current system time hour (%_). Added new `%[FORMAT]?[ARG]' "special text with other argument" for displaying the current system time minute (%?). Added new `%[FORMAT]?[ARG]' "special text with other argument" for displaying the current system time am|pm suffix (%{). Added new `%[FORMAT]?[ARG]' "special text with other argument" for displaying the current GMT total minutes (%`). Added new `%[FORMAT]?[ARG]' "special text with other argument" for displaying the current GMT hour (%.). Added new `%[FORMAT]?[ARG]' "special text with other argument" for displaying the current GMT minute (%/). Added new `%[FORMAT]?[ARG]' "special text with other argument" for displaying the current GMT am|pm suffix (%}). Added new `%?[ARG]' "special text with other argument" for displaying the RFC-822 style numeric timezone offset value which is based on the local time zone (%=). Added new `%?[ARG]' "special text with other argument" for displaying the RFC-822 style numeric timezone offset value which is based on the UT/GMT zone (%"). Russian translation by Oleg S. Tihonov. Created AWK/Perl `data/scripts/v2x2v300' scripts for converting all `%?'... special texts of former Gcal versions into their "new" style. The new `misc/srss/*' files can be used to display the times at which sunset/sunrise has happened in the past resp., will happen in the future, based on the actual local time for several geographic locations around the world. Removed the obsolete `misc/wdays.*' files, see `misc/README' for further information. By reason of implementing the optional format instruction which can be used by many format elements in the date format text now, the burned-in default country specific date formats for `DE == Germany', `US == U.S.A.' and `GB == Great Britain', which can be specified by the `--date-format' option are obsolete now and are changed to: CC Old-style New-style DE `%w, %1%D%2 %b %y' == `%<2#K, %1%>2*D%2 %<3#U %>04*Y' US `%W, %b %1%U%2 %y' == `%<3#K, %<3#U %1%>2&*D%2 %>04*Y' GB `%W, %1%U%2 %b %y' == `%<3#K, %1%>2&*D%2 %<3#U %>04*Y' By reason of implementing the optional format instruction which can be used by many date format texts now, some format elements which can be individually specified by the `--date-format' option are obsolete now and are changed to: Symbolic name Old-style New-style %day number `%d' == `%>02*D' %day number +LS `%D' == `%>2*D' %day number +LZ ONS `%u' == `%02&*D' %day number +LS ONS `%U' == `%>2&*D' %complete month name `%B' == `%U' %3-letter month name `%b' == `%<3#U' %month number +LZ `%m' == `%>02*M' %month number +LS `%M' == `%>2*M' %complete year number +LZ `%y' == `%>04*Y' %complete year number +LS `%Y' == `%>4*Y' %last-2-digit year number +LZ `%z' == `%>02#Y' %last-2-digit year number +LS `%Z' == `%>2#Y' %complete weekday name `%A' == `%K' %3-letter weekday name `%W' == `%<3#K' %2-letter weekday name `%w' == `%<2#K' Legend: +LZ == With leading zero(es) +LS == With leading space(s) ONS == With Ordinal Number suffix By reason of implementing the optional format instruction which can be used by many special texts in the text part of a resource file line now, some of these special texts are obsolete now and are changed to: Symbolic name Old-style New-style %complete weekday name `%o' == `%K' %3-letter weekday name `%O' == `%>3#K' %2-letter weekday name `%K' == `%>2#K' %weekday number (Mon=1...Sun=7) `%S' == `%W' %weekday number (Mon=1...Sun=7) ONS `%I' == `%>1&*W' %weekday number (Mon=0...Sun=6) ONS `%J' == `%>1&*E' %weekday number (Sun=1...Sat=7) `%(' == `%I' %weekday number (Sun=1...Sat=7) ONS `%<' == `%>1&*I' %weekday number (Sun=0...Sat=6) `%)' == `%J' %weekday number (Sun=0...Sat=6) ONS `%>' == `%>1&*J' %weekday number (Mon=1...Sun=7) FLX `%[' == `%S' %weekday number (Mon=1...Sun=7) FLX ONS `%{' == `%>1&*S' %weekday number (Mon=0...Sun=6) FLX `%]' == `%T' %weekday number (Mon=0...Sun=6) FLX ONS `%}' == `%>1&*T' %day-of-year number `%+' == `%N' %day-of-year number +LZ `%*' == `%>03*N' %day-of-year number ONS `%&' == `%>1&*N' %day-of-year number +LZ ONS `%#' == `%>03&*N' %day number +LZ `%N' == `%>02*D' %day number ONS `%s' == `%>1&*D' %day number +LZ ONS `%u' == `%>02&*D' %complete month name `%M' == `%U' %3-letter month name `%T' == `%>3#U' %month number `%U' == `%M' %month number +LZ `%W' == `%>02*M' %month number ONS `%z' == `%>1&*M' %month number +LZ ONS `%Z' == `%>02&*M' %complete year number +LZ `%=' == `%>04*Y' %age value (birthday) number `%b' == `%B' %age value (birthday) number ONS `%B' == `%>1&*B' %moon phase `%-' == `%O' %moon phase +LZ `%_' == `%>03*O' %moon phase text graphics image `%:' == `%Z' Legend: +LZ == With leading zero(es) FLX == Flexible starting day of week (`-s N' option) ONS == With Ordinal Number suffix Now, many special texts `%?'... and all text variables TVAR may be provided with an optional format instruction which template is: [ALIGNMENT [SIGN] [LZERO] WIDTH [STYLE] [SUFFIX] FORMAT] (must be given in above mentioned order), e.g., `$:+010&#a' or `%>20&*Y'. ALIGNMENT: < == adjusts field contents at the left margin using width WIDTH. : == adjusts field contents in centered manner using width WIDTH. > == ajdusts field contents at the right margin using width WIDTH. SIGN : + == a numerical value is always lead by its sign. LZERO : 0 == a numerical value is filled up to WIDTH leading zeroes inclusivly a possibly leading explicit SIGN or an implicitly leading negative sign.. WIDTH : N == is the width N of the field (1...256). STYLE : u == converts field contents to upper-case letters. l == converts field contents to lower-case letters. w == converts field contents to capitalized words. SUFFIX : & == a numerical value is provided with an ordinal number suffix. FORMAT : * == does not cut the field contents after position WIDTH if it is longer than WIDTH. # == cuts the field contents after position WIDTH if it is longer than WIDTH. New files `src/common.h', `src/globals.h', `src/rc-defs.h', `src/hd-defs.h', `src/file-io.h', `src/hd-data.h', `src/hd-use.h', `src/help.h', `src/print.h', `src/rc-check.h', `src/rc-insert.h', `src/rc-use.h', `src/rc-utils.h', `src/tty.h', `src/utils.h', `src/gcal2txt.h', `src/tcal.h' and `src/txt2gcal.h' created. The `--cc-holidays=CC[+CC+...]' option now allows to select more country specific holidays (partially incomplete), which are: CC Country ae United Arab Emirates ag Antigua and Barbuda ai Anguilla an Netherlands Antilles ar Argentina aw Aruba bb Barbados br Brazil cl Chile cn China co Colombia cr Costa Rica cy Cyprus dm Dominica ec Ecuador eg Egypt gd Grenada gp Guadeloupe id Indonesia ie Ireland is Iceland jo Jordan jp Japan kn St. Kitts and Nevis kr Republic of Korea lc St. Lucia li Liechtenstein lu Luxembourg mq Martinique ms Montserrat my Malaysia nz New Zealand pe Peru ph Philippines ro Romania ru Russian Federation sg Singapore sk Slovakia tr Turkey tt Trinidad and Tobago tw Taiwan uy Uruguay vc St. Vincent and Grenadines ve Venezuela vg British Virgin Islands vi U.S. Virgin Islands za South Africa The configuration step now detects the proper program for copying files. Version 1.6 of `misc/gcalltx/gcalltx.pl' added, which superseeds previous versions. Fixed a bug that occurred in case the `--starting-day' longoption was used with the argument `0'. Fixed a bug that caused a core dump in case the argument ARG given to the `--date-format' longoption contained a trailing single backslash character. Fixed a bug that caused a wrong error message in case either the `--gregorian-reform' or the `--date-format' longoption argument was an 'a' or 'A' character only. Increased the version number to 2.50. v2.41 19980712 Version 1.5 of `misc/gcalltx/gcalltx.*' added. Added new `%?[ARG]' "special text with other argument" for displaying the actual Greenwich Mean Time (%@). Improved math emulation code (still slow). Option `--resource-file=-[+...]' resp., `-f|F-[+...]' reads from stdin channel now; `-f|F -[+...]' still searches for a file by the name of `-'. Changed the definition for a %time "special text with other argument", which template was `%t[12|24]' and is now defined as `%t[*][[+|-]MMMM|HH:[MM]]'. Updated to GNU `gettext' version 0.10.35. New `doc/ISO_6709' file. Updated `doc/ISO_3166' file (1997/01/07). Added four new `%?[ARG]' "special texts with other argument" for displaying sunrise, sunset, day length and night length approximately (%o, %s, %u and %z). Improved the processing speed of the `tcal' program in case it has to deal with ``large'' displacement values. Changed the upper-case metatexts indicating the year (yyyy), month (mm) etc. to lower-case texts in Gcal's help screens. The new `misc/dst/*' files convert ZONEINFO Daylight Saving Time informations into Gcal's fixed date format. The `tcal' program uses `execvp()' instead of `system()' now for running the Gcal executable. Fixed date modifier [a] (== `--include-resource-file-name') also puts the line number of the fixed date into output. Updated `doc/texinfo.tex' file (v2.227 - 1998/02/25). Changed <bug-gnu-utils@prep.ai.mit.edu> eMail address to <bug-gnu-utils@gnu.org>. Added more information text about Gcal's current i18n default mode in the version text. New `--iso-week-number=yes|no' option for determing the type of week numbers used in the calendar sheet and the fixed date list. Implemented some basic operations on text variables which are allowed in case TVAR contains an integer value: TVAR++ TVAR-- TVAR+=[+|-]N TVAR-=[+|-]N Extended the basic date variable operation `DVAR+=N' to `DVAR+=[+|-]N'. Extended the basic date variable operation `DVAR-=N' to `DVAR-=[+|-]N'. Extended definition of real Julian day number special text from `%j[[-]N]' to `%j[[+|-]N]'. Renamed the `--exit-status-help-127' option to `--exit-status-help-non-zero'. New `--ignore-case' option for ignoring case distinctions in both the PATTERN and the text part of a resource file line, if the `--filter-text=PATTERN' option is specified. New `--revert-match' option for reverting the sense of matching, i.e. to select non-matching lines, in case the `--filter-text=PATTERN' option is specified. If the text part of a resource file line contains managed highlighting sequences (%1, %2... special texts) and the `--filter-text=PATTERN' option is given, the inserted ``real'' highlighting sequences remain unrespected now by the regular expression search. The temporary file which is created if the `--here=LINE' option is specified, is always taken from the actual directory in case no absolute file name is created for it, instead of searching it like it were an ordinary resource file. Fixed a bug that caused a neverending loop in the "number of productions" optimization step in the `rc_check()' function of `rc-check.c' in case an "appears" field was given in the date part of a resource file line. Removed a bug (changed format width from 2 to 3 digits) which occurred in the two `%?[DATE]' "special texts with date argument" used for displaying a day number with leading zeroes (`%*' and `%#'). The new `misc/moon/*' files show how advanced use of Gcal can be done in shell script files. The new `misc/daily/*' files demonstrate how basic time management of fixed dates can be done. Added new `%?TEXT' "special texts with text argument" for displaying the contents of environment variables (%-). Corrected and added some Thai holidays (CC=th). New `misc/gcalmagic.add' for adding to `/etc/magic' file. Fixed date modifier [Q] (== `--suppress-fixed-dates-list-separator') for suppressing the leading blank line shown before the fixed date list title added. No post-search for files in the burned-in GCAL_???_DATADIR directories is performed anymore in case the GCAL_???_DATADIR environment variable is set, but the file is NOT found there. A few bugfixes in some `Makefile.in' files. Fixed a memory allocation bug in the `file_read_line()' function of `src/file-io.c' which occurred while expanding local text variables recursively. The private `./install-inf.in' script doesn't create a basic `dir' file anymore in case no `dir.texi' file is found in the users `@infodir@' and a `dir' file is already existing there. Some minor changes in the `doc/LL/texi/gcal.texi' documentation. Increased the version number to 2.41. v2.40 19970625 Polish translation by Wojciech Marek Galazka. Added `doc/calendar.faq' file (C)opyright 1997 by Claus Tondering <c-t@pip.dknet.dk>, thanks Claus. Internationalized the `ARG' text which is used in help pages. Added six new `%?' "special texts without any argument" for conditionally highlighting of text (%5 , %6 ... %9 and %0). Fixed date modifier [U] (== `--suppress-date-part') added. Removed the `-m ADDRESS' short-style option for sending eMails. Fixed a memory allocation bug that occurred while resizing the internal string buffers in some cases. The `--biorhythm-axis=NUMBER' option can be used now for setting the width of a `%;[DATE]' biorhythm text graphics (NUMBER within the range of 1...100, the default width of a single axis is 20 characters). Added two new `%?[DATE]' "special texts with date argument" for displaying the biorhythm cycle (%, and %;). The `--moonimage-lines=NUMBER' option can be used now for setting the number of lines of a `%:[DATE]' Moon phase text graphics (NUMBER within the range of 6...30, the default height of the image are 12 lines). Updated to GNU `gettext' version 0.10.27. Swedish translation by Johan Linde. Improved signal handling. The `--here=LINE' option (== `-# LINE') can be used now for defining resource file lines, which are additionally processed at last in each resource file processing cycle. Added three new `%?[DATE]' "special texts with date argument" for displaying the Moon phase approximately (%- , %_ and %:). Increased the version number to 2.40, because version 2.30 was an inofficial beta testing release. v2.30 19970102 Changed layout of the texts which are emitted by the `--help', `license' and `--version' option. The `--orthodox-calendar' option (== `-O') can be used now for calculating the leap years as done by the Eastern orthodox churches. Corrected the fixed date feature for that year in which the Gregorian Reformation have occurred. The burned-in Gregorian Reformation period 18-28 Feb 1753 (`--gregorian-reform=1753') is new. The burned-in Gregorian Reformation period 19-28 Feb 1700 (`--gregorian-reform=1700') is new. Added `data/GREG-REFORM' file. Updated `intl/*' to a patched GNU `gettext' version 0.10.26. Increased the version number to 2.30, because version 2.20 was an inofficial beta testing release. v2.20 19961204 Dutch translation by Erick Branderhorst. French translation by Michel Robitaille. The MAILPROG environment variable can be used now for specifying the program which is used as the mailer. The new `--cc-holidays=CC[+CC+...]' option now allows to select the country specific holidays which are part of the eternal holiday list. Already supported country specific holidays are: CC Country -- ------- at Austrian holidays au Australian holidays be Belgian holidays ca Canadian holidays ch Swiss holidays cz Czech holidays de German holidays dk Danish holidays es Spanish holidays fi Finnish holidays fr French holidays gb British holidays gr Greek holidays hu Hungarian holidays it Italian holidays mx Mexican holidays nl Dutch holidays no Norwegian holidays pl Polish holidays pt Portuguese holidays se Swedish holidays si Slovenian holidays th Thai holidays us U.S. American holidays Removed the `--de-holidays' and `--us-holidays' options. The `--without-standard-holidays' option disables all "standard" holidays. `doc/*/texi/gcal.texi' files conforming to GNU `Texinfo 3.8'. Fixed date modifier [Z] (== `--zero-dates-only') added. The `--filter-period=ARG' option (== `-P ARG') can be used now for displaying only those fixed dates which are matched by the ARG. ARG is one or more of the `%?[DATE]' "special texts with date argument" (without a leading '%' character and connected by a `,' character) used for date exclusion, means "inclusive/exclusive date period". The `--filter-day=ARG' option (== `-D ARG') can be used now for displaying only those fixed dates which are matched by the ARG. ARG is one or more of the `%?' "special texts without argument" (without a leading '%' character) used for date exclusion, means "inclusive/exclusive day period". Fixed date modifier [B] (== `--bypass-shell-command') added. Created the `gcal2txt' documentation. The `gcal2txt.c' file, which creates a verbatim text file from a Gcal resource file is part of distribution now. Error message #104 (invalid REGEX search pattern) is new. The `--filter-text=PATTERN' option (== `-I PATTERN')) can be used now for displaying only those fixed dates which are matched by the regular expression search pattern. A `^' character given in the "text"-part of a resource file line creates a real `\n' newline character (similar `~' character), except the fact that text breaked up by it isn't provided implicitly with leading blanks. Most files in `systems/os2' are rewritten by Kai Uwe Rommel <rommel@ars.de>. Created AWK/Perl scripts for converting all `%?'... special texts of former Gcal versions into their "new" style. A bunch of new special texts (the `%?'... things) implemented, which can be used in the text part of a resource file line. Outsourced the C function `insert_line_into_table()' of file `rc-check.c' into the new file `rc-insert.c' and respected this in all Makefile targets touched by this. Increased the version number to 2.20, because version 2.11 was an inofficial beta testing release. v2.11 19960823 Option `-K' respectively `--with-week-number' now provides the calendar sheets with ISO week numbers. The date variable `t' (yyyy@e|t|dvar[+|-]N[`www']) references the actual date now and has a special meaning therefore (likewise `e'). Supports `libncurses.a' now. Improved my private `install-info' shell script a bit. Removed the '\015' characters at the end of each line in the file `src/rc-check.c' (former `src/gcal-rcc.c'). Renamed most files in the `src/' directory. A few changes in the Texinfo documentation. Portability fixes and tiny optimizations in some of the `gcal' sources. v2.10 19960716 Rewrote the `tcal-sh' shell script as a C program. Several long-style options implemented like --today, --tomorrow, --week, --end-of-week, start-of-week, --month, --end-of-month, --start-of-month, --year, --end-of-year and --start-of-year, which are ALIAS names of the according modifiers of the -c|C[] short-style option. The German `.info' and `.txt' files likewise the German message catalog `de.po' are conforming the ISO-8859-1 character set now. My private `install-info' shell script now respects that `infodir', which is explicitly set during the configuration step by the installer. Re-formatted the BUGS, INSTALL, LIMITATIONS, README, SYMBOLS, THANKS, TODO, data/README and systems/README files. The new %z and %Z directive of --date-format=PRESET_VALUE|ARG option now allows to display the last two digits of a year. Updated to GNU `gettext' version 0.10.23. v2.01 19960617 The --version option informs about the compiler/OS used and the date of compilation now. See `THANKS' for more details. Added %k[yyyy[mm[dd|`www'[<n>]]]] macro, which is replaced by the ISO-week number of the current/specified date in the text part of a resource file line. Added %o[yyyy[mm[dd|`www'[<n>]]]] macro, which is replaced by the complete textual weekday name of the current/specified date in the text part of a resource file line. Fixed a bug in writing response/shell script files, which occurred if a "MM YYYY-YYYY" command must be written. Removed the lib/ directory and all references to it, because GNU `gettext' doesn't need it any longer for creating a libintl.a library, which is local to the package. Updated to GNU `gettext' version 0.10.14. A "text-part" of a resource file line may be provided now with leading whitespace characters if the first of these leading whitespace characters is quoted. Replaced all #elif C Preprocessor directives by #else...#if... cascades. More representations of the German `Umlaute' characters for several machines/character sets received by Bruno Haible <haible@ilog.fr>... thx Bruno:) C Preprocessor symbol USE_EASC reimplemented, which can be enabled during configuration step. Fixed a bug that causes an infinite program loop in case a range of days was given in a resource file and a displacement factor of a range component was outside the year bounds like `1996@e#-40sun'. Fixed a bug which occurred if the table of command line arguments (`my_argv[]') was resized during processing of response files. `const char *usage_msg()' prototype changed to `char *usage_msg()'. Performed a few changes in the Texinfo documentation (corrected xref's). v2.00 19960516 Created shell script file (-S ARG) now embraces all arguments passed to `gcal' with ' characters instead of " characters. Renamed --export-local-date-variables long-style option to --export-date-variables. The new --export-text-variables option now allows to export local text variables from file to file. The new --text-variable=ARG option (resp., -r ARG) now allows the definition of global text variables. Error message #105 (invalid text variable definition) is new. Implemented the use of global and local text variables (`tvar'->$a...$z), which can be set to ordinary text, %... macros and references to other text variables and are expanded resp., respected everywhere in a resource file line if referenced there. Removed the --assign=ARG long-style option. Eliminated a bug in `gcal_rcc.c', which occurred if string resizing was performed and more than one whitespace character was used for separating the "date-part" and the "text-part" of a line. New command implemented: mm/jjjj-jjjj or mm jjjj-jjjj which displays a range of a selected month of specified years. Documentation for `txt2gcal' and `tcal' created. Gcal package internationalized by means of the GNU gettext package (German message catalogs). Reorganized package structure. Changed symbol/environment variable GCAL_USR_LIBDIR to GCAL_USR_DATADIR and GCAL_SYS_LIBDIR to GCAL_USR_DATADIR. Changed default file name for GCAL_USR_LIBDIR from "$HOME/lib/gcal-lib" to "$HOME/share/gcal" and for GCAL_SYS_LIBDIR from "/usr/lib/gcal-lib" to "/usr/local/share/gcal". Renamed `gcal_cfg.hin' to standard `config.hin'. Fixed a bug in the `tcal' shell script (months July and August were not managed correctly). Some new date variable assignments/operations implemented: dvar=dvar[+|-]N --> Assignment of a date variable `dvar', advanced by plus/minus N days. dvar=dvar[+|-]N`www' --> Assignment of a date variable `dvar', advanced by plus/minus N weekdays `www'. dvar+=N`www' --> Addition of N weekdays `www'. dvar-=N`www' --> Subtraction of N weekdays `www'. An underscore ('_') character which is used in option arguments is converted to a real blank/space (' ') character now unless it's quoted like '\_'. The (pre)selected/defined "date format" is used now to set the attributes in calendar sheets. The new GCAL_DATE_FORMAT environment variable can be used to preset the date format, which is used to order a displayed date. The new --date-format=PRESET_VALUE|ARG option now allows flexible ordering of a displayed date. The contents of the GCALPATH environment variable will be used now on all systems for searching resource and response files. A highlighting management bug fixed which occurred if the -j option and the -jc[b] options are both given and highlighting must performed for holidays. New GNU long-style option mode implemented, which either allows the selection of a SPECIAL option argument or of a GIVEN option argument (see --gregorian-reform=YEAR|ARG, where ARG is a user defined Gregrorian Reformation date yyyy,mm,dd,dd). The `txt2gcal.c' file, which creates a verbatim Gcal resource file from a text file is part of distribution now. The contents of the TZ (timezone) environment variable is displayed now in the header part of created response files, shell script files and outgoing Emails. Serious bug in management of Termcap padding eliminated. Small bug eliminated, which occurred if %... text macros were quoted. The central `print_text()' function works a bit faster now. Changed the file searching mechanism with the effect, that files are no longer searched in the actual directory (sure, this can be forced by e.g.: `-f foo+./bar+./baz'). Revised "eternal holiday" list. Implemented the new run-time option --de-holidays, which provides the eternal holiday list with additional German holidays. The C Preprocessor symbols USE_CATH, USE_USHDY, EXIT_STAT_HLP, GREG_1582 and GREG_1752, which were selectable during the (Auto)configuration step, are made to run-time options of Gcal now (--christian-holidays, --us-holidays, --exit-status-help-127, --gregorian-reform=YEAR). The C Preprocessor symbol DEBUG, which was selectable during the (Auto)configuration step, is eliminated and thus default now. v1.01 19960320 My private `install-info' shell script is part of the distribution now. Rejected my specific copyright conditions, because these contradict the terms of the GPL. Some small bugfixes (the header file <sys/types.h> wasn't included properly) (several NON-ANSI function prototypes were buggy) (the German time separating character `.' wasn't respected). v1.00 19960309 Table sizes of all STRINGS are managed dynamically now. Specific copyright conditions are part of Gcal now, see the file COPYING2 for more information. The option `--starting-day=0' can now be specified as `--starting-day=today' respectively `-s today', too. The German program version now accepts the English day and month names if no appropriate German names are given. Added %1, %2, %3 and %4 macros for user defined text highlighting in the text part of a resource file. Unlimited nesting level of include files realized. Implemented the use of an optional "repetition" factor and an optional "appearance" factor, which can be added to the end of a date part of fixed dates, which are given in a resource file (`:' leads a repetition factor, `.' leads an appearance factor): yyyymmdd:N yyyymmdd:N.N yyyymmdd:N,[mm]dd:N.N ... yyyymmdd#[mm]dd.N yyyymmdd#[mm]`www'N.N yyyymm`www'N:N yyyymm`www'N:N.N yyyymm`www'N:N,[mm]`www'N:N.N ... yyyymm`www'N#[mm]`www'N.N yyyymm`www'N#[mm]dd.N yyyymm`www'#`www'.N [ All the above codings are allowed with the yyyy@e|dvar[+|-]N[`www'] and the yyyy*d|wN[`www'] date formats, too! ] Implemented optional lists and ranges of days, which can be added to the date part of fixed dates, which are given in a resource file (`,' is the list separator character, `#' the range separator character): yyyymmdd|`www'|`www'N,[mm]dd|[mm]`www'|[mm]`www'N ... yyyymm`www'#`www' yyyymm`www'N#[mm]`www'N yyyymmdd#[mm]`www'N yyyymm`www'N#[mm]dd yyyy*d|wN|N`www',N|N`www' ... yyyy*d|wN#N`www' yyyy*d|wN`www'#N yyyy*d|wN`www'#N`www' yyyy@e|dvar,|[+|-]N[`www'],[+|-]N[`www'],[+|-]N[`www'],[+|-]N[`www'] ... yyyy@e|dvar[+|-]N[`www']#[+|-]N[`www'] Gcal now checks for the existence of an external `pg' pager. Put all help screens, the software license and the version information into the new `gcal_hlp.c' file. Renamed `gcal_cfg.h.in' to `gcal_cfg.hin'. The subject for an outgoing Email is now created via the `-s' option of the `mail' program. Added %j[[-]N] macro (real Julian day number). Changed the `week number of year' text. A fixed date warning which results to a leap day (i.e. the 29'th February), is displayed at the 28'th February in non-leap years if the option `--leap-day=february' is given resp., at the 1'st March if the option `--leap-day=march' is given. Elimated a bug in `eval_longopt()' function which occurred if option `--usage=version' was given. Splitted the `rc_check()' and the `rc_use()' functions. The `--long-help=?' resp., `--usage=?' option now prints a list of all valid long-style options. Renamed `--hidden' option to `--export-local-date-variables'. Alternative format of fixed date list (--alternative-format resp., fixed date modifier [A]) implemented. Table size of `month_list[]' is managed dynamically now. Increased the version number to 1.00. v0.39 19951220 Fixed some bugs in the C sources. A positive displacement value for a date variable may either be given `@dvar+N' or `@dvarN' now. v0.38 19951213 Changed introduction text in `gcal-*.info*' files. `configure' script creates definition file `gcal_cfg.h' now. Corrected the buggy `Makefile' target "check". Added environment variable GCALANSI, which must be defined (not necessarily set) if ANSI escape highlighting sequences should be substituted respectively emitted by default. Redefined the "starting_day_of_week_option", which requires an argument now (--starting-day=ARG respectively -s ARG, and new ARG is 0 | 1|Mon|2|Tue|...|7|Sun). Short-style options which require an argument can be given now either in the `-Xfoo' or in the `-X foo' notation. --exclude-holiday-list-title resp., -X option excludes the title text of an eternal holiday list now. Independant use of standard dates, Julian dates and both standard- and Julian dates in calendar sheet (-j -jb), eternal holiday list (-jn -jnb) and fixed date warning list (-jc -jcb). Now all internal tables are checked if they are presorted to decide whether the `qsort()' function must be called. Improved the speed of the file reading function. Complete revision of -c|C[] modifier parsing. -c|C<n> option eliminated. -c|C[0]... for indicating a list eliminated, used further modifier [l] --list-mode instead. -c|Cmmwww<n>n is now -c|Cmmwww<n> without mode character 'n'. Further fixed date modifiers added ([0] indicates that a list instead of a single date is generated): [0]*d1...365|366|999 (== *d<n>) means absolute day <n> of year. [0]*d1...52|53|99www (== *d<n>www) means <n>'th weekday www of year. [0]*w0|1...52|53|99 (== *w<n>) means Monday of <n>'th week of year. [0]*w0|1...52|53|99www (== *w<n>www) means weekday `www' of <n>'th week of year. Date variables are able to manage the new date format now (e.g. dvar=*d<n>[www]). The %s..., %e..., %b... and %y... macros are able to manage the new date format now (e.g. %syyyy*d<n>[www]). Actual date modifier manages the new date formats now (%yyyy*d<n>[ww] resp., %yyyy*w<n>[www]). Included new date formats yyyy*d<n>[ww] and yyyy*w<n>[www] for encoding fixed dates in a resource file. Changed description text of `wn' to `www' (means short weekday name consisting of two or three characters). The number 99 encodes the last month mm of a year now. The number 99 encodes the last day dd of a month now. The number 999 encodes the last day of a year now. Changed default behavior of fixed date warning period modifiers t, w+, m+ and y+ (the produced list doesn't start today now). Option --include-today resp., fixed date modifier [d] is new. Option --shell-script=ARG resp., -S<NAME> creates a shell script for calling gcal with all given arguments of the command line and GCAL environment variable (similar the --response-file=ARG resp., -R<NAME> response file option). Option `-H yes' added, which forces the output of highlighting sequences if output is redirected/piped. Option --highlighting=yes is the equivalence of -H yes. Option --highlighting=no is the equivalence of -H no. -q[1..4] short style option doesn't exist anymore (changed to --debug[=list_of_arguments]). C Preprocessorsymbols USE_RC, USE_HLS and USE_PAGER are default now! Revised several long and short style options and changed their option character resp., mnemonic name. Revised documentation and help screens again. Revised configure.in, Makefile.in, MANIFEST, README, INSTALL, SYMBOLS and tcal. Table size of a `*rc_table[]' and `*my_argv[]' are allocated dynamically now. Use of my_malloc() and my_realloc() functions returning VOID_PTR in C source code now. UN*X man pages are shortend. Changed old FSF address to new address. v0.37 19951011 More long options implemented. Revised documentation. v0.36 19950804 Bugfix for OS/2 systems: gcal_tty.c: function v_vio_init() obsolete. makefile.emx: extended by USE_PAGER feature. Several typos in man-pages and Texinfo files corrected. The German "Umlaute" are supported now in dvi file of German Texinfo documentation. v0.35 19950727 Official distributed version. First version of Texinfo documentation created. v0.34 19950708 External pager is respected now. Another fiscal year command `:yyyy' added. Two further special 3 month modes added: command `.+': actual and next two month of current year. command `.-': actual and previous two month of current year. UN*X screen-size detection via ioctl() function. Termcap padding realized. Help screens updated. Email option -m|M<Email address> included, which sends gcal's output by mail(1) program to user. Extension of actual date modifier: %month name[dd], %weekday name[n], %dd. Global suppress calendar sheet option -u added. Renamed options: -f|F is -n|N now and vice versa. Added further "eternal holiday list" option -F for displaying legal days only. Bug-fixes. Actual date modifier %yyyy@<e|dvar>[[-]<n>[wn]] added. Further fixed date modifiers added: @dvar[[-]<n>] (Display fixed date warnings of day <n> relative date variables date of actual year; warning level is same as -c). 0@dvar[[-]<n>] (Display list of fixed date warnings, starting yesterday/tomorrow [depending on value given in <n>] and ending at <n>'th day relative date variables date of actual year; warning level is same as -cy). @<e|dvar>[-]<n>wn (Display fixed date warnings of <n>'th weekday `wn' relative Easter Sundays or date variables date of actual year; warning level is same as -c). 0@<e|dvar>[-]<n>wn (Display list of fixed date warnings, starting yesterday/tomorrow [depending on value given in <n>] and ending at <n>'th weekday `wn' relative Easter Sundays or date variables date of actual year; warning level is same as -cy). Some long options (--help --help-long --license --version) added. Error message #114 (invalid date variable operation), #113 (referenced date variable undefined) and #112 (Invalid date value assigned to date variable) included. Added further command line option for setting global date variables (-v<dvar=mmdd:dvar=dvar2...>). Implementation of simple global and local date variables and some basic operations on them (dvar=mmdd, dvar=mmwn<n>, dvar=dvar, dvar++, dvar--, dvar+=<n> and dvar-=<n>). Calculation of eternal holidays from A.D.464...YEAR_MAX. Further fixed date modifiers added: <n>d (Display fixed date warnings of absolute day <n> of actual year; warning level is same as -c). 0<n>d (Display list of fixed date warnings, starting yesterday/tomorrow [depending on value given in <n>] and ending at <n>'th absolute day of actual year; warning level is same as -cy). @e[[-]<n>] (Display fixed date warnings of day <n> relative Easter Sunday date of actual year; warning level is same as -c). 0@e[[-]<n>] (Display list of fixed date warnings, starting yesterday/tomorrow [depending on value given in <n>] and ending at <n>'th day relative Easter Sundays date of actual year; warning level is same as -cy). Renamed C Preprocessor symbols: CATHOLIC to USE_CATH, EXT_ASCII to USE_EASC, GERMAN to USE_GER and US_HDY to USE_USHDY. Further fixed date modifier [E] added which enables inclusion of those eternal holiday dates, which are legal days only. Added further command line option -d<seq1_start:seq1_end:seq2_start:seq2_end> for setting user defined highlighting sequence / marking character pairs, which must be colon separated. Replaced conditional compilation symbol ANSISYS by USE_HLS. Error message #243 (can't write response file) included. Response file write option -l<NAME> implemented. Actual date modifier %yyyy[mm[dd|wn[n]]] resp., %yyyy@e[[-]<n>] added. Standard date part of resource file line more flexible now -> yyyy[mm[dd[n]]]<space>`text' @... holiday coding of date part of resource file line added, e.g.: yyyy@e-20 = date at Easter-20 days in year yyyy 0000@e20 = date at Easter+20 days every year Further fixed date modifiers added: <n>w (Display fixed date warnings of week number <n> <0|1...52|53|99> of actual year; warning level is same as -cw). 0<n>w (Display list of fixed date warnings, starting yesterday or tomorrow [depending on given week number <n>] and ending at first resp., last day of given week number <n> <0|1...52|53|99> of actual year; warning level is same as -cy). `mmdd'<n>n (Display fixed date warnings of <n>'th weekday `dd|wn' in month `mm' of actual year; warning level is same as -c). 0`mmdd'<n>n (Display list of fixed date warnings, starting yesterday/tomorrow [depending on the value given in `mmdd'<n>] and ending at <n>'th weekday `dd|wn' of month `mm' of actual year; warning level is same as -cy). Acorn Archimedes RISC/OS Makefile created. Fixed date modifiers [k] (display ISO week numbers) and [u] (suppress output of calendar sheet) added. Two special 3 month modes added: command `.': previous, actual and next month of current year. command `..': actual quarter of current year. Included error messages #245 (invalid `n'-field entry), #244 (missing whitespace delimiter). Extended %b..., %y..., %s... and %e... macros by the "n'th weekday of month" field and the [yyyy] is optional now (explicit year or 0000), e.g.: %s[yyyy[mm[dd|wn[n]]]]. Extension of RC-file's date part by a "n'th weekday of month" field. Further exit code #1 implemented which occurs, if activated `rc_use_flag' causes no output of RC-file entries. Increased the number of managed resource file entries to 10000. Further command line option for setting the warning level (-q[1...4]) added. #include statements in resource files are respected now. Resource files are searched in `gcal's user library directory GCAL_USR_LIBDIR and `gcal's system library directory GCAL_SYS_LIBDIR, too. Included error messages #248 (malformed #include), #247 (invalid sub-#include) und #246 (file not found). Conditional compilation symbol USE_PAGER controls, whether a simple, internal pager is built-in. Extended %syyyy[mm[dd]] and %eyyyy[mm[dd]] macros. Added simple %d macro (day difference), simple %w macro (week difference), simple %m macro (month difference), simple %y macro (year difference) and the %n[[-]<n>] macro (effective date text). Bug fixed in computation of "weekday_of_date()" which occurred if the year to compute is greater 6100. Extended time macro %t[12|24] (12 / 24 hour display) added. RC-file %... items may be quoted by \%... now. Used autoconf installation technology. Amiga, Atari, Windows NT, OS/2, PRIMOS and VMS Makefiles created. Further fixed date modifier [z] added for showing the consecutive number of a fixed date warning message. A line of the resource file can be continued at next line by a BACKSLASH-NEWLINE character sequence now. Header file "gcal_tai.h" (target specific part) created. Response file (@file) handling added. MS-DOS DJGPP (DJ-GCC) Makefile created. Some bugs corrected in UN*X-`man' pages. Further fixed date modifier `simple' <n> for showing the fixed date warnings of absolute day <n> of actual year added; warning level is same as -c. Extended help screen (-hh|-??) added. Function usage_msg() replaced by C Preprocessor symbol USAGE_MSG. German and English UN*X-`man' pages created. Further fixed date modifiers added: `mmdd' (Display fixed date warnings of day `dd' in month `mm' of actual year; warning level is same as -c). 0`mmdd' (Display list of fixed date warnings, starting yesterday/tomorrow [depending on the value given in `mmdd'] and ending at day `dd' of month `mm' of actual year; warning level is same as -cy). <n><+|-> (Display fixed date warnings of day `actual day +/- <n>[days]' of actual year; warning level is same as -c). 0<n><+|-> (Display list of fixed date warnings, starting yesterday[-] or tomorrow[+] and ending at `actual day +/- <n>[days]' of actual year; warning level is same as -cy). Renamed environment variable `CAL' to `GCAL'. Renamed `cal' to `gcal'! v0.33 19941108 Alternative resource file (-n|N<NAME[+...]>) feature added. Designed separate functions to display special texts: usage_msg(), my_help(), my_version(), my_license(). MY_ISSPACE() replaces the "ctype.h" isspace() macro now. NEWS, HISTORY, THANKS, TODO, README and INSTALL created. Management of %t, %syyyy and %eyyyy items in RC-file. Fixed date modifiers [a] (show RC-file name in warning) and [x] (exclude title of fixed date list) added. Starting day of week option [-s[]] without trailing modifier sets starting day of week to actual weekday. Function "jdate_to_sdate()", which converts a Julian date to a standard date, added. Display all dates of fixed date warning period feature added (-C[] or -C[][T|W|M|Y] or -c[][T|W|M|Y] or -N<>) (thanks to Stephan Forth). Fixed date modifier for grouping [g[`txt']] added (thanks to Stephan Forth). Fixed date modifier added for omitting the date part of a warning [o] in case more than one warning refers to that date. Added quoting of `~'-TILDE character by `\~' resp., `\\~'. v0.32 19940930 Split the main C-source file into two header files and five C-files. MS-DOS C-compiler Makefiles created (TCC, BCC, MSC, ZTC, WCC). German "Tag der Deutschen Einheit" holiday respected after 1953 and 1989 now. Fiscal year mode ([mm:]yyyy) implemented. Due to this: help screen updated. `gcal' error/version/license prompt bug eliminated. Added highlighting of eternal holiday list and fixed some bugs in this function. Merged the two functions "compare_dayname()" and "compare_monthname()" to single function "compare_d_m_name ()". Whole calendar output is managed by function "print_text()". Very poor and simple internal pager (-p) implemented. CAL environment variable for options is respected now. (-i) international calendar format (similar BSD-cal) added. function "my_error()" processes all common errors now. v0.31 19940912 Symbol ISO_ASCII eliminated (now !EXT_ASCII). Changed my signature. Print year using %04d format always. GNU coding-scheme implemented. Several bug-fixes. v0.30 19940909 Respected Julian flag for RC fixed dates/holiday list. Julian option modifiers [bfc] (thanks to John T. Foley). Modified help screen. `~'-char in RC-file line is replaced by a "real" `\n'-NEWLINE char. v0.29 19940905 Included copyright notice (gpl) and version. U.S. holidays (US_HDAY). Respected eternal holidays in case symbol USE_RC is defined. Ascending/descending sort of holiday list/RC fixed dates. Several bugs fixed (internal version). v0.28 19940827 Management of %byyyy and %yyyyy items in RC-file. v0.27 19940824 Help screen / holiday list modified (highlighting). v0.26 19940819 Extended year-list / year-range mode implemented (yyyy+yyyy yyyy;...;yyyy). v0.25 19940815 Extended month-list / month-range mode implemented (mm[/yyyy]-mm[/yyyy] mm[/yyyy],...,mm[/yyyy]). v0.24 19940808 (quick)sorted output of RC-file lines implemented (internal version). v0.23 19940803 Some conditional compilation statements (USE_RC) added (internal version). v0.22 19940717 Resource file management (RC-file) implemented (internal version). v0.21 19940712 Textual day/month names feature added. v0.20 19940603 Variable starting day of week feature (-s1...7|day name) added. v0.19 19931117 \ ... > Internal versions. v0.01 19910923 /