Skip to content

Ajouter l'i18n à un site web ou un site de documentation ​

Cette page concerne un site de documentation (Markdown ou MDX) ou un site marketing ou statique (un site web Astro ou du HTML simple) en une seule langue. L'outil traduit le contenu de votre page avec les modèles de votre fournisseur de LLM et écrit une copie localisée par langue. Le framework de votre site sert ces copies et fournit le sélecteur de langue.

Pour une application dont les chaînes d'UI se trouvent dans des appels t(), utilisez plutôt Ajouter l'i18n à une application JS/TS ou Ajouter l'i18n à une application Python.

De quoi disposez-vous ? ​

Votre siteModèle d'initialisationCommencer ici
Astro Starlight ou Astro simpleui-starlight / chaînes d'interface utilisateur hybridesAstro
Docusaurusui-docusaurusDocusaurus
VitePressui-vitepressVitePress
Nextra 4 (Next.js App Router)ui-nextraNextra
Fumadocs 4 (Next.js App Router)ui-fumadocsFumadocs
Pages HTML simplesui-plain-html ou docs-plain-htmlApplications HTML simples
Pas de framework de site, juste un README et des fichiers Markdowndocs-markdown, ou n'importe quel modèle plus --with-readmeAjouter l'i18n à votre README et à vos documents Markdown
Prompts d'agent

Étapes ​

La même structure fonctionne pour chaque framework ; les détails se trouvent dans le guide du framework lié ci-dessus.

  1. Installez la CLI et définissez la clé API : Installation, Fournisseur et clé API.
  2. Initialisez : ai-i18n-tools init -t <template> -P <provider>.
  3. Définissez sourceLocale, targetLocales et docs[].contentPaths (les pages et dossiers écrits dans votre langue source). sourceLocale peut être n'importe quelle langue. Le guide du framework indique le bon docsOutput.style.
  4. Activez l'i18n de votre framework afin qu'il serve et lie les pages localisées. Chaque guide contient une section « Activer l'i18n dans un site existant » : VitePress, Docusaurus, Nextra, Fumadocs, Astro.
  5. Exécutez ai-i18n-tools sync (ou translate-docs), puis construisez le site.
  6. Vérifiez une route localisée dans le navigateur. Le menu déroulant de locale du framework est le sélecteur. Pour un fichier Markdown plat tel qu'un README, ajoutez une ligne de lien avec languageListBlock.

Ce qui est traduit ​

Les corps de page passent toujours par le pipeline Documents. L'interface du framework (navigation, barre latérale, étiquettes de thème) est gérée dans la même exécution lorsque le framework le prend en charge, et non via le pipeline JSON séparé.

FrameworkChaînes de l'interface et du thèmeComment
DocusaurusCatalogue write-translations ({ message, description })docs[].docusaurusCatalogDir plus translate-docs
VitePressCatalogue de thème, de navigation et de barre latéraledocsOutput.vitepressThemeCatalog plus translate-docs
NextraÉtiquettes de barre latérale _meta.tsAutomatique avec style: "nextra"
NextraDictionnaire de thème .tsdocs[].nextraDictionaryPath
FumadocsÉtiquettes de barre latérale meta.jsonAutomatique avec style: "fumadocs"
FumadocsCatalogue de personnalisations d'interface utilisateurdocsOutput.fumadocsUiCatalog
Astro StarlightChaînes d'interface utilisateur intégrées pour de nombreux paramètres régionauxPages uniquement

Les images et les captures d'écran ne sont pas traduites par translate-docs. Pour les fichiers spécifiques à un paramètre régional, voir Images et captures d'écran.

HTML simple ​

Deux options, selon le comportement attendu de la page :

  • Une page qui change de langue dans le navigateur : marquez le texte avec les attributs data-i18n* et utilisez le runtime des chaînes d'interface utilisateur (ui-plain-html). Voir Applications HTML simples.
  • Un fichier HTML traduit par paramètre régional : utilisez le pipeline de documents (docs-plain-html). Voir Pages HTML.

Un fichier appartient à un seul chemin d'accès.

Ce n'est pas votre cas ? ​

Référence pour les options partagées et les différences par framework : Intégrations.

Publié sous licence MIT.