Re: Missing Bug-Report #5904?

From: Torsten Zühlsdorff <foo(at)meisterderspiele(dot)de>
To: Magnus Hagander <magnus(at)hagander(dot)net>
Cc: pgsql-bugs(at)postgresql(dot)org
Subject: Re: Missing Bug-Report #5904?
Date: 2011-03-04 13:49:42
Message-ID: 4D70EDF6.80000@meisterderspiele.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Hello,

>>>> Now for the Problem: There is a problem with the translation of the
>>>> english word "March" to the german "März". Instead of "März" i get "MäRz"
>>>> (with uppercase "r").
>>>>
>>>> You can reproduce it as follow:
>>>> # SET lc_time = "de_DE.UTF-8";
>>>> # SELECT to_char('2011-03-04 00:00:01'::date, 'TMMonth YYYY');
>>>> to_char
>>>> -----------
>>>> MäRz 2011
>>>>
>>>> I did not find the translation file for this, so i can't add a patch or
>>>> check for other misspellings.
>>>>
>>>> My System:
>>>> PostgreSQL 9.0.3
>>>> FreeBSD 8.1-RELEASE
>>> Thats very likely a problem of your operating systems locales. What
>>> spelling does the month have if you construct it with `date` or such?
>> Done directly at the bash on the same system:
>> $ date +%B
>> March
>> $ export LC_TIME=de_DE.UTF-8
>> $ date +%B
>> März
>>
>> And in PostgreSQL:
>> # SET lc_time = "de_DE.UTF-8";
>> SET
>> # SELECT to_char(current_date, 'TMMonth YYYY');
>> to_char
>> -----------
>> MäRz 2011
>>
>> I also can reproduce this at a FreeBSD 7.0-STABLE.
>
> IIRC, the FreeBSD locales at least used to be pretty much broken for
> UTF8. Can you try and see if you get the same problem in a non-UTF8
> locale?

Doesn't work proper at my bash, even the dirty way:
$ export LC_ALL=de_DE.ISO8859-1
$ export LC_PAPER=de_DE.ISO8859-1
$ export LC_ADDRESS=de_DE.ISO8859-1
$ export LC_MONETARY=de_DE.ISO8859-1
$ export LC_NUMERIC=de_DE.ISO8859-1
$ export LC_TELEPHONE=de_DE.ISO8859-1
$ export LC_MESSAGES=de_DE.ISO8859-1
$ export LC_IDENTIFICATION=de_DE.ISO8859-1
$ export LC_COLLATE=de_DE.ISO8859-1
$ export LANG=de_DE.ISO8859-1
$ export LC_MEASUREMENT=de_DE.ISO8859-1
$ export XTERM_LOCALE=de_DE.ISO8859-1
$ export LANGUAGE=de_DE.ISO8859-1:de
$ export LC_CTYPE=de_DE.ISO8859-1
$ export LC_TIME=de_DE.ISO8859-1
$ export LC_NAME=de_DE.ISO8859-1
$ export LC_ALL=de_DE.ISO8859-1
$ date +%B
M�z

I can't figure out, why the umlaut is not displayed correctly.

In PostgreSQL it looks interesting:
# SET lc_time = "de_DE.ISO8859-1";
SET
0.3.impos=# SELECT to_char(current_date, 'TMMonth YYYY');
to_char
----------
MRz 2011
(1 Zeile)

The missing Umlaut could be an error of the bash, but the upperase "r"
is still there.

Greetings,
Torsten

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Heikki Linnakangas 2011-03-04 13:52:05 Re: BUG #5914: locking error in heap_fetch
Previous Message Magnus Hagander 2011-03-04 13:41:12 Re: Missing Bug-Report #5904?