Re: Cleanup for gettext() calls

From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
Cc: Peter Eisentraut <peter_e(at)gmx(dot)net>, PostgreSQL-patches <pgsql-patches(at)postgresql(dot)org>
Subject: Re: Cleanup for gettext() calls
Date: 2005-02-22 04:08:10
Message-ID: 200502220408.j1M48AO27522@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-patches

Bruce Momjian wrote:
> Peter Eisentraut wrote:
> > Bruce Momjian wrote:
> > > It also adds some missing gettext usage, particularly in src/port and
> > > interfaces/ecpg.
> >
> > ecpg has no translation support, so that would be pretty pointless.
>
> Well, gettext is coming into ecpglib via a symlink to port/exec.c:
>
> ./ecpglib/exec.c: log_error(gettext("could not identify current directory: %s"),
>
> Seems we should enable internationalization for ecpg, at least for the
> --help strings and stuff.
>
> Peter says that the gettext() doesn't do anything if it isn't
> initialized so I guess exec.c is OK. Does someone want to set up the
> proper gettext initialization for ecpg so we can have this for 8.1?
> ecpglib needs special library initialization like libpq.

I have remove the ecpg part of my patch and added a TODO item for
internationalization of ecpg.

> > > I found that perl also defines _(x) so I undefined this in plperl.
> >
> > That kind of thing was the reason that it wasn't defined globally.
>
> Yea. I have Perl handled. I think we should just do with the _(x) and
> if we find problems we can change them to _e(x) or something.
>
> > > Also, what is gettext_noop(x) used for?
> >
> > It marks strings for translation for the purpose of xgettext but does
> > not call gettext because it would not be valid program code at that
> > place.
>
> OK I have added a comment to explain this:
>
> /*
> * These strings are to be translation via xgettext. We can't
> * call gettext() because it is located in variable initialization and
> * a function call can not be used.
> */
> #define gettext_noop
>
> Thanks.

Patch applied to use the _() macro consistently, and added the macro
around some strings that were missing them.

--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073

In response to

Browse pgsql-patches by date

  From Date Subject
Next Message Bruce Momjian 2005-02-22 04:43:35 pgsql: Use _() macro consistently rather than gettext().
Previous Message Bruce Momjian 2005-02-22 03:53:08 Re: [PATCHES] [pgsql-hackers-win32] Repleacement for src/port/snprintf.c