Forge i18n — traduction par catalogues JSON, locale par défaut et fallback, helper trans() pour Jinja.
Project description
forge-mvc-i18n
Opt-in Forge pour l'internationalisation. Extrait du core (ADR-027) : le core ne contient que les primitives générales ; la traduction est une brique spécialisée, optionnelle.
Contenu
trans(key, locale=None, translations_dir="translations"): traduit une clé via le catalogue de la locale, avec repli sur la locale de fallback puis sur la clé elle-même.load_catalog(locale, translations_dir): charge et valide un cataloguetranslations/<locale>.json(objet JSON de chaînes), mis en cache.clear_translation_cache(): vide le cache des catalogues.get_default_locale/set_default_locale,get_fallback_locale/set_fallback_locale: pilotent la configuration du noyau (i18n_default_locale,i18n_fallback_locale).- Exceptions :
I18nError,TranslationCatalogError.
Quand le paquet est installé, le renderer Jinja du noyau expose
automatiquement trans() comme fonction globale des templates.
Installation
pip install --pre forge-mvc-i18n
Configuration
Les locales par défaut et de fallback sont des clés du noyau, configurables au démarrage :
import core.forge as forge
forge.configure(i18n_default_locale="fr", i18n_fallback_locale="en")
Exemple
from forge_mvc_i18n import trans
# translations/fr.json -> {"common.save": "Enregistrer"}
trans("common.save") # "Enregistrer"
trans("inconnu") # "inconnu" (repli sur la clé)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file forge_mvc_i18n-1.0.0rc1-py3-none-any.whl.
File metadata
- Download URL: forge_mvc_i18n-1.0.0rc1-py3-none-any.whl
- Upload date:
- Size: 5.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cae69cb69e762e4a91904310d62718abb824f52860538d6215faf8b4ae19fadb
|
|
| MD5 |
5e0512b2f14b503b3ee44a7ed6287e3d
|
|
| BLAKE2b-256 |
08498daf51ab29e818b6db4bd633d67f411938fcd2f89d44b8d6fe83c75338ac
|