cygwin started speaking German today

Eric Blake eblake@redhat.com
Thu Sep 8 11:06:00 GMT 2011


On 09/08/2011 11:46 AM, Bruno Haible wrote:
> Bernhard Voelker wrote:
>>> Starting with today's update, cygwin started speaking German:
>>>
>>> $ mkdir -v x0
>>> mkdir: Verzeichnis „x0“ angelegt
>>> $ LANG=C mkdir -v x2
>>> mkdir: created directory `x2'
>>> $ LANG=C.UTF-8 mkdir -v x1
>>> mkdir: Verzeichnis „x1“ angelegt
>>>
>>> Default is LANG=C.UTF-8 here.
>>>
>>> Ok, the PC is in Germany, but none of my environment
>>> variables have a 'de' inside.
>
> This is as it should be. See the NEWS entry from the gettext package:
>
> * Runtime behaviour:
>    - On MacOS X and Windows systems,<libintl.h>  now extends setlocale() and
>      newlocale() so that their determination of the default locale considers
>      the choice the user has made in the system control panels.

I read this as saying that if _none_ of LANG, LC_MESSAGES, or LC_ALL is 
set, then libintl is smart enough to choose the system default language. 
  But I still think that if LANG is explicitly C.UTF-8, then the user 
_has_ made an explicit language request - namely, the same language as 
for LANG=C (which is more or less English, but not always identical to 
en_US.UTF-8).

> There is nothing to change in cygwin's setlocale implementation, nor in
> libintl_setlocale. Both are POSIX compliant.

How is it POSIX compliant to ignore $LANG by using a different language 
for the C locale?  C.UTF-8 is just the C locale with a different 
charset, not carte-blanche to use the system-default language.

-- 
Eric Blake   eblake@redhat.com    +1-801-349-2682
Libvirt virtualization library http://libvirt.org

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list