Aller au contenu

Ajouter de nouvelles locales

Ouvrez tyndale.config.json et ajoutez le code de locale au tableau locales :

{
"defaultLocale": "en",
"locales": ["es", "fr", "ja", "de"]
}

defaultLocale est votre langue source, elle ne doit donc pas apparaître dans locales.

Ensuite, exécutez :

Fenêtre de terminal
npx tyndale translate

translate exécute automatiquement d’abord l’extraction, puis génère les traductions pour la nouvelle locale tout en laissant les fichiers de locales existants inchangés, sauf si des entrées obsolètes doivent être nettoyées.

Mappez les codes de variante vers des codes canoniques avec localeAliases :

{
"localeAliases": {
"pt-BR": "pt",
"zh-TW": "zh"
}
}

Tyndale détecte les locales RTL, mais il ne modifie pas <html dir> pour vous. Configurez explicitement la direction avec les helpers de locale actuels :

app/[locale]/layout.tsx
import { getDirection } from 'tyndale-next/server';
export default async function RootLayout({
children,
params,
}: {
children: React.ReactNode;
params: Promise<{ locale: string }>;
}) {
const { locale } = await params;
return (
<html lang={locale} dir={getDirection(locale)}>
<body>{children}</body>
</html>
);
}

Dans les composants client, utilisez useDirection() lorsque vous avez besoin de la valeur de direction active dans l’UI rendue.