Using a UTF-8 locale won't work if the terminal isn't UTF-8. It should be piping utf-8 output through iconv -f utf-8 and using the user's locale. If the user has a UTF-8 terminal but no UTF-8 locale, that's the user's problem. On Sun, May 3, 2015, at 02:25, Paul Eggert wrote:
* NEWS: Document this. * tzselect.ksh (utf8_locale): New var. Use it to select a UTF-8 locale if available. --- NEWS | 4 ++++ tzselect.ksh | 12 ++++++++++++ 2 files changed, 16 insertions(+)
diff --git a/NEWS b/NEWS index 407258d..b77cd03 100644 --- a/NEWS +++ b/NEWS @@ -7,6 +7,10 @@ Unreleased, experimental changes The file 'iso3166.tab' now uses UTF-8, so that its entries can better spell the names of Åland Islands, Côte d'Ivoire, and Réunion.
+ Changes affecting code + + tzselect aligns UTF-8 columns better, if a UTF-8 locale is available. +
Release 2015d - 2015-04-24 08:09:46 -0700
diff --git a/tzselect.ksh b/tzselect.ksh index 3acdebd..b288cdf 100644 --- a/tzselect.ksh +++ b/tzselect.ksh @@ -44,6 +44,18 @@ REPORT_BUGS_TO=tz@iana.org exit 1 }
+# Use a UTF-8 locale if available, as the data contain UTF-8, +# and the shell aligns columns better that way. +# Check the UTF-8 of U+12345 CUNEIFORM SIGN URU TIMES KI. +utf8_locale='BEGIN { u12345 = "\360\222\215\205"; exit length(u12345) != 1 }' +$AWK "$utf8_locale" || + for locale in en_US.utf8 en_US.UTF-8 C.utf8; do + (LC_ALL=$locale $AWK "$utf8_locale") 2>/dev/null && { + export LC_ALL=$locale + break + } + done + coord= location_limit=10 zonetabtype=zone1970 -- 2.1.4
-- Random832