build-all-langs.sh
51 lignes · 1418 octets
#!/usr/bin/env bash # Construit le site mdBook pour toutes les langues supportées. # Sortie : book/{fr,en,de,es,pt,it}/ # # Usage : ./scripts/build-all-langs.sh # # Pré-requis : mdbook, mdbook-mermaid, mdbook-i18n-helpers installés (voir CONTRIBUTING.md §3.1). set -euo pipefail LANGS=(fr en de es pt it) ROOT="$(cd "$(dirname "$0")/.." && pwd)" cd "$ROOT" rm -rf book mkdir -p book for lang in "${LANGS[@]}"; do echo "→ Build $lang" MDBOOK_BOOK__LANGUAGE="$lang" mdbook build -d "book/$lang" done # Page d'accueil qui redirige selon Accept-Language (fallback FR) cat > book/index.html <<'HTML' <!DOCTYPE html> <html lang="fr"> <head> <meta charset="utf-8"> <title>Documentation gitrust</title> <script> const langs = ["fr", "en", "de", "es", "pt", "it"]; const preferred = (navigator.language || "fr").slice(0, 2).toLowerCase(); const target = langs.includes(preferred) ? preferred : "fr"; location.replace(target + "/index.html"); </script> <meta http-equiv="refresh" content="0;url=fr/index.html"> </head> <body> <p>Redirection vers <a href="fr/index.html">la documentation</a>…</p> </body> </html> HTML echo "" echo "✓ Builds mdBook terminés :" du -sh book/*/ # Post-traitement SEO : robots.txt, llms.txt, sitemaps par langue + sitemap index. echo "" echo "→ Post-traitement SEO" "$ROOT/scripts/seo-postbuild.sh" "${SITE_BASE_URL:-https://demo.gitrust.eu/docs}"
GitRust