Враппер для глобальной Limb функции tr(), определенной в пакете I18N. Используется для перевода текстовых строк на другие языки.
Позволяет указывать дополнительные параметры, которые заменяются на реальные значения уже после перевода, например:
{'Apply %1 filter'|i18n:'/control_panel', 'ru', '%1', 'Special'}
{$var|i18n:'context', [locale], [[param1], [param1_value]], [[param2], [param2_value]]}
В качестве параметров можно задавать DataBindingExpressions (начиная с версии WEB_APP 0.3). Однако есть одно ограничение - значение базы должно быть в этом случае также DataBindingExpression. То есть, вот так можно,
{$var|i18n:"/foo/bar", "", "%1", {$other_var}}
Но, вот так уже нет:
{$"Привет"|i18n:"/foo/bar", "", "%1", {$other_var}}
Шаблон text.html
{$"Apply %1 filter and %2"|i18n:"/foo/bar", "ru", "%1", "1", "%2", "2"}
Будет переведено как: Применить фильтр 1 и 2.
Обсуждение