next-auto-i18n 0.7.0 → 0.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +35 -3
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -51,6 +51,7 @@ Et en quelques secondes :
|
|
|
51
51
|
- Genere `i18n/routing.ts` + `i18n/request.ts` (requis pour les Server Components)
|
|
52
52
|
- Cree la structure `app/[locale]/` requise par le App Router next-intl
|
|
53
53
|
- Injecte un **Language Switcher flottant** (personnalisable) pour changer de langue
|
|
54
|
+
- Detecte les strings dans les `const` module-scope et vous guide pour les integrer manuellement
|
|
54
55
|
|
|
55
56
|
## Commandes
|
|
56
57
|
|
|
@@ -66,12 +67,24 @@ next-auto-i18n init --locale en,es,de # langues cibles en ligne de commande
|
|
|
66
67
|
|
|
67
68
|
### `next-auto-i18n sync`
|
|
68
69
|
|
|
69
|
-
Rescanne le projet
|
|
70
|
+
Rescanne le projet, integre les nouvelles strings et synchronise toutes les traductions (mode incrementiel — les cles existantes sont preservees).
|
|
70
71
|
|
|
71
72
|
```bash
|
|
72
73
|
next-auto-i18n sync
|
|
73
74
|
```
|
|
74
75
|
|
|
76
|
+
### `next-auto-i18n extract`
|
|
77
|
+
|
|
78
|
+
Traduit toutes les strings et genere un **guide d'integration Markdown** — sans modifier aucun fichier source. Utile pour garder le controle sur la reecriture du code.
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
next-auto-i18n extract # guide genere dans i18n-guide.md
|
|
82
|
+
next-auto-i18n extract --out docs/i18n-guide.md # chemin personnalise
|
|
83
|
+
next-auto-i18n extract --locale en,es # langues cibles (si pas de config)
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
Le guide genere inclut : exemples d'utilisation Client/Server Component, tableaux par fichier (ligne, type, cle, code a copier-coller), section dedicee aux strings module-scope.
|
|
87
|
+
|
|
75
88
|
### `next-auto-i18n add-locale <locale>`
|
|
76
89
|
|
|
77
90
|
Ajoute une nouvelle langue et traduit toutes les cles existantes.
|
|
@@ -133,9 +146,10 @@ Chaque string devient une cle i18n normalisee :
|
|
|
133
146
|
|
|
134
147
|
### 3. Traduction DeepL
|
|
135
148
|
|
|
136
|
-
- Appel batch avec protection des placeholders (`{name}`
|
|
149
|
+
- Appel batch avec protection des placeholders (`{name}` → `<x>name</x>`)
|
|
137
150
|
- Mode incrementiel : seules les cles manquantes sont traduites
|
|
138
151
|
- Compatible DeepL Free (500k chars/mois) et Pro
|
|
152
|
+
- Restauration automatique des entites HTML (`'`, `'`, etc.)
|
|
139
153
|
|
|
140
154
|
### 4. Reecriture des composants
|
|
141
155
|
|
|
@@ -147,6 +161,24 @@ Chaque string devient une cle i18n normalisee :
|
|
|
147
161
|
|
|
148
162
|
- Server Components : `await getTranslations()` (next-intl/server)
|
|
149
163
|
- Client Components : `useTranslations()` (next-intl)
|
|
164
|
+
- Les strings dans des `const` module-scope (hors composant) sont **detectees et signalees** avec le fichier + numero de ligne — elles sont traduites dans les JSON mais pas reecrites automatiquement (voir section suivante)
|
|
165
|
+
|
|
166
|
+
### Strings module-scope
|
|
167
|
+
|
|
168
|
+
Les `const` declarees au niveau module (hors fonction/composant) ne peuvent pas utiliser `t()` directement. next-auto-i18n les detecte, les traduit, et vous indique quoi faire :
|
|
169
|
+
|
|
170
|
+
```tsx
|
|
171
|
+
// ❌ avant — const module-scope, t() inaccessible ici
|
|
172
|
+
const items = ['Accueil', 'A propos', 'Contact'];
|
|
173
|
+
|
|
174
|
+
// ✅ apres — deplacez la const dans le composant
|
|
175
|
+
export function Nav() {
|
|
176
|
+
const t = useTranslations();
|
|
177
|
+
const items = [t('accueil'), t('a_propos'), t('contact')];
|
|
178
|
+
}
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
Utilisez `next-auto-i18n extract` pour obtenir un guide complet avec tous les cas a corriger.
|
|
150
182
|
|
|
151
183
|
### 5. Injection config Next.js
|
|
152
184
|
|
|
@@ -182,4 +214,4 @@ npm run dev -- init # test local
|
|
|
182
214
|
|
|
183
215
|
## Licence
|
|
184
216
|
|
|
185
|
-
MIT
|
|
217
|
+
MIT — [Steven KOULO](https://github.com/stvekoulo)
|