MCPcopy Index your code
hub / github.com/python/cpython / find

Function find

Lib/gettext.py:489–522  ·  view source on GitHub ↗
(domain, localedir=None, languages=None, all=False)

Source from the content-addressed store, hash-verified

487
488# Locate a .mo file using the gettext strategy
489def find(domain, localedir=None, languages=None, all=False):
490 # Get some reasonable defaults for arguments that were not supplied
491 if localedir is None:
492 localedir = _default_localedir
493 if languages is None:
494 languages = []
495 for envar in ('LANGUAGE', 'LC_ALL', 'LC_MESSAGES', 'LANG'):
496 val = os.environ.get(envar)
497 if val:
498 languages = val.split(':')
499 break
500 if 'C' not in languages:
501 languages.append('C')
502 # now normalize and expand the languages
503 nelangs = []
504 for lang in languages:
505 for nelang in _expand_lang(lang):
506 if nelang not in nelangs:
507 nelangs.append(nelang)
508 # select a language
509 if all:
510 result = []
511 else:
512 result = None
513 for lang in nelangs:
514 if lang == 'C':
515 break
516 mofile = os.path.join(localedir, lang, 'LC_MESSAGES', '%s.mo' % domain)
517 if os.path.exists(mofile):
518 if all:
519 result.append(mofile)
520 else:
521 return mofile
522 return result
523
524
525# a mapping between absolute .mo file path and Translation object

Callers 1

translationFunction · 0.70

Calls 6

_expand_langFunction · 0.85
getMethod · 0.45
splitMethod · 0.45
appendMethod · 0.45
joinMethod · 0.45
existsMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…