Skip site navigation (1) Skip section navigation (2)

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 (view raw or flat)
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

pgsql-patches by date

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

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group