Skip to content

Commit f9851e1

Browse files
Tomas's feedback
1 parent 03ca427 commit f9851e1

2 files changed

Lines changed: 11 additions & 4 deletions

File tree

Lib/gettext.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -492,10 +492,10 @@ def find(domain, localedir=None, languages=None, all=False):
492492
localedir = _default_localedir
493493
if languages is None:
494494
languages = []
495-
if os.environ.get('LANGUAGE'):
496-
languages = os.environ.get('LANGUAGE').split(',')
497-
elif locale.getlocale() != (None, None):
498-
languages.append(".".join(filter(None, locale.getlocale())))
495+
if val := os.environ.get('LANGUAGE'):
496+
languages = val.split(':')
497+
elif (loc := locale.getlocale()) != (None, None):
498+
languages.append(".".join(filter(None, loc)))
499499
else:
500500
for envar in ('LC_ALL', 'LC_MESSAGES', 'LANG'):
501501
val = os.environ.get(envar)

Lib/test/test_gettext.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -748,6 +748,13 @@ def test_find_with_env_vars(self, patch_getlocale):
748748
localedir=os.path.join(self.tempdir, "locale"))
749749
self.assertEqual(result, mo_file)
750750
self.env.unset(var)
751+
# test fallbacks
752+
for var in ('LANGUAGE', 'LC_ALL', 'LC_MESSAGES', 'LANG'):
753+
self.env.set(var, 'es_ES:ga_IE:fr_FR')
754+
result = gettext.find("mofile",
755+
localedir=os.path.join(self.tempdir, "locale"))
756+
self.assertEqual(result, mo_file)
757+
self.env.unset(var)
751758

752759
@unittest.mock.patch("locale.getlocale", return_value=('ga_IE', 'UTF-8'))
753760
def test_process_vars_override(self, patch_getlocale):

0 commit comments

Comments
 (0)