If no PAGER environment variable is set or if its contents is invalid, Gcal tries to use the less pager; if this program cannot be found during scanning the PATH environment variable, Gcal tries to use the more pager, if this program cannot be found, the pg pager in the same way1. See Environment Variable PATH.
If all these actions fail, Gcal will use its simple, built-in pager. If the internal pager is used, Gcal detects the number of lines shown before it prompts and waits for user input by using these methods:
On MS-DOS, OS/2 and some other operating systems, Gcal uses a system dependent low-level function and respects the reported values.
The text argument must be a (‘:’) colon-separated text which is structured in this way: seq1_start:seq1_end:seq2_start:seq2_end. The first sequence is used for highlighting/marking an actual day, the second for a holiday. The sequences must be given in form of a sequence pair; seq?_start enables the highlighting/marking, seq?_end disables it. Only two sequence pairs will be processed, others are ignored. Either highlighting sequence pairs or marking character pairs may be defined, i.e. using them both in a mixed couple is not permitted!
-H \x20:\x20:\x1:# respectively
marks the actual day like ‘\x20actual date\x20’6 and the holiday date like ‘\x1holiday date#’ using the given marking characters.
-H \x1b[34;42m:\x1b[0;40m or
-H \033[34;42m:\033[0;40m or
defines a starting ANSI escape highlighting sequence ‘\x1b[34;42m’ used for actual day and ending ANSI escape highlighting sequence ‘\x1b[0;40m’ with no given highlighting sequence for holidays, so default highlighting sequences for holidays are used (non-given entries are always skipped). Please note the last abstract of this text part which informs you more detailed of this context. See Environment Variable GCALANSI, too.
Control code definitions may contain any printable characters. Non-printable
characters may be encoded in octal or hexadecimal notation. The abbreviation
‘\E’ directly encodes the escape character (octal
A character can be encoded octal by typing ‘\nnn’ (backslash-octal digit(s)), where n must be a valid octal digit (0...7). Normally, three octal digits must be given. If the octal character code consists of one or two octal digits, leading zeroes must be added, except the case, where the encoded octal character is given at last in the single sequence.
A character can be encoded hexadecimal by typing ‘\xnn’ (backslash-x hexadecimal digit(s)), where n must be a valid hexadecimal digit (0...9A...Fa...f). Normally, two hexadecimal digits must be given. If the hexadecimal character code consists of one hexadecimal digit, a leading zero must be added, except the case, where the encoded hexadecimal character is given at last in the single sequence.
If the sequence separator character, thus the ‘:’ (colon) character
itself, is used as a marking character, it must be encoded either octal
\072 or hexadecimal by
If the C Preprocessor symbol
USE_PAGER was defined and the
output of the program is redirected or used in a pipeline, the highlighting
sequences are automatically converted into the according marking characters;
USE_PAGER was not defined, they remain untouched.
Incomplete or non-given highlighting sequences will be replaced by internal
default ANSI escape highlighting sequences if a GCALANSI
environment variable is defined; otherwise completely replaced by their
according marking characters.
See Environment Variable GCALANSI.
If no address is given, Gcal tries to send the eMail by using the following methods:
Generally, Gcal does not send electronic Mails whose message body is empty! An informational message will be shown on the standard error channel if this case occurs.
All highlighting sequences produced by Gcal itself are always disabled respectively automatically converted into the according marking characters if an eMail must be send; no matter if the --force-highlighting option was given or not. This behavior of Gcal is an imperative necessity, because it is possible that the mail program cannot perform the mailing correctly. Please pay attention in this context to the further explanations concerning the limitations of the text part of a resource file line (see Text part of a line).
If an environment variable MAILPROG is defined and set, its contents will be used as the program name of the mailer instead of the standard name mail. See Environment Variable MAILPROG, for more information.
 See the standard manual pages for less, more and pg.
 See the standard manual pages for Termcap.
 Either 23 or 24 lines, and 80 columns.
 This means, sent to another device.
 This means, used as an input data stream for another program.
 This means with a leading and a trailing blank.
 See the standard manual pages for mail.