{# ========================================================================= Translation helpers for the package's own templates. Package templates must render byte-identically in an app that never calls coffeehouse_ui.i18n.install (a plain Jinja environment, where {% trans %} does not parse and `_` is undefined). So they never use `_` or trans; they use these macros: {% from "macros/i18n.html" import ch_t, ch_nt %} {{ ch_t("Logout") }} {{ ch_t("from dept: %(dept)s", dept=slug) }} {{ ch_nt("%(num)d role", "%(num)d roles", n) }}