Re: [COMMITTERS] pgsql: Explicitly bind gettext() to the UTF8 locale when in use.

Поиск
Список
Период
Сортировка
От Hiroshi Inoue
Тема Re: [COMMITTERS] pgsql: Explicitly bind gettext() to the UTF8 locale when in use.
Дата
Msg-id 492AB2C6.9090709@tpf.co.jp
обсуждение исходный текст
Ответ на Re: [COMMITTERS] pgsql: Explicitly bind gettext() to the UTF8 locale when in use.  (Magnus Hagander <magnus@hagander.net>)
Ответы Re: [COMMITTERS] pgsql: Explicitly bind gettext() to the UTF8 locale when in use.  (Magnus Hagander <magnus@hagander.net>)
Список pgsql-hackers
Magnus Hagander wrote:
> Hiroshi Inoue wrote:
>> Hi Magnus and all,
>>
>> Magnus Hagander wrote:
>>> Log Message:
>>> -----------
>>> Explicitly bind gettext() to the  UTF8 locale when in use.
>>> This is required on Windows due to the special locale
>>> handling for UTF8 that doesn't change the full environment.
>> Thanks to this change UTF-8 case was solved but Japanese users
>> are still unhappy with Windows databases with EUC_JP encoding.
>> Shift_JIS which is a Japanese encoding under Windows doesn't
>> match any server encoding and causes a crash with the use of
>> gettext. So Saito-san removed ja message catalog just before
>> the 8.3 release.
>>
>> Attached is a simple patch to avoid the crash and enable the
>> use of Japanese message catalog.
>> Please apply the patch if there's no problem.
> 
> Hi!
> 
> It will clearly also need an update to the comment, but I can take care
> of that.
> 
> I assume you have tested this?

Though I myself didn't test it, Saito-san tested it.

> The comment says that it works because we
> are handling UTF8 on a special way on Windows,

ISTM UTF-8 isn't a special case.
In fact the comment also mentions the following.
* In future we might want to call bind_textdomain_codeset    * unconditionally, but that....

> If your database is in EUC_JP, I don't see why gettext() isn't picking
> it up properly in the first place..

In Japan 2 encodings (EUC_JP and Shift_JIS) are often used.
EUC_JP is mainly used on *nix and on Windows Shift_JIS is
used. We use EUC_JP not Shift_JIS as the server encoding

> And why do we need that on Windows only, and not on other platforms?

because Shift_JIS isn't allowed as a server encoding. So
the Japanese Windows native message encoding Shift_JIS nevermatches the server encoding EUC_JP and a conversion
between
Shitt_jis and EUC_JP is necessarily needed.

regards,
Hiroshi Inoue



В списке pgsql-hackers по дате отправления:

Предыдущее
От: "Dave Page"
Дата:
Сообщение: Re: blatantly a bug in the documentation
Следующее
От: Magnus Hagander
Дата:
Сообщение: Re: blatantly a bug in the documentation