problemy z locale.getlocale () w OSX

Muszę uzyskać ustawienia regionalne systemu, aby wykonać wiele rzeczy, ostatecznie chcę przetłumaczyć moją aplikację za pomocą gettext. Zamierzam rozpowszechniać go zarówno na Linuksie, jak i OSX, ale natrafiłem na problemy w OSX Snow Leopard:

$ python
Python 2.5.2 (r252:60911, Jan  4 2009, 17:40:26) 
[GCC 4.3.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import locale
>>> locale.setlocale(locale.LC_ALL, '')
'sv_SE.UTF-8'
>>> locale.getlocale()
('sv_SE', 'UTF8')

$ python
Python 2.6.1 (r261:67515, Jul  7 2009, 23:51:51) 
[GCC 4.2.1 (Apple Inc. build 5646)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import locale
>>> locale.setlocale(locale.LC_ALL, '')
'C'
>>> locale.getlocale()
(None, None)

Oba systemy używają języków szwedzkich. W systemie Linux zmienna środowiskowa LANG jest już ustawiona na „sv_SE.UTF-8”. Jeśli przekazuję tę zmienną do Pythona na OSX (LANG="sv_SE.UTF-8" python zamiast tego) ustawienia regionalne są ładnie wykrywane. Ale nie powinienemlocale.getlocale()być w stanie pobrać dowolny język systemu operacyjnego? Nie chcę zmuszać użytkowników do ustawianiaLANG, LC_ALL lub dowolna zmienna środowiskowa.

Wyjścielocale dowództwo:

$ locale
LANG=
LC_COLLATE="C"
LC_CTYPE="C"
LC_MESSAGES="C"
LC_MONETARY="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_ALL=

questionAnswers(5)

yourAnswerToTheQuestion