Обсуждение: PL/Perl translation, croak

Поиск
Список
Период
Сортировка

PL/Perl translation, croak

От
Peter Eisentraut
Дата:
plperl's nls.mk contains

GETTEXT_TRIGGERS:= _ errmsg errdetail errdetail_log errhint errcontext 
write_stderr croak Perl_croak

As far as I can tell, croak() and Perl_croak() are provided by the Perl 
library.  So it is quite unclear to me how we expect their argument 
strings to be translated using our message catalogs.  Is this unfinished 
business or is there some mechanism here that I'm not seeing?


Re: PL/Perl translation, croak

От
Alvaro Herrera
Дата:
Peter Eisentraut wrote:
> plperl's nls.mk contains
>
> GETTEXT_TRIGGERS:= _ errmsg errdetail errdetail_log errhint errcontext  
> write_stderr croak Perl_croak
>
> As far as I can tell, croak() and Perl_croak() are provided by the Perl  
> library.  So it is quite unclear to me how we expect their argument  
> strings to be translated using our message catalogs.  Is this unfinished  
> business or is there some mechanism here that I'm not seeing?

IIRC I just added them because we have a couple of error messages that
are output with Perl_croak and one with croak.  Does it fail to work?  I
don't remember if I actually tested it.


Re: PL/Perl translation, croak

От
Tom Lane
Дата:
Alvaro Herrera <alvherre@commandprompt.com> writes:
> Peter Eisentraut wrote:
>> plperl's nls.mk contains
>> 
>> GETTEXT_TRIGGERS:= _ errmsg errdetail errdetail_log errhint errcontext  
>> write_stderr croak Perl_croak
>> 
>> As far as I can tell, croak() and Perl_croak() are provided by the Perl  
>> library.  So it is quite unclear to me how we expect their argument  
>> strings to be translated using our message catalogs.  Is this unfinished  
>> business or is there some mechanism here that I'm not seeing?

> IIRC I just added them because we have a couple of error messages that
> are output with Perl_croak and one with croak.  Does it fail to work?  I
> don't remember if I actually tested it.

ISTM it would only work if the message was fed through our gettext
before being passed to croak().  So you'd need to write croak(_("msg"))
and marking croak itself as a gettext trigger is wrong.
        regards, tom lane