Internationalisation
Docus v4 introduit un support d'internationalisation natif basé sur le module @nuxtjs/i18n, vous permettant de créer une documentation en plusieurs langues avec un routage automatique et une gestion de contenu.
Fonctionnalités
- Module i18n intégré : Intégration native avec
@nuxtjs/i18n - Routage de locale dynamique : Préfixage automatique des URL avec les codes de langue (
/en/docs,/fr/docs) - Collections de contenu par locale : Gestion séparée du contenu pour chaque langue
- Sélecteur de langue : Composant intégré pour basculer entre les locales
- Configuration monolingue : Configuration simple de la locale pour les sites monolingues via
app.config.ts
Configuration monolingue
Si vous créez une documentation dans une seule langue (sans le module complet @nuxtjs/i18n), vous pouvez configurer la locale via app.config.ts. Ceci est utile pour définir la langue des composants UI et localiser les chaînes intégrées.
export default defineAppConfig({
docus: {
locale: 'fr', // Définissez votre locale (par défaut : 'en')
}
})
Cette configuration affecte :
- Les traductions des composants UI (boutons, étiquettes, etc.)
- Les attributs
langetdirsur la balise<html> - Les chaînes d'interface intégrées de Docus
Configuration multilingue
Pour une documentation multilingue, utilisez l'intégration complète @nuxtjs/i18n comme décrit ci-dessous.
Configurer un projet existant
Pour activer l'i18n dans votre projet Docus, ajoutez le module @nuxtjs/i18n à votre nuxt.config.ts et définissez vos locales :
export default defineNuxtConfig({
modules: ['@nuxtjs/i18n'],
i18n: {
defaultLocale: 'en',
locales: [
{ code: 'en', name: 'English' },
{ code: 'fr', name: 'Français' },
],
}
})
@nuxtjs/i18n en prefix.Créer un nouveau projet avec le modèle i18n
Lors de la création d'un nouveau projet, vous pouvez choisir le modèle i18n pour une internationalisation préconfigurée :
npx create-docus my-docs -t i18n
Structure des répertoires
Lorsque l'i18n est activé, organisez votre contenu par locale dans le répertoire content/ :
content/
├── en/ # Contenu anglais
│ ├── index.md # Page d'accueil anglaise
│ ├── getting-started/
│ │ ├── installation.md
│ │ └── configuration.md
│ └── guide/
│ └── advanced.md
├── fr/ # Contenu français
│ ├── index.md # Page d'accueil française
│ ├── getting-started/
│ │ ├── installation.md
│ │ └── configuration.md
│ └── guide/
│ └── advanced.md