betty.locale package

Submodules

Module contents

Provide the Locale API.

betty.locale.default_locale: Final[Locale] = Locale('en', territory='US')

Betty’s default locale (US English).

betty.locale.default_locale_tag: Final[str] = 'en-US'

The IETF BCP 47 language tag for Betty’s default locale (US English).

betty.locale.from_language_tag(language_tag: str, /) Locale

Get a locale from its IETF BCP 47 language tag.

Raises:
  • betty.locale.InvalidLocale – Raised if the given identifier is not a valid locale.

  • betty.locale.LocaleNotFoundError – Raised if the given locale cannot be found.

betty.locale.negotiate_has_locales(preferred_locales: Locale | Sequence[Locale], has_locales: Sequence[Localized]) Localized | None

Negotiate the preferred value from a sequence.

betty.locale.negotiate_locale(preferred_locales: Locale | Sequence[Locale], available_locales: Sequence[Locale], /) Locale | None

Negotiate the preferred locale from a sequence.

betty.locale.plural_tags(locale: Locale) Sequence[str]

Get a locale’s plural tags.

betty.locale.resolve_locale(locale: ResolvableLocale, /) Locale

Ensure that the given value is a locale.

Raises:
  • betty.locale.InvalidLocale – Raised if the given identifier is not a valid locale.

  • betty.locale.LocaleNotFoundError – Raised if the given locale cannot be found.

betty.locale.to_language_tag(locale: Locale | None, /) str

Formats a locale as an IETF BCP 47 language tag.