de_DE has been using the wrong group separator for over 18 years

Florian Weimer fweimer@redhat.com
Wed Apr 18 07:14:00 GMT 2018


On 04/18/2018 12:24 AM, kdex wrote:
> To give some context: I have previously posted the following on libc-locales
> and was asked to bring this to the attention of senior developers on this
> least who speak German.
> 
> I have noticed that the locale `de_DE` has erroneously been using a full stop
> (U+002E) for the thousands (group) separator in `mon_thousands_sep` and
> `thousands_sep` ever since 2000. The usage of a full stop to group thousands
> has (to my knowledge) has never been standardized.
> 
> As per DIN 1333, DIN 5008, and DIN EN ISO 80000, the separator should have
> been a thin space (U+2009).
> 
> In fact, DIN 1333 even explicitly forbids the usage of U+002E to group
> thousands, and DIN EN ISO 80000 explicitly excludes all other characters than
> a thin space.

These standards are simply not universally used.  They aren't exactly 
wrong, either, because some typesetters actually use a (thin) space. 
It's just that adoption is poor.

U+002E is perfectly acceptable and widely used, especially if U+2009 is 
not available (and U+0020 risks introducing a line break).  Here's a 
recent example:

»Die Finanzkontrolle Schwarzarbeit überprüfte im Jahr 2017 mehr als 
52.000 Arbeitgeber und leitete fast 108.000 Strafverfahren ein. Die 
Anzahl der eingeleiteten Ermittlungsverfahren wegen der Nichtgewährung 
des gesetzlichen Mindestlohns nach dem Mindestlohngesetz stieg auf 2.522 
Verfahren (2016: 1.651; 2015: 705).«

<https://www.bundesfinanzministerium.de/Content/DE/Pressemitteilungen/Finanzpolitik/2018/04/2018-04-17-ZJPK.html>

(Also look at the date at the top of the page—it doesn't follow DIN ISO 
8601, either.)

I don't think the locales need to change.  Using characters from the 
ASCII range for printing numbers has its advantages.

Thanks,
Florian



More information about the Libc-alpha mailing list