(directory: Path)
| 75 | |
| 76 | |
| 77 | def _load_languages_split(directory: Path) -> dict[str, Language]: |
| 78 | languages: dict[str, Language] = {} |
| 79 | for path in _iter_yaml_files(directory): |
| 80 | with path.open("r", encoding="utf-8") as f: |
| 81 | entry = yaml.safe_load(f) or {} |
| 82 | code = str(entry["code"]) |
| 83 | category = _CATEGORY_MAP.get( |
| 84 | entry.get("category", "european_major"), |
| 85 | LanguageCategory.EUROPEAN_MAJOR, |
| 86 | ) |
| 87 | languages[code] = Language( |
| 88 | code=code, |
| 89 | name=entry["name"], |
| 90 | category=category, |
| 91 | native_name=entry.get("native_name", entry["name"]), |
| 92 | is_rtl=bool(entry.get("rtl", False)), |
| 93 | script=entry.get("script", "Latin"), |
| 94 | ) |
| 95 | return languages |
| 96 | |
| 97 | |
| 98 | def _load_languages_legacy(yaml_path: Path) -> dict[str, Language]: |
no test coverage detected