On Thu, May 26, 2016, at 07:18, Victor Sudakov wrote:
Look at the law: the official time zone name for Tomsk is: 6-я часовая зона (If utf-8 is working, then you'll see Russian in Cyrillic letters.) The English translation is: 6th hourly zone (6th timezone).
This same law "107-ФЗ Об исчислении времени" also provides an official alias "МСК+4" for this timezone. But we cannot use non-ascii characters for time zone names in tzdata, can we?
If "МСК+#"-style abbreviations were *official*, I think that should be enough justification to use "MSK+#"-style ascii abbreviations. However, the context they appear in in the law seems informational to me; it's in the same parentheses as UTC+#. Oddly enough, nothing in the C or POSIX/Unix standards *actually* says anything about time zone names (which are consistently referred to as names, not abbreviations) being abbreviated. It's merely inferred from historical practice, along with the fact that in POSIX in the TZ variable they (obnoxiously, for no stated reason) cannot contain spaces. This prohibition does *not* extend to what may appear in tzname if TZ is in the :tzid format. Incidentally, MSVC's time functions on Windows use fully spelled out names.