Go to the first, previous, next, last section, table of contents.


Fixed date options

`-v argument'
`--date-variable=argument'
Define global date variable which is visible in all referenced resource files (see section Date variables). The option argument must either be a valid single date variable definition or a (`:') colon-connected series of definitions. A date variable name dvar consists of a single, case-insensitive letter (16), and is trailed in a definition by the assignment operator character `=', and the numerical values of month mm (or a short, three characters month name, e.g. `Jan', `Feb'...) and day dd, this variable has to store (17). For example:

`--date-variable=a=1127:c=a' respectively
`-v a=1127:c=a'
stores the 27th November into the global date variable a and into the global date variable c.

`--export-date-variables'
Effects the export of local date variables from one resource file to another resource file. See section Date variables, for more details.
`-r argument'
`--text-variable=argument'
Define global text variable which is visible in all referenced resource files (see section Text variables). The option argument must either be a valid single text variable definition or a (`:') colon-connected series of definitions. A text variable name tvar consists of the `$' prefix and a single, case-insensitive letter, and is trailed in a definition by the assignment operator character `=', and the text, this variable has to store. A global text variable is defined with an empty contents, in case no text is specified on the right side of the assignment operator character. For example:

`--text-variable=$a=foo:$c=$a' respectively
`-r $a=foo:$c=$a'
stores the `foo' text to the global text variable $a and to the global text variable $c.

You may depreciate the special meaning of the `:' separator character --- in case this character itself is needed -- by placing a `\' (backslash) character before it, e.g. `\:'. If you need the `\:' characters themselves, you have to protect the `\' (backslash) character by itself, e.g. `\\:'. You may depreciate the special meaning of the `$' prefix character --- in case this character itself is needed in the text -- by placing a `\' (backslash) character before it, e.g. `\$'. If you need the `\$' characters themselves in the text, you have to protect the `\' (backslash) character by itself, e.g. `\\$'. Each time a `_' (underscore) character is found in argument, this character is replaced by a real ` ' (space) character. You may depreciate the special meaning of the `_' (underscore) character --- in case this character itself is needed -- by placing a `\' (backslash) character before it, e.g. `\_'. If you need the `\_' themselves, you have to protect the `\' (backslash) character by itself, e.g. `\\_'.
`--export-text-variables'
Effects the export of local text variables from one resource file to another resource file. See section Text variables, for more details.
`-D argument'
`--filter-day=argument'
Displays only those fixed dates, whose date is not excluded by the given argument. See section Date part of a line, and likewise section Exclusions without any argument %? special texts. The argument consists of one or more characters as used in the exclusion without any argument %? special text; but without the leading `%' character in each case. For example, it is possible to induce Gcal to display only those fixed dates from the resource file `demo.rc' for the whole year, which are legals holidays, and moreover, Saturdays or Sundays:
gcal -f demo.rc --year --filter-day=Rv
`-P argument'
`--filter-period=argument'
Displays only those fixed dates, whose date is not excluded by the given argument. See section Date part of a line, and likewise section Exclusions with date argument %?[date] special texts. The argument consists of one or more expressions as used in the exclusion with date argument %?[date] special text; but without the leading `%' character in each case. You can use more than one of these %?[date] expressions by connecting them with a `,' character. For example, it is possible to induce Gcal to display only those fixed dates from the resource file `demo.rc' for the whole year, which appear within the period of the 17th and the 20th of any month, and which appear on the 31st of any month.
gcal -f demo.rc -y -P i00000017#00000020,i00000031#00000031
`-I pattern'
`--filter-text=pattern'
Displays only those fixed dates, whose completely expanded text (18) contains the given pattern. See section Text part of a line, and section %?... special texts for text replacement. The pattern is a regular expression, as recognized by the Unix ed line-editor. See section Regular Expressions, for more information. For example, it is possible to induce Gcal to display all fixed dates from the resource file `doctor.rc' for the current month, which are defined for dentists or oculists:
gcal -f doctor.rc --month -I "[dD]entist|[oO]culist"
Each time a `_' (underscore) character is found in the pattern argument, this character is replaced by a real ` ' (space) character. You may depreciate the special meaning of the `_' (underscore) character --- in case this character itself is needed -- by placing a `\' (backslash) character before it, e.g. `\_'. If you need the `\_' characters themselves, you have to protect the `\' (backslash) character by itself, e.g. `\\_'.
`-c|C[-]'
`--today'
`--list-of-fixed-dates[=short|long]'
`--descending-fixed-dates[=short|long]'
Activate the fixed date function and display fixed date messages, if any.
`-c'
`--today'
`--list-of-fixed-dates=short'
Activate fixed date function (use standard resource file implicitly) and list all dates related to the actual system date (==today), sorted in ascending order. If no fixed dates related to the current day are found, no fixed date messages are displayed and the program is terminated with an error code. See section Error Codes.
`-c-'
`--descending-fixed-dates=short'
Activate fixed date function (use standard resource file implicitly) and list all dates related to the actual system date (==today), sorted in descending order. If no fixed dates related to the current day are found, no fixed date messages are displayed and the program is terminated with an error code. See section Error Codes.
`-C'
`--list-of-fixed-dates=long'
Activate fixed date function (use standard resource file implicitly) and list all dates related to the actual system date (==today), sorted in ascending order. If no fixed dates related to the current day are found, an "empty" fixed date message only consisting of the date is displayed.
`-C-'
`--descending-fixed-dates=long'
Activate fixed date function (use standard resource file implicitly) and list all dates related to the actual system date (==today), sorted in descending order. If no fixed dates related to the current day are found, an "empty" fixed date message only consisting of the date is displayed.
`-f|F name[+...]'
`--resource-file=name[+...]'
Activate fixed date function and use file name instead of the standard resource file. Then list all dates, sorted in ascending order, which occur in the fixed date period. If no other fixed date period is specified, the actual system date (==today) is used for the fixed date period. If the option letter `f' of the short-style option is used and no dates related to the fixed date period are found in name, no fixed date messages are displayed and the program is terminated with an error code. See section Error Codes. If the option letter `F' of the short-style option is used and no dates related to the fixed date period are found in name, an "empty" fixed date message only consisting of the date is displayed. You can use more than one resource file name by connecting them with a `+' character, e.g.:

`--resource-file=./foo+xyz+/data/bar+$HOME/.gcalrc' resp.,
`-f ./foo+xyz+/data/bar+$HOME/.gcalrc'

respects all files given in the preceding argument using a special file search mechanism. See section Resource file, for more details. Use `/dev/null' to avoid the use of the standard resource file, useful for creating empty fixed date lists. You may depreciate the special meaning of the `+' separator character --- in case this character itself is needed -- by placing a `\' (backslash) character before it, e.g. `\+'. If you need the `\+' characters themselves, you have to protect the `\' (backslash) character by itself, e.g. `\\+'. Each time a `_' (underscore) character is found in name, this character is replaced by a real ` ' (space) character. You may depreciate the special meaning of the `_' (underscore) character --- in case this character itself is needed -- by placing a `\' (backslash) character before it, e.g. `\_'. If you need the `\_' characters themselves, you have to protect the `\' (backslash) character by itself, e.g. `\\_'.
`-# line'
`--here=line'
Activate fixed date function and use the line argument together with the standard resource file respectively additional resource files. The line argument has to be a valid logical line as it may occur in a Gcal resource file (see section Structure of resource file), and is always evaluated at last after the processing of all resource files, which allows the dealing with references to exported local date or text variables. This option may be given multiple and it will be processed exactly in the given order. All dates are listed, sorted in ascending order, which occur in the fixed date period. If no other fixed date period is specified, the actual system date (==today) is used for the fixed date period. If no dates related to the fixed date period are found in the line, no fixed date messages are displayed and the program is terminated with an error code. See section Error Codes. For example, the call:
gcal -# "0*d1su#99su.7 ^%:" --here="#include <foo>" -y
effects the implicit processing of the standard resource file just before the further resource file line `0*d1su#99su.7 ^%:' and following `#include <foo>' are processed, and that as if these lines were a physical part of the standard resource file. Each time a `_' (underscore) character is found in line, this character is replaced by a real ` ' (space) character. You may depreciate the special meaning of the `_' (underscore) character --- in case this character itself is needed -- by placing a `\' (backslash) character before it, e.g. `\_'. If you need the `\_' characters themselves, you have to protect the `\' (backslash) character by itself, e.g. `\\_'.

Please note:
If the short-style option `-c' and/or its modifiers `t|[w|m|y[+|-]', or the short-style option `-f' is/are given in upper-case, e.g.:

-C
-F foo.bar
-CeT
-c-aW+
-CeaxY-
-c-M

Gcal displays fixed date messages for every day of the requested period.

The modifiers of a combined/complex/packed short-style fixed date option must be constructed according to following steps, because Gcal treats them as positional parameters:

First step: Representation-of-text-modifier
`a', `A', `B', `e|E', `k', `o', `U', `x', `z', `Z'
Second step: Period-of-fixed-dates-modifier
`d', `l', `t|T', `w|W|m|M|y|Y[+|-]', `n+|-', `nd', `nw', `*dn[www]', `*wn[www]', `@e|t|dvar[[+|-]n]', `@e|t|dvar[+|-]nwww', `mmdd', `mmwwwn'

If you want to operate with the preceding modifiers, an explicit `-c|C[-]' short-style option must be leading on the one hand, e.g.:

-c-t
-cw-
-CZBdekloUzaxA12+

and only one period defining fixed date period modifier may be given (19).

Or on the other hand, the modifiers must be given as single character options or composed into a single command line word, and additionally either the short-style option `-c|C[-]', `-f|F name[+...]' or `-# line' (20) must be given like:

-c -t
-w- -c
-a -ABd -e -kloUxz -C12+
-F foo.bar -dZA -l*d10
--here="; Comment" -dZAa

If the modifiers are given as single character options or composed into a single command line word, and one of the `t|T|[w|W|m|M|y|Y[+|-]]' modifiers is used (21), it is unnecessary to give a `-c|C[-]' respectively `-f|F name[+...]' short-style option (22) to activate the fixed date function of Gcal, because it is triggered implicitly by means of these modifiers / alias names.

See section Coding Scheme, whose tables explain the relations between the date part (yyyy...) of a resource file line and the modifiers, the short-style option `-c|C[]' -- which is used for enabling the fixed date feature -- respectively the long-style option `--period-of-fixed-dates=argument' may have, i.e. they point out all possible correspondences. This is necessary because Gcal does not respect all entries found in a resource file if a fixed date argument is given, it respects only those entries which have a definite relation to the fixed date argument to avoid the output of redundant information!

Fixed date text modifiers and options:

`--biorhythm-axis=number'
The width of the biorhythm text graphics -- which can be created by means of the biorhythm text graphics %;[date] special text -- is changed to number characters for each axis of the bar. The number argument must be an integer value between 1...100, the default number of characters is 20. If the number divides 100 with a remainder, it is internally reduced to the nearest number that divides 100 without any remainder. This means, only the numbers 1, 2, 4, 5, 10, 20, 25, 50 and 100 are factually respected, so a number argument of 19 is internally reduced to 10. For example:
$ cat bio.rc
-| 0*d1#999 %;19620921
$ gcal -f bio.rc %19961212 -s0 -xw --biorhythm-axis=19
-|
-| Thu, Dec <12th>1996: 0- I       P1 E        +0
-| Fri, Dec  13th 1996: 0-  I   P   1          +0
-| Sat, Dec  14th 1996: 0-    @   E 0          +0
-| Sun, Dec  15th 1996: 0-  P  IE   0          +0
-| Mon, Dec  16th 1996: 0- P  E  I  0          +0
-| Tue, Dec  17th 1996: 1-P  E     I0          +0
-| Wed, Dec  18th 1996: 0- @        1          +0
See section Biorhythm %?[date] special texts, for more details.
`--moonimage-lines=number'
The height of the moonphase text graphics -- which can be created by means of the moonphase text graphics %:[date] special text -- is changed to number lines. The number argument must be an integer value between 6...30, the default number of lines is 12. For example:
$ gcal -f/dev/null -#0*d1#999_%:__%- %19950308 -x --moon=8
-|
-| Wed, Mar < 8th>1995:          (    @@@@@
-|                          (           @@@@@@@@
-|                       (               @@@@@@@@@@
-|                      (                @@@@@@@@@@@
-|                      (                @@@@@@@@@@@
-|                       (               @@@@@@@@@@
-|                        (             @@@@@@@@@@
-|                            (        @@@@@@@ 41%+
See section Moonphase %?[date] special texts, for more details.
`a'
`--include-resource-file-name'
Extend fixed date text by the name of the resource file, which the fixed date text comes from, e.g.:
Mon, Jan   1st 1995: (`Eternal holiday list') New Year's day
Mon, Jan   1st 1995: (.gcalrc) No fixed dates
...
`A'
`--alternative-format'
Instead of using the standard list format, e.g.:
Mon, Jan   1st 1995: New Year's day
Mon, Jan   1st 1995: No fixed dates
...
Gcal uses the alternative list format, e.g.:
Mon, Jan   1st 1995:
New Year's day
No fixed dates
...
`B'
`--bypass-shell-command'
Don't execute shell command %![argument] special texts, display them textually only. See section Shell command %![argument] special text, for more details.
`e'
`--include-holidays=long'
Enable inclusion of all built-in eternal holiday dates, this includes legal holidays and memorial days.
`E'
`--include-holidays=short'
Enable inclusion of those built-in eternal holiday dates which are legal holidays only.
`g[text]'
`--grouping-text[=text]'
Group fixed dates by day using the text separator. If text is not given, the built-in text (23) is used for grouping, e.g.:
$ gcal -Cw -cg
-|
-| Sun, Nov   6th 1994: Text 1
-| Sun, Nov   6th 1994: Text 2
-|
-| Mon, Nov   7th 1994: Text 3
-|
-| Tue, Nov   8th 1994: Text 4
...

$ gcal -Cw -g'-A_user\_defined-~-grouping text-'
-|
-| Sun, Nov   6th 1994: Text 1
-| Sun, Nov   6th 1994: Text 2
-| -A user_defined-
-| -grouping text-
-| Mon, Nov   7th 1994: Text 3
-| -A user_defined-
-| -grouping text-
-| Tue, Nov   8th 1994: Text 4
...
Each time a `~' (tilde) character is found in text, this character is replaced by a real `\n' (newline) character. You may depreciate the special meaning of the `~' (tilde) character --- in case this character itself is needed -- by placing a `\' (backslash) character before it, e.g. `\~'. If you need the `\~' characters themselves, you have to protect the `\' (backslash) character by itself, e.g. `\\_'. Each time a `_' (underscore) character is found in text, this character is replaced by a real ` ' (space) character. You may depreciate the special meaning of the `_' (underscore) character --- in case this character itself is needed -- by placing a `\' (backslash) character before it, e.g. `\_'. If you need the `\_' characters themselves, you have to protect the `\' (backslash) character by itself, e.g. `\\_'.
`k'
`--include-week-number'
The leading date of a fixed date message is extended by the ISO-8601:1988 week number. Please note:
The methods of ISO-8601:1988 are used for detecting week numbers; this means a week begins with a Monday, and the first week of a year is the one which includes the first Thursday; equivalently, the one which includes 4th January.
`o'
`--omit-multiple-date-part'
Omit displaying the leading date of a fixed date message in case more than one message refers to that date (24), e.g.:
$ gcal -co
-|
-| Sun, Nov   6th 1994: Text 1
-|                      Text 2
...
`U'
`--suppress-date-part'
Suppress displaying the leading date of a fixed date message, e.g.:
$ gcal -cU
-|
-| Text 1
-| Text 2
...
`x'
`--exclude-fixed-dates-list-title'
Suppress the title text line of the fixed date list.
`z'
`--include-consecutive-number'
Display consecutive numbers of fixed date messages.
`Z'
`--zero-dates-only'
Display only those dates, for which fixed dates doesn't exist, i.e. all "empty" fixed dates only consisting of the date.

Fixed date period modifiers and options:

`--leap-day=february|march'
The leap day (25) is observed in non-leap years.
`--leap-day=february'
A fixed date that appears in every year and which is related to the leap day, is displayed on the 28th February in non-leap years.
`--leap-day=march'
A fixed date that appears in every year and which is related to the leap day, is displayed on the 1st March in non-leap years.
`d'
`--include-today'
If lists of periods are generated, include the actual date into the list. See section Fixed date options, for how to create a list of periods.
`l'
`--list-mode'
Generate a list of periods instead of a single period.

Please note:
The following examples assumes the actual system date is the 17th February of any year (00000217).

`--period-of-fixed-dates=argument'

`nd'
`*dn'
Single date of absolute day n == `1...365|366|999' of the actual year; the intensity level is the same as the simple `-c' option. If the value 999 for n is given, the last day of the year (31st December) is assumed.
`lnd'
`l*dn'
List dates starting yesterday or tomorrow (depending on given day number n) and ending at n'th absolute day of the actual year; the intensity level is the same as the `-cy' option.
`n+|-'
Single date of day of the actual year; the intensity level is the same as the simple `-c' option.
`ln+|-'
List dates starting yesterday `-' or tomorrow `+' and ending at of the actual year; the intensity level is the same as the `-cy' option.
`nw'
Single dates of week number n == `0|1...52|53|99' of the actual year; the intensity level is the same as the `-cw' option.
`lnw'
List dates starting yesterday or tomorrow (depending on given ISO-week number n) and ending at first respectively last day of given ISO-week number n == `0|1...52|53|99' of actual year; the intensity level is the same as the `-cy' option.
`mmdd'
Single date of day dd in month mm of the actual year; the intensity level is the same as the simple `-c' option.
`lmmdd'
List dates starting yesterday or tomorrow (depending on the value given in mmdd) and ending at day dd of month mm of the actual year; the intensity level is the same as the `-cy' option.
`mmwwwn'
Single date of n'th == `1...5|9' weekday dd|www in month mm of the actual year; the intensity level is the same as the simple `-c' option.
`lmmwwwn'
List dates starting yesterday or tomorrow (depending on the value given in mmwwwn) and ending at n'th == `1...5|9' weekday dd of month mm of the actual year; the intensity level is the same as the `-cy' option.
`*dnwww'
Single date of n'th == `1...51|52|53|99' weekday www of the actual year; the intensity level is the same as the simple `-c' option.
`l*dnwww'
List dates starting yesterday or tomorrow (depending on the value given in n) and ending at n'th == `1...51|52|53|99' weekday www of the actual year; the intensity level is the same as the `-cy' option.
`*wn[www]'
Single date of weekday www of n'th == `0|1...52|53|99' ISO-week of the actual year; the intensity level is the same as the simple `-c' option. If no weekday www is given, then Monday is assumed for the weekday.
`l*wn[www]'
List dates starting yesterday or tomorrow (depending on the value given in n) and ending at weekday www of n'th == `0|1...52|53|99' ISO-week of the actual year; the intensity level is the same as the `-cy' option. If no weekday www is given, then Monday is assumed for the weekday.
`@e[[+|-]n]'
Single date of day n relative to the Easter Sunday's date of the actual year; the intensity level is the same as the simple `-c' option.
`l@e[[+|-]n]'
List dates starting yesterday or tomorrow (depending on the value given in n) and ending at n'th day relative to the Easter Sunday's date of the actual year; the intensity level is the same as the `-cy' option.
`@e[+|-]nwww'
Single date of n'th weekday www relative to the Easter Sunday's date of the actual year; the intensity level is the same as the simple `-c' option.
`l@e[+|-]nwww'
List dates starting yesterday or tomorrow (depending on the value given in n) and ending at n'th weekday www relative to the Easter Sunday's date of the actual year; the intensity level is the same as the `-cy' option.
`@t[[+|-]n]'
Single date of day n relative to today's date of the actual year; the intensity level is the same as the simple `-c' option.
`l@t[[+|-]n]'
List dates starting yesterday or tomorrow (depending on the value given in n) and ending at n'th day relative to today's date of the actual year; the intensity level is the same as the `-cy' option.
`@t[+|-]nwww'
Single date of n'th weekday www relative to today's date of the actual year; the intensity level is the same as the simple `-c' option.
`l@t[+|-]nwww'
List dates starting yesterday or tomorrow (depending on the value given in n) and ending at n'th weekday www relative to today's date of the actual year; the intensity level is the same as the `-cy' option.
`@dvar[[+|-]n]'
Single date of day n relative to date variables date of the actual year; the intensity level is the same as the simple `-c' option.
`l@dvar[[+|-]n]'
List dates starting yesterday or tomorrow (depending on the value given in n) and ending at n'th day relative to date variables date of the actual year; the intensity level is the same as the `-cy' option.
`@dvar[+|-]nwww'
Singe date of n'th weekday www relative to date variables date of the actual year; the intensity level is the same as the simple `-c' option.
`l@dvar[+|-]nwww'
List dates starting yesterday or tomorrow (depending on the value given in n) and ending at n'th weekday www relative to date variables date of the actual year; the intensity level is the same as the `-cy' option.
`t|T'
`--tomorrow' long-style option
List dates related to tomorrow.
`w|W[+|-]'
`--week' long-style option
`--end-of-week' long-style option
`--start-of-week' long-style option
Display dates related to the week.
See section Calendar options.
`m|M[+|-]'
`--month' long-style option
`--end-of-month' long-style option
`--start-of-month' long-style option
Display dates related to the month.
`y|Y[+|-]'
`--year' long-style option
`--end-of-year' long-style option
`--start-of-year' long-style option
Display dates related to the year.


Go to the first, previous, next, last section, table of contents.