Module

rendering.template_functions.i18n

Internationalization (i18n) template helpers.

Provides:

  • t(key, params={}, lang=None): translate UI strings from i18n/<lang>.(yaml|json|toml)
  • current_lang(): current language code inferred from page/site
  • languages(): configured languages list from config
  • alternate_links(page): list of {hreflang, href} for page translations
  • locale_date(date, format='medium'): localized date formatting (Babel if available)

Classes

LanguageInfo
TypedDict for language information returned by _languages(). All fields except baseurl are require…
0

TypedDict for language information returned by _languages().

All fields except baseurl are required. baseurl is optional.

Inherits from TypedDict

Attributes

Name Type Description
code str
name str
hreflang str
baseurl str
weight int

Functions

_warn_missing_translation
Log a debug warning when a translation key is missing. Only warns once per key/lang combination pe…
2 None
def _warn_missing_translation(key: str, lang: str) -> None

Log a debug warning when a translation key is missing.

Only warns once per key/lang combination per build to avoid log spam.

Parameters 2

Name Type Default Description
key str

The missing translation key

lang str

The language that was checked

reset_translation_warnings
Reset the set of warned translation keys. Useful for testing or when starting a new build.
0 None
def reset_translation_warnings() -> None

Reset the set of warned translation keys.

Useful for testing or when starting a new build.

register
Register i18n helpers into Jinja2 environment. Globals: - t - current_lang - languages - a…
2 None
def register(env: Environment, site: Site) -> None

Register i18n helpers into Jinja2 environment.

Globals:

  • t
  • current_lang
  • languages
  • alternate_links
  • locale_date

Parameters 2

Name Type Default Description
env Environment
site Site
_languages
Get normalized list of configured languages.
1 list[LanguageInfo]
def _languages(site: Site) -> list[LanguageInfo]

Get normalized list of configured languages.

Parameters 1

Name Type Default Description
site Site

Returns

list[LanguageInfo]

List of LanguageInfo dictionaries with code, name, hreflang, and optional baseurl/weight.