[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Using gettext for runtime translations

From: Torsten Bronger
Subject: Re: Using gettext for runtime translations
Date: Sat, 16 Apr 2005 13:05:36 +0200
User-agent: Gnus/5.110003 (No Gnus v0.3) Emacs/21.3.50 (gnu/linux)


Bruno Haible <address@hidden> writes:

> [...]
> Portability of LANGUAGE: No portability problem is known, since
> LANGUAGE is only considered by libintl, not by system code.

Okay, I think I understand it now much better.  However, I have two

First, the gettext manual suggests to set LANGUAGE with setenv(),
with flushing the cache:

            /* Change language.  */
            setenv ("LANGUAGE", "fr", 1);
            /* Make change known.  */
              extern int  _nl_msg_cat_cntr;

Below this code excerpts, it says:

     The variable `_nl_msg_cat_cntr' is defined in `loadmsgcat.c'.
     You don't need to know what this is for.  But it can be used to
     detect whether a `gettext' implementation is GNU gettext and
     not non-GNU system's native gettext implementation.

Does this mean that there are non-GNU gettexts out there and that
that excerpt would break on such systems?  Or is this dealt with by
the Autotools?

And secondly, I have
which unsets LANGUAGE and sets LC_ALL instead.  I assume that if you
only want to adjust gettext messages, it doesn't matter.  But there
are two things that I don't understand: Why doesn't this code care
about the gettext cache?  And why does it call setlocale() which the
above excerpt doesn't do?


Torsten Bronger, aquisgrana, europa vetus

reply via email to

[Prev in Thread] Current Thread [Next in Thread]