aardbodem

Meertaligheid en lokalisatie

De extensie Flask-BabelEx kan gebruikt worden voor internationalisatie (i18n) en lokalisatie (l10n).

$ pip install Flask-BabelEx

 

from flask import Flask
from flask_babelex import Babel
app = Flask(__name__)
# configuratie bepalen, bijv. BABEL_DEFAULT_LOCALE
babel = Babel(app)

In de flask directory kun je de volgende acties doen.

Aanmaken messages.pot:

  $ pybabel extract -F babel.cfg -o messages.pot museum

Aanmaken nieuwe vertaling 'nl':

  $ pybabel init -i messages.pot -d museum/translations -l nl

Wijzig hierna de museum/translations/nl/LC_MESSAGES/messages.po file

Als teksten veranderen kun je van een nieuw pot bestand nieuwe vertalingen maken en deze 'mergen' met de bestaande . Hierbij moeten 'fuzzy' teksten expliciet goedgemaakt worden.

  $ pybabel update -i messages.pot -d museum/translations

Compileer de vertalingen vóór gebruik:

  $ pybabel compile -d museum/translations