tet.i18n package
Internationalization support for Tet applications.
This module provides i18n/l10n integration including:
Automatic
_()andgettext()functions in templatesngettext()for pluralizationRequest methods for translation (
request.translate,request.pluralize)
Example
Enabling i18n:
from tet.config import application_factory
@application_factory(included_features=["i18n"])
def main(config):
config.add_translation_dirs("myapp:locale")
config.scan()
Using translations in views:
from pyramid.view import view_config
@view_config(route_name="hello", renderer="json")
def hello(request):
return {"message": request.translate("Hello, World!")}
In Tonnikala templates:
<p>${_("Welcome to our site!")}</p>
<p>${ngettext("1 item", "{n} items", count, mapping={"n": count})}</p>
- tet.i18n.add_renderer_globals(event)[source]
Subscriber that adds i18n functions to renderer globals.
Adds
_,gettext,ngettext, andlocalizerto the template context.
- tet.i18n.configure_i18n(config: Configurator, default_domain: str)[source]
Configure i18n support for a Pyramid application.
Adds
request.translateandrequest.pluralizemethods, and registers subscribers to add i18n functions to template contexts.- Parameters:
config – Pyramid Configurator
default_domain – Default translation domain
- tet.i18n.includeme(config: Configurator)[source]
Pyramid includeme function for i18n support.
Uses
default_i18n_domainsetting or the package name as the domain.