promenne LANG & LC_* (Re: Zkratky mesicu v cs_CZ)

Jaroslav Benkovsky benkovsk na pha.pvt.cz
Pátek Září 11 15:37:23 CEST 1998


Zdenek Kabelac wrote:
> 
> Petr Kolar wrote:
> > Az dosud jsem to mel jen z doslechu, ale v glibc-2.0.7/locale/findlocale.c
> > ve funkci _nl_find_locale() (ktera se vola ze setlocale()) stoji:
> >
> >       /* The user decides which locale to use by setting environment
> >      variables.  */
> >       *name = getenv ("LC_ALL");
> >       if (*name == NULL || (*name)[0] == '\0')
> >     *name = getenv (_nl_category_names[category]);
> >       if (*name == NULL || (*name)[0] == '\0')
> >     *name = getenv ("LANG");
> >       if (*name == NULL || (*name)[0] == '\0')
> >     *name = (char *) _nl_C_name;
> >
> > Takze poradi vyznamnosti je LC_ALL, ostatni LC_* a nakonec LANG. Ty
> > zdrojaky jsou dlouhe a podrobne jsem je nestudoval, ale melo by to tak byt.
> 
> Podle toho co tu pises je to ale prece presne obracene :-)
> 
> LANG prebiji vsechno :-) protoze se cte jako posledni a tudiz se i podle
> nej vse nastavuje jako posledni - ze bych se mylil ??

'se mylis. if (*name==NULL...) *name = getenv ...
se precte pouze poprve, to znamena pripadne uz u LC_ALL.

					Edheldil
-- 
GCM/IT d- s:+ a- C++(+++) ULOI++++$ P++ L+++>++++ E+ W++
N w--- PS+ PE++ Y+ PGP R+ tv- b+++ D+ e+++ y+


Další informace o konferenci Linux