[Harbour] Re: hb_i18n_gettext( "" ) warning. is it normal?
Mindaugas Kavaliauskas
dbtopas at dbtopas.lt
Sun May 3 12:53:43 EDT 2009
Hi,
> 1) write empty strings to .pot file
> Change include/hbexprb.c line #1899:
> if( pArg->ExprType == HB_ET_STRING && pArg->ulLength > 0 )
> to:
> if( pArg->ExprType == HB_ET_STRING )
>
>
> 2) do not write empty string to .pot file and do not show any warning:
> Change:
> if( pArg->ExprType == HB_ET_STRING && pArg->ulLength > 0 )
> {
> if( HB_COMP_PARAM->fI18n )
> to:
> if( pArg->ExprType == HB_ET_STRING )
> {
> if( HB_COMP_PARAM->fI18n && pArg->ulLength > 0 )
>
>
> My vote for this one (no 2). IMO empty strings may
> happen in translation, but there is no point in offering
> them for translation. And if we issue a warning it ruins
> -es2 -w3 setup while the source is still valid. It's also
> relatively easy to grep for such empty strings if someone
> would like to find them.
>
> If we chose this one, will hb_i18n_gettext() always
> return an empty string without doing a lookup?
hb_i18n_gettext() return original text if lookup failed, so, it will
return empty string if parameter is empty string, but it will happen
after lookup. Of cause we can implement additional check for empty
string, but do not see any reason for it. It will make empty string
"conversion" faster, and all other lookup will take longer (because one
more test for empty string).
Actually, I do not imagine, why we need use hb_i18n_gettext("") at
all??? Do you have any real life sample?
Regards,
Mindaugas
More information about the Harbour
mailing list