> locale.getlocale defaults to a single category (LC_CTYPE) because of
> the parsing it does to create the tuple. The issue is that an LC_ALL
> query returns all of the categories, delimited by semicolons, if
> they're not all the same. In this case locale.getlocale(LC_ALL) raises
> a TypeError. But there's no problem using such a locale string with
> setlocale LC_ALL.
>
> Also, on Windows locale.getdefaultlocale uses win32 GetLocaleInfo, set
> to return ISO 639/3166 language/country codes. These codes don't work
> with the MS CRT setlocale, so locale.resetlocale fails.
> setlocale(LC_ALL, '') is supported to reset to the default. More here:
Ah, I always wondered about that. So getdefaultlocale() always returns the same
as getlocale() on Linux?
Python 2.7.3 (default, Sep 26 2012, 21:53:58) [GCC 4.7.2] on linux2
>>> import locale
>>> locale.getdefaultlocale()
('en_US', 'UTF-8')
>>> locale.getlocale()
('en_US', 'UTF-8')
> setlocale
> http://msdn.microsoft.com/en-us/library/x99tb11d
>
> language strings
> http://msdn.microsoft.com/en-us/library/39cwe7zf
>
> country/region strings
> http://msdn.microsoft.com/en-us/library/cdax410z
>
This article [http://docs.moodle.org/dev/Table_of_locales] specifies locales
for windows (column: localewin) and other OS.
While this Unix article [http://osr507doc.sco.com/en/man/html.M/locale.M.html]
has a table with old and new locale names (e.g.
old Unix: english_uk.8859; new Unix: en_GB.ISO8859-1). And this Windows list is
just like Unix [http://msdn.microsoft.com/en-us/library/39cwe7zf]
So basically, the locale specification may differ:
[A] between OS families (Unix, Windows, ...)
[B] between OS versions (Windows XP, Windows 7, ...)?
Woaaah, that's confusing! ISO, SIL, and IETF/BCP language codes...a dash of
IANA. And the same variation for codepage defintions? These guys in Switzerland
should put the 'S' back in ISO! ;-)
One additional question: when is it REALLY necessary to specify a locale
variant modifier, e.g. en_US.cp1252@euro, or perhaps the more eccentric
nl_NL.cp874@preeuro (dutch locale, thai/latin codepage ;-)
_______________________________________________
Tutor maillist - [email protected]
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor