-preferred_locale = None
-
-def _get_collator(backend, locale_code):
- for code in [locale_code,
- locale_code.split("_")[0],
- locale.getlocale(locale.LC_COLLATE)[0],
- locale.getlocale(locale.LC_COLLATE)[0].split("_")[0],
- locale.getdefaultlocale()[0],
- locale.getdefaultlocale()[0].split("_")[0],
- None]:
- try:
- return default.Collator(code)
- except collate.errors.InvalidLocaleError:
- pass