Nunjucks extension to translate templates.
$ npm install nunjucks-i18n
var I18nExtension = require("nunjucks-i18n")(nunjucks);
env.addExtension('I18nExtension', new I18nExtension({
env: env,
translations: {
fr: {
HELLOWORLD: "Bonjour __name__"
}
}
}));
Block:
{% i18n 'HELLOWORLD' __name__=name %}
Hello __name__
{% endi18n %}
Filter:
{{ "Hello __name__"|i18n('HELLOWORLD', __name__=name) }}
The language is detected by default from the __locale__
variable, the name if the variable can be changed using the locale
option.