[Python-Dev] locale and LC_NUMERIC (original) (raw)
"Martin v. Löwis" martin at v.loewis.de
Mon Jan 9 08:57:13 CET 2006
- Previous message: [Python-Dev] locale and LC_NUMERIC
- Next message: [Python-Dev] locale and LC_NUMERIC
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Neal Norwitz wrote:
I know very little about locale's. /f assigned me a bug http://python.org/sf/1391872 which suggests I run all the tests in a different locale than C. I think this is a good idea, but when I set LANG or LCALL or LCCTYPE in the env't the locale isn't set without me calling locale.setlocale(). Shouldn't we maintain the value from the env't?
I feel I'm lacking some link here: why do you think we should do that?
The problem I found is in Python/pythonrun.c. At least I think that's the problem. Around line 230-240 we call setlocale(NULL), then call setlocale(""). Then later on we restore the locale by calling setlocale() with the return result from setlocale(NULL).
Right.
The man page on my box (gentoo) says that passing NULL returns the current locale() while passing "" sets the locale from the env't variable. Should we just capture the results of setlocale("")?
Again: why?
If my understanding is wrong, how can I start python with the correct locale?
What does "start with the correct locale" mean? What is the "correct locale"? Python should work in any locale, and locale.format should always give the locale-specific formatting, whereas "%f" % value should always give the result from the "C" locale (regardless of whether the application has called setlocale or not).
Regards, Martin
- Previous message: [Python-Dev] locale and LC_NUMERIC
- Next message: [Python-Dev] locale and LC_NUMERIC
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]