summaryrefslogtreecommitdiff
path: root/zic.8
diff options
context:
space:
mode:
Diffstat (limited to 'zic.8')
-rw-r--r--zic.857
1 files changed, 42 insertions, 15 deletions
diff --git a/zic.8 b/zic.8
index a0a9743..772ee89 100644
--- a/zic.8
+++ b/zic.8
@@ -28,6 +28,16 @@ zic \- timezone compiler
. ds :
. ds - \-
.\}
+.ds d " degrees
+.ds m " minutes
+.ds s " seconds
+.ds _ " \"
+.if t .if \n(.g .if c \(de .if c \(fm .if c \(sd \{\
+. ds d \(de
+. ds m \(fm
+. ds s \(sd
+. ds _ \|
+.\}
The
.B zic
program reads text from the file(s) named on the command line
@@ -136,8 +146,7 @@ are possibly-signed decimal counts of seconds since the Epoch
Omitted counts default to extreme values.
The output files use UT offset 0 and abbreviation
.q "\*-00"
-in place of the omitted timestamp data;
-this typically reduces the files' sizes.
+in place of the omitted timestamp data.
For example,
.q "zic \*-r @0"
omits data intended for negative timestamps (i.e., before the Epoch), and
@@ -146,12 +155,31 @@ outputs data intended only for nonnegative timestamps that fit into
31-bit signed integers.
On platforms with GNU
.BR date ,
-.q "zic \-r @$(date +%s)"
+.q "zic \*-r @$(date +%s)"
omits data intended for past timestamps.
+Although this option typically reduces the output file's size,
+the size can increase due to the need to represent the timestamp range
+boundaries, particularly if
+.I hi
+causes a TZif file to contain explicit entries for
+.RI pre- hi
+transitions rather than concisely representing them
+with an extended POSIX TZ string.
Also see the
.B "\*-b slim"
option for another way to shrink output size.
.TP
+.BI "\*-R @" hi
+Generate redundant trailing explicit transitions for timestamps
+that occur less than
+.I hi
+seconds since the Epoch, even though the transitions could be
+more concisely represented via the extended POSIX TZ string.
+This option does not affect the represented timestamps.
+Although it accommodates nonstandard TZif readers
+that ignore the extended POSIX TZ string,
+it increases the size of the altered output files.
+.TP
.BI "\*-t " file
When creating local time information, put the configuration link in
the named file rather than in the standard location.
@@ -253,7 +281,8 @@ format.
.PP
Input files should be text files, that is, they should be a series of
zero or more lines, each ending in a newline byte and containing at
-most 511 bytes, and without any NUL bytes. The input text's encoding
+most 2048 bytes counting the newline, and without any NUL bytes.
+The input text's encoding
is typically UTF-8 or ASCII; it should have a unibyte representation
for the POSIX Portable Character Set (PPCS)
\*<https://pubs\*:.opengroup\*:.org/\*:onlinepubs/\*:9699919799/\*:basedefs/\*:V1_chap06\*:.html\*>
@@ -521,7 +550,7 @@ This field has the same format as the
.B AT
and
.B SAVE
-fields of rule lines;
+fields of rule lines, except without suffix letters;
begin the field with a minus sign if time must be subtracted from UT.
.TP
.B RULES
@@ -749,15 +778,13 @@ The
.BR DAY ,
and
.B HH:MM:SS
-fields give the expiration timestamp in UTC for the leap second table;
+fields give the expiration timestamp in UTC for the leap second table.
+.br
+.ne 22
.SH "EXTENDED EXAMPLE"
Here is an extended example of
.B zic
input, intended to illustrate many of its features.
-In this example, the EU rules are for the European Union
-and for its predecessor organization, the European Communities.
-.br
-.ne 22
.nf
.in +2m
.ta \w'# Rule\0\0'u +\w'NAME\0\0'u +\w'FROM\0\0'u +\w'1973\0\0'u +\w'\*-\0\0'u +\w'Apr\0\0'u +\w'lastSun\0\0'u +\w'2:00\0\0'u +\w'SAVE\0\0'u
@@ -784,13 +811,13 @@ Link Europe/Zurich Europe/Vaduz
.sp
.in
.fi
-In this example, the timezone is named Europe/Zurich but it has an alias
-as Europe/Vaduz. This example says that Zurich was 34 minutes and 8
+In this example, the EU rules are for the European Union
+and for its predecessor organization, the European Communities.
+The timezone is named Europe/Zurich and it has the alias Europe/Vaduz.
+This example says that Zurich was 34 minutes and 8
seconds east of UT until 1853-07-16 at 00:00, when the legal offset
was changed to
-.ds o 7 degrees 26 minutes 22.50 seconds
-.if \n(.g .if c \(de .if c \(fm .if c \(sd .ds o 7\(de\|26\(fm\|22.50\(sd
-\*o,
+7\*d\*_26\*m\*_22.50\*s,
which works out to 0:29:45.50;
.B zic
treats this by rounding it to 0:29:46.