компилятор часовых поясов (timezone compiler)
EXTENDED EXAMPLE
Here is an extended example of 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.
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
Rule Swiss 1941 1942 - May Mon>=1 1:00 1:00 S
Rule Swiss 1941 1942 - Oct Mon>=1 2:00 0 -
Rule EU 1977 1980 - Apr Sun>=1 1:00u 1:00 S
Rule EU 1977 only - Sep lastSun 1:00u 0 -
Rule EU 1978 only - Oct 1 1:00u 0 -
Rule EU 1979 1995 - Sep lastSun 1:00u 0 -
Rule EU 1981 max - Mar lastSun 1:00u 1:00 S
Rule EU 1996 max - Oct lastSun 1:00u 0 -
# Zone NAME STDOFF RULES FORMAT [UNTIL]
Zone Europe/Zurich 0:34:08 - LMT 1853 Jul 16
0:29:45.50 - BMT 1894 Jun
1:00 Swiss CE%sT 1981
1:00 EU CE%sT
Link Europe/Zurich Europe/Vaduz
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 seconds east of UT until 1853-07-16 at 00:00, when
the legal offset was changed to 7°26′22.50″, which works out to
0:29:45.50; zic
treats this by rounding it to 0:29:46. After
1894-06-01 at 00:00 the UT offset became one hour and Swiss
daylight saving rules (defined with lines beginning with 'Rule
Swiss') apply. From 1981 to the present, EU daylight saving
rules have applied, and the UTC offset has remained at one hour.
In 1941 and 1942, daylight saving time applied from the first
Monday in May at 01:00 to the first Monday in October at 02:00.
The pre-1981 EU daylight-saving rules have no effect here, but
are included for completeness. Since 1981, daylight saving has
begun on the last Sunday in March at 01:00 UTC. Until 1995 it
ended the last Sunday in September at 01:00 UTC, but this changed
to the last Sunday in October starting in 1996.
For purposes of display, 'LMT' and 'BMT' were initially used,
respectively. Since Swiss rules and later EU rules were applied,
the time zone abbreviation has been CET for standard time and
CEST for daylight saving time.