Re: [PATCH pmg-gui] add default pgettext/npgettext implementations to pmg-index.html.tt

Kefu Chai
2026-03-10T08:52:03Z

Hi Thomas,

Could you please help review this change? It is one of the changes to
prepare us for the context-aware translation support. After all these
change land, we will update proxmox-i18n to add support for pgettext()
and npgettext().

cheers,

On Sat Feb 28, 2026 at 2:07 PM CST, Kefu Chai wrote:
> From: Kefu Chai <tchaikov@gmail.com>
>
> This adds default implementations for pgettext() and npgettext() functions
> to prevent UI breakage when no language is selected.
>
> These functions are required for context-aware translations support added
> to the proxmox-i18n tooling.
>
> Default implementations:
> - pgettext(context, message): Returns message (ignores context)
> - npgettext(context, singular, plural, count): Returns appropriate form
>
> When a language file is loaded, these defaults are replaced by the actual
> translation functions from the i18n catalog.
>
> Signed-off-by: Kefu Chai <k.chai@proxmox.com>
> ---
> pmg-index.html.tt | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/pmg-index.html.tt b/pmg-index.html.tt
> index 42a483a..10f9a2d 100644
> --- a/pmg-index.html.tt
> +++ b/pmg-index.html.tt
> @@ -26,6 +26,8 @@
>
> function gettext(message) { return message; }
> function ngettext(singular, plural, count) { return count === 1 ? singular : plural; }
> + function pgettext(context, message) { return message; }
> + function npgettext(context, singular, plural, count) { return count === 1 ? singular : plural; }
>
> [%- END %]
> [% IF debug %]