[Patch Preview] move module-init and locale setup from scm to C
Chris Shoemaker
c.shoemaker at cox.net
Thu Jan 12 20:07:59 EST 2006
On Thu, Jan 12, 2006 at 04:51:30PM -0500, Chris Shoemaker wrote:
> On Wed, Jan 11, 2006 at 10:14:17AM -0500, David Hampton wrote:
> > On Wed, 2006-01-11 at 11:31 +0100, Christian Stimming wrote:
> >
> > > Err... no, that's not correct. gtk_init() as well as gtk_set_locale()
> > > initializes internationalization support *for GTK+*. We still need to
> > > initialize i18n support *for gnucash*.
> > >
> > > This is achieved by the four functions that we currently have -- the 3
> > > from Chris' patch plus setlocale(). Your previous post about
> > > setlocale(), which was identical to mine, was correct.
> >
> > >From the gtk_set_locale() documentation:
> >
> > In detail - sets the current locale according to the program
> > environment. This is the same as calling the C library function
> > setlocale (LC_ALL, "") but also takes care of the locale specific
> > setup of the windowing system used by GDK.
> >
> > I looked into the gtk 2.6 sources and it does, in fact, make a call to
> > setlocale (LC_ALL, "").
>
> Nice. It seems that calling gtk_init() allows even people who don't
> know much about i18l to get this right.
Just in case it wasn't clear, I did mean myself...
One more thing...
> + bindtextdomain (TEXT_DOMAIN, LOCALE_DIR);
> + textdomain (TEXT_DOMAIN);
> + bind_textdomain_codeset (TEXT_DOMAIN, "UTF-8");
I know this works. At least, it does find the catalogs and use them.
But I can't figure out _how_ it's actually finding the TEXT_DOMAIN and
LOCALE_DIR macros, since I'm not purposely linking to app-utils.
I'd be a bit less puzzled if I knew why it compiled. But anyway,
since those two macros are used _only_ right here in gnucash-bin.c,
I'm going to move the BUILT_SOURCE i18n.h.in from src/app-util to
src/bin/.
-chris
More information about the gnucash-devel
mailing list