Keep CLAUDE.md lean (~44 lines) with project identity, core principles, and Claude-specific instructions only. Move detailed documentation into 9 thematic rule files under .claude/rules/ for better context optimization. Generated by Claude Code 2.1.74 model claude-sonnet-4-6 Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2.4 KiB
2.4 KiB
Documentation multilingue
La documentation est bilingue (anglais/français) via mmg (Multilingual Markdown Generator).
Fonctionnement
- Les fichiers sources sont les
.base.md(contiennent les deux langues) mmggénère :FICHIER.md(anglais) etFICHIER.fr.md(français)- Marqueurs :
<!-- [en] -->,<!-- [fr] -->,<!-- [common] -->(blocs de code partagés)
Commandes
make doc_markdown # Regénérer toute la doc multilingue
Convention
- Ne jamais modifier directement les fichiers
.mdou.fr.mdgénérés - Toujours modifier le fichier
.base.mdcorrespondant, puis exécutermake doc_markdown - Les blocs de code vont dans
<!-- [common] -->, le texte dans<!-- [en] -->et<!-- [fr] --> - En-tête obligatoire dans chaque
.base.md:
<!---------------------------->
<!-- multilingual suffix: en, fr -->
<!-- no suffix: en -->
<!---------------------------->
Fichiers concernés (30 fichiers)
- Racine :
README,CHANGELOG,TODO doc/: DEVELOPMENT, PRODUCTION, DISCOVER, RUN, MIGRATION, WINDOWS_INSTALLATION, FAQ, GIT_REPO, POETRY, RELEASE, UPDATE, CONTRIBUTION, HOWTO, TODO, CODE_GENERATORdocker/: READMEscript/*/: database, deployment, fork_github_repo, nginx, restful, selenium (2), todo, odoo/migration.github/ISSUE_TEMPLATE/: bug_report, feature_request
Internationalisation du CLI TODO (i18n)
Le CLI interactif script/todo/todo.py supporte le français et l'anglais.
Architecture
script/todo/todo_i18n.py— Module de traduction (dictionnaireTRANSLATIONS, fonctionst(),get_lang(),set_lang())- Les chaînes traduisibles utilisent
t("clé")au lieu de texte en dur - Les entrées de
todo.jsonpeuvent avoir un champprompt_description_keyrésolu viat()(fallback surprompt_description)
Résolution de la langue (priorité)
- Variable d'environnement
EL_LANG(définie dansenv_var.sh, défaut"fr") - Défaut :
"fr"
Comportement
- Première exécution : prompt bilingue demande à l'utilisateur de choisir sa langue
- Le choix est persisté dans
env_var.sh - Changement de langue possible via le menu Execute > Langue/Language
Ajouter une traduction
- Ajouter la clé dans
TRANSLATIONSdetodo_i18n.pyavec les valeurs"fr"et"en" - Remplacer la chaîne en dur par
t("ma_clé")danstodo.py - Pour les entrées JSON : ajouter
"prompt_description_key": "ma_clé"danstodo.json