{
  "app": {
    "name": "RenameFlow",
    "tagline": "Renommez vos fichiers médias en quelques secondes",
    "description": "La façon intelligente d'organiser vos films, séries, animes et musique. Pas de téléversement - tout se passe sur votre ordinateur.",
    "moduleLoadError": "Cette section n'a pas pu se charger, sans doute parce que RenameFlow vient d'être mis à jour. Recharge la page pour continuer."
  },
  "nav": {
    "home": "Accueil",
    "app": "Application",
    "pricing": "Tarifs",
    "login": "Connexion",
    "signup": "Inscription",
    "logout": "Déconnexion",
    "account": "Compte",
    "settings": "Paramètres"
  },
  "hero": {
    "title": "Renommez vos fichiers médias",
    "titleHighlight": "intelligemment",
    "flip": {
      "text": "Renomme. Organise.",
      "words": [
        "Films",
        "Séries",
        "Animes",
        "Musique",
        "Sous-titres"
      ]
    },
    "subtitle": "Renommez films, séries, animés et musique au format attendu par Plex, Jellyfin et Kodi, en quelques secondes. Tout se passe en local sur votre ordinateur : aucun fichier n'est envoyé.",
    "cta": "Commencer maintenant",
    "ctaSecondary": "Voir les prix",
    "free": "Gratuit • 15 fichiers/jour",
    "ctaDemo": "Voir la démo",
    "heading": "Renommage de fichiers médias pour Plex, Jellyfin et Kodi"
  },
  "features": {
    "title": "Tout ce qu'il vous faut",
    "subtitle": "Des fonctionnalités puissantes pour organiser votre bibliothèque multimédia",
    "local": {
      "title": "100% Local",
      "description": "Vos fichiers ne quittent jamais votre ordinateur. Nous utilisons l'API File System Access pour le renommage direct.",
      "details": "Confidentialité totale pour vos fichiers. Toutes les opérations sur les fichiers se font directement dans votre navigateur via des API Web modernes : aucun upload, aucun stockage de vos médias dans le cloud. Seules les informations nécessaires à l'identification de vos médias (comme les titres détectés dans vos noms de fichiers) sont transmises aux services de métadonnées. Votre médiathèque reste sur votre machine.",
      "tags": [
        "Privé",
        "Sécuritaire",
        "Sans téléversement"
      ]
    },
    "smart": {
      "title": "Détection intelligente",
      "description": "Détecte automatiquement les films, séries, animes et musique à partir des noms de fichiers.",
      "details": "Notre analyseur IA extrait le titre, l'année, la saison, l'épisode, la qualité et le codec à partir des noms de fichiers. Fonctionne avec les releases scene, torrents et encodages personnels.",
      "tags": [
        "IA",
        "Auto-détection",
        "Précis"
      ]
    },
    "sources": {
      "title": "Sources multiples",
      "description": "TMDB, TheTVDB, AniList, MusicBrainz - nous cherchons partout pour trouver vos médias.",
      "details": "Nous interrogeons plusieurs bases de données simultanément pour garantir le meilleur résultat. Données croisées de TMDB, TheTVDB, AniList pour les animés, et MusicBrainz pour les métadonnées musicales.",
      "tags": [
        "TMDB",
        "TVDB",
        "OpenSubtitles"
      ]
    },
    "patterns": {
      "title": "Patterns personnalisés",
      "description": "Créez vos propres patterns de nommage ou utilisez les préréglages pour Plex, Kodi, Jellyfin.",
      "details": "Concevez votre schéma de nommage parfait avec des variables comme {title}, {year}, {season}, {episode}, {quality}. Sauvegardez vos patterns et basculez entre eux instantanément.",
      "tags": [
        "Plex",
        "Kodi",
        "Jellyfin"
      ]
    }
  },
  "demo": {
    "title": "Voyez-le en action",
    "before": "Avant",
    "after": "Après",
    "arrow": "→"
  },
  "landing": {
    "demo": {
      "rename": {
        "tag": "Renommage intelligent",
        "subtitle": "Films, Séries, Animes & Musiques",
        "examples": [
          {
            "before": "The.Matrix.1999.1080p.BluRay.x264.mkv",
            "after": "The Matrix (1999) [1080p].mkv",
            "type": "movie"
          },
          {
            "before": "Breaking.Bad.S01E03.720p.WEBRip.mkv",
            "after": "Breaking Bad - S01E03 - And the Bag's in the River.mkv",
            "type": "series"
          },
          {
            "before": "One.Piece.1045.VOSTFR.1080p.mkv",
            "after": "One Piece - 1045 - VOSTFR [1080p].mkv",
            "type": "anime"
          },
          {
            "before": "Daft.Punk-Get.Lucky.flac",
            "after": "Daft Punk - Get Lucky.flac",
            "type": "music"
          }
        ]
      },
      "subtitles": {
        "tag": "Recherche de sous-titres",
        "title": "Trouvez des sous-titres instantanément",
        "subtitle": "Détection automatique via hash ou recherche manuelle",
        "exampleQuery": "Inception 2010 1080p",
        "downloads": "téléchargements",
        "downloadCta": "Télécharger"
      },
      "episodes": {
        "tag": "Explorateur d'épisodes",
        "title": "Explorez les épisodes de séries",
        "subtitle": "Parcourez les listes complètes depuis TVDB & TMDB",
        "exampleTitle": "Stranger Things",
        "exampleEp1": "La disparition de Will Byers",
        "exampleEp2": "La folle de Maple Street",
        "exampleEp3": "Holly, Jolly",
        "exampleEp4": "Le corps",
        "note": "Parcourez une saison et gardez les visuels à portée de vue pendant la sélection.",
        "posterAlt": {
          "scifi": "Affiche science-fiction",
          "crime": "Affiche polar",
          "fantasy": "Affiche fantasy",
          "anime": "Affiche animé",
          "noir": "Affiche film noir",
          "space": "Affiche espace"
        }
      },
      "verify": {
        "tag": "Vérification de fichiers",
        "title": "Vérifiez l'intégrité des fichiers",
        "subtitle": "Calculez les hashs MD5, SHA-1, SHA-256 instantanément",
        "match": "Les checksums correspondent ✓"
      }
    },
    "cta": {
      "title": "Prêt à organiser votre bibliothèque média ?",
      "subtitle": "Gratuit : 15 fichiers/jour, compte gratuit en 30 secondes, aucun upload."
    },
    "partners": {
      "title": "Propulsé par les API officielles"
    },
    "faq": {
      "account": {
        "a": "Un compte gratuit (30 secondes, sans carte bancaire) nous permet d'appliquer équitablement les 15 fichiers/jour gratuits et de garder ton historique de renommage. Tes fichiers, eux, ne sont jamais envoyés : le renommage se fait dans ton navigateur, sur ton ordinateur.",
        "q": "Pourquoi faut-il un compte ?"
      },
      "seeAll": "Voir toutes les questions"
    },
    "nav": {
      "demo": "Démo",
      "features": "Fonctionnalités",
      "language": "Langue : {{language}}",
      "main": "Navigation principale",
      "openApp": "Ouvrir l'app",
      "openMenu": "Ouvrir le menu",
      "partners": "Intégrations",
      "pricing": "Tarifs"
    }
  },
  "pricing": {
    "seoTitle": "Tarifs : Gratuit, Pro 2,99 €/mois ou 6,99 €/an | RenameFlow",
    "seoDescription": "Découvrez nos forfaits gratuit, mensuel, annuel et à vie pour renommer vos fichiers multimédia intelligemment.",
    "title": "Tarification simple",
    "subtitle": "Choisissez le forfait qui vous convient",
    "currentPlan": "Forfait actuel",
    "checkoutFailed": "Échec du paiement",
    "manageInAccount": "Gérez votre abonnement dans votre",
    "free": {
      "name": "Gratuit",
      "price": "0",
      "period": "pour toujours",
      "features": [
        "15 fichiers par jour",
        "Sources TMDB & TVDB",
        "3 sous-titres par mois",
        "Support de base"
      ],
      "cta": "Commencer gratuitement"
    },
    "monthly": {
      "name": "Pro Mensuel",
      "price": "2.99",
      "period": "/mois",
      "features": [
        "Fichiers illimités",
        "Toutes les sources",
        "Sous-titres illimités",
        "Support prioritaire"
      ],
      "cta": "S'abonner"
    },
    "annual": {
      "name": "Pro Annuel",
      "price": "6.99",
      "period": "/an",
      "badge": "Populaire",
      "savings": "Économisez 80%",
      "features": [
        "Tout du Mensuel",
        "Meilleur rapport qualité-prix",
        "Modèles personnalisés",
        "Historique de renommage"
      ],
      "cta": "S'abonner annuellement"
    },
    "lifetime": {
      "name": "À vie",
      "price": "49",
      "originalPrice": "69",
      "period": "une fois",
      "badge": "Offre limitée",
      "remaining": "{{count}}/100 restants",
      "soldOut": "Épuisé",
      "features": [
        "Tout pour toujours",
        "Payez une fois",
        "Toutes les mises à jour",
        "Accès anticipé"
      ],
      "cta": "Obtenir l'accès à vie",
      "launchOffer": "Offre de lancement : prix bloqué à vie",
      "sameAsPro": "Identique au plan Pro (mêmes fonctionnalités) : paiement unique, mises à jour incluses."
    },
    "backToApp": "Retour à l'application",
    "billingPeriod": "Période de facturation",
    "includedInLifetime": "Inclus dans votre offre À vie",
    "includesFree": "Tout ce qui est dans Gratuit",
    "pro": {
      "name": "Pro"
    },
    "switchToAnnual": "Passer à la facturation annuelle",
    "switchToMonthly": "Passer à la facturation mensuelle",
    "trust": {
      "free": "Accès immédiat · Aucun paiement requis",
      "lifetime": "Paiement unique · Accès permanent",
      "pro": "Paiement sécurisé · Résiliable à tout moment",
      "switchPlan": "Prorata automatique · Géré dans le portail sécurisé Stripe"
    },
    "termsNotice": "En achetant, tu acceptes les <terms>Conditions générales de vente</terms>."
  },
  "checkout": {
    "successSeoTitle": "Paiement confirmé - RenameFlow",
    "cancelSeoTitle": "Paiement annulé - RenameFlow",
    "cancelTitle": "Paiement annulé",
    "cancelBody": "Pas de souci — vous pouvez réessayer quand vous voulez. Si quelque chose a bloqué, essayez une autre carte ou réessayez dans quelques secondes.",
    "cancelToast": "Aucun débit n'a été effectué. Vous pouvez réessayer quand vous voulez.",
    "retryCta": "Réessayer",
    "backHome": "Retour à l'accueil",
    "backToPricing": "Retour aux tarifs",
    "activating": "Activation de votre accès…",
    "activationDelayed": "Votre paiement est confirmé, mais l'activation prend plus de temps que prévu. Elle sera appliquée automatiquement : actualisez l'application dans une minute, ou contactez-nous si rien ne change.",
    "createAccount": "Créer mon compte",
    "emailMismatchBody": "Ce paiement a été fait avec {{email}}. Connectez-vous avec cette adresse pour l'activer, ou contactez-nous et nous le transférerons sur ce compte.",
    "emailMismatchBodyNoEmail": "Ce paiement a été fait avec une autre adresse e-mail. Connectez-vous avec cette adresse pour l'activer, ou contactez-nous et nous le transférerons sur ce compte.",
    "emailMismatchTitle": "Paiement fait avec un autre e-mail",
    "errorTitle": "Paiement non confirmé",
    "goBack": "Revenir en arrière",
    "goToApp": "Aller à l'application",
    "haveAccount": "J'ai déjà un compte",
    "processingBody": "Votre paiement est en cours de confirmation par votre banque (quelques jours pour un prélèvement). Votre accès sera activé automatiquement dès sa validation.",
    "processingTitle": "Paiement en cours de traitement",
    "redirectingToApp": "Redirection vers l'application…",
    "signupHint": "Paiement détecté : crée ton compte avec le même email pour activer l'accès.",
    "successBody": "Pour activer votre accès, créez votre compte ou connectez-vous avec le même e-mail que lors du paiement :",
    "successTitle": "Paiement confirmé"
  },
  "auth": {
    "login": "Connexion",
    "signup": "Inscription",
    "email": "Courriel",
    "password": "Mot de passe",
    "confirmPassword": "Confirmer le mot de passe",
    "forgotPassword": "Mot de passe oublié?",
    "showPassword": "Afficher le mot de passe",
    "hidePassword": "Masquer le mot de passe",
    "validation": {
      "required": "Ce champ est requis.",
      "emailInvalid": "Veuillez saisir une adresse courriel valide.",
      "emailTooLong": "Le courriel doit faire 255 caractères maximum.",
      "passwordMin": "Le mot de passe doit contenir au moins {{min}} caractères.",
      "passwordTooLong": "Le mot de passe est trop long.",
      "passwordMismatch": "Les mots de passe ne correspondent pas."
    },
    "forgot": {
      "seoTitle": "Mot de passe oublié - RenameFlow",
      "title": "Réinitialiser le mot de passe",
      "subtitle": "Entrez votre courriel et nous vous enverrons un lien de réinitialisation.",
      "emailPlaceholder": "vous@exemple.com",
      "sendCta": "Envoyer le lien",
      "sentTitle": "Courriel envoyé",
      "sentDesc": "Si un compte existe pour ce courriel, vous recevrez un lien sous peu.",
      "backToLogin": "Retour à la connexion",
      "resend": "Renvoyer",
      "resendIn": "Renvoyer ({{seconds}} s)",
      "sentTo": "Si un compte existe pour {{email}}, un lien de réinitialisation arrive. Ça peut prendre une minute ; regarde aussi dans tes spams."
    },
    "reset": {
      "seoTitle": "Réinitialiser le mot de passe - RenameFlow",
      "title": "Choisir un nouveau mot de passe",
      "subtitle": "Définissez un nouveau mot de passe pour votre compte.",
      "newPassword": "Nouveau mot de passe",
      "newPasswordPlaceholder": "Au moins 6 caractères",
      "confirmPasswordPlaceholder": "Répétez le nouveau mot de passe",
      "saveCta": "Mettre à jour",
      "successTitle": "Mot de passe mis à jour",
      "successDesc": "Vous pouvez maintenant continuer sur RenameFlow.",
      "backToLogin": "Retour à la connexion",
      "backToForgot": "Redemander un lien",
      "invalidLink": "Ce lien est invalide ou expiré. Veuillez en demander un nouveau.",
      "mismatch": "Les mots de passe ne correspondent pas",
      "minLength": "Le mot de passe doit faire au moins 6 caractères"
    },
    "noAccount": "Pas de compte?",
    "hasAccount": "Déjà un compte?",
    "or": "ou",
    "continueWithGoogle": "Continuer avec Google",
    "loginSuccess": "Bon retour!",
    "signupSuccess": "Compte créé avec succès!",
    "logoutSuccess": "Déconnexion réussie",
    "confirm": {
      "title": "Vérifie ta boîte de courriels",
      "desc": "On a envoyé un lien de confirmation à {{email}}. Clique dessus pour activer ton compte.",
      "resend": "Renvoyer le lien",
      "resendSent": "Courriel de confirmation renvoyé.",
      "notConfirmed": "Ton courriel n'est pas encore confirmé. Vérifie ta boîte (et les pourriels), puis réessaie.",
      "checkoutHint": "Ton paiement sera activé dès que ton email sera confirmé.",
      "changeEmail": "Utiliser un autre email",
      "confirmedToast": "Email confirmé, bienvenue !",
      "continue": "J'ai confirmé, continuer",
      "otherDevice": "Ouvre le lien sur cet appareil. Pour renommer tes fichiers, RenameFlow a ensuite besoin de Chrome, Edge ou Opera sur un ordinateur.",
      "resendIn": "Renvoyer le lien ({{seconds}} s)",
      "sameDevice": "Ouvre le lien sur cet ordinateur. Cette page continue toute seule dès que ton email est confirmé.",
      "spamHint": "Tu ne le trouves pas ? Regarde dans tes spams.",
      "stillPending": "Ton email n'est pas encore confirmé. Clique sur le lien de l'email qu'on t'a envoyé, puis réessaie.",
      "waiting": "En attente de ta confirmation…"
    },
    "createAccount": "Créer un compte gratuit",
    "errors": {
      "alreadyRegistered": "Un compte existe déjà avec cet email.",
      "generic": "Une erreur est survenue. Réessaie.",
      "invalidCredentials": "Email ou mot de passe incorrect.",
      "network": "Problème de connexion. Vérifie ta connexion internet et réessaie.",
      "rateLimit": "Trop de tentatives. Attends une minute puis réessaie.",
      "samePassword": "Choisis un mot de passe différent de l'actuel.",
      "signupBlocked": "Impossible de créer un compte avec cette adresse. Si c'est une adresse temporaire, utilise ton email habituel.",
      "weakPassword": "Ce mot de passe est trop faible ou trop courant. Choisis-en un plus long."
    },
    "exists": {
      "desc": "Un compte existe déjà pour {{email}}. Connecte-toi, ou réinitialise ton mot de passe si tu l'as oublié.",
      "title": "Tu as déjà un compte"
    },
    "noAccountDesc": "Crée un compte gratuit pour commencer à renommer tes fichiers.",
    "signupCompat": "RenameFlow renomme tes fichiers sur ordinateur, avec Chrome, Edge ou Opera. Tu peux créer ton compte maintenant et continuer sur ton ordinateur : on t'enverra le lien par email.",
    "signupLegal": "En créant un compte, tu acceptes les <terms>Conditions générales d'utilisation et de vente</terms> et reconnais avoir pris connaissance de la <privacy>Politique de confidentialité</privacy>."
  },
  "renamer": {
    "filesLoaded": "fichiers chargés",
    "toMatch": "à faire correspondre",
    "toRename": "à renommer",
    "title": "Renommeur de fichiers",
    "selectFiles": "Sélectionner des fichiers",
    "selectFolder": "Sélectionner un dossier",
    "selectFilesToStart": "Sélectionnez des fichiers ou dossiers pour commencer",
    "dropHere": "Déposez des fichiers ou dossiers ici",
    "orClick": "ou cliquez pour parcourir",
    "analyzing": "Analyse en cours...",
    "filesSelected": "fichiers sélectionnés",
    "originalName": "Original",
    "detectedName": "Détecté",
    "newName": "Nouveau nom",
    "status": "Statut",
    "pending": "En attente",
    "ready": "Prêt",
    "renamed": "Renommé",
    "error": "Erreur",
    "ambiguous": "Correspondances multiples",
    "renameAll": "Renommer tout",
    "renameSelected": "Renommer la sélection",
    "clear": "Effacer",
    "selectMatch": "Sélectionnez la bonne correspondance",
    "noResults": "Aucun résultat trouvé",
    "searchManually": "Recherche manuelle",
    "usageRemaining": "fichiers restants aujourd'hui",
    "unlimited": "Illimité",
    "upgradeCta": "Passer au Premium",
    "folderTip": "Astuce: Sélectionnez un dossier au lieu de fichiers individuels pour éviter les demandes de permission multiples",
    "errorSearchFailed": "Échec de la recherche d'informations média",
    "errorRenameFailed": "Échec du renommage de ce fichier",
    "errorMoveNotSupported": "Votre navigateur ne prend pas en charge l'opération de déplacement de fichier",
    "browserNotSupported": "Navigateur non pris en charge",
    "browserNotSupportedDesc": "Veuillez utiliser Chrome, Edge ou Opera pour une fonctionnalité complète.",
    "compat": {
      "mobileTitle": "Navigateur desktop requis",
      "mobileDesc": "RenameFlow nécessite un accès à vos fichiers locaux, disponible uniquement sur un navigateur desktop comme Chrome ou Edge.",
      "firefoxTitle": "Firefox n'est pas pris en charge",
      "firefoxDesc": "Firefox ne prend pas en charge l'API File System Access. Veuillez ouvrir RenameFlow dans Chrome ou Edge.",
      "safariTitle": "Safari n'est pas pris en charge",
      "safariDesc": "Safari ne prend pas en charge l'API File System Access. Veuillez ouvrir RenameFlow dans Chrome ou Edge.",
      "unknownTitle": "Navigateur non pris en charge",
      "unknownDesc": "Votre navigateur ne prend pas en charge l'API File System Access. Veuillez utiliser Chrome ou Edge.",
      "copyLink": "Copier le lien pour desktop",
      "linkCopied": "Lien copié !",
      "recommendedBrowsers": "Recommandé : Google Chrome ou Microsoft Edge (desktop)",
      "braveDesc": "Brave désactive l'API File System Access par défaut. Ouvre brave://flags/#file-system-access-api, choisis « Enabled », relance Brave, puis recharge cette page.",
      "braveTitle": "Active l'accès aux fichiers dans Brave",
      "copyFailed": "Copiez ce lien sur votre ordinateur :"
    },
    "limitReached": "Vous ne pouvez renommer que {{remaining}} fichiers de plus aujourd'hui. Passez à Premium pour illimité.",
    "renameResult": "{{success}}/{{total}} fichiers renommés",
    "originalFiles": "Fichiers originaux",
    "newNames": "Nouveaux noms",
    "match": "Matcher",
    "rename": "Renommer",
    "load": "Charger",
    "refresh": "Actualiser",
    "matchesFound": "correspondances trouvées",
    "clickToSelect": "cliquer pour sélectionner",
    "fetchData": "Récupérer les données",
    "noFilesSelected": "Aucun fichier sélectionné",
    "files": "Fichiers",
    "folder": "Dossier",
    "noPreviewYet": "Aucun aperçu disponible",
    "permissionDenied": "RenameFlow a besoin de l’autorisation de modifier ces fichiers. Cliquez à nouveau sur « Renommer » et choisissez « Autoriser » quand le navigateur le demande.",
    "search": "Rechercher",
    "searching": "Recherche en cours...",
    "tryDifferentSearch": "Essayez un autre terme de recherche",
    "sortByEpisode": "Trier par épisode",
    "sortByName": "Trier par nom",
    "sortOriginal": "Ordre original",
    "sorted": "Trié",
    "batchMatch": {
      "title": "Sélectionner la série pour tous les épisodes",
      "description": "{{count}} épisodes détectés pour \"{{title}}\"",
      "hint": "Une seule sélection, tous les épisodes matchés",
      "hintDesc": "Choisissez la bonne série et tous les épisodes seront automatiquement associés à leurs métadonnées.",
      "detected": "Lot détecté",
      "applyToAll": "Appliquer à tous",
      "skipBatch": "Matcher individuellement",
      "noEpisodeDetected": "Numéro d'épisode non détecté dans le nom du fichier",
      "episodeNotFound": "Épisode S{{season}}E{{episode}} non trouvé dans la base",
      "seasonNotFound": "Saison {{season}} non trouvée sur TMDB (disponibles : {{availableSeasons}})",
      "absoluteEpisodeNotFound": "Épisode absolu {{episode}} non trouvé dans la base",
      "absoluteMappingRequiresTMDB": "Pour les animes à épisodes absolus (E0010), sélectionne un résultat TMDB."
    },
    "errorTitle": "Pourquoi cette erreur ?",
    "recentFolders": "Dossiers récents",
    "reopenFolder": "Rouvrir",
    "installForPermissions": "Installez l'app pour des permissions persistantes",
    "installPWA": "Installer l'app",
    "demo": {
      "title": "Pas encore de fichiers ? Testez la démo",
      "description": "Voyez RenameFlow identifier de vrais films et séries depuis des noms de fichiers d'exemple — sans rien installer.",
      "cta": "Lancer la démo",
      "previewTitle": "Aperçu de la démo",
      "previewDescription": "Ce sont des fichiers d'exemple. Chargez vos propres fichiers pour les renommer réellement sur le disque.",
      "unsupportedNotice": "Mode démo. Pour renommer vos propres fichiers, ouvrez RenameFlow sur un ordinateur avec Chrome ou Edge."
    },
    "firstRename": {
      "title": "🎉 Premier fichier renommé !",
      "description": "Bravo ! Il vous reste {{remaining}}/{{limit}} renommages aujourd'hui."
    },
    "recommended": "Recommandé",
    "folderTipTitle": "Astuce permission en 1 clic",
    "folderTipShort": "1 clic pour autoriser tous les fichiers du dossier.",
    "permissionLost": {
      "title": "Permission perdue",
      "description": "Le navigateur a révoqué l'accès aux fichiers durant le renommage. Cliquez ci-dessous pour ré-autoriser et continuer avec les fichiers restants.",
      "reauthorize": "Ré-autoriser et continuer"
    },
    "a11y": {
      "moveDown": "Descendre {{name}}",
      "moveUp": "Monter {{name}}",
      "removeSelected": "Retirer les fichiers sélectionnés de la liste",
      "selectAll": "Sélectionner tous les fichiers",
      "selectFile": "Sélectionner {{name}}"
    },
    "autoBadge": "Auto",
    "autoMatchedHint": "Choisi automatiquement — résultats trouvés : {{total}}",
    "autoMatchedSingle": "Seul résultat trouvé — choisi automatiquement",
    "change": "Changer",
    "changeMatchFor": "Changer la correspondance de {{name}}",
    "choose": "Choisir",
    "chooseMatchFor": "Choisir la correspondance pour {{name}}",
    "dropUnsupportedDesc": "Utilisez plutôt « Sélectionner un dossier » ou « Sélectionner des fichiers ».",
    "dropUnsupportedTitle": "Le glisser-déposer n’est pas disponible ici",
    "errors": {
      "duplicateSummary": "Fichiers qui auraient écrasé un autre fichier : {{count}}. Vérifiez les fichiers signalés par un avertissement.",
      "duplicateTarget": "Destination en double : un autre fichier de ce dossier s’appellerait aussi « {{name}} ». Désélectionnez l’un des deux ou choisissez une autre correspondance.",
      "duplicateTargetLoose": "Destination en double : un autre fichier sélectionné s’appellerait aussi « {{name}} ». Désélectionnez l’un des deux, choisissez une autre correspondance, ou utilisez « Sélectionner un dossier » s’ils viennent de dossiers différents.",
      "nothingRenamedTitle": "Aucun fichier renommé",
      "searchTimeout": "La recherche a pris trop de temps. Cliquez sur « Matcher » pour réessayer.",
      "skippedSummary": "Ignorés pour ne pas écraser un autre fichier : {{skipped}} (signalés par un avertissement).",
      "targetExists": "Un fichier nommé « {{name}} » existe déjà dans ce dossier."
    },
    "looseFilesHint": "Fichiers ajoutés un par un : RenameFlow ne peut les comparer qu’aux fichiers chargés ici, pas au reste de leur dossier. Pour être sûr qu’aucun fichier existant ne sera remplacé, ouvrez plutôt le dossier entier.",
    "noMediaInFolderTitle": "Aucun fichier vidéo ou audio dans ce dossier",
    "noMediaTitle": "Aucun fichier vidéo ou audio trouvé",
    "picker": {
      "blockedDesc": "Le navigateur bloque l’accès à cet emplacement (dossier système ou protégé). Choisissez un dossier classique, comme Vidéos ou Téléchargements.",
      "errorTitle": "Impossible d’ouvrir vos fichiers",
      "folderCancelledDesc": "Si vous avez cliqué sur « Annuler » quand le navigateur demandait d’autoriser RenameFlow à modifier les fichiers, choisissez à nouveau le dossier et acceptez : cette autorisation est nécessaire pour renommer.",
      "folderCancelledTitle": "Aucun dossier sélectionné"
    },
    "quota": {
      "banner": "Offre gratuite — fichiers sélectionnés : {{selected}} sur {{total}} · renommages restants aujourd’hui : {{remaining}}",
      "bannerNone": "Offre gratuite : plus de renommages aujourd’hui. Vos fichiers restent associés : renommez-les demain ou passez en illimité maintenant.",
      "checkFailedDesc": "Impossible de vérifier votre quota du jour : les fichiers restants n’ont pas été renommés. Vérifiez votre connexion et réessayez.",
      "checkFailedTitle": "Renommage interrompu",
      "loadingPlan": "Vérification de votre offre… réessayez dans une seconde.",
      "noneLeftDesc": "Vos fichiers sont chargés et seront associés. Pour les renommer, passez Premium ou attendez la remise à zéro de demain.",
      "noneLeftTitle": "Plus de renommages gratuits aujourd’hui",
      "preselectDesc": "Fichiers sélectionnés : {{remaining}} sur {{total}}. Passez en illimité pour tout renommer d’un coup.",
      "preselectTitle": "Offre gratuite — renommages restants aujourd’hui : {{remaining}}",
      "seePlans": "Voir les offres"
    },
    "searchMatchFor": "Rechercher une correspondance pour {{name}}",
    "supportedFormats": "Formats pris en charge : {{formats}}",
    "undo": {
      "action": "Annuler",
      "doneDesc": "Noms d’origine restaurés : {{count}}.",
      "doneTitle": "Renommage annulé",
      "hint": "Pas le résultat attendu ? Vous pouvez annuler pendant 60 secondes.",
      "lastBatch": "Annuler le dernier renommage",
      "partialDesc": "Restaurés : {{restored}} · non restaurés : {{failed}} ({{reason}})",
      "partialTitle": "Annulation incomplète",
      "reasonChanged": "« {{name}} » a été modifié ou remplacé après le renommage",
      "reasonExists": "un fichier nommé « {{name}} » existe déjà",
      "reasonMissing": "« {{name}} » n’est plus dans son dossier",
      "reasonOther": "erreur inattendue ({{name}})",
      "reasonPermission": "l’autorisation de modifier « {{name}} » a été refusée",
      "renamedTitle": "Fichiers renommés : {{count}}"
    }
  },
  "settings": {
    "title": "Paramètres",
    "subtitle": "Configurez vos préférences",
    "language": "Langue",
    "languageDesc": "Sélectionnez votre langue préférée",
    "theme": "Thème",
    "themeDesc": "Choisissez votre thème de couleur",
    "light": "Clair",
    "dark": "Sombre",
    "system": "Système",
    "pattern": "Pattern de nommage",
    "patternDesc": "Configurer le format de nommage des fichiers",
    "patternHelp": "Variables disponibles: {series}, {season}, {episode}, {title}, {year}, {quality}",
    "presets": "Préréglages",
    "plex": "Plex",
    "kodi": "Kodi",
    "jellyfin": "Jellyfin",
    "custom": "Personnalisé",
    "save": "Sauvegarder",
    "saved": "Paramètres sauvegardés avec succès",
    "proOnly": "Réservé aux comptes Pro",
    "proOnlyDescription": "Créez vos propres patterns de nommage avec un abonnement Pro.",
    "upgradeCta": "Passer à Pro",
    "customDisabled": "Les préréglages standards sont disponibles. Le pattern personnalisé nécessite un compte Pro."
  },
  "account": {
    "title": "Compte",
    "subtitle": "Gérez votre compte et abonnement",
    "profile": "Profil",
    "subscription": "Abonnement",
    "currentPlan": "Forfait actuel",
    "usage": "Utilisation aujourd'hui",
    "history": "Historique de renommage",
    "noHistory": "Pas encore d'historique",
    "manageBilling": "Gérer la facturation",
    "cancelSubscription": "Annuler l'abonnement",
    "upgradeToPremium": "Passer à Premium",
    "billingError": "Impossible d'ouvrir le portail de facturation",
    "paymentsTitle": "Paiements",
    "paymentsDesc": "Forfait actuel et gestion",
    "lifetimeBadge": "Permanent",
    "lifetimeNote": "Accès à vie activé — aucun renouvellement.",
    "delete": {
      "confirmBody": "Cette action est irréversible. Votre compte, votre historique de renommage, vos modèles personnalisés et vos réglages seront supprimés, et tout abonnement actif sera résilié immédiatement, sans remboursement de la période en cours.",
      "confirmCta": "Supprimer définitivement",
      "confirmTitle": "Supprimer votre compte ?",
      "cta": "Supprimer mon compte",
      "description": "Supprime définitivement votre compte, votre historique de renommage, vos modèles personnalisés et vos réglages. Les abonnements actifs sont résiliés.",
      "doneBody": "Votre compte et vos données ont été supprimés.",
      "doneTitle": "Compte supprimé",
      "inputLabel": "Tapez {{word}} pour confirmer",
      "lifetimeWarning": "Votre accès à vie sera également perdu.",
      "title": "Supprimer mon compte",
      "typeToConfirm": "Tapez {{word}} pour confirmer."
    },
    "historyDesc": "Vos 10 derniers renommages",
    "loginRequired": "Connectez-vous pour voir votre compte",
    "loginRequiredDesc": "Votre offre, votre utilisation et votre historique de renommage s'affichent ici une fois connecté.",
    "periodEnds": "Période en cours jusqu'au {{date}}",
    "usageDesc": "Fichiers renommés aujourd'hui (remise à zéro chaque jour à minuit UTC)"
  },
  "footer": {
    "product": "Produit",
    "company": "Entreprise",
    "legal": "Légal",
    "about": "À propos",
    "blog": "Blogue",
    "privacy": "Confidentialité",
    "terms": "Conditions",
    "contact": "Contact",
    "copyright": "© 2024 RenameFlow. Tous droits réservés.",
    "faq": "FAQ",
    "howTo": "Comment ça marche",
    "alternatives": "Alternatives",
    "support": "Support",
    "cookies": "Cookies",
    "rights": "Tous droits réservés.",
    "legalNotice": "Mentions légales",
    "cookieSettings": "Gérer les cookies"
  },
  "marketing": {
    "guides": "Guides",
    "common": {
      "yes": "Oui",
      "no": "Non"
    },
    "guidesPage": {
      "seoTitle": "Guides RenameFlow — Plex, Kodi, Jellyfin, alternative à FileBot",
      "seoDescription": "Consultez nos guides : conventions de nommage Plex/Kodi/Jellyfin et comparaison avec FileBot.",
      "title": "Guides & Articles",
      "subtitle": "Des guides pratiques (SEO-friendly) pour organiser votre médiathèque.",
      "read": "Lire"
    },
    "filebot": {
      "seoTitle": "Alternative à FileBot — RenameFlow",
      "seoDescription": "Compare RenameFlow vs FileBot pour renommer et organiser tes films, séries télé et animes (Plex, Kodi, Jellyfin).",
      "keywords": "alternative filebot, renameflow vs filebot, renommeur de médias, renommage en masse, renommer films, renommer séries télé, renommer animes, nommage plex, nommage kodi, nommage jellyfin",
      "cardTitle": "Alternative à FileBot",
      "cardDesc": "Comparaison rapide : RenameFlow vs FileBot pour le renommage en masse et les serveurs multimédias.",
      "h1": "Alternative à FileBot : RenameFlow",
      "intro": "RenameFlow est un outil pour renommer les fichiers multimédias (films, séries télé, animes) conçu pour produire des noms propres et standardisés pour une détection fiable dans Plex, Kodi et Jellyfin.",
      "quickComparison": "Comparaison rapide",
      "table": {
        "feature": "Fonctionnalité",
        "renameflow": "RenameFlow",
        "filebot": "FileBot"
      },
      "note": "Note : comparaison indicative et non exhaustive (les fonctionnalités peuvent évoluer).",
      "whyTitle": "Pourquoi c'est important pour Plex / Kodi / Jellyfin",
      "whyP1": "Les serveurs multimédias détectent le contenu à partir de la structure des dossiers et des noms de fichiers. Un bon nommage réduit les mauvaises correspondances, les saisons mélangées, les titres tronqués et les mauvaises affiches.",
      "whyP2": "RenameFlow accélère ce processus : importe tes fichiers, trouve les correspondances, vérifie, puis renomme en masse.",
      "whyP3Prefix": "Pour des exemples concrets (films, séries, animes), consulte :",
      "whyP3Link": "Conventions de nommage pour Plex/Kodi/Jellyfin",
      "ctaTitle": "Essaie RenameFlow maintenant",
      "ctaBody": "Si tu cherches une alternative à FileBot, le moyen le plus rapide est de le tester avec un de tes vrais dossiers et de comparer les résultats.",
      "ctaPrimary": "Ouvrir l'app",
      "ctaSecondary": "Voir les tarifs",
      "rows": {
        "bulk": "Renommage en masse",
        "sources": "Films / Séries / Animes (correspondance par base de données)",
        "sourcesRenameflow": "TMDB / TheTVDB / AniList",
        "sourcesFilebot": "Correspondance par base de données en ligne",
        "conventions": "Conventions Plex / Kodi / Jellyfin",
        "subtitles": "Sous-titres (recherche / téléchargement)",
        "ui": "Interface moderne (application web)",
        "uiFilebot": "Dépend de l'OS / de la licence"
      },
      "jsonLd": {
        "articleHeadline": "Alternative à FileBot : RenameFlow",
        "articleDescription": "Comparaison claire entre RenameFlow et FileBot pour renommer les films, séries télé et animes pour Plex/Kodi/Jellyfin.",
        "faq": {
          "q1": "Est-ce que RenameFlow est une bonne alternative à FileBot ?",
          "a1": "Oui, si ton besoin principal est de renommer et organiser une bibliothèque multimédia (films, séries télé, animes) pour Plex/Kodi/Jellyfin avec un flux de travail moderne (correspondance → renommage).",
          "q2": "Quelles conventions de nommage sont importantes pour Plex et Kodi ?",
          "a2": "La plupart des conventions utilisent titre + année pour les films, et S01E01 pour les séries. Un nommage propre évite les doublons, les mauvaises correspondances et les erreurs d'affichage dans Plex/Kodi/Jellyfin.",
          "q3": "Est-ce que RenameFlow supporte le renommage en masse ?",
          "a3": "Oui, RenameFlow est conçu pour le renommage en masse de bibliothèques entières."
        }
      },
      "hero": {
        "newH1": "Alternative à Filebot 2026 : Gratuite, Web, Sans Installation",
        "newLead": "L'outil de renommage que tu cherchais si l'abonnement de Filebot, son installation Java ou son interface des années 2010 t'ont finalement poussé à chercher ailleurs. Même précision de nommage, interface moderne, fonctionne dans ton navigateur, et gratuit pour les 15 premiers fichiers chaque jour.",
        "problemSummary": "Filebot a régné pendant 17 ans comme la référence en matière de renommage de médias. En 2024, le modèle d'abonnement a changé (6 € tous les 4 mois pour la version bureau), la friction liée à Java/AppImage est restée, et l'interface n'a pas été mise à jour de manière significative depuis près d'une décennie. Pour la plupart des utilisateurs aujourd'hui, cette combinaison est finalement suffisante pour commencer à magasiner des alternatives.",
        "promise": "Cette page compare les deux outils en toute honnêteté — là où Filebot est encore meilleur, là où RenameFlow gagne, et comment faire la transition si tu décides de changer. À la fin de ta lecture, tu sauras si l'alternative en vaut la peine pour ta bibliothèque, ou si tu ferais mieux de rester avec Filebot.",
        "trust1": "100% gratuit jusqu'à 15 fichiers / jour",
        "trust2": "Fonctionne dans ton navigateur — pas de Java, pas d'installation",
        "trust3": "Approuvé par les utilisateurs qui migrent de Filebot depuis 2026",
        "ctaPrimary": "Essaie-le gratuitement : 15 fichiers/jour, compte gratuit en 30 secondes",
        "readingTime": "~6 min de lecture"
      },
      "state": {
        "h2": "L'état de Filebot en 2026",
        "intro": "Avant de parler d'une alternative, il est juste de reconnaître ce qu'est Filebot et pourquoi il a dominé le domaine si longtemps. Ce n'est pas un article à charge — Filebot a créé un bon produit. Mais l'écart entre ce qu'il était et ce dont les utilisateurs ont besoin en 2026 s'est creusé, et les récents changements n'ont fait qu'accélérer les choses.",
        "history": "Filebot a été lancé en 2007 par Reinhard Pointner. Pendant la majeure partie de son existence, c'était une application de bureau gratuite pour Windows, macOS et Linux qui récupérait les métadonnées de TheTVDB, TheMovieDB, AniDB et d'autres bases de données pour renommer les fichiers multimédias avec une précision chirurgicale. Son moteur de script (basé sur Groovy) était d'une puissance unique. La communauté sur le forum officiel et le /r/FileBot de Reddit a maintenu la base de connaissances à jour. Pour les passionnés de bibliothèques multimédias, ç'a été la recommandation par défaut dans tous les fils de support pour Plex et Kodi pendant près de 15 ans.",
        "subscriptionChange": "En 2017, Filebot est passé à un modèle de licence perpétuelle — paie une fois, utilise-le pour toujours. En 2024, ça a changé : Filebot exige maintenant un abonnement (5,99 EUR tous les 4 mois, en date de fin 2025) pour son application GUI. Le CLI reste gratuit avec des limitations, et les détenteurs de licences perpétuelles existantes bénéficient d'un droit acquis. Les raisons données par le développeur (pérennité, lutte contre les revendeurs commerciaux) sont légitimes. La réaction de la communauté, elle, l'a été moins — le forum officiel et le /r/FileBot de Reddit regorgent de longs fils de discussion d'utilisateurs qui se sont sentis pris au dépourvu par ce changement. Que tu sympathises avec le développeur ou les utilisateurs, l'effet pratique est le même : Filebot n'est plus l'option gratuite et évidente qu'il a été pendant une décennie.",
        "javaProblem": "Filebot est écrit en Java. Ça implique : une installation de plus de 200 Mo, des dépendances JRE, des avertissements occasionnels « cette application n'est pas signée » sur macOS, des frictions avec AppImage sur Linux, un démarrage lent à froid et une utilisation élevée de la mémoire pour les grosses bibliothèques. Individuellement, aucun de ces points n'est rédhibitoire. Mais ensemble, ils créent le genre de friction que les utilisateurs modernes n'apprécient pas, comparativement à « juste ouvrir un onglet et y glisser des fichiers ».",
        "uiProblem": "L'interface de Filebot n'a pas été vraiment repensée depuis le milieu des années 2010. Elle fonctionne, elle est dense, elle répond aux besoins des utilisateurs avancés, mais son look et son comportement sont ceux d'un outil d'une autre époque. Pour ceux qui ont commencé l'auto-hébergement dans les 3 dernières années, le décalage visuel avec les applications modernes (Linear, Vercel, la nouvelle interface de Plex) est frappant. C'est subjectif, bien sûr. Mais l'attente de base est de plus en plus : « Je veux juste glisser mes fichiers et les voir se faire renommer ».",
        "dominanceReason": "Malgré tout ça, Filebot domine encore les recherches Google pour « media renamer » et « rename TV shows ». La raison n'est pas seulement la qualité — ce sont 17 ans de backlinks, de fils de forums, de réponses sur Stack Overflow et de tutoriels YouTube. L'inertie du SEO est bien réelle. La première vague d'alternatives (le CLI mnamer, les fonctions de renommage de MediaElch, TinyMediaManager) a grugé les marges, mais n'a jamais menacé la position centrale de Filebot. La vague d'alternatives web, dont RenameFlow fait partie, représente le premier vrai défi.",
        "jellyfinLink": "passer de Filebot à un workflow Jellyfin"
      },
      "wedge": {
        "h2": "La raison d'être de RenameFlow",
        "intro": "RenameFlow ne cherche pas à remplacer Filebot fonctionnalité par fonctionnalité. Il cible les 80 % des cas d'utilisation de Filebot dont la plupart des utilisateurs ont vraiment besoin, en plus de trois choses que Filebot ne peut pas faire.",
        "web": "Première différence : RenameFlow fonctionne entièrement dans ton navigateur. Aucune installation, pas de Java, pas d'AppImage. Ouvre l'URL, glisse un dossier sur la page, vois les renommages proposés, confirme. Les fichiers ne sont jamais téléversés nulle part — le renommage se fait localement via l'API File System Access (supportée par Chrome, Edge, Brave, Opera et Vivaldi). Firefox et Safari ne la supportent pas, ce qui est la seule vraie limite de compatibilité. Pour tous les autres, passer de « Je dois renommer ces fichiers » à « c'est fait » prend moins de 60 secondes la première fois, et moins de 20 secondes les fois suivantes. Pas de mises à jour logicielles à installer, pas de Java système à gérer, aucun risque qu'un antivirus mette un fichier JAR en quarantaine.",
        "freeTier": "Deuxième différence : RenameFlow est gratuit pour les 15 premiers fichiers chaque jour, avec un compte gratuit créé en 30 secondes et sans saisie de carte bancaire. C'est suffisant pour un usage occasionnel — un téléchargement de film typique, une saison de série TV, un batch de podcasts. Pour les power users avec des milliers de fichiers, la version payante est un paiement unique de 49 EUR pour un accès à vie (jamais d'abonnement récurrent) avec des options mensuelles à 2,99 EUR. La tarification est délibérément structurée pour rendre le choix évident : si tu as moins de 100 fichiers à traiter par an, tu ne paies vraiment jamais. La version CLI gratuite de Filebot existe mais est intentionnellement limitée pour pousser les utilisateurs vers la version payante avec interface graphique (GUI).",
        "modernUx": "Troisième différence : l'interface est conçue pour ce que les utilisateurs font le plus — glisser des fichiers, examiner les renommages proposés dans un aperçu clair côte à côte, et cliquer sur confirmer. Glisser-déposer, raccourcis clavier (Ctrl+Entrée pour confirmer), recherche instantanée parmi les fournisseurs de métadonnées, mapping automatique des épisodes d'anime (AniList intégré, pas de plugin à installer), et un volet de prévisualisation qui montre l'avant/après renommage pour chaque fichier avant que quoi que ce soit ne touche au disque. L'interface (UI) de Filebot fonctionne mais suppose que tu vas l'apprendre ; celle de RenameFlow part du principe que tu as d'autres choses à faire.",
        "plexLink": "Modèles de nommage Plex"
      },
      "comparison": {
        "h2": "RenameFlow vs Filebot — Comparaison détaillée",
        "intro": "Plus de vingt critères objectifs sur lesquels les deux outils diffèrent, et sur lesquels ils sont équivalents. Mis à jour pour Filebot 5.x et RenameFlow 1.x en date de mi-2026.",
        "toolRenameflow": "RenameFlow",
        "toolFilebot": "Filebot",
        "categoryFeature": "Fonctionnalité",
        "catDistribution": "Distribution",
        "catPricing": "Tarification",
        "catMetadata": "Sources de métadonnées",
        "catFeatures": "Fonctionnalités",
        "catWorkflow": "Flux de travail",
        "catPrivacy": "Confidentialité",
        "criteria": [
          {
            "cat": "catDistribution",
            "label": "Installation",
            "values": [
              "Basé sur le navigateur, sans installation",
              "Application de bureau (Windows/macOS/Linux)"
            ]
          },
          {
            "cat": "catDistribution",
            "label": "Système d'exploitation",
            "values": [
              "Chrome / Edge / Brave / Opera / Vivaldi",
              "Windows, macOS, Linux"
            ]
          },
          {
            "cat": "catDistribution",
            "label": "Java requis",
            "values": [
              false,
              true
            ]
          },
          {
            "cat": "catDistribution",
            "label": "Taille de l'installation",
            "values": [
              "0 Mo (web)",
              "~200 Mo + JRE"
            ]
          },
          {
            "cat": "catPricing",
            "label": "Forfait gratuit",
            "values": [
              "15 fichiers / jour, compte gratuit",
              "CLI seulement (GUI limitée)"
            ]
          },
          {
            "cat": "catPricing",
            "label": "Forfait payant",
            "values": [
              "2,99 €/mois, 6,99 €/an ou 49 € à vie",
              "5,99 € tous les 4 mois (18 €/an)"
            ]
          },
          {
            "cat": "catPricing",
            "label": "Option à vie",
            "values": [
              true,
              "Utilisateurs existants seulement"
            ]
          },
          {
            "cat": "catPricing",
            "label": "Essai gratuit sans carte",
            "values": [
              true,
              false
            ]
          },
          {
            "cat": "catMetadata",
            "label": "TheMovieDB (TMDB)",
            "values": [
              true,
              true
            ]
          },
          {
            "cat": "catMetadata",
            "label": "TheTVDB",
            "values": [
              true,
              true
            ]
          },
          {
            "cat": "catMetadata",
            "label": "Métadonnées anime (AniDB / AniList)",
            "values": [
              true,
              true
            ]
          },
          {
            "cat": "catMetadata",
            "label": "MusicBrainz",
            "values": [
              true,
              true
            ]
          },
          {
            "cat": "catMetadata",
            "label": "OpenSubtitles",
            "values": [
              true,
              true
            ]
          },
          {
            "cat": "catFeatures",
            "label": "Renommage par lot",
            "values": [
              true,
              true
            ]
          },
          {
            "cat": "catFeatures",
            "label": "Mappage d'épisodes absolus d'anime",
            "values": [
              "Intégré",
              "Intégré"
            ]
          },
          {
            "cat": "catFeatures",
            "label": "Modèles de nommage personnalisés",
            "values": [
              "Éditeur visuel + presets",
              "Scripting Groovy (puissant)"
            ]
          },
          {
            "cat": "catFeatures",
            "label": "Intégration du téléchargement de sous-titres",
            "values": [
              "Intégré (OpenSubtitles)",
              "Intégré"
            ]
          },
          {
            "cat": "catFeatures",
            "label": "Glisser-déposer",
            "values": [
              true,
              true
            ]
          },
          {
            "cat": "catFeatures",
            "label": "Raccourcis clavier",
            "values": [
              true,
              true
            ]
          },
          {
            "cat": "catWorkflow",
            "label": "Temps de configuration (1ère utilisation)",
            "values": [
              "~10 secondes",
              "~5 minutes (installation + licence)"
            ]
          },
          {
            "cat": "catWorkflow",
            "label": "Interface utilisateur moderne",
            "values": [
              true,
              "Style 2015"
            ]
          },
          {
            "cat": "catWorkflow",
            "label": "Support mobile",
            "values": [
              "Lecture seule (API de fichiers non dispo sur mobile)",
              false
            ]
          },
          {
            "cat": "catWorkflow",
            "label": "Localisation",
            "values": [
              "EN, FR, DE, ES, IT + fr-CA, es-MX",
              "EN + traductions communautaires"
            ]
          },
          {
            "cat": "catPrivacy",
            "label": "Télémétrie",
            "values": [
              "Analytique optionnelle (avec consentement)",
              "Vérification de licence seulement"
            ]
          },
          {
            "cat": "catPrivacy",
            "label": "Les fichiers quittent l'appareil",
            "values": [
              false,
              false
            ]
          }
        ]
      },
      "useCases": {
        "h2": "Cinq cas d'utilisation concrets",
        "intro": "Un tableau comparatif répond de façon abstraite à la question « lequel est le meilleur? ». Ces cinq scénarios montrent comment le choix se manifeste dans des flux de travail réels.",
        "verdictRenameflow": "RenameFlow l'emporte",
        "verdictFilebot": "Filebot l'emporte",
        "verdictTie": "Égalité",
        "verdictLabel": "Verdict",
        "filebotLabel": "Filebot",
        "renameflowLabel": "RenameFlow",
        "scenarioLabel": "Scénario",
        "single": {
          "title": "Renommer un seul film téléchargé",
          "scenario": "Tu viens de télécharger un film. Tu veux qu'il soit prêt pour Plex en 30 secondes.",
          "filebot": "Ouvre l'app de bureau, navigue jusqu'au fichier ou glisse-le, clique sur « Associer », confirme. Ça fonctionne bien, ça prend environ 20 secondes une fois Filebot déjà ouvert. Démarrage à froid : ajoute 10 secondes de plus.",
          "renameflow": "Glisse le fichier sur l'onglet ouvert, vois la suggestion apparaître en 2 secondes, appuie sur Ctrl+Entrée. ~5 secondes au total. Pas d'app à lancer, pas de JRE à réchauffer.",
          "verdict": "RenameFlow l'emporte en vitesse pour les fichiers uniques, surtout quand Filebot n'est pas déjà en cours d'exécution. Pour un utilisateur avancé avec Filebot toujours ouvert, la différence diminue.",
          "winner": "renameflow"
        },
        "batch": {
          "title": "Renommer une bibliothèque entière de 1000 fichiers",
          "scenario": "Tu consolides des années de téléchargements et tu veux que tout soit compatible avec Plex.",
          "filebot": "Le traitement par lots natif est extrêmement rapide à grande échelle — Filebot peut dévorer 1000 fichiers en 2-3 minutes sur une machine moderne, avec une flexibilité complète des scripts Groovy pour les cas particuliers. Pour les utilisateurs à l'aise avec l'écriture de patrons personnalisés, c'est inégalé.",
          "renameflow": "Gère sans problème des lots allant jusqu'à ~500 fichiers en un seul glisser-déposer. Pour les plus grosses bibliothèques, divise-les en dossiers d'environ 500 fichiers. Le renommage par fichier est rapide (requêtes API parallèles aux fournisseurs de métadonnées), mais tu devras réviser les aperçus par lots. Temps total pour 1000 fichiers : ~10 minutes, incluant la révision humaine.",
          "verdict": "Filebot l'emporte sur le débit brut à grande échelle. RenameFlow gagne si tu veux réviser avant de modifier les fichiers sur le disque. Le bon outil dépend de ta confiance en la correspondance automatique.",
          "winner": "filebot"
        },
        "anime": {
          "title": "Bibliothèque d'animes avec numéros d'épisodes absolus",
          "scenario": "One Piece à l'épisode 1 064, Naruto Shippuden, Detective Conan — des séries avec une numérotation absolue qui ne correspondent pas aux découpages par saison de TheTVDB.",
          "filebot": "L'intégration AniDB est excellente, surtout avec le bon script et les bons paramètres. Les utilisateurs avancés ont configuré Filebot pour gérer correctement tous les cas de numérotation absolue. La courbe d'apprentissage pour y arriver est importante.",
          "renameflow": "Les métadonnées anime (AniList) sont intégrées par défaut, avec une correspondance automatique des épisodes absolus vers les saisons pour les cas courants. Aucun réglage de script. Les cas particuliers (découpages en milieu de saison, conflits de noms) peuvent encore nécessiter une confirmation manuelle, mais les paramètres par défaut couvrent 90 % des animes grand public.",
          "verdict": "Pour les utilisateurs prêts à s'investir dans les scripts Filebot, Filebot est plus puissant. Pour tous les autres, la gestion AniList prête à l'emploi de RenameFlow l'emporte. Égalité pour les utilisateurs avancés ; victoire nette pour RenameFlow pour les bibliothèques d'animes occasionnelles.",
          "winner": "renameflow",
          "animeLink": "les défis des animes en détail"
        },
        "music": {
          "title": "Ré-étiquetage d'une bibliothèque musicale de 5 000 pistes",
          "scenario": "Tu as hérité ou accumulé une bibliothèque musicale avec des tags ID3 en désordre et tu veux que tout soit conforme à MusicBrainz.",
          "filebot": "Gère le renommage de musique avec la recherche MusicBrainz, mais c'est avant tout un outil de renommage de fichiers. La vraie réécriture des tags nécessite MusicBrainz Picard ou beets en parallèle.",
          "renameflow": "Le mode Musique lit MusicBrainz et produit des noms de fichiers précis + la structure de dossiers Plex/Jellyfin (Artist/Album/Track). Comme Filebot, il n'écrit pas directement les tags ID3 — utilise MusicBrainz Picard pour ça. L'interface de traitement par lots + aperçu de RenameFlow rend le scénario de plusieurs milliers de pistes plus facile à gérer.",
          "verdict": "Égalité. Les deux outils gèrent la partie nom de fichier; les deux nécessitent un tagueur dédié pour les ID3. Le panneau d'aperçu de RenameFlow est plus confortable pour les gros lots; les scripts de Filebot sont plus flexibles pour les structures de collection inhabituelles.",
          "winner": "tie"
        },
        "plexMigration": {
          "title": "Nettoyage d'une bibliothèque Plex avant de migrer vers Jellyfin",
          "scenario": "Tu as décidé de passer de Plex à Jellyfin et ta bibliothèque a des noms de fichiers spécifiques à Plex (éditions entre accolades, ID de dossier HAMA, etc.).",
          "filebot": "Possible avec des scripts personnalisés, mais tu devrais écrire ou adapter un script Filebot qui reconnaît les patrons spécifiques à Plex et les réécrit pour Jellyfin. Réaliste, mais ça prend une heure de script et de tests.",
          "renameflow": "Le guide de nommage Jellyfin sur ce site explique exactement les changements entre les conventions de Plex et de Jellyfin. Glisse ta bibliothèque nommée pour Plex dans RenameFlow, sélectionne le preset de nommage « Jellyfin », et les renommages proposés tiennent déjà compte des changements de syntaxe ({edition-X} à [edition-X], [anidb-X] à [anidbid-X]). Vérifie et confirme.",
          "verdict": "RenameFlow l'emporte haut la main pour les flux de migration. Filebot peut le faire avec un peu d'effort; RenameFlow le fait avec un preset intégré.",
          "winner": "renameflow"
        },
        "readyToSwitchCta": "Prêt à changer ? Essaie RenameFlow gratuitement : 15 fichiers/jour, compte gratuit en 30 secondes, aucun upload."
      },
      "migration": {
        "h2": "Migrer de Filebot à RenameFlow",
        "intro": "Si tu as décidé d'essayer RenameFlow pour remplacer Filebot, voici la marche à suivre pour la migration. La plupart des utilisateurs la complètent en moins de 15 minutes.",
        "whereTitle": "Par où commencer",
        "whereSteps": [
          "Ouvre renameflow.com/app dans Chrome, Edge, Brave, Opera ou Vivaldi. Firefox et Safari ne sont pas encore pris en charge — c'est une limitation de l'API File System Access, pas une fonctionnalité manquante, et le statut de l'API est suivi publiquement par Mozilla et Apple. Utilise un des navigateurs compatibles pour renommer; tu peux lire cette page dans n'importe quel navigateur.",
          "Essaie d'abord la version gratuite. Glisse 5 à 10 fichiers d'un dossier non critique sur la page. Confirme que l'aperçu des renommages correspond à tes attentes. Si ton échantillon de test semble correct, le reste de ta bibliothèque le sera aussi — la logique de correspondance sous-jacente est la même pour 10 fichiers ou 10 000.",
          "Choisis une offre si tu dépasses la version gratuite. L'annuel (6,99 EUR par an) est le moyen le moins cher de renommer sans limite ; la licence à vie (49 EUR, paiement unique) convient aux bibliothèques que tu maintiendras pendant de nombreuses années ; le mensuel (2,99 EUR) est adapté à une migration ponctuelle ou à un projet de batch court.",
          "Annule ton abonnement Filebot si tu en as un, ou arrête de renouveler les mises à jour de la licence perpétuelle. Ton installation existante de Filebot continuera de fonctionner — ça vaut la peine de la garder pour les rares cas limites où le scripting Groovy de Filebot a encore l'avantage."
        ],
        "whatTitle": "À quoi s'attendre",
        "whatParagraphs": [
          "La précision des métadonnées est comparable à celle de Filebot pour les films, les séries TV et les animes — RenameFlow interroge les mêmes points d'accès TMDB, TVDB, AniList et MusicBrainz. Les différences dans la qualité des correspondances proviennent de l'heuristique (analyseur de nom de fichier, préférences de langue, gestion de l'année), et pour la grande majorité des contenus grand public, les résultats sont identiques.",
          "L'interface est le plus grand ajustement. La disposition dense à plusieurs volets de Filebot est compressée dans le flux à trois panneaux de RenameFlow : fichiers à gauche, correspondances de métadonnées au centre, aperçu à droite. Les fonctionnalités avancées de scripting Groovy (chaînes de formatage personnalisées avec conditions, remplacements regex, chaînes de secours multi-sources) ne sont pas exposées dans l'interface de RenameFlow — si tu dépendais de la profondeur du scripting de Filebot, RenameFlow te semblera limité. Si tu utilisais Filebot uniquement via son interface graphique (GUI), la transition est surtout soustractive : moins de boutons, mêmes résultats.",
          "Pour le mobile, c'est une autre histoire. Filebot n'a aucune application mobile. L'interface web de RenameFlow se charge sur mobile, mais l'API File System Access n'y est pas disponible — tu peux voir l'aperçu, mais pas renommer depuis un téléphone. La plupart des utilisateurs ne renomment pas depuis un téléphone, donc en pratique, ça a rarement de l'importance."
        ],
        "patternsTitle": "Équivalents des patrons de nommage",
        "patternsIntro": "Patron Filebot → Équivalent RenameFlow (cas les plus courants) :",
        "patterns": [
          {
            "filebot": "{n} ({y})",
            "renameflow": "{title} ({year})",
            "note": "Films"
          },
          {
            "filebot": "{n}/Season {s}/{n} - {s00e00} - {t}",
            "renameflow": "{title}/Season {season}/{title} - s{season}e{episode} - {episodeTitle}",
            "note": "Séries télé"
          },
          {
            "filebot": "{n} ({y}) - {edition}",
            "renameflow": "{title} ({year}) - {edition}",
            "note": "Éditions Plex"
          },
          {
            "filebot": "{n} ({y}) - {edition}",
            "renameflow": "{title} ({year}) [edition-{edition}]",
            "note": "Éditions Jellyfin"
          },
          {
            "filebot": "{n}/{album}/{pi} {t}",
            "renameflow": "{artist}/{album} ({year})/{track} - {title}",
            "note": "Musique"
          }
        ],
        "patternsFooter": "Pour les patrons inhabituels, le créateur de patrons personnalisés de RenameFlow utilise des variables similaires — la référence complète se trouve dans le guide pas-à-pas. La plupart des patrons FileBot se traduisent directement; les quelques-uns qui ne le font pas dépendent généralement de scripts Groovy, ce qui est délibérément hors de notre portée.",
        "walkthroughLink": "guide pas-à-pas"
      },
      "faq": {
        "h2": "Filebot vs RenameFlow — Foire aux questions",
        "seeAllLink": "Voir toute la FAQ",
        "items": [
          {
            "q": "Est-ce que Filebot vaut encore la peine en 2026?",
            "a": "Pour les power users qui dépendent du scripting Groovy et que l'abonnement ne dérange pas, oui. La précision des métadonnées n'a pas diminué, le développement est toujours actif, et il n'y a pas d'autre outil avec la même profondeur de scripting. Pour tous les autres — utilisation occasionnelle à modérée, bibliothèques de moins de quelques milliers de fichiers, sans besoin de scripting — les alternatives gratuites modernes ont suffisamment comblé l'écart pour que l'abonnement soit plus difficile à justifier."
          },
          {
            "q": "Pourquoi Filebot nécessite maintenant un abonnement?",
            "a": "Le développeur (Reinhard Pointner) a cité la durabilité du développement en solo et la lutte contre les *repackagers* commerciaux qui vendaient Filebot sous d'autres noms. Que tu sois d'accord ou non avec cette décision, le changement à la mi-2024 a été le catalyseur qui a poussé de nombreux utilisateurs de longue date à chercher des alternatives. RenameFlow profite de ce changement, mais ne l'a pas provoqué."
          },
          {
            "q": "Est-ce que RenameFlow peut gérer les mêmes cas d'animes que Filebot?",
            "a": "Pour 90 % des cas d'animes populaires (One Piece, Naruto, Demon Slayer, Attack on Titan, shonen modernes) : oui, sans aucune configuration. Pour les cas limites (séries multi-cours avec des noms non standards, ordres d'OVA inhabituels, variantes dub/sub fusionnées dans un seul dossier) : le scripting de Filebot les gère un peu mieux. RenameFlow les gère avec une confirmation manuelle sur les quelques correspondances ambiguës par série."
          },
          {
            "q": "Dois-tu installer quelque chose pour essayer RenameFlow?",
            "a": "Aucune installation. Ouvre renameflow.com dans Chrome, Edge, Brave, Opera ou Vivaldi sur ordinateur, crée un compte gratuit (30 secondes, sans carte bancaire) et glisse tes fichiers. Gratuit : 15 fichiers/jour, et rien n'est envoyé sur un serveur."
          },
          {
            "q": "Est-ce que le forfait gratuit de RenameFlow est suffisant pour une utilisation occasionnelle?",
            "a": "Pour renommer un film ou un épisode de série de temps en temps, au fur et à mesure que tu les télécharges : oui, largement. La limite de 15 fichiers par jour est remise à zéro chaque jour à minuit UTC — pour un usage normal, ce n'est jamais une contrainte. Là où ça devient insuffisant, c'est quand tu fais un grand nettoyage de ta bibliothèque d'un seul coup. C'est à ça que servent les offres payantes : l'annuel (6,99 EUR par an) est le moyen le moins cher de renommer sans limite, et l'offre à vie (49 EUR, paiement unique) t'évite tout renouvellement."
          },
          {
            "q": "Peux-tu utiliser Filebot et RenameFlow en même temps?",
            "a": "Oui, ils n'entrent aucunement en conflit. De nombreux utilisateurs gardent Filebot installé pour les rares cas limites de scripting et utilisent RenameFlow comme outil principal pour tout le reste. Le forfait CLI de Filebot reste gratuit, donc cette configuration hybride ne coûte rien si ton flux de travail normal reste dans les limites du forfait gratuit de RenameFlow."
          },
          {
            "q": "Est-ce que mes scripts Filebot fonctionneront dans RenameFlow?",
            "a": "Non — RenameFlow n'expose pas de moteur de scripting. Les modèles de nommage sont basés sur des gabarits avec un ensemble limité de variables (title, year, season, episode, episodeTitle, edition, etc.) et un éditeur de modèles personnalisés pour de légères variations. Pour la plupart des modèles Filebot, il existe un équivalent direct montré dans le tableau de migration ci-dessus. Pour les scripts Groovy complexes avec des conditions ou des regex, tu devras soit rester avec Filebot pour ces cas spécifiques, soit les retravailler en plusieurs presets RenameFlow."
          },
          {
            "q": "Et pour Filebot Node?",
            "a": "Filebot Node (l'outil d'automatisation côté serveur) est un produit différent qui cible les pipelines de type Sonarr/Radarr. RenameFlow est axé sur le bureau et n'a pas de composant serveur. Si ton flux de travail est déjà entièrement automatisé avec Sonarr + Radarr, tu n'as probablement besoin ni de Filebot Node ni de RenameFlow pour le pipeline principal — les deux servent à combler les lacunes de renommage manuel que l'automatisation ne couvre pas."
          }
        ]
      },
      "cta": {
        "h2": "Essaie RenameFlow gratuitement",
        "primary": "Gratuit : 15 fichiers/jour avec un compte gratuit (30 secondes, sans carte bancaire). Glisse un dossier, vois les renommages proposés, confirme s'ils te plaisent. Ça prend 60 secondes.",
        "secondary": "Ou consulte la tarification complète — incluant l'option à vie pour 49 EUR (aucun abonnement récurrent, jamais).",
        "primaryButton": "Ouvrir RenameFlow",
        "secondaryButton": "Voir la tarification"
      },
      "tocLabels": {
        "state": "L'état de Filebot",
        "wedge": "Pourquoi RenameFlow",
        "comparison": "Comparaison",
        "useCases": "Cas d'utilisation",
        "migration": "Migration",
        "faq": "FAQ"
      },
      "seoTitleV2": "Alternative à Filebot 2026 : gratuite, en ligne | RenameFlow",
      "seoDescriptionV2": "L'alternative moderne à Filebot : en ligne, gratuite jusqu'à 15 fichiers/jour, sans Java, compatible Plex, Jellyfin et Kodi."
    },
    "plex": {
      "seoTitle": "Conventions de nommage Plex/Kodi/Jellyfin — RenameFlow",
      "seoDescription": "Guide pratique pour renommer films, séries et anime afin qu'ils soient parfaitement reconnus par Plex, Kodi et Jellyfin.",
      "keywords": "plex naming convention, kodi naming convention, jellyfin rename files, renommer séries, renommer films, bulk rename, anime naming, S01E01",
      "cardTitle": "Guide Plex/Kodi/Jellyfin",
      "cardDesc": "Conventions de nommage (films, séries, anime) pour éviter les mauvais matchs.",
      "h1": "Comment renommer ses fichiers pour Plex, Kodi et Jellyfin",
      "intro": "Plex, Kodi et Jellyfin s'appuient sur les noms de fichiers et la structure des dossiers pour identifier le contenu. Ce guide couvre des conventions simples et les erreurs fréquentes.",
      "tocTitle": "Table des matières",
      "toc": {
        "movies": "Films : titre + année",
        "tv": "Séries : S01E01 + dossiers de saison",
        "anime": "Anime : numérotation + spéciaux",
        "mistakes": "Erreurs fréquentes"
      },
      "sections": {
        "moviesTitle": "Films : titre + année",
        "moviesBody": "Pour les films, l'année est un signal fort : elle aide à distinguer les remakes et améliore les correspondances. Une structure un dossier par film est souvent plus fiable.",
        "tvTitle": "Séries : S01E01 + dossiers de saison",
        "tvBody": "Le format S01E01 est le plus universel. Gardez chaque saison dans un dossier dédié pour réduire les erreurs.",
        "animeTitle": "Anime : numérotation + spéciaux",
        "animeBody": "Les anime utilisent parfois une numérotation différente (spéciaux, OVA, saison 0). Utiliser S00E01 pour les spéciaux fonctionne généralement bien.",
        "mistakesTitle": "Erreurs fréquentes à éviter",
        "mistakes": [
          "Nommer 'Episode 1 final.mkv' sans S01E01",
          "Mélanger plusieurs séries dans le même dossier",
          "Oublier l'année pour les titres de films ambigus",
          "Mettre la qualité/le codec au milieu du titre si cela casse le match"
        ]
      },
      "ctaTitle": "Renommer en lot avec RenameFlow",
      "ctaPrimary": "Commencer gratuitement",
      "ctaSecondary": "Voir l'alternative à FileBot",
      "jsonLd": {
        "articleHeadline": "Conventions de nommage Plex/Kodi/Jellyfin",
        "articleDescription": "Guide simple pour renommer films, séries et anime afin que Plex, Kodi et Jellyfin les reconnaissent correctement.",
        "faq": {
          "q1": "Quelle est la meilleure convention pour les séries TV ?",
          "a1": "Le format le plus compatible est S01E01, avec un dossier par saison. Cela améliore la détection et réduit les erreurs.",
          "q2": "Dois-je inclure l'année pour les films ?",
          "a2": "Oui : l'année évite les ambiguïtés (remakes, titres identiques) et améliore le match dans Plex/Kodi/Jellyfin.",
          "q3": "Comment gérer les épisodes spéciaux (Saison 0) ?",
          "a3": "Beaucoup de serveurs utilisent la Saison 0 (S00E01) pour les spéciaux/OVA. C'est souvent la solution la plus fiable."
        }
      },
      "ctaBodyPrefix": "Workflow idéal : importer un dossier complet, matcher (TMDB/TheTVDB/AniList), vérifier et appliquer le renommage. Si tu compares des outils, regarde aussi",
      "ctaBodyLink": "RenameFlow vs FileBot"
    }
  },
  "common": {
    "all": "Tout",
    "loading": "Chargement...",
    "error": "Une erreur s'est produite",
    "retry": "Réessayer",
    "cancel": "Annuler",
    "confirm": "Confirmer",
    "save": "Sauvegarder",
    "delete": "Supprimer",
    "edit": "Modifier",
    "close": "Fermer",
    "back": "Retour",
    "next": "Suivant",
    "search": "Rechercher",
    "film": "Film",
    "series": "Série télé",
    "anime": "Anime",
    "music": "Musique",
    "active": "Actif",
    "success": "Succès"
  },
  "sidebar": {
    "modules": "Modules",
    "rename": "Renommer",
    "episodes": "Épisodes",
    "subtitles": "Sous-titres",
    "verify": "Vérifier",
    "filter": "Filtrer",
    "list": "Liste",
    "history": "Historique",
    "soon": "Bientôt",
    "dailyUsage": "Utilisation quotidienne",
    "upgrade": "Passer à Premium",
    "premiumActive": "Premium Actif",
    "fileRenamer": "Renommeur de fichiers",
    "preferences": "Préférences",
    "usageWarning": "Bientôt à la limite",
    "usageReached": "Limite quotidienne atteinte",
    "adminStats": "Stats",
    "collapse": "Replier la barre latérale",
    "expand": "Déplier la barre latérale",
    "legal": "Infos légales et cookies",
    "opensInNewTab": "(s'ouvre dans un nouvel onglet)"
  },
  "history": {
    "title": "Historique de renommage",
    "subtitle": "{{count}} fichiers renommés",
    "originalName": "Nom original",
    "newName": "Nouveau nom",
    "date": "Date",
    "noHistory": "Pas encore d'historique",
    "noSearchResults": "Aucun résultat trouvé",
    "exported": "Historique exporté",
    "exportedDesc": "{{count}} entrées exportées",
    "deleted": "Entrées supprimées",
    "deletedDesc": "{{count}} entrées supprimées",
    "deleteConfirm": "Supprimer les entrées sélectionnées?",
    "deleteConfirmDesc": "Ceci supprimera définitivement {{count}} entrées de l'historique.",
    "fetchError": "Échec du chargement de l'historique",
    "deleteError": "Échec de la suppression des entrées",
    "loginRequired": "Connexion requise",
    "loginRequiredDesc": "Veuillez vous connecter pour voir votre historique de renommage",
    "deleteAria": "Supprimer les entrées sélectionnées",
    "exportAria": "Exporter l’historique (JSON)",
    "selectAllAria": "Sélectionner toutes les entrées",
    "selectEntryAria": "Sélectionner {{name}}",
    "undo": {
      "action": "Annuler ce lot",
      "batchLabel": "Renommé à {{time}} — fichiers : {{count}}",
      "doneDesc": "Noms d’origine restaurés : {{count}}.",
      "doneTitle": "Lot annulé",
      "partialDesc": "Restaurés : {{restored}} · non restaurés : {{failed}} ({{reason}})",
      "partialTitle": "Annulation incomplète"
    },
    "deleteAll": "Tout supprimer",
    "deleteAllConfirm": "Supprimer tout ton historique?",
    "deleteAllConfirmDesc": "Toutes les entrées de ton historique de renommage seront définitivement supprimées de ton compte, y compris celles qui ne s’affichent pas dans cette liste. Tes fichiers ne sont pas modifiés. Cette action est irréversible.",
    "deleteAllAction": "Supprimer tout l’historique",
    "deletedAll": "Historique supprimé",
    "deletedAllDesc": "Entrées supprimées : {{count}}.",
    "exportError": "Impossible d’exporter ton historique. Réessaie.",
    "limitNote": "Affichage de tes {{limit}} renommages les plus récents. L’export (bouton de téléchargement) contient tout ton historique."
  },
  "verify": {
    "title": "Vérification de fichiers",
    "subtitle": "Calculer et vérifier les sommes de contrôle",
    "noFiles": "Aucun fichier sélectionné",
    "noFilesDesc": "Sélectionnez des fichiers ou dossiers pour calculer les sommes de contrôle",
    "compareWith": "Comparer avec",
    "pasteHash": "Collez le hash pour vérifier...",
    "computing": "Calcul des hashes",
    "complete": "Hashes calculés",
    "completeDesc": "Hashes calculés pour {{count}} fichiers",
    "copied": "Hash copié",
    "match": "Correspondance",
    "mismatch": "Non correspondant",
    "computed": "calculé",
    "export": "Exporter",
    "compute": "Calculer",
    "selectFiles": "Fichiers",
    "selectFolder": "Dossier",
    "computeError": "Échec du calcul du hash",
    "copyAria": "Copier l’empreinte de {{name}}"
  },
  "episodes": {
    "searchPlaceholder": "Rechercher des séries télé...",
    "searchToStart": "Recherchez une série télé pour commencer",
    "selectSeries": "Sélectionnez une série pour voir les épisodes",
    "selectSeriesFirst": "Sélectionnez une série dans le panneau de gauche",
    "season": "Saison",
    "episode": "Épisode",
    "episodesCount": "{{count}} épisodes",
    "noEpisodes": "Aucun épisode trouvé pour cette saison",
    "searchError": "Échec de la recherche de séries",
    "loadError": "Échec du chargement des épisodes",
    "detailsTitle": "Détails de l’épisode",
    "selectEpisode": "Sélectionnez un épisode pour voir les détails",
    "overview": "Résumé",
    "noOverview": "Aucune description disponible.",
    "airDate": "Date de diffusion",
    "rating": "Note",
    "votes": "votes",
    "runtime": "Durée",
    "guestStars": "Invités",
    "crew": "Équipe",
    "sourceFallbackTitle": "Source",
    "sourceFallbackDesc": "Les listes d’épisodes sont actuellement chargées depuis TMDB."
  },
  "subtitles": {
    "title": "Recherche de sous-titres",
    "subtitle": "Trouvez et téléchargez des sous-titres pour vos vidéos",
    "searchPlaceholder": "Rechercher des sous-titres...",
    "noFiles": "Aucun fichier vidéo sélectionné",
    "noFilesDesc": "Sélectionnez des fichiers vidéo pour trouver des sous-titres",
    "noVideoFiles": "Aucun fichier vidéo détecté",
    "computing": "Calcul du hash...",
    "searching": "Recherche des sous-titres...",
    "found": "{{count}} sous-titres trouvés",
    "noResults": "Aucun sous-titre trouvé",
    "trySearch": "Essayez de cliquer sur Rechercher ou affinez votre requête",
    "downloadSelected": "Télécharger la sélection",
    "downloaded": "Sous-titre téléchargé",
    "downloadError": "Échec du téléchargement",
    "searchError": "Échec de la recherche",
    "selectFirst": "Sélectionnez au moins un sous-titre",
    "language": "Langue",
    "format": "Format",
    "downloads": "Téléchargements",
    "rating": "Note",
    "selectLanguages": "Choisir les langues",
    "allLanguages": "Toutes les langues",
    "hashComputed": "Hash calculé",
    "selectFile": "Sélectionnez un fichier pour rechercher",
    "selectFiles": "Sélectionner des fichiers",
    "selectedCount": "{{count}} sélectionnés",
    "enterQuery": "Veuillez entrer un terme de recherche",
    "selectFileOrSearch": "Déposez une vidéo ou recherchez par titre",
    "selectFileOrSearchDesc": "Déposez un fichier vidéo pour une correspondance automatique, ou tapez un titre pour chercher manuellement",
    "autoSearching": "Recherche des sous-titres correspondants...",
    "monthlyRemaining": "ce mois",
    "limitReached": "Limite atteinte. Il vous reste {{remaining}} téléchargement(s) ce mois.",
    "hashError": "Erreur de hash",
    "removeFileAria": "Retirer {{name}}"
  },
  "feedback": {
    "title": "Nous contacter",
    "subjectPlaceholder": "Sujet",
    "messagePlaceholder": "Décrivez votre demande...",
    "send": "Envoyer",
    "sent": "Message envoyé! Nous vous répondrons bientôt.",
    "error": "Erreur lors de l'envoi. Réessayez.",
    "fillFields": "Veuillez remplir tous les champs",
    "types": {
      "feature": "Demande de fonctionnalité",
      "bug": "Rapport de bogue",
      "support": "Soutien",
      "other": "Autre"
    },
    "rateLimited": "Trop de messages envoyés. Réessayez un peu plus tard."
  },
  "install": {
    "mobile": "Installer RenameFlow",
    "desktop": "Ajouter au bureau",
    "description": "Accès rapide sans ouvrir le navigateur",
    "button": "Installer",
    "later": "Plus tard",
    "iosTitle": "Installer sur iOS",
    "iosStep1": "Appuyez sur le bouton Partager",
    "iosStep2": "Faites défiler et appuyez sur \"Sur l'écran d'accueil\"",
    "iosStep3": "Appuyez sur \"Ajouter\" pour confirmer"
  },
  "consent": {
    "title": "Cookies et confidentialité",
    "description": "Avec ton accord, nous utilisons des cookies pour mesurer l'audience du site (Google Analytics) et enregistrer des sessions de navigation (Microsoft Clarity) afin d'améliorer RenameFlow. « Tout accepter » nous permet en plus de mesurer nos campagnes publicitaires Google. Tu peux aussi accepter seulement les analytics, ou refuser tous les cookies non essentiels.",
    "acceptAll": "Tout accepter",
    "analyticsOnly": "Analytics seulement",
    "reject": "Tout refuser",
    "learnMore": "En savoir plus"
  },
  "cookies": {
    "seoTitle": "Politique de cookies — RenameFlow",
    "seoDescription": "Découvrez les cookies que nous utilisons, pourquoi nous les utilisons et comment gérer vos préférences.",
    "title": "Politique de cookies",
    "intro": "Cette page explique ce que sont les cookies, comment nous les utilisons et comment vous pouvez contrôler vos préférences.",
    "whatAre": {
      "title": "Qu'est-ce qu'un cookie ?",
      "description": "Les cookies sont de petits fichiers texte placés sur votre ordinateur ou appareil mobile lorsque vous visitez un site web. Ils sont largement utilisés pour faire fonctionner les sites web plus efficacement et fournir des informations aux propriétaires du site.",
      "storage": "Nous utilisons aussi des technologies similaires, comme le stockage local de votre navigateur (localStorage, sessionStorage et IndexedDB), soumises aux mêmes règles. Dans cette politique, le terme « cookies » désigne l'ensemble de ces technologies."
    },
    "typesTitle": "Types de cookies que nous utilisons",
    "types": {
      "essential": {
        "title": "Cookies essentiels",
        "description": "Indispensables au fonctionnement du site : vous garder connecté, mémoriser vos choix en matière de cookies, votre langue et vos préférences d'affichage, activer un achat et mémoriser les dossiers que vous autorisez l'application à ouvrir. Ils sont dispensés de consentement, ne peuvent pas être désactivés et ne servent jamais à vous suivre."
      },
      "analytics": {
        "title": "Cookies d'analyse",
        "description": "Déposés uniquement si vous les acceptez. Ils nous permettent de mesurer l'audience du site (Google Analytics 4), de comprendre les problèmes d'ergonomie grâce à des cartes de chaleur et des enregistrements de sessions (Microsoft Clarity) et, si vous créez un compte, d'enregistrer comment vous nous avez connus (lien de campagne ou site d'origine)."
      },
      "advertising": {
        "title": "Cookies publicitaires",
        "description": "Déposés uniquement si vous choisissez « Tout accepter ». Ils permettent à Google de mesurer l'efficacité de nos campagnes publicitaires, par exemple si une visite faisant suite à une annonce a abouti à une inscription. Ils ne servent jamais à personnaliser des publicités, et RenameFlow n'affiche aucune publicité."
      }
    },
    "optional": "Optionnel",
    "required": "Requis",
    "ga": {
      "title": "Google Analytics",
      "description": "Nous utilisons Google Analytics pour comprendre comment les visiteurs interagissent avec notre site. Cela nous aide à améliorer notre service et l'expérience utilisateur. Google Analytics utilise des cookies pour collecter des informations sur votre visite.",
      "consentMode": "Nous utilisons le mode Consentement v2 de Google (Consent Mode v2). Tant que vous n'avez pas accepté la mesure d'audience, le consentement est « refusé » par défaut : Google Analytics ne dépose ni ne lit aucun cookie et peut tout au plus recevoir des signaux techniques sans cookie (comme la page consultée et l'état du consentement), que Google utilise pour une modélisation statistique agrégée.",
      "loadedAfterConsent": "La balise Google (gtag.js) n'est chargée qu'après votre acceptation de la mesure d'audience : avant votre choix, ou si vous refusez, aucune requête n'est envoyée à Google Analytics et aucun cookie Google Analytics n'est déposé. Une fois chargée, elle applique exactement votre choix grâce au mode Consentement v2 de Google (Consent Mode v2) : par exemple, les cookies publicitaires restent désactivés si vous n'acceptez que la mesure d'audience."
    },
    "manage": {
      "title": "Gérer vos préférences",
      "description": "Vous pouvez modifier vos préférences de cookies à tout moment en cliquant sur le bouton ci-dessous. Cela réinitialisera votre consentement et affichera à nouveau la bannière de cookies.",
      "button": "Réinitialiser les préférences",
      "note": "Le retrait de votre consentement met fin à toute nouvelle collecte. Les cookies déjà déposés peuvent être supprimés depuis les paramètres de votre navigateur."
    },
    "browser": {
      "title": "Paramètres du navigateur",
      "description": "Vous pouvez également contrôler les cookies via les paramètres de votre navigateur. La plupart des navigateurs vous permettent de refuser les cookies ou de supprimer les cookies déjà définis."
    },
    "contact": {
      "title": "Des questions ?",
      "description": "Si vous avez des questions sur notre utilisation des cookies, veuillez nous contacter à"
    },
    "lastUpdated": "Dernière mise à jour : janvier 2026",
    "clarity": {
      "description": "Nous utilisons aussi Microsoft Clarity pour produire des cartes de chaleur et des enregistrements de sessions qui nous aident à comprendre les problèmes d'ergonomie et à corriger les bugs. Clarity n'est chargé qu'après votre acceptation de la mesure d'audience : si vous refusez, ou n'acceptez que les cookies essentiels, Clarity ne s'exécute jamais et aucun cookie Clarity n'est déposé. Clarity masque le contenu des champs de formulaire ; lorsque vous êtes connecté, il peut recevoir l'identifiant interne de votre compte, mais jamais votre adresse e-mail."
    },
    "consentRules": {
      "p1": "Conformément à l'article 82 de la loi Informatique et Libertés et aux lignes directrices de la CNIL, les cookies strictement nécessaires au Service ou que vous demandez expressément sont dispensés de consentement. Tous les autres cookies (mesure d'audience, enregistrement de sessions, publicité) ne sont déposés que si vous les acceptez via le bandeau affiché lors de votre première visite.",
      "p2": "Refuser est aussi simple qu'accepter, et votre choix est sans effet sur votre accès au Service. Vous pouvez changer d'avis à tout moment grâce au bouton en bas de cette page.",
      "title": "Votre consentement"
    },
    "duration": {
      "clarity": "_clck : 1 an ; _clsk : 1 jour",
      "consentMonths": "{{months}} mois, ou jusqu'à ce que vous modifiiez votre choix",
      "days90": "90 jours",
      "minutes30": "30 minutes",
      "months": "{{months}} mois",
      "persistent": "Jusqu'à ce que vous effaciez les données de votre navigateur",
      "session": "Jusqu'à la fermeture de l'onglet",
      "untilActivated": "Jusqu'à l'activation de l'achat",
      "untilChange": "Jusqu'à ce que vous modifiiez votre choix ou que cette politique évolue",
      "untilLogout": "Jusqu'à la déconnexion",
      "upTo13Months": "Jusqu'à 13 mois"
    },
    "list": {
      "banners": "Mémorise que vous avez fermé un bandeau d'information.",
      "checkout": "Active un achat effectué avant votre connexion.",
      "chunkReload": "Après une mise à jour de l'application, permet à la page de se recharger d'elle-même pour charger la nouvelle version, au plus une fois par minute.",
      "clarity": "Microsoft Clarity : relie les pages d'une visite et les visites successives pour les cartes de chaleur et les enregistrements de sessions.",
      "clarityThirdParty": "Microsoft Clarity (domaines Microsoft) : reconnaît votre navigateur sur les sites qui utilisent Clarity.",
      "consent": "Enregistre vos choix en matière de cookies.",
      "duration": "Durée",
      "firstTouch": "Mémorise comment vous êtes arrivé sur le site (paramètres de campagne du lien suivi, site d'origine), afin de l'enregistrer avec votre compte si vous vous inscrivez.",
      "folders": "Mémorise les dossiers que vous avez autorisé l'application à ouvrir, pour vous permettre de les rouvrir. Ne quitte jamais votre appareil.",
      "ga": "Google Analytics 4 : distingue les visiteurs et les visites afin de produire des statistiques d'audience.",
      "gclau": "Google : associe une visite à une campagne publicitaire pour en mesurer l'efficacité.",
      "googleDomains": "Déposés par Google sur ses propres domaines, selon sa propre politique, si vous avez accepté tous les cookies.",
      "googleDomainsNames": "Cookies Google (par ex. IDE, NID)",
      "installPrompt": "Détermine quand vous proposer d'installer l'application : nombre de fois où vous l'avez utilisée et date à laquelle vous avez fermé cette suggestion.",
      "language": "Cookie qui mémorise la langue que vous avez choisie, afin que les pages s'affichent directement dans cette langue.",
      "name": "Nom",
      "preferences": "Mémorise votre langue et le thème d'affichage.",
      "productHunt": "Déposé par Cloudflare pour Product Hunt lorsque votre navigateur charge le badge Product Hunt affiché en bas des pages : protection contre les robots, selon la politique de Product Hunt.",
      "progress": "Mémorise votre progression de prise en main et les messages déjà affichés.",
      "purpose": "Finalité",
      "session": "Vous garde connecté (session Supabase).",
      "signupPending": "Mémorise que le formulaire d'inscription a été envoyé depuis ce navigateur, afin de finaliser correctement votre inscription une fois votre adresse e-mail confirmée.",
      "thirdPartyTitle": "Contenus tiers",
      "title": "Liste détaillée",
      "welcomeOnce": "Garantit que l'e-mail de bienvenue n'est demandé qu'une seule fois depuis ce navigateur. Son nom contient votre identifiant interne de compte ; il ne contient aucune autre donnée personnelle.",
      "analyticsOnce": "Enregistrés uniquement si vous acceptez la mesure d'audience : garantissent qu'une inscription finalisée, un achat ou une étape de prise en main n'est compté qu'une seule fois depuis ce navigateur. Ils ne contiennent aucune donnée personnelle, hormis, dans certains noms, votre identifiant interne de compte."
    }
  },
  "faqPage": {
    "seoTitle": "FAQ — RenameFlow",
    "seoDescription": "Questions fréquentes sur RenameFlow : sécurité, compatibilité, prix et formats supportés.",
    "title": "Questions fréquentes",
    "subtitle": "Tout ce que vous devez savoir sur RenameFlow",
    "cta": "Essayer RenameFlow gratuitement",
    "moreQuestions": "Encore des questions ?",
    "q1": {
      "q": "RenameFlow est-il sécuritaire ?",
      "a": "Oui. Vos fichiers ne quittent jamais votre appareil grâce à l'API File System Access."
    },
    "q2": {
      "q": "Quels navigateurs sont compatibles ?",
      "a": "Google Chrome et Microsoft Edge (desktop). Firefox et Safari ne supportent pas encore cette API."
    },
    "q3": {
      "q": "Est-ce gratuit ?",
      "a": "Oui ! Le plan gratuit permet de renommer jusqu'à 15 fichiers par jour. Pour un usage illimité, les téléchargements de sous-titres et les modèles personnalisés, Pro coûte 6,99 € par an ou 2,99 € par mois, ou 49 € en une fois pour un accès à vie."
    },
    "q4": {
      "q": "Quels médias sont supportés ?",
      "a": "Films, séries, anime et musique via TMDB, TheTVDB et MusicBrainz."
    },
    "q5": {
      "q": "Différence avec FileBot ?",
      "a": "RenameFlow est 100% web, sans installation et gratuit pour commencer."
    },
    "q6": {
      "q": "Puis-je personnaliser le nommage ?",
      "a": "Oui, les utilisateurs Pro ont accès aux patterns personnalisés."
    },
    "q7": {
      "q": "Compatible Plex/Kodi/Jellyfin ?",
      "a": "Absolument, RenameFlow suit les conventions de nommage standard."
    },
    "q8": {
      "q": "Et les sous-titres ?",
      "a": "Oui, renommage et téléchargement de sous-titres supportés."
    },
    "q9": {
      "q": "Limite de fichiers ?",
      "a": "15/jour en gratuit, illimité en Pro."
    },
    "q10": {
      "q": "Mac/Linux ?",
      "a": "Oui, ça fonctionne dans le navigateur sur tous les OS."
    },
    "q11": {
      "q": "Annuler un renommage ?",
      "a": "Oui. Juste après un lot, cliquez sur « Annuler » dans la notification (pendant 60 secondes), ou utilisez « Annuler ce lot » dans l’Historique tant que l’onglet reste ouvert : vos fichiers retrouvent leur nom d’origine. RenameFlow garde aussi l’historique de chaque renommage, pour retrouver les noms d’origine à tout moment."
    },
    "q12": {
      "q": "Renommage par lot ?",
      "a": "Sélectionnez un dossier et RenameFlow analyse tous les fichiers d'un coup."
    }
  },
  "howTo": {
    "seoTitle": "Comment renommer ses fichiers médias — RenameFlow",
    "seoDescription": "Guide étape par étape pour renommer vos films, séries et anime avec RenameFlow.",
    "title": "Comment renommer vos fichiers médias",
    "intro": "Renommez vos médias en 4 étapes simples, directement dans votre navigateur.",
    "step1": {
      "title": "Sélectionnez vos fichiers",
      "desc": "Ouvrez votre dossier de médias.",
      "detail": "Vos fichiers restent sur votre appareil."
    },
    "step2": {
      "title": "Détection automatique",
      "desc": "RenameFlow détecte le type de média.",
      "detail": "Titre, année, saison, épisode sont extraits automatiquement."
    },
    "step3": {
      "title": "Correspondance",
      "desc": "Recherche sur TMDB, TheTVDB et MusicBrainz.",
      "detail": "Vérifiez et choisissez la bonne correspondance."
    },
    "step4": {
      "title": "Renommer",
      "desc": "Prévisualisez et appliquez les changements.",
      "detail": "Renommage direct sur votre système de fichiers."
    },
    "examplesTitle": "Exemples avant / après",
    "formatsTitle": "Formats supportés",
    "formatsDesc": "Fonctionne avec tous les formats courants :",
    "whyTitle": "Pourquoi RenameFlow ?",
    "why1": "100% dans le navigateur",
    "why2": "Fichiers jamais uploadés",
    "why3": "Compatible Plex, Kodi, Jellyfin",
    "why4": "Gratuit avec 15 fichiers/jour",
    "relatedTitle": "Guides associés",
    "relatedFilebot": "RenameFlow vs FileBot",
    "relatedPlex": "Guide Plex & Kodi",
    "relatedFaq": "Questions fréquentes",
    "cta": "Essayer gratuitement",
    "ctaAlternatives": "Comparer les alternatives"
  },
  "alt": {
    "seoTitle": "Meilleures alternatives FileBot 2026 — Outils gratuits",
    "seoDescription": "Comparez les meilleures alternatives à FileBot pour renommer vos fichiers médias.",
    "title": "Meilleures alternatives à FileBot en 2026",
    "intro": "Comparatif des 5 meilleurs outils de renommage de fichiers médias.",
    "table": {
      "feature": "Fonctionnalité",
      "price": "Prix",
      "free15": "Gratuit (15/jour)",
      "free": "Gratuit",
      "webBased": "Web (sans installation)",
      "noInstall": "Aucune installation",
      "tmdb": "TMDB",
      "tvdb": "TheTVDB",
      "anime": "Anime",
      "music": "Musique",
      "subtitles": "Sous-titres",
      "customPatterns": "Patterns",
      "batchRename": "Lot",
      "privacy": "100% local",
      "crossPlatform": "Plateforme",
      "openSource": "Open source"
    },
    "detailsTitle": "Comparatif détaillé",
    "details": {
      "renameflow": "RenameFlow est le seul outil de renommage média 100% web. Il fonctionne dans votre navigateur sans installation. Vos fichiers ne quittent jamais votre ordinateur. Plan gratuit : 15 fichiers/jour ; accès illimité à 6,99 €/an, 2,99 €/mois ou 49 € une fois pour un accès à vie.",
      "filebot": "L'outil desktop le plus établi. Puissant mais payant et nécessite une installation.",
      "tmm": "Gestionnaire de médias open source. Riche mais courbe d'apprentissage plus raide.",
      "renamemaster": "Outil Windows gratuit simple, sans base de données média.",
      "bru": "Outil Windows puissant avec regex, mais pas spécialisé médias."
    },
    "verdictTitle": "Notre verdict",
    "verdictDesc": "RenameFlow est le choix le plus rapide et simple pour renommer sans rien installer. FileBot reste solide pour les utilisateurs avancés.",
    "relatedTitle": "Articles associés",
    "relatedFilebot": "RenameFlow vs FileBot",
    "relatedHowTo": "Comment renommer vos fichiers",
    "relatedPlex": "Guide Plex, Kodi & Jellyfin",
    "cta": "Essayer gratuitement"
  },
  "activation": {
    "title": "Premiers pas",
    "shareText": "Je viens de découvrir RenameFlow pour organiser ma médiathèque !",
    "steps": {
      "account": "Compte créé",
      "load": "Charger des fichiers (ou essayer la démo)",
      "match": "Identifier avec la base en ligne",
      "rename": "Renommer le 1er fichier"
    },
    "celebrate": {
      "title": "Vous êtes prêt !",
      "description": "Vous maîtrisez RenameFlow. Aidez d'autres à le découvrir !",
      "share": "Partager RenameFlow",
      "close": "Fermer"
    },
    "collapse": "Masquer les étapes",
    "dismiss": "Fermer la liste",
    "expand": "Afficher les étapes"
  },
  "paywall": {
    "soft": {
      "title": "Vous aimez RenameFlow ?",
      "description": "Vous avez déjà renommé plusieurs fichiers. Passez Premium pour des renommages illimités et des fonctionnalités avancées.",
      "benefit1": "Renommages illimités — plus de plafond à 15 fichiers",
      "benefit2": "Téléchargement de sous-titres prioritaire et appariement plus rapide",
      "benefit3": "Forfait à vie disponible — payez une fois, utilisez pour toujours",
      "cta": "Voir les forfaits",
      "later": "Plus tard"
    },
    "comparePlans": "Comparer toutes les offres",
    "countdown": {
      "hoursMinutes": "{{h}} h {{m}} min",
      "minutes": "{{m}} min"
    },
    "cta": {
      "continue": "Continuer vers le paiement sécurisé"
    },
    "limit": {
      "description": "Passez à Premium pour continuer à renommer dès maintenant, sans limite quotidienne.",
      "partial": "{{renamed}} fichiers renommés, {{pending}} en attente. Passez à Premium pour tous les renommer maintenant.",
      "resetIn": "Vos renommages gratuits reviennent dans {{duration}} (à {{time}}).",
      "title": "Vous avez utilisé vos {{limit}} renommages gratuits du jour"
    },
    "plans": {
      "cancelAnytime": "Résiliable à tout moment",
      "label": "Choisissez une offre",
      "payOnce": "Un seul paiement, à vous pour toujours",
      "perMonth": "≈ {{price}} / mois"
    },
    "subtitles": {
      "description": "Premium inclut les téléchargements de sous-titres illimités.",
      "resetOn": "Vos sous-titres gratuits reviennent le {{date}}.",
      "title": "Vous avez utilisé vos {{limit}} sous-titres gratuits du mois"
    },
    "trust": "Paiement sécurisé par Stripe · Abonnements résiliables à tout moment",
    "upgrade": {
      "description": "Renommages illimités, toutes les sources de métadonnées et sous-titres illimités.",
      "title": "Passez à Premium"
    }
  },
  "compat": {
    "table": {
      "browser": "Navigateur",
      "support": "Compatible",
      "mobile": "Mobile (iOS / Android)",
      "notSupported": "Non compatible",
      "supported": "Compatible",
      "brave": "Brave (après activation d'un réglage)",
      "braveHint": "Active {{flag}}, puis relance Brave."
    },
    "banner": {
      "mobileTitle": "Navigateur de bureau requis",
      "mobileDesc": "RenameFlow a besoin d'accéder aux fichiers locaux — ouvre cette page sur un ordinateur avec Chrome ou Edge.",
      "firefoxTitle": "Firefox n'est pas supporté",
      "firefoxDesc": "Utilise Chrome, Edge ou Opera pour renommer tes fichiers (Brave fonctionne après avoir activé un réglage).",
      "safariTitle": "Safari n'est pas supporté",
      "safariDesc": "Apple Safari ne permet pas de renommer les fichiers locaux. Passe sur Chrome ou Edge.",
      "unknownTitle": "Navigateur non supporté",
      "unknownDesc": "Ton navigateur ne supporte pas l'API File System Access. Utilise Chrome ou Edge.",
      "copyLink": "Copier le lien",
      "linkCopied": "Lien copié !",
      "braveDesc": "Brave désactive l'accès aux fichiers locaux par défaut. Active brave://flags/#file-system-access-api, relance Brave, et c'est bon.",
      "braveTitle": "Brave : un réglage à activer"
    },
    "pricing": {
      "requiresChrome": "Nécessite Chrome ou Edge",
      "disabledHint": "Ouvre cette page dans Chrome ou Edge pour souscrire"
    },
    "fallback": {
      "downloadChrome": "Télécharger Chrome",
      "downloadEdge": "Télécharger Edge"
    }
  },
  "pillar": {
    "plex": {
      "seoTitle": "Guide de nommage Plex 2026 : Films, Séries télé, Animes, Musique | RenameFlow",
      "seoDescription": "Maîtrise les conventions de nommage de Plex pour les films, séries télé, animes et la musique. Exemples étape par étape, dépannage et la façon la plus rapide de renommer ta bibliothèque.",
      "keywords": "convention de nommage plex, nommage serveur multimédia plex, nommage série télé plex, nommage film plex, nommage anime plex, organisation bibliothèque plex, renommer pour plex, scanner plex",
      "h1": "Guide de nommage Plex : Films, Séries télé, Animes et Musique (2026)",
      "readingTime": "~12 min de lecture",
      "trust": {
        "updated": "Mis à jour pour Plex 2026",
        "crossRef": "Contre-vérifié avec la documentation officielle de Plex",
        "builtBy": "Conçu par des passionnés de bibliothèques multimédias"
      },
      "intro": {
        "lead": "L'intelligence de Plex dépend de tes noms de fichiers. Nomme-les correctement, et le scanner trouvera affiches, résumés et crédits en quelques secondes. Trompe-toi, et tu fixeras des avertissements « sans correspondance » pendant des heures.",
        "problem": "Ce guide est la référence pratique et sans flafla qu'on aurait aimé avoir en configurant Plex pour la première fois. Il couvre tous les types de médias supportés par les agents Plex — films, séries télé, animes, musique — avec les structures de nom exactes que le scanner de Plex attend, les cas particuliers qui donnent du fil à retordre à tout le monde (versions 4K, saisons d'animes, schémas de date pour les émissions quotidiennes, musique d'Artistes variés), et les étapes de dépannage quand rien ne correspond. Les exemples sont basés sur la documentation de nommage de Plex et vérifiés avec de vraies bibliothèques.",
        "promise": "À la fin, tu sauras exactement comment renommer chaque fichier de ta bibliothèque à la main — ou tu auras complètement évité la saisie manuelle avec un outil qui le fait en 60 secondes.",
        "heroCta": "Ou saute l'étape manuelle : renomme ta bibliothèque en 60s avec RenameFlow"
      },
      "toc": {
        "fundamentals": "Les bases",
        "movies": "Films",
        "tvShows": "Séries télé",
        "anime": "Animes",
        "music": "Musique",
        "troubleshooting": "Dépannage",
        "faster": "La voie rapide",
        "faq": "FAQ"
      },
      "fundamentals": {
        "h2": "Les bases du nommage Plex",
        "intro": "Avant de plonger dans les structures par type de média, comprends comment le scanner de Plex pense réellement. Deux choses déterminent si un fichier est associé : le dossier où il se trouve et le nom du fichier lui-même. Les deux sont importants, et Plex utilise parfois l'un pour combler les lacunes de l'autre.",
        "folderVsFileTitle": "Structure de dossiers vs nom de fichier",
        "folderVsFile": "La structure de dossiers indique à Plex ce qu'est un fichier — un film, un épisode de série télé, un album. Le nom de fichier lui dit ensuite lequel c'est. Les films sont principalement associés selon le nom de fichier (l'année étant le signal le plus fort). Les épisodes de séries télé sont associés selon le dossier de la saison + le jeton sXXeYY dans le nom de fichier. La musique est associée grâce à une combinaison des tags ID3 et de la hiérarchie de dossiers Artiste/Album/Piste.\n\nÇa veut dire qu'un fichier parfaitement nommé dans le mauvais dossier échouera. Tout comme un nom de fichier chaotique dans un dossier parfait. Fais les deux correctement, et Plex fera la correspondance avec confiance en moins d'une seconde par fichier.",
        "scannerModelTitle": "Comment pense le scanner de Plex",
        "scannerModel": "Le processus du scanner de Plex se déroule en trois étapes. D'abord, il regroupe les fichiers en « éléments » en se basant sur la structure de tes dossiers et tes noms de fichiers. Ensuite, il interroge l'agent configuré (TMDB pour les films, TheTVDB ou TMDB pour les séries, et l'agent musical pour les pistes) pour aller chercher les métadonnées. Finalement, il enregistre la correspondance et télécharge les pochettes.\n\nChaque étape a ses propres modes d'échec. Mauvaise structure de dossiers → échec du regroupement (une série devient 12 séries, ou deux films fusionnent en un seul). Mauvais nom de fichier → la requête à l'agent retourne le mauvais titre ou aucune correspondance. Des pochettes manquantes même après une correspondance réussie signifient habituellement que l'agent a bien fonctionné, mais que le CDN des pochettes était lent — rafraîchis les métadonnées pour réessayer.",
        "fourRulesTitle": "Les quatre règles qui préviennent 95 % des problèmes",
        "fourRulesIntro": "Quatre règles préviennent 95 % des problèmes de correspondance sur Plex. Applique-les partout et tu ne verras presque plus jamais « non-associé ».",
        "rules": [
          {
            "title": "Toujours inclure l'année de sortie pour les films",
            "description": "Deux films partagent un titre étonnamment souvent (pense à Casino Royale 1967 vs 2006). L'année est le moyen le plus simple de les différencier.",
            "bad": "Casino Royale.mkv",
            "good": "Casino Royale (2006).mkv"
          },
          {
            "title": "Toujours utiliser le format sXXeYY pour les séries télé",
            "description": "Deux chiffres, avec un zéro devant, en minuscules. Le regex de Plex est permissif, mais des motifs prévisibles réduisent les cas d'exception.",
            "bad": "Breaking Bad Ep 1.mkv",
            "good": "Breaking Bad - s01e01.mkv"
          },
          {
            "title": "Un film ou une série par dossier",
            "description": "Des sous-dossiers pour les saisons. Ne mélange jamais deux séries dans un même dossier parent.",
            "bad": "TV/All My Shows/...",
            "good": "TV/Breaking Bad (2008)/Season 01/..."
          },
          {
            "title": "Ne jamais se fier uniquement au nom de fichier pour la musique",
            "description": "Les tags ID3 ont priorité sur tout. Utilise MusicBrainz Picard, Mp3tag ou le mode musique de RenameFlow pour corriger les tags avant de te soucier des noms de fichiers.",
            "bad": "01.mp3 (no tags)",
            "good": "01 - Speak to Me.flac (full ID3 tags)"
          }
        ],
        "walkthroughLinkText": "guide étape par étape"
      },
      "movies": {
        "h2": "Nommer les films pour Plex",
        "intro": "Les films sont le type de média le plus facile à bien nommer, car Plex tire les métadonnées presque entièrement du nom de fichier et du dossier. Il existe deux structures valides — un dossier par film (recommandé) et une structure à plat — en plus des extensions pour les versions multiples, les éditions et les bonus.",
        "folderStructureTitle": "Structure des dossiers",
        "folderStructure": "La structure recommandée par Plex place chaque film dans son propre dossier, nommé d'après le film avec son année de sortie entre parenthèses. Le fichier vidéo à l'intérieur répète ce nom. Les sous-titres, bandes-annonces et extras se trouvent à ses côtés.",
        "folderStructureExample": "Movies/\n├── Blade Runner (1982)/\n│   ├── Blade Runner (1982).mkv\n│   ├── Blade Runner (1982).en.srt\n│   └── trailer.mp4\n├── Blade Runner 2049 (2017)/\n│   └── Blade Runner 2049 (2017).mkv\n└── Dune (1984)/\n    └── Dune (1984).mkv",
        "folderStructureNote": "Le nom du dossier est ce que Plex lit en premier. Le nom de fichier interne est une solution de rechange. Les garder identiques est la méthode la plus propre et celle que la documentation de Plex recommande explicitement.",
        "yearTitle": "L'année est non négociable",
        "year": "L'année est non négociable. Plex utilise TMDB comme agent de films par défaut, et TMDB a des milliers de titres en double qui ne se distinguent que par l'année. « Dune (1984) » et « Dune (2021) » ne partagent aucune métadonnée; sans l'année, Plex en choisit un au hasard en fonction du classement de popularité de TMDB, ce qui n'est presque jamais ce que tu veux.\n\nMets l'année entre parenthèses tout de suite après le titre, avec un seul espace avant la parenthèse ouvrante : « Titre (YYYY) ». Pas « Titre YYYY », pas « Titre [YYYY] », pas « Titre.YYYY ». Les parenthèses font partie du regex de correspondance de Plex.",
        "multiVersionTitle": "Versions multiples (1080p + 4K)",
        "multiVersionIntro": "Plex prend en charge plusieurs versions du même film dans une seule entrée de bibliothèque — pratique pour stocker une copie 1080p et une copie 4K sans dupliquer les métadonnées. Il existe deux structures de nommage officielles.",
        "multiVersionA": "Structure A — Suffixe de résolution dans le nom de fichier :",
        "multiVersionAExample": "Avatar (2009)/\n├── Avatar (2009) - 1080p.mkv\n└── Avatar (2009) - 2160p.mkv",
        "multiVersionB": "Structure B — Des sous-dossiers par version (plus propre pour plusieurs éditions) :",
        "multiVersionBExample": "Avatar (2009)/\n├── 1080p/\n│   └── Avatar (2009).mkv\n└── 2160p/\n    └── Avatar (2009).mkv",
        "multiVersionOutcome": "Plex affiche les deux versions sur une seule fiche de film avec un sélecteur de version. Les utilisateurs de Plex Pass avec Direct Play sur un appareil 4K obtiennent le fichier 4K; tous les autres obtiennent le 1080p sans transcodage. C'est la plus grande amélioration de qualité de vie qui manque à la plupart des bibliothèques.",
        "editionsTitle": "Éditions (version du réalisateur, cinéma, longue)",
        "editionsIntro": "Pour les versions du réalisateur, les versions longues, les versions cinéma et autres, Plex 2024+ prend en charge une balise d'édition explicite entre accolades :",
        "editionsExample": "Movies/\n├── Blade Runner (1982)/\n│   ├── Blade Runner (1982) - {edition-Final Cut}.mkv\n│   └── Blade Runner (1982) - {edition-Theatrical}.mkv\n└── Apocalypse Now (1979)/\n    ├── Apocalypse Now (1979) - {edition-Theatrical}.mkv\n    └── Apocalypse Now (1979) - {edition-Redux}.mkv",
        "editionsOutcome": "Celles-ci apparaissent comme des films distincts dans ta bibliothèque — pas des versions fusionnées comme avec la structure de résolution. Utilise les éditions lorsque la durée, le contenu ou le récit diffèrent de manière significative; utilise le multi-version quand c'est le même film à une qualité différente.",
        "concertsTitle": "Concerts et spectacles d'humour",
        "concerts": "Les films de concert et les spectacles d'humour doivent se trouver dans ta bibliothèque de films, pas dans une bibliothèque séparée. Plex n'a pas de type de média dédié aux « concerts » et TMDB liste la plupart des concerts sous leur année de sortie. Conserve la même structure « Titre (Année).ext ».\n\nPour les spectacles d'humour qui n'ont pas d'entrée sur TMDB, tu devras peut-être verrouiller les métadonnées manuellement après que le scraper ait échoué. Plex Web → menu ⋯ → Corriger la correspondance → Rechercher par nom.",
        "mistakesTitle": "Cinq erreurs de nommage de films",
        "mistakes": "Les cinq erreurs qui causent la plupart des échecs de correspondance de films :\n\n1. Année manquante ou dans le mauvais format. « Inception 2010.mkv » sans parenthèses ne fonctionne que par chance.\n2. Caractères spéciaux des versions de la scène conservés : « Inception.2010.BluRay.x264-SPARKS.mkv » est reconnu, mais c'est laid. Plex l'analyse, mais les humains le lisent mal.\n3. Fichier du film à la racine de la bibliothèque au lieu d'un dossier. Ça fonctionne pour le scan, mais ça empêche la détection des sous-titres et des extras.\n4. Les versions 1080p et 2160p nommées de manière identique sans le suffixe de résolution. Plex en choisit une au hasard.\n5. Balise d'édition utilisant des parenthèses ou des crochets au lieu d'accolades. Seul « {edition-X} » est analysé.",
        "examplesTitle": "Exemples concrets",
        "examples": "Movies/\n├── The Matrix (1999)/\n│   └── The Matrix (1999).mkv\n├── Dune (1984)/\n│   └── Dune (1984) - {edition-Theatrical Cut}.mkv\n├── Dune (2021)/\n│   ├── Dune (2021) - 1080p.mkv\n│   └── Dune (2021) - 2160p.mkv\n├── Apocalypse Now (1979)/\n│   ├── Apocalypse Now (1979) - {edition-Theatrical}.mkv\n│   └── Apocalypse Now (1979) - {edition-Redux}.mkv\n└── Lord of the Rings - The Fellowship of the Ring (2001)/\n    ├── Lord of the Rings - The Fellowship of the Ring (2001) - {edition-Theatrical} - 2160p.mkv\n    └── Lord of the Rings - The Fellowship of the Ring (2001) - {edition-Extended} - 2160p.mkv",
        "filebotLinkText": "la méthode FileBot",
        "ctaSoft": "Tanné de taper (2021) sur 500 films? RenameFlow s'occupe d'un dossier en 60 secondes."
      },
      "tvShows": {
        "h2": "Nommer les séries télé pour Plex",
        "intro": "Les séries télé, c'est là où la plupart des bibliothèques ont des problèmes. La hiérarchie des dossiers est obligatoire, le format saison-épisode est rigide, et les cas particuliers — épisodes spéciaux, émissions quotidiennes, fichiers multi-épisodes, mini-séries — ont chacun leur propre structure. Fais-le bien une fois et Plex ne te posera plus de questions.",
        "folderStructureTitle": "Structure des dossiers (obligatoire)",
        "folderStructure": "La structure requise a deux niveaux de profondeur : un dossier pour la série, puis un dossier par saison. Plex ne regroupera pas correctement les épisodes si tu mets tout dans un seul dossier.",
        "folderStructureExample": "TV Shows/\n├── Breaking Bad (2008)/\n│   ├── Season 01/\n│   │   ├── Breaking Bad - s01e01 - Pilot.mkv\n│   │   └── Breaking Bad - s01e02 - Cat's in the Bag....mkv\n│   ├── Season 02/\n│   │   └── Breaking Bad - s02e01.mkv\n│   └── Specials/\n│       └── Breaking Bad - s00e01 - Behind the Scenes.mkv\n└── The Wire (2002)/\n    └── Season 01/\n        └── The Wire - s01e01.mkv",
        "folderStructureNote": "Format du nom du dossier de la série : « Titre de la série (Année) ». L'année permet de différencier les remakes (pense à « The Office (2001) » UK vs « The Office (2005) » US). Format du dossier de saison : « Season XX » avec un zéro pour les nombres à un chiffre, ou « Specials » pour la saison 0.",
        "filenameTitle": "Format du nom de fichier : sXXeYY",
        "filenameFormat": "Le format de nom de fichier d'épisode que Plex comprend est sXXeYY — 's' et 'e' en minuscules, avec des nombres sur deux chiffres (avec un zéro devant si nécessaire). Plex accepte aussi d'autres variantes comme SXXEYY (majuscules), Season XX Episode YY (format long), et 1x01 (séparé par un point). Mais mélanger les styles au sein d'une même série peut mêler certains scanners. Choisis-en un et tiens-t'y; sXXeYY en minuscules est le plus sûr.\n\nAjoute le titre de l'épisode après un tiret pour la lisibilité — c'est optionnel pour la correspondance, mais c'est plus facile à lire dans l'interface de Plex quand les métadonnées sont lentes à charger :",
        "filenameExample": "Breaking Bad - s05e14 - Ozymandias.mkv",
        "filenameNote": "Le titre de l'épisode N'EST PAS utilisé pour la correspondance. L'agent de métadonnées remplace ce que tu as écrit par le titre officiel provenant de TVDB ou TMDB.",
        "specialsTitle": "Épisodes spéciaux et OVAs",
        "specials": "Les épisodes spéciaux, OVAs, coulisses et autres extras vont dans un dossier « Specials » (nom littéral) ou « Season 00 ». Plex traite les deux comme la saison zéro. À l'intérieur, nomme-les s00e01, s00e02, etc. L'ordre doit correspondre à la liste officielle des « specials » sur TVDB.\n\nCertaines séries ont des épisodes spéciaux diffusés entre les saisons. Tu peux utiliser l'ordre de diffusion par date absolue, ou suivre la numérotation des spéciaux de TVDB. L'agent TVDB de Plex utilise la numérotation de TVDB par défaut, alors vérifie là-bas d'abord pour éviter les erreurs de correspondance.",
        "dateBasedTitle": "Émissions quotidiennes (basées sur la date)",
        "dateBasedIntro": "Les émissions quotidiennes (The Daily Show, les talk-shows de fin de soirée, les nouvelles) ne suivent pas le format sXXeYY car les épisodes n'ont pas de numéros de saison/épisode — ils ont des dates. Plex prend en charge un système de nommage basé sur la date :",
        "dateBasedExample": "The Daily Show (1996)/\n├── Season 28/\n│   ├── The Daily Show - 2024-01-15.mkv\n│   └── The Daily Show - 2024-01-16.mkv",
        "dateBasedNote": "Formate la date en AAAA-MM-JJ. Plex utilise ceci pour faire correspondre les épisodes avec l'index de dates des émissions quotidiennes de TVDB. La section de la bibliothèque doit avoir l'agent TVDB sélectionné; l'agent TMDB a un support limité pour les émissions quotidiennes.",
        "multiEpisodeTitle": "Fichiers multi-épisodes",
        "multiEpisodeIntro": "Pour les épisodes doubles ou les finales de saison qui couvrent deux épisodes dans un seul fichier, utilise la syntaxe d'intervalle :",
        "multiEpisodeExample": "Breaking Bad - s05e15-e16 - Granite State + Felina.mkv",
        "multiEpisodeNote": "Plex crée un seul fichier lisible qui correspond aux deux épisodes dans les métadonnées. Tu peux aussi utiliser s05e15-s05e16 (répétition complète) et Plex accepte les deux, mais la forme d'intervalle est plus propre.",
        "miniSeriesTitle": "Mini-séries",
        "miniSeries": "Les mini-séries avec une seule saison (Chernobyl, Band of Brothers, The Queen's Gambit) suivent le même format que les séries régulières, avec « Season 01 » comme unique dossier de saison. Ne sois pas tenté de mettre les épisodes à la racine du dossier de la série — le scanner de Plex s'attend à trouver le dossier de saison.",
        "failuresTitle": "Problèmes fréquents avec les séries télé et leurs solutions",
        "failures": "Les problèmes les plus fréquents du scanner de séries télé et leurs causes :\n\n— « Épisode non trouvé » mais la saison est correcte : le format du nom de fichier est malformé. Vérifie que sXXeYY est en minuscules et complété par des zéros.\n\n— Saison entière non trouvée : le nom du dossier ne commence pas par « Season ». « S1 » ou « Season1 » ne fonctionneront pas. L'espace est requis.\n\n— Mauvaise série trouvée : l'année manque sur un titre commun. « The Office » trouvera la version américaine plus populaire, peu importe celle que tu as. Ajoute (2001) ou (2005) au dossier de la série.\n\n— Épisodes groupés dans la saison 1 même s'ils sont de la saison 2 ou plus : les fichiers sont à la racine de la série, pas dans les dossiers de saison. Déplace chaque fichier dans « Season XX/ ».\n\n— Le « titre de l'épisode » affiché est incorrect : l'agent de métadonnées a remplacé ton nom de fichier. C'est voulu. Si le titre est erroné sur TheTVDB, corrige-le sur TheTVDB et rafraîchis les métadonnées. Plex envoie une requête de rafraîchissement du cache chaque jour, donc les changements se propagent en 24h.",
        "examplesTitle": "Exemples concrets",
        "examples": "TV Shows/\n├── Breaking Bad (2008)/\n│   ├── Season 01/\n│   │   ├── Breaking Bad - s01e01 - Pilot.mkv\n│   │   └── Breaking Bad - s01e02 - Cat's in the Bag....mkv\n│   ├── Season 05/\n│   │   └── Breaking Bad - s05e15-e16 - Granite State + Felina.mkv\n│   └── Specials/\n│       └── Breaking Bad - s00e01 - No Half Measures.mkv\n├── The Office (2005)/\n│   └── Season 03/\n│       └── The Office - s03e12 - Back from Vacation.mkv\n├── Chernobyl (2019)/\n│   └── Season 01/\n│       └── Chernobyl - s01e01 - 1:23:45.mkv\n└── The Daily Show (1996)/\n    └── Season 29/\n        └── The Daily Show - 2024-03-15.mkv"
      },
      "anime": {
        "h2": "Nommer les animes pour Plex",
        "intro": "Les animes, c'est là que le scanner par défaut de Plex perd les pédales et que les fils de discussion sur Reddit se multiplient. Le problème principal : les animes sont suivis dans trois bases de données (TMDB, TVDB, AniDB) qui ne s'entendent pas sur ce qui constitue une saison, une série, et sur la numérotation des épisodes. La base de données que ton agent Plex interroge détermine tout le reste. Il existe deux stratégies valides; choisis-en une et tiens-t'y.",
        "challengeTitle": "Le défi principal",
        "challenge": "Un exemple concret : One Piece. AniDB le liste comme une seule série continue de plus de 1000 épisodes avec une numérotation absolue (épisode 1, 2, 3… 1064). TheTVDB la divise en plus de 21 « saisons » en suivant les arcs de production. TMDB fait sa propre affaire, en reflétant partiellement TheTVDB.\n\nSi ta librairie d'animes Plex utilise l'agent TMDB (par défaut) et que tes noms de fichiers utilisent la numérotation absolue (« One Piece - 1064.mkv »), rien ne correspondra car TMDB s'attend à un format saison-et-épisode. Si tes noms de fichiers utilisent le format saison-et-épisode de TheTVDB (« One Piece - s21e62.mkv ») et que tu changes d'agent, le mappage ne fonctionnera plus.\n\nDeux stratégies pour sortir du piège, par ordre d'effort :\n\nStratégie 1 — Utilise les saisons/épisodes de TheTVDB partout, et accepte que certains numéros d'épisodes semblent arbitraires. Coût d'installation le plus bas. Fidélité la plus faible pour les séries à numérotation absolue.\n\nStratégie 2 — Installe le scanner et l'agent HAMA (maintenu par la communauté sur GitHub) qui utilise AniDB nativement. Plus haute fidélité. Installation manuelle. Recommandé pour les librairies d'animes sérieuses.",
        "absoluteTitle": "Numérotation absolue avec HAMA",
        "absoluteIntro": "Avec HAMA installé, tu peux nommer tes fichiers d'animes en utilisant la numérotation absolue des épisodes et HAMA les associera correctement :",
        "absoluteExample": "Anime/\n├── One Piece [anidb-69]/\n│   ├── Season 01/\n│   │   ├── One Piece - s01e001.mkv\n│   │   ├── One Piece - s01e002.mkv\n│   │   └── ...",
        "absoluteNote": "Le suffixe [anidb-69] est un indice d'ID explicite pour HAMA — il force l'agent à utiliser l'entrée AniDB pour One Piece (ID 69 dans leur catalogue) au lieu de deviner à partir du titre. Utilise-le pour toute série dont le titre est ambigu (plusieurs saisons avec le même nom, orthographes alternatives).\n\nPour la numérotation absolue sans HAMA — en utilisant simplement l'agent par défaut de Plex — nomme les fichiers avec le numéro absolu dans l'espace réservé à l'épisode de la saison 1 : « Show - s01e0064.mkv ». Plex les affichera comme des épisodes de la saison 1, de 1 à N, ce qui fait perdre le contexte de la saison, mais au moins la correspondance est bonne.",
        "hamaTitle": "Configuration de HAMA en 5 étapes",
        "hama": "Configuration de HAMA en cinq étapes :\n\n1. Télécharge HAMA depuis github.com/ZeroQI/Hama.bundle et place-le dans le dossier « Plug-ins » de Plex.\n2. Télécharge Absolute Series Scanner (ASS) depuis github.com/ZeroQI/Absolute-Series-Scanner et place-le dans le dossier « Scanners/Series » de Plex.\n3. Redémarre le serveur Plex.\n4. Crée une nouvelle section de bibliothèque, de type « TV Shows », et dans les paramètres avancés, règle le scanner sur « Absolute Series Scanner » et l'agent sur « HAMA ».\n5. Fais pointer la section vers ton dossier d'animes et lance une analyse.\n\nHAMA lit les ID d'AniDB, de MyAnimeList et de TVDB à partir du nom du dossier, entre crochets. Tu peux mélanger les sources par série. AniDB est idéal pour la fidélité des noms; TVDB est meilleur pour les séries avec des métadonnées de doublage en anglais.",
        "splitSeasonsTitle": "Saisons divisées (Attack on Titan)",
        "splitSeasons": "Attack on Titan est le problème classique des saisons divisées. AniDB et TVDB ne s'entendent pas pour savoir si la « Final Season » est la saison 4, la saison 5 ou sa propre série. La « Final Season » a été divisée en trois « parties », chacune traitée différemment selon les bases de données.\n\nSolution : choisis la base de données qui correspond à ta vision de la série, installe l'agent correspondant si nécessaire (HAMA pour AniDB, celui par défaut pour TVDB), et tiens-t'en à cette source pour tous tes animes. Mélanger les bases de données dans une même bibliothèque cause plus de problèmes que ça n'en règle.\n\nSi tu utilises TVDB et que la structure des saisons te semble incorrecte, vérifie la section « Aliases » de la série sur TVDB — parfois, l'alias maintenu pointe vers la structure à laquelle la plupart des spectateurs s'attendent.",
        "ovaTitle": "OVA et films dérivés",
        "ova": "Les OVA, les films liés à une série et les épisodes spéciaux vont tous dans la Saison 00 avec une numérotation séquentielle s00e01, s00e02. L'ordre suit celui de la base de données que tu utilises.\n\nPour les films liés à une série (Demon Slayer: Mugen Train, your name., les multiples films de Naruto), il y a un débat constant pour savoir s'ils doivent être dans la bibliothèque TV comme épisodes spéciaux ou dans la bibliothèque de films comme des films autonomes. La bibliothèque de films est généralement plus simple — moins de cas limites pour le scanner. L'inconvénient : ils n'apparaissent pas dans la vue de la série parente.",
        "subDubTitle": "Sous-titres vs doublage",
        "subDubIntro": "Le nommage pour les sous-titres ou le doublage ne change pas la correspondance des fichiers, mais affecte la piste audio qui est lue par défaut. Plex choisit la première piste audio, à moins que tu n'aies défini une piste par défaut dans le fichier ou dans les préférences de ton compte.\n\nSi tu conserves à la fois les versions avec sous-titres seulement et les versions doublées du même épisode, utilise le nommage multi-version (modèle de suffixe de résolution) en ajoutant la langue audio dans le suffixe :",
        "subDubExample": "Show - s01e01 - JPN.mkv\nShow - s01e01 - ENG.mkv",
        "subDubNote": "Ceux-ci sont fusionnés en une seule entrée d'épisode avec un sélecteur de version, exactement comme les versions 1080p/2160p d'un film.",
        "examplesTitle": "Exemples concrets",
        "examplesA": "Bibliothèque basée sur HAMA :\nAnime/\n├── One Piece [anidb-69]/\n│   ├── Season 01/\n│   │   ├── One Piece - s01e001.mkv\n│   │   └── One Piece - s01e002.mkv\n│   └── Season 00/\n│       └── One Piece - s00e001 - Movie 14: Stampede.mkv\n└── Attack on Titan [anidb-9541]/\n    ├── Season 01/\n    └── Season 02/",
        "examplesB": "Bibliothèque basée sur TheTVDB (agent par défaut, sans HAMA):\nAnime/\n├── Demon Slayer (2019)/\n│   ├── Season 01/\n│   │   ├── Demon Slayer - s01e01.mkv\n│   │   └── Demon Slayer - s01e02.mkv\n│   └── Season 02/\n│       └── Demon Slayer - s02e01 - Mugen Train Arc.mkv\n└── Spy x Family (2022)/\n    └── Season 01/\n        └── Spy x Family - s01e01.mkv",
        "kodiJellyfinLinkText": "Équivalents pour Kodi et Jellyfin",
        "ctaSoft": "Tanné de taper s01e01 pour 500 épisodes? RenameFlow le fait en 60 secondes."
      },
      "music": {
        "h2": "Nommer la musique pour Plex et Plexamp",
        "intro": "La musique est le seul type de média où les noms de fichiers sont secondaires. L'agent musical de Plex lit d'abord les tags ID3 et se rabat sur la structure de tes dossiers quand les tags sont manquants ou incorrects. Les bibliothèques les plus propres réussissent les deux; celles basées uniquement sur les tags ou les dossiers finissent par avoir des manques bizarres.",
        "folderStructureTitle": "Structure des dossiers",
        "folderStructureIntro": "La structure recommandée reflète la façon dont la plupart des applications de musique conçoivent les bibliothèques : artiste, puis album, puis piste.",
        "folderStructureExample": "Music/\n├── Pink Floyd/\n│   ├── The Dark Side of the Moon (1973)/\n│   │   ├── 01 - Speak to Me.flac\n│   │   ├── 02 - Breathe (In the Air).flac\n│   │   └── ...\n│   └── Wish You Were Here (1975)/\n│       └── 01 - Shine On You Crazy Diamond Pts. 1-5.flac\n└── Daft Punk/\n    └── Random Access Memories (2013)/\n        └── 01 - Give Life Back to Music.flac",
        "folderStructureNote": "L'année de l'album entre parenthèses est optionnelle, mais utile — elle aide à distinguer les rééditions et à trouver la bonne version (release) sur MusicBrainz. Les noms de fichiers des pistes commencent par un numéro de piste avec un zéro de remplissage, suivi d'un tiret et du titre.",
        "id3Title": "Les tags ID3 en premier",
        "id3": "Les tags ID3 sont ce que l'agent musical de Plex lit réellement. Les tags requis sont : artiste, album, titre, numéro de piste. Tags additionnels recommandés : artiste de l'album (différent de l'artiste de la piste sur les compilations), année, genre, numéro de disque.\n\nRenommer les fichiers sans corriger les tags n'aide pas Plex à faire la bonne association. Si tes tags sont incorrects, installe MusicBrainz Picard (gratuit) ou Mp3tag (gratuit sur Windows) et fais une réécriture des tags en premier, puis occupe-toi des noms de fichiers en deuxième. Le mode musique de RenameFlow lit MusicBrainz et met à jour les noms de fichiers; il n'écrit pas les tags ID3, alors utilise-le après un *tagger*.",
        "variousArtistsTitle": "Various Artists (compilations, bandes sonores)",
        "variousArtistsIntro": "Les compilations et bandes sonores ont besoin d'un artiste d'album « Various Artists », sinon elles vont exploser en des dizaines d'« artistes » d'une seule piste dans ta bibliothèque. Le réglage se fait dans les tags ID3 :\n\nTag: Album Artist = \"Various Artists\"\nTag: Artist = (l'artiste de la piste individuelle)\n\nLa structure de dossier devient alors :",
        "variousArtistsExample": "Music/\n└── Various Artists/\n    └── Rocky IV Soundtrack (1985)/\n        ├── 01 - Burning Heart - Survivor.flac\n        └── 02 - Heart's on Fire - John Cafferty.flac",
        "variousArtistsNote": "Plex affiche l'album sous « Various Artists », mais chaque piste montre son véritable interprète.",
        "trackNumberingTitle": "Numérotation des pistes",
        "trackNumbering": "Les numéros de piste vont au début du nom de fichier, sur deux chiffres avec un zéro de remplissage. Ne saute pas de numéros (pas de 1, 3, 4 — ça brise l'ordre de lecture sur les agents qui trient par ordre alphabétique quand les tags de piste sont manquants).\n\nLe format de nom de fichier : « 01 - Track Title.ext » ou simplement « 01 Track Title.ext ». Les deux fonctionnent. Évite de mettre l'artiste dans chaque nom de fichier de piste — c'est redondant avec le dossier et ça encombre l'interface quand Plexamp se rabat sur l'affichage du nom de fichier.",
        "multiDiscTitle": "Albums multi-disques",
        "multiDiscIntro": "Les albums multi-disques utilisent un sous-dossier « Disc XX » entre l'album et les pistes, et le tag ID3 « Disc Number » doit être défini pour chaque fichier :",
        "multiDiscExample": "Music/\n└── Tool/\n    └── Lateralus (2001)/\n        ├── Disc 01/\n        │   ├── 01 - The Grudge.flac\n        │   └── ...\n        └── Disc 02/\n            └── 01 - Faaip de Oiad.flac",
        "multiDiscNote": "Plexamp fusionne ça en une vue d'album continue avec des séparateurs de disque. Sans le tag de disque, les pistes du disque 2 entrent en conflit avec celles du disque 1 (deux « piste 01 », deux « piste 02 », et Plex choisit la première qu'il voit).",
        "examplesTitle": "Exemples concrets",
        "examples": "Music/\n├── Pink Floyd/\n│   ├── The Dark Side of the Moon (1973)/\n│   │   ├── 01 - Speak to Me.flac\n│   │   ├── 02 - Breathe (In the Air).flac\n│   │   └── 10 - Eclipse.flac\n│   └── The Wall (1979)/\n│       ├── Disc 01/\n│       │   ├── 01 - In the Flesh?.flac\n│       │   └── ...\n│       └── Disc 02/\n│           └── 01 - Hey You.flac\n├── Various Artists/\n│   └── Pulp Fiction Soundtrack (1994)/\n│       ├── 01 - Pumpkin and Honey Bunny - Tim Roth.flac\n│       └── 02 - Misirlou - Dick Dale.flac\n└── Daft Punk/\n    └── Random Access Memories (2013)/\n        ├── 01 - Give Life Back to Music.flac\n        └── 13 - Contact.flac"
      },
      "troubleshooting": {
        "h2": "Dépannage du nommage pour Plex",
        "intro": "Même avec un nommage parfait, les bibliothèques échouent de manière prévisible. Voici les six problèmes qui couvrent environ 90 % des plaintes réelles concernant le nommage Plex, avec les étapes exactes pour les corriger.",
        "causesLabel": "Causes probables",
        "stepsLabel": "Étapes de correction",
        "items": [
          {
            "problem": "Plex affiche le film comme non-associé",
            "causes": [
              "L'année est manquante dans le nom du fichier ou du dossier",
              "Des caractères spéciaux d'une version de la scène (p. ex. 'BluRay.x264-SPARKS') mêlent l'analyseur sur des titres rares",
              "Le fichier du film est à la racine de la bibliothèque au lieu d'être dans un dossier",
              "Le titre diffère beaucoup de celui sur TMDB (titre espagnol vs titre anglais)"
            ],
            "steps": [
              "Ajoute (AAAA) entre parenthèses juste après le titre dans le nom du dossier et du fichier",
              "Supprime tout ce qui suit l'année — garde seulement 'Title (Year).ext'",
              "Déplace le fichier dans un dossier nommé exactement comme le fichier",
              "Dans Plex Web → menu ⋯ sur le film → Corriger la correspondance → Options de recherche → entre l'ID de TMDB directement"
            ]
          },
          {
            "problem": "Mauvaise série associée (tu as obtenu The Office (US) alors que tu as The Office (UK))",
            "causes": [
              "Le dossier de la série n'inclut pas l'année",
              "Le titre correspond à plusieurs séries sur TVDB/TMDB et Plex choisit la plus populaire"
            ],
            "steps": [
              "Renomme le dossier de la série en 'Title (Year)' avec l'année de diffusion originale",
              "Bibliothèque Plex → ⋯ → Rafraîchir les métadonnées",
              "Si c'est toujours incorrect : ⋯ → Associer → Recherche par ID TVDB ou ID TMDB et sélectionne la bonne entrée"
            ]
          },
          {
            "problem": "Titre d'épisode manquant ou incorrect",
            "causes": [
              "Le marqueur dans le nom de fichier était malformé (sXXeYY sans zéros de remplissage, majuscules mélangées avec des minuscules)",
              "TVDB/TMDB a le mauvais titre — Plex affiche ce que l'agent lui dit"
            ],
            "steps": [
              "Vérifie que le nom de fichier utilise le format 'sXXeYY', avec les deux lettres en minuscules et les deux nombres à deux chiffres",
              "Si le nom de fichier est correct : c'est l'agent lui-même qui a tort. Tu peux soit modifier le titre sur TVDB et attendre 24h pour la mise à jour, soit dans Plex Web → Modifier l'épisode → modifier le titre manuellement"
            ]
          },
          {
            "problem": "Saison entière non-associée même si les épisodes sont bien nommés",
            "causes": [
              "Le nom du dossier de saison ne commence pas par 'Season '",
              "Les épisodes sont à la racine de la série, pas dans un dossier de saison",
              "Le dossier de saison utilise un jeu de caractères non latin qui mêle le scanner"
            ],
            "steps": [
              "Renomme le dossier de saison en 'Season 01' (avec un espace, deux chiffres)",
              "Déplace chaque fichier d'épisode dans le bon dossier 'Season XX'",
              "Pour les épisodes spéciaux, utilise soit 'Specials' (littéral) ou 'Season 00'"
            ]
          },
          {
            "problem": "Anime divisé dans les mauvaises saisons",
            "causes": [
              "Discordance entre la numérotation de tes fichiers et la structure des saisons de l'agent (AniDB vs TVDB vs TMDB)",
              "Utilisation de l'agent par défaut pour les séries à numérotation absolue comme One Piece"
            ],
            "steps": [
              "Choisis une seule base de données (TVDB pour le moins de friction, AniDB via HAMA pour la meilleure fidélité) et tiens-t'y",
              "Si tu utilises TVDB : renomme les fichiers pour correspondre à la division saison/épisode de TVDB pour cette série",
              "Si tu installes HAMA : vois la section de configuration de HAMA ci-dessus. Relance un scan après l'installation"
            ]
          },
          {
            "problem": "La bibliothèque ne se scanne pas du tout (rien ne se passe quand tu lances un scan)",
            "causes": [
              "Le serveur Plex n'a pas la permission de lecture sur le dossier de la bibliothèque",
              "La bibliothèque est vide ou le chemin a changé (partage réseau démonté, lecteur renommé)",
              "Le scanner de Plex est en pause (rare, mais vérifie dans Paramètres → Bibliothèque → Scan)"
            ],
            "steps": [
              "Fais un clic droit sur le dossier de la bibliothèque dans ton système d'exploitation, vérifie que le compte utilisateur de Plex a au moins l'accès en lecture",
              "Plex Web → Paramètres → Gérer → Bibliothèques → vérifie que le chemin de la bibliothèque est accessible",
              "Essaie un scan manuel depuis le menu ⋯ sur la carte de la bibliothèque",
              "Redémarre le processus du Plex Media Server si le scan continue d'échouer silencieusement"
            ]
          }
        ]
      },
      "faster": {
        "h2": "L'alternative de 60 secondes",
        "intro": "Tout ce qui précède est la méthode manuelle : comprendre les règles, taper les bons noms de fichiers, régler toi-même les cas particuliers. Fait une fois avec soin, une bibliothèque reste propre pendant des années. Mais le « soin » survit rarement à un arriéré de 2000 fichiers.",
        "manualWayTitle": "La méthode manuelle",
        "manualWay": "Le résumé honnête : à la main, attends-toi à environ 1 minute par film ou épisode une fois que tu es à l'aise — chercher l'année sur TMDB ou IMDb, taper le titre canonique, obtenir le bon format sXXeYY. Une série de 500 épisodes, c'est huit heures de frappe. Une bibliothèque mixte de 2 000 fichiers, c'est une fin de semaine.",
        "fasterWayTitle": "La méthode de 60 secondes",
        "fasterWay": "RenameFlow fait le même boulot en quelques secondes. Tu déposes un dossier, il parse chaque nom de fichier, interroge TMDB/TheTVDB/AniList/MusicBrainz en parallèle, affiche le nom prêt pour Plex, et renomme les fichiers en local quand tu confirmes. Rien ne part en upload — l'API File System Access fait le renommage sur ton propre disque. Gratuit jusqu'à 15 fichiers par jour ; Lifetime unique à 49 € pour l'illimité.\n\nLes patterns de nommage sont exactement ceux de ce guide, validés contre chaque exemple ci-dessus. Si tu as déjà tapé la moitié de ta bibliothèque à la main, RenameFlow peut finir le reste en 60 secondes.",
        "pricingLinkText": "Forfaits RenameFlow",
        "cta": "Gratuit : 15 fichiers/jour, compte gratuit en 30 secondes, aucun upload."
      },
      "faq": {
        "h2": "Nommage pour Plex — Foire aux questions",
        "seeAllLinkText": "voir toute la FAQ",
        "items": [
          {
            "question": "Quelle est la règle de nommage la plus importante pour Plex?",
            "answer": "Inclus toujours l'année pour les films et 'sXXeYY' pour les séries télé. Ces deux modèles règlent à eux seuls environ 80 % des problèmes de correspondance courants."
          },
          {
            "question": "Est-ce que Plex a vraiment besoin de l'année pour chaque film?",
            "answer": "Oui, si tu as des films qui partagent le même titre, ce qui est plus fréquent qu'on ne le pense (Dune 1984 vs 2021, Casino Royale 1967 vs 2006, The Mummy 1932/1959/1999/2017). Sans l'année, TMDB retourne le résultat le plus populaire, qui n'est souvent pas celui que tu possèdes. Ajoute l'année sans condition — ça ne coûte rien et ça garantit des correspondances fiables pour toujours."
          },
          {
            "question": "Dois-je utiliser Season 00 ou Specials pour les épisodes spéciaux?",
            "answer": "Les deux fonctionnent — Plex les traite de la même façon. 'Specials' est plus facile à lire pour un humain; 'Season 00' est plus cohérent si tu utilises un script pour générer les dossiers. Choisis-en un et utilise-le pour toutes tes séries."
          },
          {
            "question": "Pourquoi Plex choisit-il la mauvaise version d'un titre en double même si j'ai ajouté l'année?",
            "answer": "Soit il manque l'année dans le nom du dossier (Plex lit le dossier en premier), soit tu as mis l'année entre crochets au lieu de parenthèses. Le regex de Plex recherche spécifiquement '(YYYY)' — les crochets et les points ne fonctionnent pas. Vérifie bien le nom du dossier et celui du fichier."
          },
          {
            "question": "Est-ce que l'extension du fichier est importante? MKV vs MP4 vs AVI?",
            "answer": "Pas pour la correspondance. Plex analyse toutes les extensions vidéo courantes de la même manière. C'est important pour la performance de lecture — un MKV avec H.264 ou H.265 offre la meilleure lecture sur tous les clients. Les fichiers AVI nécessitent souvent un transcodage sur les applications mobiles et télé. Le choix du conteneur affecte la compatibilité, pas les métadonnées."
          },
          {
            "question": "Qu'est-ce qui se passe si je renomme des fichiers après que Plex les a analysés?",
            "answer": "Plex refait la correspondance lors de la prochaine analyse. Les métadonnées locales (statut de visionnement, listes de lecture, affiches personnalisées) sont conservées si le nouveau nom de fichier correspond toujours à la même entrée TMDB/TVDB. Si le nouveau nom entraîne une correspondance différente, le statut de visionnement migre via le GUID et survit généralement — mais les affiches personnalisées et les modifications locales peuvent être perdues."
          },
          {
            "question": "Dois-je renommer les fichiers d'anime pour l'agent Plex par défaut ou installer HAMA?",
            "answer": "Pour moins d'environ 200 épisodes au total, utilise l'agent par défaut et accepte quelques bizarreries saisonnières — le temps d'installation de HAMA n'en vaut pas la peine. Pour les plus grandes bibliothèques d'anime ou tout ce qui utilise une numérotation absolue (One Piece, Detective Conan, Naruto, Boruto), installe HAMA. Le gain en fidélité est spectaculaire et l'installation est un coût unique."
          },
          {
            "question": "Puis-je automatiser le renommage pour ne pas avoir à y penser chaque fois que j'ajoute des fichiers?",
            "answer": "Oui. Deux options : intègre Sonarr + Radarr à ton processus de téléchargement pour que les fichiers arrivent déjà nommés, ou utilise RenameFlow comme outil de traitement par lot (batch) manuel lors de l'importation. Sonarr/Radarr sont parfaits pour les chaînes entièrement automatisées; RenameFlow est idéal quand tu veux vérifier chaque renommage avant qu'il ne se produise."
          }
        ]
      },
      "related": {
        "h2": "Poursuivre la lecture",
        "items": [
          {
            "title": "Tutoriel de renommage étape par étape",
            "href": "/how-to-rename"
          },
          {
            "title": "Comparaison détaillée entre RenameFlow et FileBot",
            "href": "/alternatives#filebot"
          },
          {
            "title": "Équivalents de nommage pour Kodi et Jellyfin",
            "href": "/plex-kodi-jellyfin"
          },
          {
            "title": "Toutes les FAQ de RenameFlow",
            "href": "/faq"
          }
        ]
      },
      "guidesHub": {
        "cardTitle": "Guide de nommage Plex",
        "cardDesc": "La référence exhaustive de 7 000 mots pour nommer les films, séries télé, animes et musique pour Plex. Avec dépannage et exemples à copier-coller.",
        "cardBadge": "Nouveau"
      },
      "externalLinks": {
        "plexNaming": "Convention de nommage Plex (officielle)",
        "plexMultiVersion": "Nommage multi-version Plex (officiel)",
        "hamaGithub": "Scanner HAMA (GitHub)"
      },
      "howTo": {
        "name": "Comment nommer les fichiers de films pour Plex",
        "description": "La méthode, étape par étape, pour nommer tes fichiers de films afin que le scanner de Plex les reconnaisse du premier coup.",
        "step1": {
          "name": "Crée un dossier par film",
          "text": "Chaque film a son propre dossier, nommé « Titre (Année) », par exemple « Blade Runner (1982) ». Le fichier vidéo à l'intérieur reprend exactement ce nom."
        },
        "step2": {
          "name": "Ajoute l'année de sortie entre parenthèses",
          "text": "Plex utilise TMDB et départage les titres identiques grâce à l'année. Utilise toujours des parenthèses, jamais de crochets ni de points : « Dune (2021) », et non « Dune 2021 » ou « Dune [2021] »."
        },
        "step3": {
          "name": "Gère les films en plusieurs versions",
          "text": "Pour plusieurs résolutions d'un même film, ajoute la résolution à la fin du nom de fichier : « Dune (2021) - 1080p.mkv » et « Dune (2021) - 2160p.mkv » dans le même dossier. Plex les regroupe en une seule entrée de bibliothèque, avec un sélecteur de version."
        },
        "step4": {
          "name": "Lance une analyse de la bibliothèque Plex",
          "text": "Dans Plex Web, ouvre la bibliothèque, clique sur le menu ⋯ et choisis « Scan Library Files ». Plex associe les nouveaux fichiers à TMDB en quelques secondes. Utilise « Refresh Metadata » pour récupérer à nouveau les visuels et la distribution."
        }
      }
    },
    "jellyfin": {
      "seoTitle": "Guide de nommage Jellyfin 2026 : Films, Séries, Animes, Musique",
      "seoDescription": "Maîtrise les conventions de nommage Jellyfin pour les films, séries, animes et musique. Migration depuis Plex, dépannage et la façon la plus rapide d'organiser ta bibliothèque.",
      "keywords": "convention de nommage jellyfin, nommage de fichiers jellyfin, renommer pour jellyfin, plex vers jellyfin, nommage séries jellyfin, nommage films jellyfin, anime jellyfin",
      "h1": "Guide de nommage Jellyfin : Films, Séries télé, Animes, Musique & Migration depuis Plex (2026)",
      "readingTime": "~11 min de lecture",
      "trust": {
        "updated": "Mis à jour en 2026",
        "crossRef": "Contre-vérifié avec la doc de Jellyfin 10.10+",
        "builtBy": "Créé par l'équipe derrière RenameFlow"
      },
      "guidesHub": {
        "cardTitle": "Guide de nommage Jellyfin",
        "cardDesc": "La référence complète pour nommer les films, séries, animes et musique pour Jellyfin — plus la checklist de migration de Plex vers Jellyfin.",
        "cardBadge": "Nouveau"
      },
      "intro": {
        "lead": "Jellyfin est plus permissif que Plex pour le nommage — mais jusqu'à un certain point. Si tu utilises la bonne structure, le scanner est rapide, précis et gratuit à vie. Sinon, tu passeras des heures à te battre avec des entrées \"non identifiées\" qui auraient dû être reconnues instantanément.",
        "problem": "Ce guide est la référence pratique pour nommer tes fichiers multimédias dans Jellyfin — chaque type de média, chaque cas particulier et le chemin de migration pour quiconque arrive de Plex. Les exemples suivent la documentation officielle de Jellyfin et sont vérifiés avec le comportement de Jellyfin 10.10+. Une attention particulière est portée aux deux cas qui piègent les utilisateurs de Plex lors de la transition : la gestion des épisodes spéciaux (saison zéro) par Jellyfin, et sa gestion des animes sans équivalent HAMA.",
        "promise": "À la fin, tu sauras exactement comment structurer une bibliothèque Jellyfin qui s'analyse proprement du premier coup — que tu partes de zéro, que tu migres depuis Plex ou que tu corriges une bibliothèque qui a grossi de façon chaotique pendant des années.",
        "heroCta": "Évite le travail manuel — laisse RenameFlow gérer les modèles pour toi."
      },
      "toc": {
        "fundamentals": "Les bases",
        "movies": "Films",
        "tvShows": "Séries télé",
        "anime": "Animes (sans HAMA)",
        "music": "Musique",
        "migration": "Migration Plex → Jellyfin",
        "troubleshooting": "Dépannage",
        "faster": "L'alternative en 60 secondes",
        "faq": "FAQ"
      },
      "fundamentals": {
        "h2": "Les bases du nommage Jellyfin",
        "intro": "L'architecture du scanner de Jellyfin est différente de celle de Plex, et comprendre cette différence évite les trois quarts de la frustration liée aux fichiers non reconnus. La bonne nouvelle : la plupart des noms de fichiers compatibles avec Plex fonctionnent directement dans Jellyfin. Le piège : la flexibilité de Jellyfin signifie que tu peux créer des modèles de nommage valides qui fonctionnent pour une bibliothèque mais pas pour une autre, selon les fournisseurs que tu as activés.",
        "openSourceTitle": "Open source, scanner intégré",
        "openSourceModel": "Jellyfin est open source, auto-hébergé et gratuit pour toujours — pas de niveau premium, pas de télémétrie, pas de mur payant pour les plugins. Le scanneur fait partie du serveur lui-même, ce n'est pas un plugin séparé comme celui de Plex. Ça veut dire que les mises à jour de Jellyfin apportent des améliorations de nommage via le cycle de sortie régulier (actuellement quasi mensuel), et tu peux lire le code d'analyse exact sur GitHub si un patron de nommage te surprend.\n\nLe compromis par rapport à Plex : l'interface des métadonnées de Jellyfin est moins peaufinée, la configuration de l'accélération matérielle est plus manuelle, et quelques fonctionnalités de Plex (le DVR de Plex Pass, l'analyse sonique de Plexamp) n'ont pas d'équivalent direct. Pour le nommage, rien de tout ça n'a d'importance — tu obtiens les mêmes pipelines TMDB, TVDB, AniDB, MusicBrainz, OMDb que Plex utilise, juste configurés différemment.",
        "providersTitle": "Fournisseurs de métadonnées (pas des « agents »)",
        "providers": "Là où Plex a des « agents », Jellyfin a des « fournisseurs de métadonnées » configurés par bibliothèque. Quand tu crées une bibliothèque, tu choisis quels fournisseurs interroger et dans quel ordre. Pour les films, le défaut est TheMovieDB; tu peux ajouter OMDb, TVDb, ou aucun. Pour les séries télé, c'est TheMovieDB et TheTVDB, avec The Open Movie Database (OMDb) en solution de rechange. Pour les animes, tu peux ajouter AniDB et AniList directement (aucun plugin externe de style HAMA n'est requis).\n\nL'ordre des fournisseurs est important : Jellyfin les interroge de haut en bas et utilise la première correspondance réussie. Si TheMovieDB retourne la mauvaise série à cause d'une collision de titre, mettre TheTVDB en premier pourrait régler le problème. Cette configuration par bibliothèque est plus puissante que le choix d'agent codé en dur de Plex — et c'est le secret pour faire fonctionner les animes sans scanneurs tiers.",
        "fourRulesTitle": "Quatre règles qui corrigent la plupart des échecs de correspondance",
        "fourRules": "Quatre règles qui préviennent la grande majorité des problèmes de correspondance avec Jellyfin :\n\nRègle 1 — Utilise une structure d'un dossier par item. Les films dans leurs propres dossiers, les séries télé avec des sous-dossiers de saison explicites. Jellyfin scanne l'arborescence des dossiers pour comprendre les limites des items avant de lire les noms de fichiers.\n\nRègle 2 — Inclus l'année de sortie entre parenthèses pour les films, tout comme pour Plex : \"Title (YYYY)\". Le moteur de correspondance de Jellyfin utilise l'année de la même manière que celui de Plex.\n\nRègle 3 — Utilise le patron sXXeYY pour les épisodes. Jellyfin accepte plus de variantes que Plex (la doc en liste plus de 8 formats valides), mais sXXeYY en minuscules avec des zéros non significatifs est le plus sûr et le plus lisible.\n\nRègle 4 — En cas de doute, intègre l'ID du fournisseur dans le nom du dossier. Jellyfin supporte les suffixes \"[tmdbid-12345]\", \"[tvdbid-67890]\", \"[imdbid-tt1234567]\" qui forcent des correspondances exactes. Utilise-les chaque fois qu'un titre est ambigu.",
        "walkthroughLinkText": "renommage étape par étape"
      },
      "movies": {
        "h2": "Nommer les films pour Jellyfin",
        "intro": "Les films sont le type de média le plus simple pour Jellyfin. Le patron d'un dossier par film correspond à celui de Plex; l'année est obligatoire pour la désambiguïsation; les fichiers multi-versions sont supportés via une convention de nommage légèrement différente de celle de Plex. Si tu viens de Plex, il n'y a que trois différences mineures à retenir.",
        "folderStructureTitle": "Structure des dossiers",
        "folderStructure": "Chaque film se trouve dans son propre dossier, nommé \"Title (Year)\". Le fichier vidéo à l'intérieur répète ce nom exact. Les sous-titres, extras, affiches et bandes-annonces se trouvent à ses côtés.",
        "folderStructureExample": "Movies/\n├── Blade Runner (1982)/\n│   ├── Blade Runner (1982).mkv\n│   ├── Blade Runner (1982).en.srt\n│   ├── poster.jpg\n│   └── trailers/\n│       └── teaser.mp4\n├── Dune (2021)/\n│   └── Dune (2021).mkv\n└── The Matrix (1999)/\n    └── The Matrix (1999).mkv",
        "folderStructureNote": "Jellyfin lit d'abord le nom du dossier, puis le nom du fichier. Les garder identiques est le patron le plus propre et te permet de stocker des extras et des illustrations sans collisions de noms.",
        "yearTitle": "L'année est non négociable",
        "year": "L'année est non négociable pour la même raison que pour Plex : TheMovieDB retourne des correspondances de titres en double classées par popularité, et sans l'année, tu obtiens la version la plus populaire sur TMDB à ce jour.\n\nFormat : « Titre (YYYY) » avec l'année entre parenthèses. L'expression régulière (regex) de Jellyfin est permissive — elle accepte « Title.YYYY.mkv » et « Title YYYY.mkv » — mais ces formats ne fonctionnent pas lorsque les titres contiennent des chiffres (« 2001: A Space Odyssey », « 1917 »). Les parenthèses sont sans ambiguïté. Utilise-les toujours.",
        "multiVersionTitle": "Films en versions multiples",
        "multiVersionIntro": "Jellyfin prend en charge plusieurs versions d'un même film, fusionnées en une seule entrée dans la bibliothèque, similaire à Plex, mais avec une convention de nommage différente. La convention officielle de Jellyfin utilise des tirets et des étiquettes de version :",
        "multiVersionAExample": "Dune (2021)/\n├── Dune (2021) - 1080p.mkv\n└── Dune (2021) - 2160p.mkv",
        "multiVersionB": "Ou la structure avec des sous-dossiers, qui fonctionne de manière identique dans Jellyfin et est plus propre pour les bibliothèques avec de nombreuses éditions :",
        "multiVersionBExample": "Dune (2021)/\n├── 1080p/\n│   └── Dune (2021).mkv\n└── 2160p/\n    └── Dune (2021).mkv",
        "multiVersionOutcome": "Les deux fichiers apparaissent comme une seule fiche de film avec un sélecteur de version. Jellyfin sélectionne automatiquement le fichier de la plus haute qualité que le client peut lire directement; si aucun client ne peut lire le 4K HEVC, il se rabat sur la copie de plus basse résolution sans transcodage.",
        "editionsTitle": "Éditions (Director's Cut, Theatrical, Extended)",
        "editionsIntro": "Pour les versions du réalisateur (director's cuts), les versions cinéma (theatrical releases) et les versions longues (extended editions), Jellyfin prend en charge le suffixe « [edition-X] », qui diffère de la convention de Plex avec les accolades « {edition-X} ». Fais attention lors de la migration — la convention avec les accolades est ignorée silencieusement par Jellyfin :",
        "editionsExample": "Movies/\n├── Blade Runner (1982)/\n│   ├── Blade Runner (1982) [edition-Theatrical].mkv\n│   └── Blade Runner (1982) [edition-Final Cut].mkv\n└── Apocalypse Now (1979)/\n    ├── Apocalypse Now (1979) [edition-Theatrical].mkv\n    └── Apocalypse Now (1979) [edition-Redux].mkv",
        "editionsOutcome": "Chaque édition apparaît comme un film distinct dans la bibliothèque (non fusionné comme pour les versions multiples). Utilise cette méthode pour les montages avec des différences significatives de durée ou de contenu; utilise les versions multiples pour le même montage à différentes résolutions.",
        "extrasTitle": "Bandes-annonces, coulisses et extras",
        "extras": "Jellyfin traite les extras (bandes-annonces, coulisses, scènes supprimées, entrevues) comme du contenu de premier ordre. Place-les dans des sous-dossiers à l'intérieur du dossier du film en utilisant exactement ces noms : `trailers/`, `behind the scenes/`, `deleted scenes/`, `interviews/`, `featurettes/`, `scenes/`, `shorts/`. Les fichiers dans ces dossiers héritent des métadonnées du film et apparaissent dans le lecteur Jellyfin comme du contenu connexe.",
        "extrasExample": "Dune (2021)/\n├── Dune (2021).mkv\n├── trailers/\n│   ├── trailer-1.mp4\n│   └── trailer-2.mp4\n└── behind the scenes/\n    └── making-of.mp4",
        "extrasNote": "La même convention fonctionne pour les séries télé — les extras au niveau de la série vont dans des sous-dossiers d'extras à la racine de la série.",
        "mistakesTitle": "Erreurs causant la plupart des échecs de correspondance",
        "mistakes": "Les quatre erreurs qui causent la plupart des échecs de correspondance de films dans Jellyfin :\n\n1. Utiliser la syntaxe d'édition de Plex avec des accolades `{edition-X}`. Jellyfin l'ignore silencieusement — le suffixe est alors intégré au titre, ce qui brise la recherche.\n\n2. L'année est manquante pour un titre non unique. « Inception.mkv » est trouvé grâce à sa popularité; « Dune.mkv » choisira la version de Villeneuve de 2021 plutôt que le film de Lynch de 1984 100 % du temps sur TMDB.\n\n3. Une bibliothèque de fichiers uniques à la racine (sans dossier). Ça fonctionne pour la correspondance, mais ça empêche le support des extras, des affiches et des versions multiples.\n\n4. Mauvais encodage de caractères pour les titres non latins. Les caractères grecs, cyrilliques et japonais nécessitent un encodage de nom de fichier en UTF-8; certains vieux extracteurs de fichiers zip écrivent plutôt en Latin-1.",
        "examplesTitle": "Exemples concrets",
        "examples": "Movies/\n├── The Matrix (1999)/\n│   └── The Matrix (1999).mkv\n├── Dune (2021)/\n│   ├── Dune (2021) - 1080p.mkv\n│   └── Dune (2021) - 2160p.mkv\n├── Blade Runner (1982)/\n│   ├── Blade Runner (1982) [edition-Theatrical].mkv\n│   └── Blade Runner (1982) [edition-Final Cut].mkv\n├── 1917 (2019)/\n│   └── 1917 (2019).mkv\n└── Spirited Away (2001)/\n    ├── Spirited Away (2001).mkv\n    └── trailers/\n        └── trailer.mp4",
        "plexLinkText": "Équivalents pour Plex",
        "ctaSoft": "Tu as une bibliothèque Plex à convertir? Essaie le mode batch de RenameFlow."
      },
      "tvShows": {
        "h2": "Nommer les séries télé pour Jellyfin",
        "intro": "C'est avec les séries télé que la flexibilité de Jellyfin brille, mais aussi qu'elle déroute les nouveaux utilisateurs. Huit structures de nom de fichier valides sont acceptées par le scanner, ce qui semble génial jusqu'à ce que tu les mélanges dans le même dossier de série et que le moteur de correspondance choisisse la mauvaise. La solution est de choisir une seule structure et de l'appliquer de façon constante — sXXeYY en minuscules étant la seule qui soit universellement fiable.",
        "folderStructureTitle": "Structure des dossiers",
        "folderStructure": "Deux niveaux : un dossier pour la série, puis un dossier pour la saison. Comme pour Plex. Jellyfin ne groupera pas correctement les épisodes si tu aplatis la structure.",
        "folderStructureExample": "TV Shows/\n├── Breaking Bad (2008)/\n│   ├── Season 01/\n│   │   ├── Breaking Bad - s01e01 - Pilot.mkv\n│   │   └── Breaking Bad - s01e02 - Cat's in the Bag.mkv\n│   ├── Season 02/\n│   │   └── Breaking Bad - s02e01.mkv\n│   └── Specials/\n│       └── Breaking Bad - s00e01 - Behind the Scenes.mkv\n└── The Wire (2002)/\n    └── Season 01/\n        └── The Wire - s01e01.mkv",
        "folderStructureNote": "Format du dossier de la série : \"Title (Year)\". L'année permet de différencier les remakes (The Office UK 2001 vs US 2005, House of Cards UK 1990 vs US 2013). Format du dossier de saison : \"Season XX\" avec un zéro non significatif, ou \"Specials\" pour la saison 0.",
        "providerIdTitle": "Forcer une correspondance avec un fournisseur spécifique",
        "providerIdIntro": "Bonus : ajoute « [tmdbid-X] » ou « [tvdbid-Y] » au nom du dossier de la série. Jellyfin l'utilisera comme identifiant de recherche principal et ignorera la correspondance par titre :",
        "providerIdExample": "The Office (2005) [tmdbid-2316]/\n└── Season 01/\n    └── The Office - s01e01.mkv",
        "filenameTitle": "Structure du nom de fichier",
        "filenameFormat": "Le scanner de Jellyfin accepte ces structures de nom d'épisode :\n\n- `Show - s01e01.mkv` (minuscules, recommandé)\n- `Show - S01E01.mkv` (majuscules)\n- `Show - 1x01.mkv` (style croisé)\n- `Show.S01.E01.mkv` (séparé par des points)\n- `Show s01e01 Title.mkv` (sans tiret)\n- `Show 101.mkv` (compact — risqué)\n- `Show 1.01.mkv` (compact avec point — risqué)\n- `Show Season 1 Episode 1.mkv` (verbeux)\n\nChoisis-en une et tiens-t'y. Les formes « compactes » (Show 101) fonctionnent, mais échouent pour les séries avec plus de 100 épisodes par saison ou avec une numérotation absolue à trois chiffres. La structure sXXeYY en minuscules est la plus sûre et universelle.",
        "filenameExample": "Breaking Bad - s05e14 - Ozymandias.mkv",
        "filenameNote": "Tu peux ajouter un titre d'épisode pour faciliter la lecture. Le titre de l'épisode n'est pas utilisé pour la correspondance — le fournisseur de métadonnées de Jellyfin le remplace par le titre canonique de TVDB/TMDB.",
        "specialsTitle": "Specials, OVAs et extras par saison",
        "specials": "Les épisodes spéciaux (Specials), OVAs, épisodes « making-of » et extras liés à une saison vont dans un dossier « Specials » à la racine de la série, ou dans « Season 00 ». Jellyfin traite les deux de manière identique. À l'intérieur, nomme les fichiers s00e01, s00e02, en ordre.\n\nLes extras par saison (bandes-annonces, scènes supprimées) peuvent aussi se trouver dans des sous-dossiers d'extras à l'intérieur de leur dossier de saison parent, en utilisant les mêmes conventions que les extras de films (`trailers/`, `deleted scenes/`, etc.).",
        "dateBasedTitle": "Émissions quotidiennes basées sur la date",
        "dateBasedIntro": "Les émissions quotidiennes (talk-shows, nouvelles) sans numérotation de saison/épisode utilisent le format de date :",
        "dateBasedExample": "The Daily Show (1996)/\n└── Season 29/\n    └── The Daily Show - 2024-03-15.mkv",
        "dateBasedNote": "Format YYYY-MM-DD. Jellyfin fait la correspondance avec l'index de dates de TheTVDB pour les émissions quotidiennes — assure-toi que TheTVDB est activé comme fournisseur pour la bibliothèque.",
        "multiEpisodeTitle": "Fichiers multi-épisodes",
        "multiEpisodeIntro": "Pour les épisodes doubles dans un seul fichier :",
        "multiEpisodeExample": "Breaking Bad - s05e15-e16 - Granite State + Felina.mkv",
        "multiEpisodeNote": "Jellyfin crée un seul élément lisible qui correspond aux deux épisodes dans les métadonnées. La forme avec intervalle (`e15-e16`) est plus propre; la forme avec répétition complète (`s05e15-s05e16`) fonctionne aussi.",
        "miniSeriesTitle": "Mini-séries et séries limitées",
        "miniSeries": "Les mini-séries et séries limitées (Chernobyl, Band of Brothers, The Queen's Gambit) suivent le format standard avec « Season 01 » comme unique dossier de saison. Ne mets pas les épisodes directement à la racine de la série — le scanner de Jellyfin s'attend à trouver un dossier de saison même pour les séries d'une seule saison.",
        "failuresTitle": "Les échecs les plus courants pour les séries télé",
        "failures": "Les échecs d'association les plus courants pour les séries télé dans Jellyfin et leurs causes :\n\n— « Épisode non associé » mais la saison est correcte : le format du nom de fichier est malformé ou mélange les styles (s01E01 — E majuscule avec s minuscule). Standardise au format sXXeYY en minuscules.\n\n— Saison entière non associée : le dossier de la saison ne commence pas par « Season » (note l'espace). « S1 », « Season1 » et « s01 » ne correspondront pas.\n\n— Mauvaise série associée : l'année est manquante sur un titre qui a des homonymes. Ajoute `(AAAA)` au dossier de la série, ou utilise `[tmdbid-X]` pour une désambiguïsation absolue.\n\n— Épisodes répartis dans les mauvaises saisons : si tu as renommé des fichiers mais que Jellyfin affiche toujours les anciennes associations, force un rafraîchissement des métadonnées depuis le menu ⋯ de la série → « Rafraîchir les métadonnées » → « Remplacer toutes les métadonnées » → « Forcer ».\n\n— Épisodes spéciaux apparaissant dans la saison 1 : le fichier est à la racine de la série au lieu d'être dans le dossier « Specials/ » ou « Season 00/ ». Déplace le fichier.\n\n— Mini-série affichée comme un seul grand épisode : tous les épisodes sont à la racine de la série sans dossier de saison. Ajoute un dossier « Season 01/ » et déplace les fichiers dedans.",
        "examplesTitle": "Exemples concrets",
        "examples": "TV Shows/\n├── Breaking Bad (2008)/\n│   ├── Season 01/\n│   │   ├── Breaking Bad - s01e01 - Pilot.mkv\n│   │   └── Breaking Bad - s01e02 - Cat's in the Bag.mkv\n│   ├── Season 05/\n│   │   └── Breaking Bad - s05e15-e16 - Granite State + Felina.mkv\n│   └── Specials/\n│       └── Breaking Bad - s00e01 - No Half Measures.mkv\n├── The Office (2005) [tmdbid-2316]/\n│   └── Season 03/\n│       └── The Office - s03e12 - Back from Vacation.mkv\n├── Chernobyl (2019)/\n│   └── Season 01/\n│       └── Chernobyl - s01e01 - 1:23:45.mkv\n└── The Daily Show (1996)/\n    └── Season 29/\n        └── The Daily Show - 2024-03-15.mkv"
      },
      "anime": {
        "h2": "Nommer les animes pour Jellyfin (sans HAMA)",
        "intro": "C'est là que Jellyfin prend de l'avance sur Plex pour la plupart des utilisateurs. Plex nécessite le plugin communautaire HAMA pour gérer AniDB correctement — installation manuelle, mises à jour manuelles, et c'est fragile. Jellyfin intègre AniDB et AniList comme fournisseurs de métadonnées natifs que tu actives depuis les paramètres de la bibliothèque. Pas de scanners externes, pas de dossier de plugins GitHub, pas de permissions de plugin à accorder.",
        "providersTitle": "Fournisseurs natifs AniDB + AniList",
        "providers": "Pour une bibliothèque d'animes, crée une nouvelle bibliothèque de type « TV Shows » et dans la liste des fournisseurs de métadonnées :\n\n1. AniDB — le plus précis pour les séries à numérotation absolue (One Piece, Detective Conan, Bleach)\n2. AniList — secondaire, utile pour les shonen modernes et les animes saisonniers\n3. TheTVDB — en solution de rechange pour les séries avec de bonnes versions doublées en anglais\n4. TheMovieDB — en tout dernier recours, souvent erroné pour les animes\n\nMets AniDB en premier. La plupart des plaintes sur Reddit du type « Jellyfin anime not matching » proviennent du fait que TheMovieDB est priorisé par défaut.",
        "providersIdIntro": "Pour les séries dont le titre est ambigu (plusieurs animes partageant un nom à travers les décennies), force l'ID AniDB directement dans le nom du dossier :",
        "providersIdExample": "Anime/\n└── One Piece [anidbid-69]/\n    └── Season 01/",
        "providersIdNote": "Jellyfin lit `[anidbid-X]`, `[tvdbid-X]`, `[tmdbid-X]` dans le nom du dossier et les utilise comme identifiant de recherche canonique, ignorant complètement la correspondance approximative basée sur le titre. C'est l'équivalent Jellyfin le plus proche du scanner HAMA de Plex — et ça fonctionne sans aucune configuration.",
        "absoluteTitle": "Numérotation absolue (One Piece, Naruto)",
        "absoluteIntro": "Pour les séries à numérotation absolue (One Piece épisode 1064, Naruto Shippuden épisode 500), AniDB considère tout par défaut comme faisant partie de la saison 1. Nomme les fichiers en conséquence :",
        "absoluteExample": "One Piece [anidbid-69]/\n└── Season 01/\n    ├── One Piece - s01e0001.mkv\n    ├── One Piece - s01e0002.mkv\n    └── One Piece - s01e1064.mkv",
        "absoluteNote": "Le remplissage sur quatre chiffres (`e0001` au lieu de `e1`) n'est pas strictement nécessaire, mais il permet de conserver un ordre de tri des fichiers qui correspond à l'ordre de lecture — pratique quand tu navigues dans le dossier en dehors de Jellyfin.\n\nSi tu veux des divisions en saisons de style TVDB (One Piece divisé en 21+ arcs), retire l'ID AniDB et laisse le fournisseur TheTVDB prendre le relais. Choisis un modèle et reste cohérent pour toute la série.",
        "splitSeasonsTitle": "Saisons et « cours » divisés (Attack on Titan, Demon Slayer)",
        "splitSeasonsIntro": "Les animes modernes divisés en plusieurs « saisons » ou « cours » (Attack on Titan Final Season Parts 1/2/3, Demon Slayer Mugen Train arc vs Entertainment District arc) sont la source la plus fréquente de problèmes de type « wrong season matched ».\n\nLa solution est la même que pour Plex : décide quelle base de données correspond à ta représentation mentale de la série, définit l'ordre des fournisseurs en conséquence et utilise les ID au niveau du dossier pour forcer la correspondance :",
        "splitSeasonsExample": "Anime/\n├── Attack on Titan [anidbid-9541]/\n│   ├── Season 01/\n│   ├── Season 02/\n│   ├── Season 03/\n│   └── Season 04/                    ← Final Season partie 1\n├── Attack on Titan - Final Season Part 2 [anidbid-15689]/\n│   └── Season 01/                    ← séparé dans sa propre entrée AniDB\n└── Demon Slayer (2019)/\n    ├── Season 01/\n    ├── Season 02/                    ← Mugen Train + Entertainment District\n    └── Season 03/                    ← Swordsmith Village",
        "ovaTitle": "OVA et films d'animation",
        "ova": "Les OVA, les films d'animation liés à une série et les épisodes spéciaux vont tous dans « Specials » ou « Season 00 » avec une numérotation séquentielle. AniDB possède des métadonnées riches pour ceux-ci — la plupart des cas d'« OVA ambigus » de style Plex se résolvent correctement dans Jellyfin sans configuration supplémentaire.\n\nPour les films d'animation autonomes (Your Name, Spirited Away, Akira), mets-les dans ta bibliothèque de films (« Movies »), et non dans une bibliothèque de séries d'animation. Le fournisseur d'animes de Jellyfin gère mieux les films que son fournisseur de séries télé.",
        "subDubTitle": "Sous-titres vs doublage",
        "subDubIntro": "Comme Plex, Jellyfin peut stocker plusieurs pistes audio par fichier ou stocker des fichiers sous-titrés/doublés séparés en tant que versions multiples. Le modèle multi-version te permet de changer de version via le sélecteur de version :",
        "subDubExample": "Show - s01e01 - JPN.mkv\nShow - s01e01 - ENG.mkv\n\nOu utilise le modèle de suffixe de résolution avec la langue audio :\nShow - s01e01 - 1080p JPN.mkv\nShow - s01e01 - 1080p ENG.mkv",
        "subDubNote": "Un fichier unique avec plusieurs pistes audio intégrées est plus propre — Jellyfin lit les balises de langue audio du conteneur et te permet de choisir une piste dans l'interface du lecteur.",
        "examplesTitle": "Exemples concrets",
        "examples": "Anime/\n├── One Piece [anidbid-69]/\n│   └── Season 01/\n│       ├── One Piece - s01e0001.mkv\n│       └── One Piece - s01e1064.mkv\n├── Attack on Titan [anidbid-9541]/\n│   ├── Season 01/\n│   ├── Season 02/\n│   └── Specials/\n│       └── Attack on Titan - s00e01 - Ilse's Notebook.mkv\n└── Demon Slayer (2019)/\n    └── Season 02/\n        └── Demon Slayer - s02e01.mkv",
        "plexHamaLinkText": "Comparer avec Plex + HAMA"
      },
      "music": {
        "h2": "Nommer la musique pour Jellyfin",
        "intro": "La gestion de la musique par Jellyfin est l'une de ses plus grandes forces — intégration complète de MusicBrainz, analyse sonore pour les « mix instantanés » (similaire à Plexamp) et de bonnes applications Android/iOS. Côté nommage, les règles sont très similaires à celles de Plex, avec deux différences mineures dans la gestion des disques et le support de « Various Artists ».",
        "folderStructureTitle": "Structure des dossiers",
        "folderStructureIntro": "Artiste → Album → Piste, tout comme pour Plex :",
        "folderStructureExample": "Music/\n├── Pink Floyd/\n│   ├── The Dark Side of the Moon (1973)/\n│   │   ├── 01 - Speak to Me.flac\n│   │   └── 02 - Breathe.flac\n│   └── Wish You Were Here (1975)/\n│       └── 01 - Shine On You Crazy Diamond Pts. 1-5.flac\n└── Daft Punk/\n    └── Random Access Memories (2013)/\n        └── 01 - Give Life Back to Music.flac",
        "folderStructureNote": "Il est recommandé d'inclure l'année de l'album dans le nom du dossier. Les noms de fichiers des pistes commencent par un numéro de piste avec des zéros non significatifs, suivi d'un tiret et du titre.",
        "id3Title": "Les balises ID3 priment sur les noms de fichiers",
        "id3": "Jellyfin lit les balises ID3 avant les noms de fichiers, comme Plex. Balises requises : Artiste, Album, Titre, Numéro de piste. Fortement recommandées : Artiste de l'album (distinct de l'artiste de la piste sur les compilations), Année, Genre, Numéro de disque.\n\nRenomme les fichiers sans corriger les balises et Jellyfin se fiera quand même aux mauvaises balises. Le flux de travail le plus propre est : d'abord, corrige les balises avec MusicBrainz Picard ou Mp3tag, puis occupe-toi des noms de fichiers. Le mode musique de RenameFlow lit MusicBrainz pour suggérer des noms de fichiers, mais n'écrit pas de balises — utilise-le après un éditeur de balises.",
        "variousArtistsTitle": "Various Artists / compilations",
        "variousArtistsIntro": "Les compilations et les bandes sonores utilisent une balise d'artiste d'album « Various Artists », le même modèle que Plex :\n\nBalise ID3 : Artiste de l'album = « Various Artists »\nBalise ID3 : Artiste = (artiste de la piste individuelle)\n\nStructure des dossiers :",
        "variousArtistsExample": "Music/\n└── Various Artists/\n    └── Pulp Fiction Soundtrack (1994)/\n        ├── 01 - Misirlou - Dick Dale.flac\n        └── 02 - Royale with Cheese - John Travolta.flac",
        "variousArtistsNote": "Jellyfin affiche les compilations sous « Various Artists », mais chaque piste conserve le crédit de son véritable interprète.",
        "trackNumberingTitle": "Numérotation des pistes",
        "trackNumbering": "D'abord, le numéro de piste à deux chiffres avec zéros non significatifs, puis un tiret optionnel et le titre :\n\n01 - Track Title.flac\n\nOu simplement `01 Track Title.flac`. Les deux fonctionnent. Évite de mettre l'artiste dans chaque nom de fichier de piste — c'est redondant avec la hiérarchie des dossiers.",
        "multiDiscTitle": "Albums multi-disques",
        "multiDiscIntro": "Les albums multi-disques utilisent des sous-dossiers « Disc XX » entre l'album et les pistes, en plus de la balise ID3 « Disc Number » sur chaque fichier :",
        "multiDiscExample": "Music/\n└── Pink Floyd/\n    └── The Wall (1979)/\n        ├── Disc 01/\n        │   └── 01 - In the Flesh?.flac\n        └── Disc 02/\n            └── 01 - Hey You.flac",
        "multiDiscNote": "Jellyfin les fusionne en une vue d'album continue avec des séparateurs de disque. Sans la balise de disque, les pistes du disque 2 entrent en conflit avec celles du disque 1 (deux « 01 », deux « 02 », et le scanner en choisit une).",
        "examplesTitle": "Exemples concrets",
        "examples": "Music/\n├── Pink Floyd/\n│   ├── The Dark Side of the Moon (1973)/\n│   │   ├── 01 - Speak to Me.flac\n│   │   └── 10 - Eclipse.flac\n│   └── The Wall (1979)/\n│       ├── Disc 01/\n│       │   └── 01 - In the Flesh?.flac\n│       └── Disc 02/\n│           └── 01 - Hey You.flac\n└── Various Artists/\n    └── Pulp Fiction Soundtrack (1994)/\n        ├── 01 - Misirlou - Dick Dale.flac\n        └── 02 - Royale with Cheese.flac"
      },
      "migration": {
        "h2": "Migrer de Plex à Jellyfin",
        "intro": "Si tu passes de Plex à Jellyfin (fatigue des abonnements, inquiétudes sur la télémétrie, ou simplement pour avoir plus de contrôle), la bonne nouvelle, c'est qu'environ 80 % de tes noms de fichiers compatibles avec Plex fonctionnent dans Jellyfin sans changement. Le 20 % restant — éditions, animes et quelques cas particuliers — nécessite des renommages ciblés. Cette section est la liste de vérification complète.",
        "namingCompatibilityTitle": "Ce qui est conservé, ce qui ne l'est pas",
        "namingCompatibility": "Ce qui est transféré sans changement de Plex à Jellyfin :\n\n- Nommage des dossiers de films : « Title (Year)/Title (Year).mkv » fonctionne de manière identique.\n- Nommage des dossiers de séries télé : « Show (Year)/Season XX/Show - sXXeYY.mkv » fonctionne de manière identique.\n- Suffixe de résolution pour les multi-versions : « Title (Year) - 1080p.mkv » fonctionne pour les deux.\n- Musique : La structure Artiste/Album/Piste est transférée sans changement.\n- Gestion des épisodes spéciaux et de la « Saison 00 » : même logique.\n- Émissions quotidiennes basées sur la date (YYYY-MM-DD) : même format.\n\nCe que tu dois renommer :\n\n- Éditions de films : Plex utilise `{edition-X}` (accolades), Jellyfin utilise `[edition-X]` (crochets). Fais un rechercher-remplacer dans ta bibliothèque de films.\n- Bibliothèques d'animes basées sur le scanner HAMA de Plex : supprime les balises spécifiques à HAMA et réactive AniDB comme fournisseur de métadonnées dans la nouvelle bibliothèque Jellyfin. Les ID de dossier `[anidbid-X]` sont conservés et fonctionnent directement.\n- ID de fournisseur dans les noms de dossiers : le raccourci `[tmdb-X]` de Plex devient `[tmdbid-X]` dans Jellyfin (note le suffixe `id`). Idem pour tvdbid, imdbid, anidbid.",
        "watchedStatusTitle": "Migration du statut de visionnement",
        "watchedStatus": "Le statut de visionnement ne migre pas automatiquement — Plex le stocke dans sa propre base de données, pas dans les fichiers. Trois options s'offrent à toi :\n\nOption 1 — Plex Watched History Importer (plugin communautaire pour Jellyfin). Lit l'exportation de la base de données de Plex et importe les marqueurs de visionnement par utilisateur. Ça fonctionne, mais Plex doit rester en marche assez longtemps pour faire l'exportation.\n\nOption 2 — Synchronisation Trakt.tv. Si tu faisais déjà du scrobbling vers Trakt depuis Plex (via le plugin Trakt), active aussi la synchronisation Trakt dans Jellyfin. Ton historique de visionnement sera transféré en utilisant Trakt comme pont.\n\nOption 3 — Accepter la perte et repartir à neuf. Pour les bibliothèques de moins de quelques centaines d'éléments, c'est souvent la solution la plus simple.\n\nPour les familles avec plusieurs utilisateurs, la synchronisation Trakt est la plus fiable.",
        "plexPassFeaturesTitle": "Fonctionnalités Plex Pass sans équivalent direct",
        "plexPassFeatures": "Certaines fonctionnalités de Plex Pass n'ont pas d'équivalent direct dans Jellyfin. Sache-le avant de migrer :\n\n- DVR / TV en direct : Jellyfin offre la TV en direct via des syntoniseurs (HDHomeRun, clés USB), mais l'interface de programmation du DVR est plus rudimentaire que celle de Plex.\n- Analyse sonique de Plexamp : Jellyfin a une détection de base de l'ambiance/genre, mais pas de similarité par empreinte sonique (sonic-fingerprint). Symfonium ou Manet sur mobile sont de bons clients de type Plexamp.\n- Saut d'intro exclusif à Plex Pass : Jellyfin a des plugins communautaires pour ça (Jellyscrub, Intro Skipper) — à installer séparément.\n- Synchro mobile Plex : Les applications mobiles de Jellyfin supportent la synchro, mais elle est moins peaufinée que celle de Plex.\n- Tone Mapping / Transcodage avec accélération matérielle de Plex : Jellyfin supporte les principales formes d'accélération matérielle, mais nécessite une configuration manuelle pour chaque plateforme.\n\nCe ne sont pas des problèmes de nommage, mais ça influence la décision de migrer ou non. Aucun de ces points ne bloque une migration propre de la bibliothèque elle-même.",
        "whenTitle": "Quand migrer (et quand rester)",
        "when": "Tu es un bon candidat pour la migration si :\n- L'augmentation du prix de Plex Pass a changé ton calcul (250 $ à vie vs Jellyfin gratuit pour toujours).\n- Tu veux que ton historique de visionnement reste privé, sans télémétrie.\n- Tu utilises Linux/BSD/unRAID et préfères apt/Docker aux paquets officiels de Plex.\n- Tu n'as pas besoin de la programmation DVR pour la TV en direct.\n- Ça ne te dérange pas de passer un après-midi à configurer l'accélération matérielle.\n\nTu devrais rester sur Plex si :\n- Les membres de ta famille comptent sur la synchro mobile de Plex.\n- Tu dépends des outils de découverte peaufinés de Plex (Universal Watchlist, recommandations).\n- Le DVR est ton cas d'utilisation principal.\n- Tu préfères payer une fois pour un produit peaufiné plutôt que de t'auto-héberger.\n\nLa migration des noms elle-même est une affaire de 30 minutes pour la plupart des bibliothèques — la conversion éditoriale (`{edition}` → `[edition]`) est un simple rechercher-remplacer à faire une seule fois. Utilise le mode batch de RenameFlow pour l'automatiser.",
        "examplesTitle": "Avant / après",
        "examples": "Avant (Plex) :\nMovies/Blade Runner (1982)/Blade Runner (1982) - {edition-Final Cut}.mkv\nTV/The Office (2005)/Season 03/The Office - s03e12 - Back from Vacation.mkv\nAnime [HAMA]/One Piece [anidb-69]/Season 01/One Piece - s01e1064.mkv\n\nAprès (Jellyfin) :\nMovies/Blade Runner (1982)/Blade Runner (1982) [edition-Final Cut].mkv\nTV/The Office (2005)/Season 03/The Office - s03e12 - Back from Vacation.mkv\nAnime/One Piece [anidbid-69]/Season 01/One Piece - s01e1064.mkv\n\nTrois changements : les accolades deviennent des crochets pour l'édition du film, on enlève le dossier préfixé HAMA, et on renomme `[anidb-X]` en `[anidbid-X]`.",
        "filebotLinkText": "Utilisateurs de FileBot venant de Plex"
      },
      "troubleshooting": {
        "h2": "Dépannage du nommage pour Jellyfin",
        "intro": "Six types d'échecs couvrent environ 85 % des problèmes de nommage sur Jellyfin. Chacun a une cause prévisible et une solution claire.",
        "causesLabel": "Causes probables",
        "stepsLabel": "Étapes de correction",
        "items": [
          {
            "problem": "Le film est affiché comme non identifié",
            "causes": [
              "Année manquante ou dans le mauvais format (crochets au lieu de parenthèses)",
              "Étiquette d'édition en accolades {edition-X} de Plex copiée sans conversion",
              "Fichier de film à la racine de la bibliothèque, sans dossier",
              "Caractères spéciaux d'une version de la scène ('BluRay.x264-SPARKS') qui nuisent à l'analyseur pour certains titres rares"
            ],
            "steps": [
              "Ajoute (AAAA) entre parenthèses juste après le titre dans le dossier et le nom de fichier",
              "Convertis {edition-X} en [edition-X] (accolades → crochets)",
              "Déplace le fichier dans un dossier nommé exactement comme le fichier",
              "Depuis le tableau de bord Jellyfin → Bibliothèque → Modifier les métadonnées du film → Identifier → recherche directement par l'ID TMDB"
            ]
          },
          {
            "problem": "Mauvaise série télé identifiée",
            "causes": [
              "Collision de titres (The Office UK vs US, House of Cards UK vs US, etc.)",
              "Fournisseurs de métadonnées dans le mauvais ordre — TheMovieDB retourne la variante la plus populaire"
            ],
            "steps": [
              "Ajoute (Année) au dossier de la série",
              "Force l'identification : ajoute [tmdbid-X] ou [tvdbid-X] au nom du dossier de la série",
              "Paramètres de la bibliothèque → Fournisseurs de métadonnées → réorganise TheTVDB au-dessus de TheMovieDB si tu as affaire à une série avec une forte identité dans les bases de données télé"
            ]
          },
          {
            "problem": "Les épisodes ne sont pas reconnus même si la série est correcte",
            "causes": [
              "Patrons de noms de fichiers mélangés dans la même saison (certains s01e01, d'autres S01E01, d'autres 1x01)",
              "'s' minuscule avec 'E' majuscule (s01E01) — Jellyfin le reconnaît mais ça cause des problèmes dans certains cas",
              "Le titre de l'épisode contient des caractères qui ressemblent à des marqueurs d'épisode (chiffres, x)"
            ],
            "steps": [
              "Standardise tous les fichiers d'épisodes d'une saison avec un seul patron. Le format sXXeYY en minuscules est le plus sûr",
              "Utilise un outil de renommage par lot (batch) pour normaliser toute la saison d'un coup",
              "Si un épisode spécifique pose encore problème, ajoute le titre de l'épisode clairement séparé : 'Série - s01e01 - Titre.mkv'"
            ]
          },
          {
            "problem": "Anime divisé en mauvaises saisons",
            "causes": [
              "AniDB n'est pas activé comme fournisseur de métadonnées sur la bibliothèque d'animes",
              "TheMovieDB fournit des divisions de saisons qui ne correspondent pas à la structure canonique d'AniDB",
              "L'ID [anidbid-X] est manquant dans le nom du dossier"
            ],
            "steps": [
              "Paramètres de la bibliothèque → Fournisseurs de métadonnées → active AniDB, déplace-le en haut de la liste",
              "Ajoute [anidbid-X] au nom du dossier de la série (trouve l'ID sur anidb.net)",
              "Actualiser les métadonnées : ⋯ → 'Actualiser les métadonnées' → 'Remplacer toutes les métadonnées' → 'Forcer'"
            ]
          },
          {
            "problem": "L'analyse de la bibliothèque se termine, mais la bibliothèque est vide",
            "causes": [
              "Le serveur Jellyfin n'a pas la permission de lecture sur le dossier de la bibliothèque",
              "Partage réseau démonté ou chemin d'accès modifié",
              "Mauvais type de bibliothèque (créée comme 'Films' mais pointant vers un dossier de séries télé)"
            ],
            "steps": [
              "Vérifie que l'utilisateur du système d'exploitation de Jellyfin a au moins la permission de lecture et d'exécution sur le chemin d'accès",
              "Tableau de bord → Bibliothèques → vérifie que le chemin est toujours accessible, remonte le partage réseau si nécessaire",
              "Vérifie que le type de bibliothèque correspond au contenu. Recréer la bibliothèque est plus rapide que de corriger le type"
            ]
          },
          {
            "problem": "Les métadonnées semblent incorrectes (affiche, résumé, liste d'épisodes)",
            "causes": [
              "Des métadonnées en cache d'une ancienne mauvaise identification s'affichent encore",
              "Le fournisseur a retourné des données partielles et Jellyfin a comblé les vides avec des données de secours en cache",
              "Champ verrouillé — modifié manuellement, puis supposé se mettre à jour automatiquement plus tard"
            ],
            "steps": [
              "Série/Film ⋯ → 'Actualiser les métadonnées' → 'Remplacer toutes les métadonnées' → 'Forcer'. Remplace l'entrée à partir de zéro",
              "Déverrouille les champs que tu as précédemment verrouillés : Modifier les métadonnées → icône du champ → déverrouiller",
              "Si c'est toujours incorrect : 'Identifier' → recherche manuellement et choisis la bonne entrée TMDB/TVDB"
            ]
          }
        ]
      },
      "faster": {
        "h2": "L'alternative en 60 secondes",
        "intro": "Tout ce qui précède est la méthode manuelle : comprendre les patrons, taper les noms de fichiers, corriger les cas particuliers. Ça vaut la peine une fois pour une nouvelle bibliothèque. C'est pénible pour une migration de Plex avec 2 000 fichiers à convertir.",
        "manualWayTitle": "La méthode manuelle",
        "manualWay": "À la main, une conversion de nommage de Plex à Jellyfin prend environ 30 secondes par item si tu es discipliné — trouver-remplacer la syntaxe d'édition, vérifier les ID de dossiers d'animes, corriger les marqueurs d'épisodes en format compact. Une bibliothèque de 2 000 fichiers, c'est plus de 16 heures de saisie minutieuse.",
        "oneSixtySecondWayTitle": "La méthode en 60 secondes",
        "oneSixtySecondWay": "RenameFlow fait la conversion en quelques secondes. Glisse le dossier nommé pour Plex, le parser détecte la convention existante, suggère l'équivalent compatible Jellyfin, et renomme localement après confirmation. Pas d'upload — les fichiers restent sur ton disque via l'API File System Access. Gratuit jusqu'à 15 fichiers par jour ; 49 € à vie pour toute la bibliothèque en une seule passe.\n\nPour une nouvelle bibliothèque Jellyfin partant de releases scene brutes (sans nommage Plex à convertir), RenameFlow interroge TheMovieDB, TheTVDB, AniList et MusicBrainz en parallèle et produit directement la convention compatible Jellyfin — en respectant les règles exactes de ce guide.",
        "pricingLinkText": "Forfaits RenameFlow",
        "cta": "Gratuit : 15 fichiers/jour, compte gratuit en 30 secondes, aucun upload."
      },
      "faq": {
        "h2": "Nommage pour Jellyfin — Foire aux questions",
        "seeAllLinkText": "Voir toutes les FAQ de RenameFlow",
        "items": [
          {
            "question": "La convention de nommage de Jellyfin est-elle compatible avec Plex?",
            "answer": "Oui, à environ 80 %. La structure des dossiers, l'année des films, les patrons sXXeYY pour les séries télé, Artiste/Album/Piste pour la musique — tout est identique. Les principales différences sont : les éditions de films utilisent des crochets [edition-X] dans Jellyfin au lieu d'accolades {edition-X} dans Plex; les identifiants de fournisseur utilisent le suffixe 'id' (tmdbid, tvdbid, anidbid) dans Jellyfin; et les animes utilisent le fournisseur natif AniDB de Jellyfin au lieu du plugin HAMA. Prévois environ 30 minutes de travail de recherche et remplacement pour une migration typique."
          },
          {
            "question": "As-tu besoin de HAMA pour les animes dans Jellyfin?",
            "answer": "Non. Jellyfin inclut AniDB et AniList comme fournisseurs de métadonnées natifs — tu n'as qu'à les activer dans les paramètres de la bibliothèque. La syntaxe d'ID de dossier [anidbid-X] fonctionne sans configuration. C'est l'un des plus grands avantages de Jellyfin par rapport à Plex pour les bibliothèques d'animes."
          },
          {
            "question": "Pourquoi Jellyfin associe la mauvaise version des films en double?",
            "answer": "Pour la même raison que Plex : TheMovieDB retourne les correspondances classées par popularité. Corrige ça en ajoutant l'année entre parenthèses '(YYYY)' au nom du dossier et du fichier. Pour les cas récalcitrants, force la correspondance avec '[tmdbid-X]' dans le nom du dossier."
          },
          {
            "question": "Quel est le patron de nom de fichier le plus sûr pour les épisodes de séries télé dans Jellyfin?",
            "answer": "En minuscules, avec des zéros de remplissage : sXXeYY. Exemple : 'Show - s01e01 - Title.mkv'. Jellyfin accepte plus de 8 variations, mais les mélanger au sein d'une même série est la cause la plus fréquente d'échecs de correspondance pour une partie de la saison."
          },
          {
            "question": "Peux-tu utiliser Jellyfin et Plex sur le même dossier de bibliothèque?",
            "answer": "Oui, tant que le nommage fonctionne pour les deux. La structure de dossiers compatible avec Plex fonctionne dans Jellyfin pour les films, les séries télé et la musique. Les éditions de films sont la seule exception — choisis la syntaxe du serveur que tu utilises le plus, et accepte que l'autre affiche une étiquette d'édition incorrecte (ou générique)."
          },
          {
            "question": "Est-ce que Jellyfin prend en charge le 4K HDR et le Dolby Vision comme Plex?",
            "answer": "Oui pour le HDR10 (la plupart des clients). Le support Dolby Vision dépend du client — le serveur Jellyfin gère bien le fichier, mais la lecture DV nécessite un client qui supporte le profil DV de ton fichier (profil 5, 7, 8). La plupart des clients modernes supportent le profil DV 8.1. Côté nommage, utilise simplement les versions multiples avec le suffixe de résolution et Jellyfin gère automatiquement la sélection du client."
          },
          {
            "question": "Pourquoi mes scans sur Jellyfin sont-ils si lents comparés à Plex?",
            "answer": "Deux raisons principales : des fournisseurs de métadonnées bavards (surtout TheTVDB) et l'étape d'extraction des chapitres lors du premier scan. Accélère le processus en désactivant l'extraction des chapitres dans les paramètres de la bibliothèque (tu peux la réactiver sur demande pour des séries spécifiques), en réduisant le nombre de fournisseurs activés (un principal + un de secours suffisent), et en lançant les scans pendant les heures creuses. La plupart des bibliothèques atteignent une vitesse raisonnable après le premier scan complet."
          },
          {
            "question": "Peux-tu automatiser le nommage des nouveaux téléchargements pour Jellyfin?",
            "answer": "Oui, deux approches. Pour les chaînes automatisées : Sonarr + Radarr pré-nomment les fichiers avant qu'ils n'arrivent dans ta bibliothèque — configure la convention de nommage de Sonarr pour qu'elle corresponde aux modèles Jellyfin de ce guide. Pour une révision manuelle : utilise RenameFlow comme outil de traitement par lots lors de l'importation — il interroge les mêmes metadata providers que Jellyfin (TMDB, TVDB, AniList, MusicBrainz) et produit des noms de fichiers conformes à Jellyfin."
          }
        ]
      },
      "related": {
        "h2": "À lire aussi",
        "items": [
          {
            "title": "Guide de nommage pour Plex (les équivalents)",
            "href": "/plex-naming-guide"
          },
          {
            "title": "Guide pas à pas pour renommer tes fichiers",
            "href": "/how-to-rename"
          },
          {
            "title": "RenameFlow vs FileBot, TinyMediaManager et autres",
            "href": "/alternatives"
          },
          {
            "title": "Toutes les FAQ de RenameFlow",
            "href": "/faq"
          }
        ]
      },
      "externalLinks": {
        "jellyfinMovies": "Nommage des films pour Jellyfin (officiel)",
        "jellyfinShows": "Nommage des séries pour Jellyfin (officiel)",
        "jellyfinMusic": "Nommage de la musique pour Jellyfin (officiel)",
        "jellyfinExtras": "Extras pour Jellyfin (officiel)",
        "jellyfinGithub": "Jellyfin sur GitHub"
      },
      "howTo": {
        "name": "Comment nommer les fichiers de films pour Jellyfin",
        "description": "La méthode, étape par étape, pour nommer tes fichiers de films afin que le scanner de Jellyfin les reconnaisse du premier coup.",
        "step1": {
          "name": "Crée un dossier par film",
          "text": "Chaque film a son propre dossier, nommé « Titre (Année) », par exemple « Blade Runner (1982) ». Le fichier vidéo à l'intérieur reprend exactement ce nom."
        },
        "step2": {
          "name": "Ajoute l'année de sortie entre parenthèses",
          "text": "Jellyfin utilise TMDB et départage les titres identiques grâce à l'année. Utilise toujours des parenthèses : « Dune (2021) »."
        },
        "step3": {
          "name": "Utilise [edition-X] pour les montages, un tiret + un libellé pour les résolutions",
          "text": "Les director's cuts s'écrivent [edition-Final Cut], entre crochets (et non entre accolades comme sur Plex). Pour plusieurs résolutions, place des fichiers « Titre (Année) - 1080p.mkv » côte à côte dans le même dossier."
        },
        "step4": {
          "name": "Lance une analyse de la bibliothèque Jellyfin",
          "text": "Tableau de bord → Médiathèques → ⋯ → « Scan library ». Pour forcer une nouvelle identification complète d'un élément bloqué : ⋯ → « Refresh metadata » → « Replace all metadata » → « Force »."
        }
      }
    },
    "kodi": {
      "seoTitle": "Guide Kodi 2026 : Films, Séries et NFO",
      "seoDescription": "Maîtrise le nommage Kodi pour les films, séries, anime, musique et fichiers NFO. Résous les problèmes de scan et organise ta bibliothèque rapidement.",
      "keywords": "convention de nommage kodi, nommage de fichiers kodi, nommage séries kodi, nommage films kodi, kodi anime, fichiers nfo kodi, bibliothèque kodi ne scanne pas",
      "h1": "Guide de nommage Kodi : Films, Séries télé, Anime, Musique & Fichiers NFO (2026)",
      "readingTime": "Lecture d'environ 12 min",
      "trust": {
        "updated": "Mis à jour en 2026",
        "crossRef": "Contre-vérifié avec le wiki de Kodi 21 (Omega)",
        "builtBy": "Créé par l'équipe derrière RenameFlow"
      },
      "guidesHub": {
        "cardTitle": "Guide de nommage Kodi",
        "cardDesc": "Référence complète pour nommer les films, séries, animes et musique pour Kodi — plus une analyse en profondeur des fichiers NFO, des scrapers et du dépannage de bibliothèque.",
        "cardBadge": "Nouveau"
      },
      "intro": {
        "lead": "Kodi est reconnu pour sa flexibilité dans le nommage des fichiers — et c'est précisément pourquoi tant de bibliothèques plantent. Le scanneur accepte une douzaine de patrons valides, mais les applique de manière inconstante selon les scrapers. Choisis le bon patron pour ton scraper et Kodi trouvera les affiches, les résumés et les titres d'épisodes en quelques secondes. Trompe-toi, et tu fixeras un message « aucune information trouvée » pendant des heures.",
        "problem": "Ce guide est la référence pratique qu'on aurait aimé avoir en configurant notre première bibliothèque Kodi — chaque type de média, chaque bizarrerie de scraper, le système de fichiers NFO qui te permet de contourner complètement les scrapers, et les étapes de dépannage quand la bibliothèque refuse de scanner. Les exemples suivent le wiki officiel de Kodi et sont vérifiés avec le comportement de Kodi 21 (Omega), avec des notes pour les versions antérieures Kodi 20 (Nexus) et plus vieilles.",
        "promise": "À la fin, tu auras une bibliothèque Kodi qui se scanne proprement du premier coup — que tu partes de zéro, que tu répares un fouillis existant, ou que tu arrives de Plex ou Jellyfin en te demandant pourquoi « les patrons que j'ai toujours utilisés » ont soudainement cessé de fonctionner.",
        "heroCta": "Évite le travail manuel — renomme un dossier en quelques secondes"
      },
      "toc": {
        "fundamentals": "Les bases",
        "movies": "Films",
        "tvShows": "Séries télé",
        "anime": "Anime (scraper Hama)",
        "music": "Musique",
        "nfo": "Fichiers NFO",
        "troubleshooting": "Dépannage",
        "faster": "L'alternative de 60 secondes",
        "faq": "FAQ"
      },
      "fundamentals": {
        "h2": "Les bases du nommage Kodi",
        "intro": "Trois concepts sur la façon dont Kodi scanne diffèrent assez de Plex et Jellyfin pour mériter leur propre explication. Saute cette section et tu continueras de rencontrer les trois mêmes problèmes : mauvais scraper pour ta bibliothèque, type de contenu mal configuré, et des fichiers NFO inattendus qui écrasent tes résultats de scrape.",
        "scrapersTitle": "Scrapers, pas des agents",
        "scrapersVsAgents": "Là où Plex a des « agents » et Jellyfin des « fournisseurs de métadonnées », Kodi a des « scrapers » — des add-ons maintenus par la communauté qui interrogent des bases de données spécifiques. Les scrapers par défaut sont The Movie Database pour les films, The Movie Database ou The TVDB pour les séries télé, et le Universal Album Scraper pour la musique. L'anime est la grande exception : Kodi n'a pas de scraper d'anime intégré, donc les utilisateurs installent des add-ons communautaires comme Hama (le même utilisé dans Plex) pour l'intégration avec AniDB.\n\nLe choix du scraper se fait par source, pas par bibliothèque. Ouvre une source vidéo Kodi dans l'explorateur de fichiers, modifie-la et choisis « Définir le contenu » pour assigner un scraper. La même source peut être analysée par différents add-ons sur plusieurs appareils Kodi sur le même réseau — c'est l'une des raisons pour lesquelles la situation « mon Kodi fonctionne mais pas celui de mon ami » est si fréquente.",
        "sourcesTitle": "Sources de bibliothèque et types de contenu",
        "librarySources": "La bibliothèque de Kodi est construite à partir de « sources » que tu ajoutes manuellement — des dossiers, des partages réseau ou des chemins d'accès distants. Quand tu ajoutes une source, tu indiques à Kodi quel type de contenu elle contient (Films, Séries télé, Vidéoclips, Musique, Aucun) et quel scraper utiliser pour ce contenu. Mélanger les types de contenu dans une seule source est une cause fréquente de fichiers non correspondants : un dossier contenant à la fois des films et des séries télé ne peut être analysé que comme l'un ou l'autre.\n\nLa solution est de séparer le contenu mixte dans des dossiers de premier niveau distincts, chacun étant sa propre source, avec son propre type de contenu. C'est plus rigide que la détection de bibliothèque par dossier de Plex, mais plus prévisible une fois que tu t'engages à respecter la structure.",
        "fourRulesTitle": "Quatre règles pour éviter 90 % des problèmes",
        "fourRules": "Quatre règles qui préviennent la grande majorité des échecs d'analyse de Kodi :\n\nRule 1 — Un seul type de contenu par source. Ne mélange pas les films et les séries télé dans un même dossier que Kodi analyse comme « Films ».\n\nRule 2 — Définis le type de contenu et le scraper AVANT la première analyse. Les modifier plus tard nécessite un « Rafraîchissement » et parfois une suppression complète de la base de données pour nettoyer les anciennes correspondances erronées.\n\nRule 3 — Utilise sXXeYY pour les épisodes de séries télé, en minuscules et avec des zéros non significatifs. Kodi accepte plus de variantes que Plex, mais des motifs prévisibles évitent les cas limites des scrapers.\n\nRule 4 — Quand un scraper échoue de façon répétée sur un élément spécifique, dépose un fichier NFO à côté. Les fichiers NFO remplacent complètement les scrapers — c'est la porte de sortie de Kodi.",
        "walkthroughLinkText": "guide étape par étape"
      },
      "movies": {
        "h2": "Nommer les films pour Kodi",
        "intro": "Kodi accepte deux structures valides pour les films : un dossier par film et une structure à plat. La structure par dossier est recommandée pour les mêmes raisons que pour Plex et Jellyfin (extras, affiches, fichiers NFO), plus une fonctionnalité spécifique à Kodi : les films en plusieurs parties empilées (« stacked »), que Kodi gère nativement, contrairement à Plex et Jellyfin.",
        "folderStructureTitle": "Structure de dossiers recommandée",
        "folderStructureIntro": "La structure de dossiers recommandée :",
        "folderStructureExample": "Movies/\n├── Blade Runner (1982)/\n│   ├── Blade Runner (1982).mkv\n│   ├── Blade Runner (1982).en.srt\n│   ├── movie.nfo\n│   ├── poster.jpg\n│   └── fanart.jpg\n├── Dune (2021)/\n│   └── Dune (2021).mkv\n└── The Matrix (1999)/\n    └── The Matrix (1999).mkv",
        "folderStructureNote": "Le nom du fichier correspond au nom du dossier. Les fichiers d'illustrations utilisent les noms d'illustrations locales de Kodi : poster.jpg, fanart.jpg, clearart.png, landscape.jpg. Les sous-titres suivent la convention Titre (Année).en.srt, .fr.srt, etc. — Kodi lit le code de langue à partir du suffixe séparé par un point.",
        "yearTitle": "Le suffixe (Année) n'est pas optionnel",
        "year": "L'année entre parenthèses n'est pas négociable pour les mêmes raisons que pour Plex et Jellyfin : TheMovieDB retourne les correspondances de titres en double classées par popularité, et Kodi choisira silencieusement la mauvaise. Format : Titre (AAAA). Les crochets [AAAA], les points Titre.AAAA et les années seules fonctionnent avec certains scrapers mais pas avec d'autres — les parenthèses sont universelles.\n\nPour les films complètement absents de TMDB (films d'art et d'essai rares, sorties régionales), un fichier NFO avec un ID TMDB manuel est la seule solution fiable. Consulte la section NFO ci-dessous.",
        "stackedTitle": "Films en plusieurs parties empilées (« stacked ») (Kodi seulement)",
        "stackedIntro": "Kodi a un support natif pour les films en plusieurs parties stockés dans des fichiers séparés — une fonctionnalité de l'ère du rip de DVD qui est encore utile pour les films très longs (LotR Extended, Once Upon a Time in America) répartis sur plusieurs disques. Utilise les motifs de suffixe cd1 / cd2 / partN / dvdN :",
        "stackedExample": "Movies/\n└── Lord of the Rings - The Fellowship of the Ring (2001)/\n    ├── Lord of the Rings - The Fellowship of the Ring (2001) - cd1.mkv\n    └── Lord of the Rings - The Fellowship of the Ring (2001) - cd2.mkv",
        "stackedNote": "Kodi les lit l'un après l'autre comme un seul film et les indexe comme une seule entrée dans la bibliothèque. Le modèle de correspondance est insensible à la casse et accepte cd, part, dvd, pt et quelques autres — mais cd1/cd2 est la méthode la plus sûre et la mieux documentée.",
        "multiVersionTitle": "Versions multiples du même film",
        "multiVersion": "Kodi n'a pas la fonction de fusion multi-version offerte par Plex et Jellyfin — tu ne peux pas stocker une version 1080p et une version 4K sous une seule entrée de bibliothèque et laisser Kodi choisir la bonne pour le client. Chaque fichier devient sa propre entrée dans la bibliothèque. Deux solutions de rechange :\n\nApproche 1 — Garde une version par film dans la bibliothèque de Kodi et stocke les autres versions hors de la source indexée. Change manuellement la source de la bibliothèque quand tu veux l'autre qualité.\n\nApproche 2 — Sépare en deux bibliothèques (Movies-1080p, Movies-4K) avec deux sources. Utilise les profils Kodi ou les raccourcis de l'habillage pour passer de l'une à l'autre. C'est plus de travail, mais ça permet à toutes les versions de coexister dans la même installation de Kodi.\n\nSi le multi-version est central à ton flux de travail, c'est le domaine où Plex et Jellyfin sont objectivement plus performants.",
        "setsTitle": "Sagas de films et collections",
        "sets": "Kodi prend en charge les sagas de films (parfois appelées « collections ») — Star Wars, Marvel Cinematic Universe, Lord of the Rings — regroupant les films sous un seul nœud de collection navigable. Les sagas sont peuplées automatiquement à partir des données de collection de TMDB pour les films qui en font partie. Aucun changement de nom n'est requis; Kodi lit l'ID de la collection à partir des métadonnées TMDB indexées.\n\nPour les sagas personnalisées (ton propre regroupement qui n'est pas sur TMDB), utilise un fichier NFO au niveau du film avec une balise <set> pointant vers un nom de saga personnalisé.",
        "mistakesTitle": "Quatre erreurs qui expliquent la plupart des échecs d'indexation",
        "mistakes": "1. Type de contenu de la source réglé sur « Aucun » ou sur le mauvais type. Sans type de contenu, Kodi ne l'analyse pas du tout comme des films.\n\n2. Année manquante ou entre crochets. « Inception 2010.mkv » fonctionne par chance; « Inception [2010].mkv » échoue avec le scraper de TMDB.\n\n3. Fichier de film à la racine de la source sans dossier. Ça fonctionne pour la correspondance, mais ça brise les pochettes, les NFO et les fonctions de fichiers en plusieurs parties.\n\n4. Entrées obsolètes d'une mauvaise indexation précédente. Même après avoir corrigé les noms, Kodi affiche l'ancienne mauvaise correspondance. Solution : menu contextuel de la bibliothèque → « Nettoyer la médiathèque » → puis ré-analyser.",
        "examplesTitle": "Exemples complets",
        "examples": "Movies/\n├── The Matrix (1999)/\n│   ├── The Matrix (1999).mkv\n│   ├── movie.nfo\n│   └── fanart.jpg\n├── Lord of the Rings - The Fellowship of the Ring (2001)/\n│   ├── Lord of the Rings - The Fellowship of the Ring (2001) - cd1.mkv\n│   └── Lord of the Rings - The Fellowship of the Ring (2001) - cd2.mkv\n├── Dune (2021)/\n│   └── Dune (2021).mkv\n└── 1917 (2019)/\n    └── 1917 (2019).mkv",
        "plexLinkText": "Équivalents pour Plex",
        "ctaSoft": "Évite la saisie — renomme un dossier de films en quelques secondes"
      },
      "tvShows": {
        "h2": "Nommer les séries télé pour Kodi",
        "intro": "C'est pour les séries télé que la flexibilité de Kodi est la plus utile — plusieurs modèles de noms de fichiers valides sont acceptés, et le scraper est indulgent avec les variations mineures. Le compromis : quand quelque chose ne correspond pas, la cause est rarement évidente. Cette section couvre les modèles sûrs et les cas où Kodi diffère de Plex/Jellyfin.",
        "folderStructureTitle": "Structure des dossiers",
        "folderStructureIntro": "Structure standard à deux niveaux : dossier de la série, puis sous-dossiers de saison.",
        "folderStructureExample": "TV Shows/\n├── Breaking Bad (2008)/\n│   ├── tvshow.nfo\n│   ├── poster.jpg\n│   ├── Season 01/\n│   │   ├── Breaking Bad - s01e01 - Pilot.mkv\n│   │   └── Breaking Bad - s01e02 - Cat's in the Bag.mkv\n│   └── Season 02/\n│       └── Breaking Bad - s02e01.mkv\n└── The Office (2005)/\n    └── Season 03/\n        └── The Office - s03e12.mkv",
        "folderStructureNote": "Nom du dossier de la série : \"Title (Year)\". L'année sert à différencier les remakes — The Office UK 2001 vs US 2005, House of Cards UK 1990 vs US 2013. Dossier de saison : \"Season XX\" avec un format à deux chiffres (zéro initial), ou \"Season 0\" (ou \"Season 00\") pour les épisodes spéciaux. Kodi accepte \"Season 0\" et \"Season 00\"; choisis-en un et sois constant.\n\nContrairement à la convention de Plex pour le dossier \"Specials\", Kodi ne reconnaît PAS le nom de dossier littéral \"Specials\". Utilise Season 0 ou Season 00.",
        "filenameTitle": "Format du nom de fichier d'épisode",
        "filenameFormat": "Le format de nom de fichier d'épisode recommandé par Kodi :\n\nShow Name - sXXeYY - Episode Title.ext\n\nLettres minuscules, numéros à deux chiffres avec zéro initial, titre d'épisode optionnel pour la lisibilité. Kodi accepte les majuscules (SXXEYY), Show.S01E01, Show 1x01, Show 101 et plusieurs autres variantes — mais la forme en minuscules séparée par des tirets est la plus fiable avec tous les scrapers.\n\nLe titre de l'épisode dans le nom de fichier est seulement pour la lisibilité humaine — le scraper de Kodi le remplace par le titre canonique de TheTVDB ou TheMovieDB. Si le titre fourni par le scraper est incorrect, modifie-le via l'interface de Kodi (clic droit sur l'épisode → \"Information\" → \"Modifier\") ou via le fichier NFO (sujet abordé plus tard).",
        "season0Title": "Épisodes spéciaux dans Season 0",
        "season0": "Les épisodes spéciaux, OVAs, épisodes pilotes, contenu en coulisses et bonus vont dans \"Season 0\" (ou \"Season 00\" — Kodi traite les deux de manière identique). À l'intérieur, utilise une numérotation séquentielle : Show - s00e01.mkv, Show - s00e02.mkv.\n\nL'ordre de numérotation doit correspondre à la liste des épisodes spéciaux de TheTVDB pour cette série. La communauté TheTVDB organise ces épisodes dans un ordre précis (souvent basé sur la date de diffusion); Kodi s'attend à ce que tu suives cet ordre. Si tes épisodes spéciaux semblent en désordre dans l'interface de Kodi, vérifie l'onglet des spéciaux sur TheTVDB pour la série et réorganise tes numéros s00eYY en conséquence.",
        "multiEpisodeTitle": "Fichiers multi-épisodes",
        "multiEpisodeIntro": "Pour les épisodes doubles dans un seul fichier :",
        "multiEpisodeExample": "Breaking Bad - s05e15-e16 - Granite State + Felina.mkv",
        "multiEpisodeNote": "Kodi crée un seul élément de lecture qui correspond aux deux épisodes dans les métadonnées. La forme avec une plage (e15-e16) est plus propre; la forme alternative (s05e15-s05e16) fonctionne aussi. Les deux s'étendent aux épisodes triples ou quadruples si nécessaire (e15-e16-e17), bien que ce soit rare en pratique.",
        "dailyTitle": "Émissions quotidiennes (basées sur la date)",
        "dailyIntro": "Les émissions quotidiennes (talk-shows, nouvelles) sans numéros de saison/épisode traditionnels utilisent le format de date YYYY-MM-DD :",
        "dailyExample": "The Daily Show (1996)/\n└── Season 29/\n    └── The Daily Show - 2024-03-15.mkv",
        "dailyNote": "Le scraper TheTVDB de Kodi fait correspondre la date avec l'index des dates de l'émission quotidienne. Assure-toi que la source utilise le scraper TheTVDB, et non TheMovieDB — TheMovieDB a un support limité pour les émissions quotidiennes.",
        "examplesTitle": "Exemples complets",
        "examples": "Séries télé/\n├── Breaking Bad (2008)/\n│   ├── tvshow.nfo\n│   ├── Season 01/\n│   │   ├── Breaking Bad - s01e01 - Pilot.mkv\n│   │   └── Breaking Bad - s01e02 - Cat's in the Bag.mkv\n│   ├── Season 05/\n│   │   └── Breaking Bad - s05e15-e16 - Granite State + Felina.mkv\n│   └── Season 00/\n│       └── Breaking Bad - s00e01 - No Half Measures.mkv\n├── Chernobyl (2019)/\n│   └── Season 01/\n│       └── Chernobyl - s01e01 - 1:23:45.mkv\n└── The Daily Show (1996)/\n    └── Season 29/\n        └── The Daily Show - 2024-03-15.mkv",
        "jellyfinLinkText": "Équivalents pour Jellyfin"
      },
      "anime": {
        "h2": "Nommer les animes pour Kodi (avec le scraper Hama)",
        "intro": "Kodi n'a pas de scraper d'anime intégré — les add-ons par défaut TheMovieDB et TheTVDB traitent les animes comme des séries télé régulières, ce qui fonctionne pour les shonen saisonniers modernes, mais échoue pour les séries à numérotation absolue (One Piece, Detective Conan, Bleach). La solution est Hama, le même scraper communautaire utilisé dans Plex pour les bibliothèques d'animes. L'installer une seule fois débloque l'intégration d'AniDB pour toutes tes sources d'animes sur Kodi.",
        "hamaTitle": "Configuration de Hama (10 minutes, une seule fois)",
        "hamaSetup": "La configuration de Hama dans Kodi prend environ 10 minutes :\n\n1. Télécharge Hama depuis github.com/ZeroQI/Hama.bundle (le bundle Plex fonctionne pour Kodi via le wrapper de l'add-on Hama pour Kodi). Alternative : installe « Hama » depuis le dépôt d'add-ons officiel de Kodi s'il est disponible dans ta version de Kodi.\n\n2. Dans Kodi : Paramètres → Add-ons → Installer depuis un dépôt → Fournisseurs d'informations → Séries télé → installe Hama (et Hama.bundle s'il est listé séparément).\n\n3. Crée une source dédiée aux animes. Ajoute une source vidéo qui pointe vers ton dossier d'animes, définis le type de contenu à « Séries télé » et choisis « Hama » comme scraper au lieu de TheMovieDB ou TheTVDB.\n\n4. Par défaut, Hama utilise AniDB comme base de données principale. Tu peux changer l'ordre de priorité dans les paramètres du scraper — AniDB en premier est recommandé pour les séries à numérotation absolue; TheTVDB en premier pour les séries dont tu veux les métadonnées de la version doublée en anglais.\n\n5. Lance un scrape sur la source. Le premier scrape est lent (Hama interroge plusieurs bases de données) — sois patient. Les scrapes suivants sont beaucoup plus rapides.",
        "absoluteTitle": "Numérotation absolue des épisodes",
        "absoluteIntro": "Pour les séries à numérotation absolue comme One Piece (épisode 1064), utilise la saison 01 avec les numéros d'épisode absolus complétés avec des zéros jusqu'à 4 chiffres :",
        "absoluteExample": "Anime/\n└── One Piece [anidbid-69]/\n    └── Season 01/\n        ├── One Piece - s01e0001.mkv\n        ├── One Piece - s01e0002.mkv\n        └── One Piece - s01e1064.mkv",
        "absoluteNote": "Le suffixe [anidbid-X] dans le nom du dossier force Hama à utiliser directement l'entrée AniDB, évitant la correspondance approximative par titre. Trouve l'ID sur anidb.net en cherchant la série — l'ID se trouve dans l'URL.\n\nLe complètement sur 4 chiffres n'est pas requis pour la correspondance, mais il assure que l'ordre de tri du système de fichiers correspond à l'ordre de lecture. Sans ce complètement, le fichier e1064 est trié après e11 au lieu d'après e1063, ce qui rend la navigation dans le dossier déroutante en dehors de Kodi.",
        "splitSeasonsTitle": "Saisons divisées et arcs",
        "splitSeasonsIntro": "Les animes modernes divisés en « parties » (Attack on Titan Final Season Parts 1/2/3, les arcs de Demon Slayer) causent la même confusion de scraping que dans Plex et Jellyfin. La solution : décide quelle base de données correspond à ta représentation mentale de la structure de la série, force-la via le suffixe d'ID dans le dossier, et reste cohérent pour tous tes animes.",
        "splitSeasonsExample": "Anime/\n├── Attack on Titan [anidbid-9541]/\n│   ├── Season 01/\n│   ├── Season 02/\n│   ├── Season 03/\n│   └── Season 04/   ← Final Season Partie 1\n├── Attack on Titan - Final Season Part 2 [anidbid-15689]/\n│   └── Season 01/   ← AniDB considère la Partie 2 comme une entrée distincte\n└── Demon Slayer (2019)/\n    ├── Season 01/\n    ├── Season 02/   ← Mugen Train + Entertainment District\n    └── Season 03/",
        "examplesTitle": "Exemples complets",
        "examples": "Anime/\n├── One Piece [anidbid-69]/\n│   ├── Season 01/\n│   │   ├── One Piece - s01e0001.mkv\n│   │   └── One Piece - s01e1064.mkv\n│   └── Season 00/\n│       └── One Piece - s00e001 - Movie 14 Stampede.mkv\n├── Attack on Titan [anidbid-9541]/\n│   ├── Season 01/\n│   └── Season 04/\n└── Demon Slayer (2019)/\n    └── Season 02/\n        └── Demon Slayer - s02e01.mkv",
        "plexAnimeLinkText": "Animes sur Plex (HAMA, même scraper)"
      },
      "music": {
        "h2": "Nommer la musique pour Kodi",
        "intro": "Dans Kodi, la musique est d'abord gérée par les tags, puis par les dossiers — exactement comme avec Plex et Jellyfin. Le Universal Album Scraper (par défaut dans Kodi 19+) lit les tags ID3 et interroge MusicBrainz et TheAudioDB pour les illustrations et les métadonnées. Corrige d'abord les tags, puis occupe-toi de la structure des dossiers.",
        "folderStructureTitle": "Structure de dossiers recommandée",
        "folderStructureIntro": "Structure recommandée :",
        "folderStructureExample": "Music/\n├── Pink Floyd/\n│   ├── The Dark Side of the Moon (1973)/\n│   │   ├── 01 - Speak to Me.flac\n│   │   └── 02 - Breathe.flac\n│   └── Wish You Were Here (1975)/\n│       └── 01 - Shine On You Crazy Diamond Pts. 1-5.flac\n├── Various Artists/\n│   └── Pulp Fiction Soundtrack (1994)/\n│       ├── 01 - Misirlou - Dick Dale.flac\n│       └── 02 - Royale with Cheese - John Travolta.flac\n└── Tool/\n    └── Lateralus (2001)/\n        ├── Disc 01/\n        │   └── 01 - The Grudge.flac\n        └── Disc 02/\n            └── 01 - Faaip de Oiad.flac",
        "folderStructureNote": "Il est recommandé d'inclure l'année de l'album dans le nom du dossier. Les albums multi-disques utilisent des sous-dossiers « Disc XX ». Les compilations utilisent un tag d'artiste d'album « Various Artists » (tag Album Artist = « Various Artists », tandis que le tag Artist individuel reste l'interprète de la piste).",
        "tagsTitle": "Les tags ID3 que Kodi utilise vraiment",
        "tags": "Tags ID3 requis pour une correspondance propre dans Kodi : Artist, Album, Title, Track Number. Fortement recommandés : Album Artist (distinct de Artist pour les compilations), Year, Genre, Disc Number, MusicBrainz IDs.\n\nLes ID MusicBrainz (Album ID et Recording ID, intégrés comme des trames TXXX ID3v2.3 ou des commentaires Vorbis) permettent au Universal Album Scraper de Kodi de faire une correspondance exacte, évitant la correspondance approximative par titre. Utilise MusicBrainz Picard pour écrire ces ID une bonne fois pour toutes et ta bibliothèque Kodi deviendra quasi infaillible.\n\nLe mode musique de RenameFlow lit MusicBrainz et produit des noms de fichiers et une structure de dossiers précis; il n'écrit pas de tags ID3. Utilise-le après un éditeur de tags comme Picard, pas en remplacement.",
        "examplesTitle": "Exemples complets",
        "examples": "Music/\n└── Pink Floyd/\n    ├── The Dark Side of the Moon (1973)/\n    │   ├── 01 - Speak to Me.flac\n    │   └── 10 - Eclipse.flac\n    └── The Wall (1979)/\n        ├── Disc 01/\n        │   └── 01 - In the Flesh?.flac\n        └── Disc 02/\n            └── 01 - Hey You.flac"
      },
      "nfo": {
        "h2": "Fichiers NFO — Le système de remplacement des métadonnées de Kodi",
        "intro": "Les fichiers NFO sont la plus grande différence entre Kodi et Plex/Jellyfin en matière de nommage. Un NFO est un petit fichier XML que tu places à côté d'une vidéo, et Kodi le lit AU LIEU d'interroger les scrapers en ligne. Ils sont optionnels mais extrêmement utiles : ils te permettent de corriger les mauvaises correspondances du scraper, de documenter des collections personnalisées et de figer des métadonnées qui pourraient changer avec les mises à jour des bases de données en ligne.\n\nPlex n'a rien d'équivalent; Jellyfin offre un support partiel via des images locales et un XML minimal. Le système NFO de Kodi est l'implémentation la plus mature de tous les media centers open-source.",
        "whenToUseTitle": "Quand créer des fichiers NFO (et quand ne pas le faire)",
        "whenToUse": "Tu n'as pas besoin de fichiers NFO pour tout — les scrapers trouvent la bonne correspondance dans 90 % des cas. Voici quatre scénarios où les fichiers NFO valent la peine :\n\n1. Le scraper choisit le mauvais film/la mauvaise série et la fonction « Modifier » dans l'interface de Kodi ne fonctionne pas (fréquent pour les séries avec plusieurs remakes).\n\n2. Un film ou une série n'est pas du tout sur TMDB/TheTVDB (versions régionales, montages de fans, contenu de niche).\n\n3. Tu veux des regroupements de collections personnalisés au-delà de ce que TMDB propose (par exemple, ta propre collection « Meilleurs films de science-fiction des années 90 »).\n\n4. Tu stockes des métadonnées que tu ne peux pas te permettre de perdre — la bibliothèque de Kodi peut être entièrement reconstruite à partir des fichiers NFO si la base de données est corrompue.\n\nPour les bibliothèques de moins de 200 éléments, les fichiers NFO sont généralement superflus. Pour les bibliothèques de plus de 1 000 éléments où tu as passé du temps à corriger les métadonnées, ils sont une assurance.",
        "movieTitle": "movie.nfo — le NFO le plus utile",
        "movieIntro": "Format NFO pour les films. Place le fichier à côté du film avec le nom movie.nfo (ou Titre (Année).nfo qui correspond au nom du fichier vidéo — les deux fonctionnent, movie.nfo est la convention) :",
        "movieExample": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<movie>\n  <title>Blade Runner</title>\n  <originaltitle>Blade Runner</originaltitle>\n  <year>1982</year>\n  <plot>A blade runner must pursue and terminate four replicants...</plot>\n  <runtime>117</runtime>\n  <mpaa>R</mpaa>\n  <genre>Science Fiction</genre>\n  <genre>Thriller</genre>\n  <director>Ridley Scott</director>\n  <actor>\n    <name>Harrison Ford</name>\n    <role>Rick Deckard</role>\n  </actor>\n  <uniqueid type=\"tmdb\" default=\"true\">78</uniqueid>\n  <uniqueid type=\"imdb\">tt0083658</uniqueid>\n  <set>\n    <name>Blade Runner Collection</name>\n  </set>\n</movie>",
        "movieNote": "Le champ <uniqueid type=\"tmdb\"> force Kodi à utiliser l'entrée TMDB spécifique au lieu de faire une correspondance approximative du titre. C'est la balise la plus utile — si tu n'écris qu'une seule chose dans tes fichiers NFO, écris celle-là.",
        "tvTitle": "tvshow.nfo — Remplacements au niveau de la série",
        "tvIntro": "Les fichiers NFO pour les séries télé vont dans le dossier racine de la série, nommés tvshow.nfo. Le format est similaire à movie.nfo, mais avec des champs spécifiques à la série :",
        "tvExample": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<tvshow>\n  <title>Breaking Bad</title>\n  <year>2008</year>\n  <plot>A high school chemistry teacher diagnosed with cancer...</plot>\n  <genre>Crime</genre>\n  <genre>Drama</genre>\n  <uniqueid type=\"tvdb\" default=\"true\">81189</uniqueid>\n  <uniqueid type=\"tmdb\">1396</uniqueid>\n  <uniqueid type=\"imdb\">tt0903747</uniqueid>\n  <status>Ended</status>\n  <studio>AMC</studio>\n</tvshow>",
        "tvNote": "Le <uniqueid type=\"tvdb\"> est l'identifiant le plus fiable pour les séries télé, car TheTVDB est le scraper par défaut de Kodi pour la plupart des utilisateurs.",
        "episodeTitle": "NFO par épisode (rarement nécessaire)",
        "episodeIntro": "Les fichiers NFO par épisode sont rarement nécessaires — le NFO de la série et les métadonnées d'épisode récupérées par le scraper couvrent la plupart des cas. Utilise-les seulement quand un épisode spécifique est mal identifié et que rafraîchir la série ne corrige pas le problème. Format : place Show - s01e01.nfo à côté du fichier vidéo :",
        "episodeExample": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<episodedetails>\n  <title>Pilot</title>\n  <season>1</season>\n  <episode>1</episode>\n  <aired>2008-01-20</aired>\n  <plot>Walter White, a struggling high school chemistry teacher...</plot>\n  <uniqueid type=\"tvdb\" default=\"true\">349232</uniqueid>\n</episodedetails>",
        "examplesTitle": "Emplacement des fichiers NFO avec tes médias",
        "examples": "Movies/\n└── Blade Runner (1982)/\n    ├── Blade Runner (1982).mkv\n    ├── movie.nfo               ← ID TMDB verrouillé\n    └── poster.jpg\n\nTV Shows/\n└── Breaking Bad (2008)/\n    ├── tvshow.nfo              ← ID TVDB verrouillé\n    ├── Season 01/\n    │   ├── Breaking Bad - s01e01 - Pilot.mkv\n    │   └── Breaking Bad - s01e01.nfo   ← remplacement par épisode (rare)\n    └── Season 02/",
        "filebotLinkText": "ou utilise l'éditeur NFO de FileBot",
        "advancedTagsTitle": "Balises de métadonnées avancées",
        "advancedTags": "Au-delà des balises de base <title>, <year> et <plot>, Kodi comprend un riche ensemble de champs de métadonnées qui te permettent de personnaliser l'affichage des éléments dans ta bibliothèque. Les plus utiles pour les utilisateurs avancés :\n\n<originaltitle> — le titre dans la langue originale, affiché dans les pages d'info à côté du titre localisé. Essentiel pour les films étrangers où le titre du distributeur local diffère grandement de l'original (pense à Spirited Away vs Sen to Chihiro no Kamikakushi).\n\n<sorttitle> — remplace le comportement de tri par défaut. Utilise-la pour forcer « The Matrix » à être trié sous « M » au lieu de « T », ou pour regrouper les suites ensemble peu importe leurs titres canoniques. Exemple : trier tous les films Mission: Impossible comme « Mission Impossible 01 », « Mission Impossible 02 », etc.\n\n<tagline> — le court slogan marketing affiché sous le titre (pense à « In space, no one can hear you scream »). Ça ajoute une touche de finition aux pages d'info de ta bibliothèque.\n\n<status> pour les séries télé — « Continuing », « Ended » ou « Returning Series ». Permet à l'habillage de Kodi d'afficher des indicateurs appropriés sur les fiches des séries.\n\n<premiered> — la date de première diffusion officielle. Utile pour les séries d'anthologie ou les animes où la date du scraper est erronée.\n\n<fileinfo> — blocs de métadonnées de fichier pré-mis en cache (codec, résolution, pistes de langue audio). Utile si tu crées des fichiers NFO par programmation et que tu veux sauter l'analyse des médias lors du premier scan de Kodi.",
        "multipleRatingsTitle": "Plusieurs sources de cotes côte à côte",
        "multipleRatingsIntro": "Kodi 19+ prend en charge l'affichage simultané de plusieurs sources de cotes. Ajoute un bloc <ratings> avec autant de sources que tu le désires :",
        "multipleRatingsExample": "<ratings>\n  <rating name=\"imdb\" max=\"10\" default=\"true\">\n    <value>8.1</value>\n    <votes>826543</votes>\n  </rating>\n  <rating name=\"themoviedb\" max=\"10\">\n    <value>8.2</value>\n    <votes>9876</votes>\n  </rating>\n  <rating name=\"rottentomatoes\" max=\"100\">\n    <value>89</value>\n    <votes>410</votes>\n  </rating>\n</ratings>",
        "multipleRatingsNote": "Les habillages par défaut de Kodi affichent la cote « default » en évidence et te permettent de parcourir les autres dans la boîte de dialogue d'info. Pour les bibliothèques où tu as sélectionné les sources auxquelles tu fais confiance, c'est une amélioration significative de la qualité de vie par rapport à la cote unique qui provient du scraper.",
        "musicNfoTitle": "Fichiers NFO pour la musique (artiste, album, piste)",
        "musicNfoIntro": "La musique a son propre format NFO à trois niveaux — artiste, album et par piste. Le NFO de niveau artiste va à la racine du dossier de l'artiste, nommé artist.nfo :",
        "musicNfoExample": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<artist>\n  <name>Pink Floyd</name>\n  <disambiguation>British rock band</disambiguation>\n  <formed>1965</formed>\n  <disbanded>2014</disbanded>\n  <genre>Progressive Rock</genre>\n  <musicBrainzArtistID>83d91898-7763-47d7-b03b-b92132375c47</musicBrainzArtistID>\n</artist>",
        "musicNfoNote": "L'ID d'artiste MusicBrainz permet à la bibliothèque musicale de Kodi de faire le lien avec l'entrée canonique sans fuzzy matching — extrêmement utile pour les artistes ayant des noms communs ou pour les groupes multiples.\n\nLe NFO de niveau album (album.nfo dans le dossier de l'album) accepte des champs similaires en plus de <title>, <year>, <musicBrainzAlbumID>. Le NFO par piste est rarement utilisé; le modèle musical de Kodi, basé sur les balises, gère les pistes via les balises ID3 plutôt que par des fichiers NFO.",
        "commonPitfallsTitle": "Pièges courants avec les NFO",
        "commonPitfalls": "Quatre erreurs courantes qui brisent les fichiers NFO en pratique :\n\n1. XML invalide — caractères &, < ou > non échappés à l'intérieur des balises <plot> ou <title>. La solution : encadre le contenu textuel avec <![CDATA[...]]> ou échappe-le manuellement (&amp;, &lt;, &gt;).\n\n2. Mauvais encodage — les fichiers NFO DOIVENT être en UTF-8. Certains éditeurs de texte Windows enregistrent en Windows-1252 par défaut, ce qui corrompt les caractères non-ASCII (accents, cyrillique, japonais). Utilise un éditeur compatible UTF-8 (VS Code, Sublime Text, Notepad++).\n\n3. Déclaration XML manquante — la première ligne <?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?> est requise. Sans elle, certaines versions de Kodi ignorent silencieusement le fichier.\n\n4. Conflits entre le NFO et les métadonnées du scraper — si un NFO et un scraper fournissent des données pour le même champ, Kodi priorise le NFO. C'est généralement ce que tu veux, mais ça surprend parfois les utilisateurs qui ne réalisent pas que leur NFO écrase les mises à jour en ligne. Pour revenir aux données du scraper, supprime le NFO et rafraîchis."
      },
      "troubleshooting": {
        "h2": "Dépannage du nommage pour Kodi",
        "intro": "Six problèmes courants expliquent environ 85 % des plaintes liées au nommage sur Kodi. Chacun a une cause prévisible et une solution claire.",
        "causesLabel": "Causes probables",
        "stepsLabel": "Étapes de résolution",
        "items": [
          {
            "problem": "La bibliothèque ne s'analyse pas du tout — rien ne se passe lors d'une nouvelle analyse",
            "causes": [
              "Type de contenu de la source réglé sur 'Aucun'",
              "Chemin de la source inaccessible (partage réseau non monté, lecteur renommé)",
              "Add-on du scraper désactivé ou désinstallé",
              "Service Kodi en pause"
            ],
            "steps": [
              "Clic droit sur la source → 'Changer le contenu' → régler sur Films / Séries TV / Musique",
              "Vérifie que le chemin est accessible : Fichiers → navigue manuellement jusqu'à la source",
              "Paramètres → Add-ons → Mes add-ons → Fournisseurs d'informations → vérifie que le scraper est activé",
              "Redémarre Kodi si le problème persiste"
            ]
          },
          {
            "problem": "Le film s'affiche avec la mention 'Aucune information trouvée'",
            "causes": [
              "Année manquante ou dans un mauvais format",
              "Le titre contient des caractères spéciaux qui embrouillent le scraper",
              "Film absent de TMDB (sortie régionale rare)"
            ],
            "steps": [
              "Ajoute (YYYY) entre parenthèses au dossier et au nom de fichier",
              "Retire les tags de la scène : 'Title.YYYY.BluRay.x264-SPARKS' → 'Title (YYYY)'",
              "Crée un fichier movie.nfo avec <uniqueid type='tmdb'> qui pointe vers le bon ID, ou <uniqueid type='imdb'> si TMDB ne l'a pas"
            ]
          },
          {
            "problem": "Mauvaise série associée (The Office US vs The Office UK)",
            "causes": [
              "Année manquante dans le dossier de la série",
              "Le scraper a choisi la version la plus populaire",
              "Entrée obsolète d'un précédent scrape erroné"
            ],
            "steps": [
              "Ajoute (Year) au nom du dossier de la série",
              "Crée un fichier tvshow.nfo avec <uniqueid type='tvdb' default='true'> réglé sur le bon ID",
              "Menu contextuel de la bibliothèque → 'Rafraîchir' sur la série, ou 'Nettoyer la bibliothèque' pour retirer les entrées obsolètes"
            ]
          },
          {
            "problem": "Épisodes non associés mais la série est correcte",
            "causes": [
              "Formats de noms de fichiers mélangés dans la même saison",
              "Jeton d'épisode mal tapé (s01E01 avec casse mixte, ou s1e1 sans zéro de remplissage)",
              "Fichiers à la racine de la série au lieu d'un sous-dossier Season XX"
            ],
            "steps": [
              "Standardise tous les épisodes d'une saison sur un seul format. Le format sXXeYY en minuscules est recommandé",
              "Utilise un renommeur par lots pour normaliser la saison entière",
              "Déplace les épisodes dans des sous-dossiers 'Season XX/' s'ils sont à la racine de la série"
            ]
          },
          {
            "problem": "Épisodes d'anime associés aux mauvaises saisons",
            "causes": [
              "Le scraper par défaut de Kodi (TheMovieDB / TheTVDB) ne comprend pas la structure d'AniDB",
              "Scraper Hama non installé ou non sélectionné comme scraper de la source",
              "Tag [anidbid-X] manquant dans le nom du dossier pour une série au titre ambigu"
            ],
            "steps": [
              "Installe Hama depuis le dépôt d'add-ons de Kodi",
              "Modifier la source → règle le 'Fournisseur d'informations' sur Hama",
              "Ajoute [anidbid-X] au dossier de la série (trouve l'ID sur anidb.net)",
              "Clic droit sur la série → 'Rafraîchir' pour relancer le scrape avec le nouveau fournisseur"
            ]
          },
          {
            "problem": "La bibliothèque affiche d'anciennes métadonnées erronées même après avoir corrigé les fichiers",
            "causes": [
              "Kodi met en cache les métadonnées du scrape jusqu'à ce que tu les rafraîchisses explicitement",
              "Des entrées obsolètes d'une association erronée précédente sont encore dans la base de données",
              "Champ verrouillé — modifié manuellement, puis censé se mettre à jour automatiquement"
            ],
            "steps": [
              "Clic droit sur l'élément → 'Rafraîchir' (récupère à nouveau les données du scraper)",
              "Menu contextuel de la bibliothèque → 'Nettoyer la bibliothèque' pour retirer les entrées orphelines",
              "Pour une réinitialisation complète : Paramètres → Média → Bibliothèque → 'Nettoyer la bibliothèque' globalement, puis relance une analyse"
            ]
          }
        ]
      },
      "faster": {
        "h2": "L'alternative de 60 secondes",
        "intro": "Tout ce qui précède est la méthode manuelle : comprendre les scrapers, taper les bons noms de fichiers, créer des fichiers NFO pour les cas tenaces. Ça vaut la peine de le faire une fois pour une nouvelle bibliothèque. C'est pénible pour une bibliothèque de 2 000 fichiers héritée d'années de téléchargements non structurés.",
        "manualWayTitle": "La méthode manuelle",
        "manualWay": "À la main, renommer un élément de la bibliothèque Kodi prend environ 30 à 60 secondes : vérifier le titre, formater l'année, utiliser le bon format sXXeYY et écrire des fichiers NFO pour les quelques cas problématiques. Une bibliothèque de 2 000 fichiers, c'est une longue fin de semaine.",
        "oneSixtySecondWayTitle": "La méthode de 60 secondes",
        "oneSixtySecondWay": "RenameFlow renomme tes fichiers en quelques secondes. Glisse-dépose un dossier, l'analyseur détecte s'il s'agit de films / séries TV / animes, interroge TMDB / TheTVDB / AniList / MusicBrainz en parallèle, et affiche un aperçu du renommage compatible Kodi. Confirme, et les fichiers sont renommés localement sur ton disque via l'API File System Access — aucun upload. Gratuit pour les 15 premiers fichiers par jour ; paiement unique de 49 EUR pour un usage illimité.\n\nPour la génération de fichiers NFO, RenameFlow ne les écrit pas directement — mais il produit des noms de fichiers qui se scannent parfaitement avec les scrapers par défaut de Kodi, ce qui élimine le besoin de fichiers NFO dans 90 % des cas. Pour les 10 % restants, écrire le NFO à la main est un effort unique.",
        "pricingLinkText": "Tarifs de RenameFlow",
        "cta": "Gratuit : 15 fichiers/jour, compte gratuit en 30 secondes, aucun upload."
      },
      "faq": {
        "h2": "Nommage pour Kodi — Foire aux questions",
        "seeAllLinkText": "Voir toutes les FAQ de RenameFlow",
        "items": [
          {
            "question": "Quelle est la règle de nommage la plus importante pour Kodi?",
            "answer": "Choisis un modèle de nom de fichier par type de contenu et applique-le constamment. Le scanner de Kodi est indulgent avec les variations de modèles entre les bibliothèques, mais des modèles incohérents dans un même dossier de série ou de film causent les problèmes les plus fréquents où seulement la moitié d'une saison est reconnue."
          },
          {
            "question": "Dois-je vraiment installer Hama pour les animes dans Kodi?",
            "answer": "Pour les animes saisonniers modernes qui correspondent bien aux saisons de TheMovieDB ou TheTVDB (Demon Slayer, Spy x Family, Jujutsu Kaisen), non — les scrapers par défaut s'en chargent. Pour les séries à numérotation absolue (One Piece, Naruto Shippuden, Detective Conan, Bleach), oui — Hama est la seule option réaliste. L'installation est une affaire de 10 minutes, faite une seule fois."
          },
          {
            "question": "Quelle est la différence entre movie.nfo et Title (Year).nfo?",
            "answer": "Les deux fonctionnent identiquement. movie.nfo est la convention parce qu'il est indépendant du nom de fichier (renomme le fichier vidéo et le NFO s'applique toujours). Title (Year).nfo lie le NFO à ce nom de fichier vidéo exact — utile si tu as plusieurs fichiers vidéo dans un dossier et que tu veux des NFO par fichier. La plupart des utilisateurs utilisent movie.nfo."
          },
          {
            "question": "Dois-je utiliser Season 0 ou Season 00 pour les épisodes spéciaux?",
            "answer": "Les deux fonctionnent — Kodi les traite identiquement. Season 00 se classe bien à côté de Season 01, Season 02, etc. Season 0 est plus court. Choisis-en un et applique-le à toutes tes séries par souci de cohérence."
          },
          {
            "question": "Pourquoi le scan de Kodi est-il plus lent que celui de Plex sur les mêmes fichiers?",
            "answer": "Kodi communique davantage avec les scrapers que les agents de Plex — il récupère les métadonnées et les illustrations de chaque épisode séparément. Pour accélérer le processus, diminue la résolution des illustrations dans les paramètres du scraper, désactive le téléchargement de 'fanart' si tu ne l'utilises pas, et lance les scans pendant les heures creuses lorsque les bases de données externes sont plus réactives."
          },
          {
            "question": "Kodi peut-il partager sa bibliothèque sur plusieurs appareils?",
            "answer": "Oui, via un backend MySQL (configuration avancée) ou via l'exportation NFO + illustrations intégrée. Avec l'exportation NFO activée dans les paramètres, chaque instance de Kodi pointant vers les mêmes fichiers lit des métadonnées identiques sans avoir à scraper de nouveau. C'est le moyen le plus rapide de garder une bibliothèque partagée familiale cohérente sur plusieurs téléviseurs."
          },
          {
            "question": "Puis-je importer une bibliothèque nommée pour Plex ou Jellyfin dans Kodi sans tout renommer?",
            "answer": "En grande partie, oui. Le nommage des dossiers de films et les conventions sXXeYY pour les séries se transfèrent directement. Les principales incompatibilités : les éditions entre accolades de Plex ({edition-X}) et les tags [edition-X] de Jellyfin sont tous deux ignorés par Kodi — l'info sur l'édition n'est pas conservée à moins de l'écrire dans un NFO. Pour une migration typique de Plex vers Kodi, attends-toi à passer 30 minutes à convertir les éditions de films; tout le reste se transfère sans problème."
          },
          {
            "question": "Puis-je automatiser le nommage pour les nouveaux téléchargements Kodi?",
            "answer": "Oui. Deux approches. Pour les chaînes automatisées : Sonarr + Radarr pré-nomment les fichiers avant qu'ils n'arrivent dans ta bibliothèque Kodi — configure la convention de nommage de Sonarr avec les modèles Kodi de ce guide. Pour une révision manuelle : utilise RenameFlow comme outil de batch lors de l'importation. Les deux approches produisent des noms compatibles avec Kodi; le choix dépend du niveau de révision manuelle que tu souhaites."
          },
          {
            "question": "Puis-je utiliser Sonarr et Radarr pour gérer une bibliothèque Kodi?",
            "answer": "Oui, et c'est l'un des flux de travail les plus populaires. Configure les modèles de nommage de Sonarr et Radarr pour qu'ils correspondent aux conventions de Kodi (sXXeYY pour les épisodes, Title (Year) pour les films), fais-les pointer vers les mêmes dossiers que Kodi scrape, et active les mises à jour de la bibliothèque Kodi via la fonction de connexion des *arrs. Sonarr peut déclencher une actualisation de la bibliothèque Kodi après l'arrivée de chaque nouvel épisode, ainsi ta bibliothèque reste à jour sans scans manuels."
          },
          {
            "question": "Quelle est la différence entre Kodi et Plex/Jellyfin pour le nommage?",
            "answer": "Trois différences principales. Premièrement, Kodi n'a pas de service de métadonnées en ligne — ta bibliothèque réside entièrement sur ton appareil ou ton réseau. Deuxièmement, Kodi accepte plus de variations de modèles de noms de fichiers que le regex strict de Plex, ce qui est plus indulgent mais aussi moins prévisible en cas de problème. Troisièmement, le système de fichiers NFO de Kodi te donne un contrôle local total pour outrepasser toute métadonnée récupérée par un scraper, ce qui n'a pas d'équivalent dans Plex (et n'est que partiellement supporté dans Jellyfin). Si tu accordes de l'importance à une structure stricte et à la synchro en ligne, Plex l'emporte. Si tu préfères le contrôle local et un haut niveau de personnalisation, Kodi l'emporte. Jellyfin se situe entre les deux."
          }
        ]
      },
      "related": {
        "h2": "À lire aussi",
        "items": [
          {
            "title": "Guide de nommage Plex (les équivalents)",
            "href": "/plex-naming-guide"
          },
          {
            "title": "Guide de nommage Jellyfin",
            "href": "/jellyfin-naming-guide"
          },
          {
            "title": "Guide de renommage étape par étape",
            "href": "/how-to-rename"
          },
          {
            "title": "Toutes les FAQ de RenameFlow",
            "href": "/faq"
          }
        ]
      },
      "externalLinks": {
        "kodiVideo": "Nommage des fichiers vidéo pour Kodi (wiki officiel)",
        "kodiNfo": "Fichiers NFO pour Kodi (wiki officiel)",
        "hama": "Le scraper Hama sur GitHub"
      },
      "howTo": {
        "name": "Comment nommer les fichiers de films pour Kodi",
        "description": "La méthode, étape par étape, pour nommer tes fichiers de films afin que le scanner de Kodi les reconnaisse du premier coup.",
        "step1": {
          "name": "Crée un dossier par film",
          "text": "Chaque film a son propre dossier, nommé « Titre (Année) », par exemple « Blade Runner (1982) ». Le fichier vidéo à l'intérieur reprend exactement ce nom."
        },
        "step2": {
          "name": "Ajoute l'année de sortie entre parenthèses",
          "text": "Le scraper TMDB de Kodi départage les titres identiques grâce à l'année. Utilise toujours des parenthèses : « Dune (2021) »."
        },
        "step3": {
          "name": "Définis le type de contenu de la source avant la première analyse",
          "text": "Modifie la source vidéo → « Set content » → « Movies » → choisis le scraper The Movie Database. Lance ensuite le scraping."
        },
        "step4": {
          "name": "Ajoute un movie.nfo pour les erreurs d'identification tenaces",
          "text": "Si le scraper choisit le mauvais film, crée un fichier movie.nfo avec <uniqueid type=\"tmdb\"> renseigné avec le bon identifiant TMDB. Kodi lit les fichiers NFO au lieu d'interroger le scraper."
        }
      }
    },
    "code": {
      "copied": "Copié",
      "copy": "Copier le code"
    },
    "comparison": {
      "no": "Non",
      "yes": "Oui"
    },
    "cta": {
      "start": "Commencer gratuitement",
      "try": "Essayer RenameFlow gratuitement"
    },
    "officialReferences": "Références officielles :",
    "common": {
      "seeLink": "Voir <link>{{label}}</link>.",
      "alsoUsefulLink": "À lire aussi : <link>{{label}}</link>."
    }
  },
  "admin": {
    "funnel": {
      "allBrowsers": "Tous les navigateurs",
      "app": "App ouverte",
      "browserFilter": "Navigateur",
      "byBrowser": "Par navigateur (8 semaines)",
      "checkout": "Paiement",
      "desc": "Utilisateurs ayant terminé leur inscription chaque semaine (UTC), et combien ont ensuite atteint chaque étape. % des inscrits. Navigateur = première visite de l'app.",
      "empty": "Aucune inscription enregistrée sur les 8 dernières semaines.",
      "files": "Fichiers choisis",
      "paywall": "Paywall",
      "rename": "Renommage",
      "signup": "Inscrits",
      "title": "Entonnoir d'activation (par semaine et par navigateur)",
      "truncated": "Trop d'événements pour tout charger : les inscriptions les plus anciennes, ou les derniers événements des utilisateurs les plus actifs, peuvent manquer.",
      "unavailable": "Données de l'entonnoir indisponibles (table activation_events absente ou illisible).",
      "week": "Semaine du"
    }
  },
  "authConfirmed": {
    "brave": "Brave bloque l'accès aux fichiers locaux par défaut. Active-le dans brave://flags/#file-system-access-api, relance Brave, puis ouvre l'app.",
    "browser": "Ce navigateur ne peut pas renommer de fichiers locaux. Ouvre RenameFlow dans Chrome, Edge ou Opera sur ton ordinateur.",
    "checkingTitle": "Confirmation de ton compte…",
    "copied": "Copié",
    "copyBraveFlag": "Copier l'adresse du réglage Brave",
    "copyLink": "Copier le lien",
    "desc": "RenameFlow fonctionne sur ordinateur avec Chrome, Edge ou Opera.",
    "expiredDesc": "Les liens de confirmation ne marchent qu'une fois et pendant un temps limité. Déjà confirmé ? Connecte-toi. Sinon, demande un nouveau lien.",
    "expiredTitle": "Ce lien a expiré",
    "mobile": "Tu es sur un téléphone ou une tablette. Continue sur ton ordinateur : on peut t'envoyer le lien par email.",
    "noSessionDesc": "On n'a pas pu ouvrir ta session automatiquement. Connecte-toi pour continuer.",
    "noSessionTitle": "Presque fini",
    "openAnyway": "Découvrir l'app quand même",
    "resendCta": "M'envoyer un nouveau lien",
    "resent": "Un nouveau lien arrive. Ouvre-le sur l'ordinateur où tu utiliseras RenameFlow.",
    "title": "Compte confirmé"
  },
  "billing": {
    "errors": {
      "already_active": "Vous avez déjà cette offre.",
      "already_claimed": "Cet achat est déjà rattaché à un autre compte. Contactez-nous si ce n'est pas normal.",
      "already_lifetime": "Vous avez déjà l'offre À vie : inutile de la racheter.",
      "already_subscribed": "Vous avez déjà un abonnement. Changez de formule depuis l'espace de facturation : la différence de prix est calculée au prorata.",
      "billing_cancel_failed": "Impossible de résilier votre abonnement : votre compte n'a donc pas été supprimé. Réessayez ou contactez-nous.",
      "checkout_failed": "Impossible de lancer le paiement. Veuillez réessayer.",
      "checkout_lookup_failed": "Impossible de confirmer ce paiement pour le moment. Actualisez cette page dans une minute.",
      "claim_failed": "Impossible d'activer cet achat pour le moment. Une nouvelle tentative aura lieu automatiquement : actualisez dans une minute.",
      "confirmation_required": "Tapez DELETE pour confirmer.",
      "delete_failed": "Impossible de supprimer votre compte. Veuillez réessayer.",
      "email_mismatch": "Ce paiement a été fait avec une autre adresse e-mail.",
      "invalid_email": "Saisissez une adresse e-mail valide.",
      "invalid_input": "Vérifiez votre message et réessayez.",
      "invalid_price": "Cette offre n'est pas disponible. Actualisez la page et réessayez.",
      "lifetime_sold_out": "L'offre À vie est épuisée.",
      "missing_email": "Aucune adresse e-mail n'a été trouvée pour ce paiement. Contactez-nous et nous réglerons cela.",
      "missing_session": "Impossible de retrouver ce paiement.",
      "no_customer": "Aucun compte de facturation trouvé pour cet e-mail. Contactez-nous si vous avez payé avec une autre adresse.",
      "not_completed": "Ce paiement n'a pas abouti. Aucun montant n'a été débité.",
      "not_found": "Impossible de retrouver ce paiement.",
      "payment_pending": "Votre paiement est encore en cours de confirmation.",
      "payment_refunded": "Ce paiement a été remboursé ou annulé.",
      "portal_failed": "Impossible d'ouvrir l'espace de facturation. Veuillez réessayer.",
      "rate_limited": "Trop de tentatives. Réessayez dans quelques minutes.",
      "recent_payment": "Un paiement pour cette offre est encore en cours de traitement. Patientez une minute puis actualisez ; si vous avez déjà payé, vérifiez vos e-mails.",
      "send_failed": "Votre message n'a pas pu être envoyé. Veuillez réessayer.",
      "sync_failed": "Impossible de vérifier votre offre pour le moment. Réessayez dans une minute.",
      "unauthorized": "Veuillez vous reconnecter.",
      "unknown": "Une erreur est survenue. Veuillez réessayer.",
      "unknown_plan": "Impossible d'identifier l'offre de ce paiement. Contactez-nous et nous réglerons cela."
    }
  },
  "breadcrumbs": {
    "alternatives": "Alternatives",
    "faq": "FAQ",
    "filebot": "Alternative à Filebot",
    "guides": "Guides",
    "home": "Accueil",
    "howToRename": "Comment renommer",
    "label": "Fil d'Ariane",
    "plexKodiJellyfin": "Plex / Kodi / Jellyfin",
    "pricing": "Tarifs"
  },
  "contactPage": {
    "emailLabel": "Email (optionnel)",
    "emailPlaceholder": "ton@email.com",
    "messageLabel": "Message",
    "messagePlaceholder": "Décris ton besoin…",
    "send": "Envoyer",
    "sending": "Envoi…",
    "subtitle": "Une question, un bug, une demande ? Écris-nous ici.",
    "title": "Contact",
    "toast": {
      "errorDescription": "Impossible d'envoyer le message. Réessaie.",
      "errorTitle": "Erreur",
      "requiredDescription": "Écris un message avant d'envoyer.",
      "requiredTitle": "Message requis",
      "sentDescription": "Merci ! On revient vers toi rapidement.",
      "sentTitle": "Envoyé"
    }
  },
  "creator": {
    "bio": "Passionné de cinéma et de technologie, j'ai créé RenameFlow parce que j'en avais marre de renommer mes fichiers média à la main. Après des années à galérer avec des noms de fichiers incompréhensibles, j'ai décidé de créer l'outil que j'aurais toujours voulu avoir.",
    "cta": "En savoir plus sur moi",
    "greeting": "Salut, moi c'est Thomas 👋",
    "label": "À propos du créateur",
    "mission": "Mon objectif ? Rendre l'organisation de votre médiathèque aussi simple qu'un clic. Plus de fichiers mal nommés, plus de temps perdu – juste une bibliothèque parfaitement organisée.",
    "photoLinkLabel": "Thomas Bidault sur LinkedIn"
  },
  "desktopLink": {
    "alreadySent": "Lien déjà envoyé",
    "alreadySentDesc": "Regarde ta boîte mail (et les spams). Tu pourras le renvoyer dans une heure.",
    "copied": "Lien copié",
    "copiedDesc": "Colle-le dans Chrome, Edge ou Opera sur ton ordinateur.",
    "copyCta": "Copier le lien pour mon ordinateur",
    "cta": "M'envoyer le lien pour mon ordinateur",
    "error": "Impossible d'envoyer l'email",
    "errorCopied": "Le lien a été copié à la place : colle-le dans Chrome, Edge ou Opera sur ton ordinateur.",
    "retry": "Réessayer l'envoi",
    "sending": "Envoi…",
    "sent": "Lien envoyé",
    "sentDesc": "Ouvre l'email sur ton ordinateur pour commencer à renommer.",
    "sentShort": "Lien envoyé, regarde ta boîte mail"
  },
  "errorPage": {
    "description": "Un problème est survenu pendant le chargement de cette page. Tu peux réessayer ou revenir à l'accueil.",
    "home": "Retour à l'accueil",
    "retry": "Réessayer",
    "title": "Cette page ne s'est pas chargée"
  },
  "header": {
    "darkTheme": "Passer au thème sombre",
    "lightTheme": "Passer au thème clair"
  },
  "languages": {
    "french": "Français",
    "german": "Allemand",
    "spanish": "Espagnol"
  },
  "legal": {
    "common": {
      "documents": "Documents juridiques",
      "eyebrow": "Informations légales",
      "lastUpdatedLabel": "Dernière mise à jour :",
      "onThisPage": "Sur cette page",
      "questionsText": "Pour toute question sur ce document ou sur vos données personnelles, écrivez-nous par e-mail ou utilisez le formulaire de contact.",
      "questionsTitle": "Une question ?"
    },
    "fields": {
      "address": "Adresse",
      "email": "E-mail",
      "legalForm": "Statut juridique",
      "name": "Nom",
      "phone": "Téléphone",
      "region": "Région d'hébergement des données",
      "registration": "Immatriculation",
      "siret": "SIRET",
      "vatNumber": "N° de TVA intracommunautaire",
      "website": "Site web"
    },
    "links": {
      "account": "Ouvrir mon compte",
      "contact": "Formulaire de contact",
      "cookies": "Politique cookies",
      "history": "Ouvrir mon historique",
      "notice": "Mentions légales",
      "pricing": "Tarifs",
      "privacy": "Politique de confidentialité",
      "terms": "Conditions générales d'utilisation et de vente"
    },
    "notice": {
      "contact": {
        "text": "Pour toute question relative au site ou au service, écrivez-nous par e-mail ou utilisez le formulaire de contact.",
        "title": "Contact"
      },
      "credits": {
        "anilist": "Métadonnées d'anime fournies par AniList.",
        "intro": "RenameFlow identifie vos médias à l'aide des services suivants :",
        "musicbrainz": "Métadonnées musicales fournies par MusicBrainz (MetaBrainz Foundation) et pochettes fournies par le Cover Art Archive.",
        "opensubtitles": "Sous-titres fournis par OpenSubtitles.com.",
        "title": "Sources de données",
        "tmdb": "Ce produit utilise l'API TMDB mais n'est ni approuvé ni certifié par TMDB.",
        "tvdb": "Métadonnées de séries fournies par TheTVDB."
      },
      "data": {
        "text": "Le traitement de vos données personnelles est décrit dans notre politique de confidentialité, et l'utilisation des cookies dans notre politique cookies. L'utilisation du service est régie par nos conditions générales d'utilisation et de vente.",
        "title": "Données personnelles et cookies"
      },
      "director": {
        "text": "Le directeur de la publication est {{name}}.",
        "title": "Directeur de la publication"
      },
      "hosting": {
        "data": "Les données de l'application (comptes, historique de renommage, abonnements) sont hébergées par :",
        "platform": "Il est conçu et déployé avec la plateforme Lovable, exploitée par :",
        "title": "Hébergement",
        "web": "Le site est diffusé par :"
      },
      "intro": "Conformément aux articles 1-1 et 19 de la loi n° 2004-575 du 21 juin 2004 pour la confiance dans l'économie numérique (LCEN), dans sa rédaction issue de la loi n° 2024-449 du 21 mai 2024 (SREN), cette page présente l'éditeur et les hébergeurs du site renameflow.com.",
      "ip": {
        "text": "Le nom et le logo RenameFlow, le site et l'application (code, interface, textes et éléments graphiques) sont protégés par le droit de la propriété intellectuelle. Toute reproduction ou représentation, totale ou partielle, sans autorisation écrite préalable est interdite, sauf dans les cas prévus par la loi.",
        "thirdParty": "Les titres, affiches et autres métadonnées de films, séries et albums affichés dans l'application proviennent de bases de données tierces et restent la propriété de leurs titulaires respectifs.",
        "title": "Propriété intellectuelle"
      },
      "payments": {
        "card": "Les données de carte sont saisies sur la page de paiement sécurisée de Stripe : RenameFlow n'a jamais accès à votre numéro de carte complet.",
        "text": "Les paiements en ligne sont traités par :",
        "title": "Paiements"
      },
      "publisher": {
        "intro": "Le site renameflow.com et le service RenameFlow sont édités par :",
        "title": "Éditeur"
      },
      "seoDescription": "Éditeur, directeur de la publication, hébergeurs et coordonnées de RenameFlow (renameflow.com).",
      "seoTitle": "Mentions légales — RenameFlow",
      "title": "Mentions légales"
    },
    "privacy": {
      "changes": {
        "p1": "Nous pouvons mettre à jour cette politique pour tenir compte de l'évolution du Service ou de la réglementation. La date de la dernière mise à jour figure en haut de cette page ; nous vous informons de toute modification substantielle par e-mail ou dans l'application.",
        "title": "Modification de cette politique"
      },
      "controller": {
        "p1": "Le responsable des traitements décrits dans cette politique est {{publisher}}, éditeur de RenameFlow (coordonnées complètes dans les mentions légales).",
        "p2": "Compte tenu de la taille du Service, aucun délégué à la protection des données n'a été désigné : les demandes sont traitées directement par l'éditeur.",
        "title": "Responsable du traitement"
      },
      "cookies": {
        "p1": "Nous utilisons des cookies et des technologies similaires (le stockage local de votre navigateur) comme décrit dans notre politique cookies. Les cookies de mesure d'audience et publicitaires ne sont déposés qu'avec votre consentement.",
        "p2": "Avant que vous ayez fait un choix, et si vous refusez, la balise Google envoie tout de même à Google les signaux sans cookie décrits plus haut (Consent Mode v2) ; elle ne dépose ni ne lit aucun cookie.",
        "title": "Cookies et stockage local"
      },
      "intro": "RenameFlow est conçu pour fonctionner en local : vos fichiers multimédias sont renommés sur votre ordinateur et ne sont jamais envoyés sur nos serveurs. Pour fournir le Service, nous traitons néanmoins certaines données personnelles. Cette politique explique lesquelles, pourquoi, pendant combien de temps et quels sont vos droits, conformément au Règlement général sur la protection des données (RGPD) et à la loi Informatique et Libertés.",
      "labels": {
        "basis": "Base légale",
        "data": "Données",
        "location": "Localisation",
        "purpose": "Finalités",
        "retention": "Durée de conservation",
        "role": "Rôle"
      },
      "local": {
        "p1": "Le contenu de vos fichiers multimédias n'est jamais envoyé : les fichiers sont lus et renommés localement grâce à l'API File System Access de votre navigateur. Les autorisations d'accès à vos dossiers peuvent être mémorisées par votre navigateur (IndexedDB) pour vous permettre de les rouvrir ; elles ne quittent jamais votre appareil.",
        "p2": "En revanche, pour identifier vos médias et conserver votre historique, certaines informations issues de vos fichiers sont transmises à nos serveurs et à des services de métadonnées, comme détaillé ci-dessous : notamment les titres détectés dans vos noms de fichiers, les noms de fichiers eux-mêmes lorsque vous recherchez des sous-titres et, une fois un renommage validé, les noms de fichiers d'origine et les nouveaux noms.",
        "title": "Ce qui reste sur votre ordinateur"
      },
      "minors": {
        "p1": "Le Service ne s'adresse pas aux enfants de moins de 15 ans. Si vous avez moins de 15 ans, vous ne pouvez l'utiliser, et consentir aux cookies de mesure d'audience, qu'avec l'accord d'un titulaire de l'autorité parentale.",
        "title": "Mineurs"
      },
      "processing": {
        "account": {
          "basis": "Exécution du contrat (art. 6.1.b du RGPD) ; pour le questionnaire facultatif, notre intérêt légitime à comprendre comment les utilisateurs découvrent le Service (art. 6.1.f) ; pour la manière dont vous nous avez connus, votre consentement à la mesure d'audience (art. 6.1.a).",
          "data": "Adresse e-mail, mot de passe (conservé uniquement sous forme hachée par notre prestataire d'authentification), nom d'affichage, préférences de langue et de nommage, modèles de nommage personnalisés, réponses au questionnaire d'accueil facultatif, comment vous nous avez connus (paramètres UTM du lien suivi et site d'origine, enregistrés à l'inscription uniquement si vous avez accepté la mesure d'audience), dates de création du compte et de connexion.",
          "purpose": "Créer et gérer votre compte, vous authentifier et vous fournir le Service.",
          "retention": "Pendant toute la durée du compte. En l'absence de connexion pendant 3 ans, le compte peut être supprimé après information préalable par e-mail.",
          "title": "Votre compte"
        },
        "analytics": {
          "basis": "Votre consentement (art. 6.1.a du RGPD et article 82 de la loi Informatique et Libertés), recueilli via le bandeau cookies et que vous pouvez retirer à tout moment avec le lien « Gérer les cookies » ou depuis la page Politique cookies. Sans votre consentement, Clarity n'est pas chargé et aucun cookie de mesure d'audience ou publicitaire n'est déposé.",
          "data": "Pages consultées, clics, défilement et mouvements de souris, appareil, navigateur, localisation approximative déduite de l'adresse IP, identifiants pseudonymes stockés dans des cookies ; lorsque vous êtes connecté, Microsoft Clarity peut recevoir l'identifiant interne de votre compte, jamais votre adresse e-mail.",
          "purpose": "Mesurer l'audience du site (Google Analytics 4) et comprendre les problèmes d'ergonomie grâce à des cartes de chaleur et des enregistrements de sessions (Microsoft Clarity). Clarity masque le contenu des champs de formulaire, mais un enregistrement peut montrer d'autres textes affichés à l'écran, comme des noms de fichiers dans l'application. Si vous acceptez tous les cookies, les cookies publicitaires de Google sont également autorisés afin de mesurer l'efficacité de nos campagnes publicitaires ; RenameFlow n'affiche aucune publicité.",
          "retention": "Cookies Google Analytics : {{gaMonths}} mois au plus ; cookies Microsoft Clarity : 13 mois au plus. Données Google Analytics : 14 mois au plus. Clarity : enregistrements de sessions 30 jours (jusqu'à 13 mois pour ceux que nous conservons pour analyse), statistiques agrégées 13 mois.",
          "title": "Mesure d'audience et enregistrement de sessions (uniquement avec votre consentement)"
        },
        "billing": {
          "basis": "Exécution du contrat (art. 6.1.b) ; respect de nos obligations comptables et fiscales (art. 6.1.c) ; notre intérêt légitime à prévenir la fraude (art. 6.1.f).",
          "data": "Adresse e-mail, offre achetée, montant, dates, identifiants client, d'abonnement et de paiement Stripe, numéro de commande de l'offre À vie ; pour un achat effectué sans compte, l'adresse e-mail saisie lors du paiement jusqu'au rattachement de l'achat à un compte. Les données de carte sont collectées directement par Stripe et ne transitent jamais par nos serveurs.",
          "purpose": "Traiter les commandes et les paiements, gérer les abonnements, activer les achats effectués sans compte (y compris par un e-mail de rappel si un achat n'a pas été activé), traiter les remboursements, prévenir la fraude et respecter nos obligations comptables.",
          "retention": "Pendant toute la relation contractuelle, puis 10 ans pour les pièces comptables (article L123-22 du Code de commerce).",
          "title": "Achats et facturation"
        },
        "consentMode": {
          "basis": "Notre intérêt légitime à mesurer l'audience du site de manière agrégée (art. 6.1.f du RGPD).",
          "data": "Page consultée et page de provenance, état du consentement, informations techniques sur votre navigateur et votre appareil et, comme pour toute requête émise par votre navigateur, votre adresse IP ; aucun cookie ni identifiant publicitaire.",
          "purpose": "La balise Google est chargée sur chaque page en mode Consentement v2 (Consent Mode v2) : avant que vous ayez fait un choix, et si vous refusez, elle envoie ces signaux sans cookie afin que Google produise des statistiques d'audience et de campagnes agrégées et modélisées.",
          "retention": "Nous ne recevons jamais ces signaux individuellement. Google les traite selon sa propre politique ; les données Google Analytics qui en résultent sont conservées 14 mois au plus.",
          "title": "Signaux Google sans cookie avant votre choix"
        },
        "emails": {
          "basis": "Exécution du contrat (art. 6.1.b) ; pour les e-mails de prise en main, notre intérêt légitime à vous aider à utiliser le Service (art. 6.1.f) — vous pouvez vous y opposer à tout moment en nous écrivant ou, le cas échéant, grâce au lien de désinscription figurant dans ces e-mails.",
          "data": "Adresse e-mail, langue, contenu et statut de distribution des e-mails qui vous sont envoyés.",
          "purpose": "Envoyer les e-mails nécessaires au Service (confirmation d'adresse, réinitialisation du mot de passe, confirmations de commande, liens que vous demandez à recevoir, par exemple pour ouvrir l'application sur votre ordinateur) et, le cas échéant, des e-mails d'aide à la prise en main. Nous n'envoyons pas de lettre d'information et ne vendons jamais votre adresse e-mail.",
          "retention": "Les journaux d'envoi sont conservés par notre prestataire d'e-mails pendant une durée limitée (30 jours au plus) ; nous conservons la trace des e-mails de service déjà envoyés pendant toute la durée du compte.",
          "title": "E-mails"
        },
        "fileNames": "Les noms de fichiers peuvent révéler des informations vous concernant (par exemple ce que vous regardez ou écoutez). La rubrique Historique de l'application affiche vos {{limit}} renommages les plus récents ; depuis cette rubrique, vous pouvez à tout moment exporter l'intégralité de votre historique en JSON ou le supprimer entièrement, et la suppression de votre compte l'efface également.",
        "intro": "Pour chaque traitement, voici les données concernées, l'usage que nous en faisons, la base légale (article 6 du RGPD) et leur durée de conservation.",
        "product": {
          "basis": "Notre intérêt légitime à améliorer le Service (art. 6.1.f). Vous pouvez vous y opposer à tout moment en nous écrivant.",
          "data": "Pour les utilisateurs connectés : le nom d'événements produit (par exemple ouverture de l'application, sélection de fichiers, renommage réussi, limite atteinte) avec leur date et des détails techniques (nombre de fichiers, compatibilité du navigateur), rattachés à l'identifiant de votre compte. Ces événements ne contiennent jamais votre adresse e-mail ni vos noms de fichiers.",
          "purpose": "Mesurer et améliorer le Service : comprendre où les nouveaux utilisateurs rencontrent des difficultés, corriger les erreurs et faire évoluer le produit. Ces statistiques internes sont stockées dans notre propre base de données, ne sont pas partagées avec des tiers et ne servent pas à la publicité.",
          "retention": "24 mois, après quoi les événements sont supprimés ou anonymisés.",
          "title": "Statistiques d'utilisation du produit"
        },
        "renaming": {
          "basis": "Exécution du contrat (art. 6.1.b du RGPD).",
          "data": "Titres, années, numéros de saison et d'épisode détectés dans vos noms de fichiers, requêtes de recherche et langue demandée ; pour les sous-titres, le nom du fichier sans son extension (ou la recherche que vous saisissez) et une empreinte technique (hash) du fichier vidéo calculée sur votre ordinateur ; pour chaque renommage validé : nom de fichier d'origine, nouveau nom, titre identifié, type, année, date et identifiant de lot ; compteurs d'utilisation quotidiens et mensuels.",
          "purpose": "Identifier vos médias auprès des services de métadonnées, vous proposer des noms, vous permettre de consulter, d'exporter et de retrouver les noms d'origine de vos renommages passés, et appliquer les limites de l'offre gratuite.",
          "retention": "Les requêtes de recherche ne sont pas enregistrées dans notre base de données une fois la demande traitée (elles peuvent figurer brièvement dans des journaux techniques). L'historique de renommage est conservé jusqu'à ce que vous supprimiez les entrées concernées (rubrique Historique), que vous nous demandiez de l'effacer ou que vous supprimiez votre compte. Les compteurs d'utilisation sont conservés pendant toute la durée du compte.",
          "title": "Identification des médias et historique de renommage"
        },
        "security": {
          "basis": "Notre intérêt légitime à assurer la sécurité et le bon fonctionnement du Service (art. 6.1.f).",
          "data": "Adresse IP, type de navigateur (user agent), dates et heures des connexions et des requêtes, domaine de l'adresse e-mail utilisée à l'inscription, journaux techniques de nos serveurs et prestataires.",
          "purpose": "Sécuriser le Service et les comptes, limiter les abus (limitation du nombre de requêtes par adresse IP, blocage des adresses e-mail jetables, détection des comptes multiples) et diagnostiquer les erreurs.",
          "retention": "Compteurs de limitation des requêtes : 48 heures ; sessions de connexion : jusqu'à la déconnexion ou à leur expiration ; journaux techniques : de quelques jours à quelques semaines selon le prestataire, et 12 mois au plus.",
          "title": "Sécurité et prévention des abus"
        },
        "support": {
          "basis": "Notre intérêt légitime à vous répondre (art. 6.1.f) ; notre obligation légale pour les demandes d'exercice de droits (art. 6.1.c).",
          "data": "Nom et adresse e-mail que vous indiquez, contenu de votre message et informations nécessaires au traitement de votre demande.",
          "purpose": "Répondre à vos questions, retours et demandes, y compris vos demandes d'exercice de droits.",
          "retention": "3 ans à compter de notre dernier échange.",
          "title": "Assistance et contact"
        },
        "title": "Données traitées, finalités, bases légales et durées de conservation"
      },
      "recipients": {
        "authorities": "Nous pouvons également communiquer des données aux autorités compétentes lorsque la loi l'exige.",
        "cloudflare": {
          "location": "États-Unis (réseau mondial).",
          "role": "Diffusion du site et protection contre les attaques (sous-traitant)."
        },
        "google": {
          "location": "Irlande (UE) et États-Unis.",
          "role": "Mesure d'audience (Google Analytics 4) et mesure publicitaire — uniquement avec votre consentement.",
          "roleConsentMode": "Mesure d'audience (Google Analytics 4) et mesure publicitaire avec votre consentement ; avant votre choix, ou si vous refusez, uniquement les signaux sans cookie décrits plus haut."
        },
        "googleAssets": {
          "location": "États-Unis (réseau mondial).",
          "role": "Fourniture des polices de caractères et de l'icône du site, que votre navigateur charge directement auprès de Google sur chaque page, avant tout choix en matière de cookies : Google reçoit votre adresse IP et des informations techniques (navigateur, adresse de la page), sans cookie. Base légale : notre intérêt légitime à afficher correctement le site (art. 6.1.f du RGPD)."
        },
        "intro": "Vos données sont destinées à l'éditeur et ne sont jamais vendues. Elles ne sont communiquées qu'aux prestataires suivants, strictement pour les finalités décrites ci-dessus :",
        "lovable": {
          "location": "Suède (UE), avec d'éventuels transferts hors de l'UE.",
          "role": "Plateforme de conception, d'hébergement et d'exploitation de l'application (sous-traitant)."
        },
        "metadata": "Services de métadonnées : pour identifier vos médias et trouver des sous-titres, nos serveurs envoient des requêtes de recherche (titre détecté, année, saison et épisode, langue et, pour les sous-titres, le nom du fichier sans son extension ou la recherche que vous avez saisie, ainsi que l'empreinte du fichier) à The Movie Database (TMDB), TheTVDB, AniList, MusicBrainz et OpenSubtitles.com, principalement situés aux États-Unis. Ces requêtes partant de nos serveurs, ces services ne reçoivent ni votre adresse e-mail ni l'identifiant de votre compte. En revanche, les affiches et pochettes sont chargées directement par votre navigateur depuis les serveurs d'images de TMDB, TheTVDB, AniList et du Cover Art Archive, et les fichiers de sous-titres sont téléchargés directement depuis OpenSubtitles.com : ces services reçoivent donc votre adresse IP, comme pour tout contenu web. Ils traitent ces données selon leurs propres politiques de confidentialité.",
        "microsoft": {
          "location": "Irlande (UE) et États-Unis.",
          "role": "Cartes de chaleur et enregistrements de sessions (Microsoft Clarity) — uniquement avec votre consentement."
        },
        "productHunt": {
          "location": "États-Unis.",
          "role": "Affichage du badge « Featured on Product Hunt » en bas des pages du site : votre navigateur charge cette image directement depuis les serveurs de Product Hunt lorsque le pied de page s'affiche, si bien que Product Hunt reçoit votre adresse IP et des informations techniques (navigateur, adresse de la page) ; son prestataire Cloudflare peut déposer un cookie de sécurité (__cf_bm, 30 minutes). Base légale : notre intérêt légitime à présenter cette distinction (art. 6.1.f du RGPD)."
        },
        "resend": {
          "location": "États-Unis.",
          "role": "Envoi des e-mails (sous-traitant)."
        },
        "startupFame": {
          "location": "Servi depuis le réseau mondial de Vercel Inc. (États-Unis).",
          "role": "Affichage du badge « Featured on Startup Fame » en bas des pages du site : votre navigateur charge cette image directement depuis les serveurs de Startup Fame lorsque le pied de page s'affiche, si bien que Startup Fame reçoit votre adresse IP et des informations techniques (navigateur, adresse de la page), sans cookie. Base légale : notre intérêt légitime à présenter cette distinction (art. 6.1.f du RGPD)."
        },
        "stripe": {
          "location": "Irlande (UE), avec des transferts vers Stripe, Inc. aux États-Unis.",
          "role": "Paiements, abonnements et portail client (sous-traitant, et responsable de traitement distinct pour ses propres obligations légales, comme la lutte contre la fraude et le blanchiment)."
        },
        "supabase": {
          "location": "Singapour (société) ; infrastructure cloud pouvant être située hors de l'UE.",
          "role": "Base de données, authentification et fonctions serveur (sous-traitant)."
        },
        "title": "Destinataires et sous-traitants"
      },
      "required": {
        "p1": "Votre adresse e-mail et un mot de passe sont nécessaires à la création d'un compte : sans eux, nous ne pouvons pas vous fournir le Service. Les autres informations (nom d'affichage, réponses au questionnaire) sont facultatives. Nous ne prenons aucune décision fondée exclusivement sur un traitement automatisé produisant des effets juridiques à votre égard.",
        "title": "Données obligatoires et décisions automatisées"
      },
      "rights": {
        "access": "Accès : obtenir la confirmation que vos données sont traitées et en recevoir une copie.",
        "complaint": "Si vous estimez que vos droits ne sont pas respectés, vous pouvez introduire une réclamation auprès de la CNIL (Commission nationale de l'informatique et des libertés, 3 place de Fontenoy, TSA 80715, 75334 Paris Cedex 07, www.cnil.fr) ou de l'autorité de protection des données de votre pays de résidence.",
        "consent": "Retrait du consentement : retirer à tout moment votre consentement aux cookies de mesure d'audience avec le lien « Gérer les cookies » en bas des pages du site et dans le menu de l'application, ou depuis la page Politique cookies, sans remettre en cause la licéité des traitements effectués auparavant.",
        "erasure": "Effacement : vous pouvez supprimer vous-même votre compte à tout moment depuis la rubrique Compte de l'application, ce qui efface votre profil, votre historique de renommage, vos préférences et vos données d'utilisation ; les données que la loi nous oblige à conserver (pièces comptables) sont conservées séparément pendant la durée légale. Vous pouvez aussi supprimer tout votre historique de renommage à tout moment depuis la rubrique Historique, ou nous demander de le faire.",
        "exercise": "Pour exercer vos droits, écrivez à {{email}} depuis l'adresse e-mail de votre compte (ou indiquez-nous le compte concerné). Nous vous répondons dans un délai d'un mois, qui peut être prolongé de deux mois pour les demandes complexes. En cas de doute raisonnable sur votre identité, nous pouvons vous demander des informations complémentaires.",
        "intro": "Conformément au RGPD, vous disposez des droits suivants sur vos données :",
        "objection": "Opposition : vous opposer à tout moment, pour des raisons tenant à votre situation particulière, aux traitements fondés sur notre intérêt légitime (statistiques produit, e-mails de prise en main), et sans motif à toute prospection.",
        "portability": "Portabilité : recevoir les données que vous nous avez fournies dans un format structuré et lisible par machine ; la rubrique Historique exporte en JSON l'intégralité de votre historique de renommage, et nous vous transmettons le reste de vos données sur demande.",
        "postMortem": "Directives post mortem : définir des directives relatives à la conservation, à l'effacement et à la communication de vos données après votre décès (article 85 de la loi Informatique et Libertés).",
        "rectification": "Rectification : faire corriger des données inexactes ; la plupart de vos informations sont modifiables directement dans l'application.",
        "restriction": "Limitation : nous demander de geler temporairement l'utilisation de vos données, par exemple le temps d'en vérifier l'exactitude.",
        "title": "Vos droits"
      },
      "security": {
        "p1": "Nous mettons en œuvre des mesures techniques et organisationnelles appropriées : connexions chiffrées (HTTPS), contrôle d'accès dans notre base de données pour que chaque utilisateur n'accède qu'à ses propres données, mots de passe conservés sous forme hachée, accès aux outils d'administration réservé à l'éditeur, et paiements traités par un prestataire certifié PCI DSS.",
        "title": "Sécurité"
      },
      "title": "Politique de confidentialité",
      "transfers": {
        "p1": "Certains des prestataires ci-dessus sont situés, ou font appel à des sous-traitants situés, hors de l'Espace économique européen, notamment aux États-Unis et à Singapour. Ces transferts sont encadrés par la décision d'adéquation de la Commission européenne relative aux États-Unis (Data Privacy Framework UE–États-Unis) lorsque le destinataire est certifié, et à défaut par les clauses contractuelles types de la Commission européenne, complétées si nécessaire par des mesures supplémentaires telles que le chiffrement. Vous pouvez obtenir une copie de ces garanties en nous écrivant.",
        "title": "Transferts hors de l'Union européenne"
      }
    },
    "terms": {
      "account": {
        "p1": "L'utilisation du Service nécessite un compte créé avec une adresse e-mail valide et un mot de passe. Vous vous engagez à fournir des informations exactes et à garder vos identifiants confidentiels ; toute action effectuée depuis votre compte est réputée l'avoir été par vous.",
        "p2": "Chaque personne ne peut détenir qu'un seul compte gratuit. Pour souscrire une offre payante, vous devez être majeur ou disposer de l'autorisation de votre représentant légal.",
        "p3": "Vous pouvez supprimer votre compte à tout moment depuis la rubrique Compte de l'application. La suppression est définitive et met fin aux présentes Conditions : sous réserve de votre droit de rétractation (article 8), tout abonnement en cours est résilié immédiatement sans remboursement de la période entamée, et l'accès À vie éventuellement rattaché au compte est définitivement perdu.",
        "title": "Compte utilisateur"
      },
      "changes": {
        "p1": "Nous pouvons modifier les présentes Conditions, notamment pour tenir compte de l'évolution du Service ou de la réglementation. La version applicable est celle en vigueur à la date de votre commande ou de votre utilisation. Toute modification substantielle vous est notifiée par e-mail ou dans l'application au moins 30 jours avant son entrée en vigueur.",
        "p2": "Si vous refusez une modification, vous pouvez résilier votre abonnement sans frais avant son entrée en vigueur. Les modifications portant sur le prix ou sur les caractéristiques essentielles d'une offre payante ne vous sont opposables qu'à l'issue de ce délai et jamais rétroactivement ; elles ne peuvent réduire les caractéristiques essentielles d'un accès À vie déjà acquis. La poursuite de l'utilisation du Service après la date d'entrée en vigueur vaut acceptation des nouvelles Conditions.",
        "title": "Modification des Conditions"
      },
      "conformity": {
        "p1": "En tant que consommateur, vous bénéficiez de la garantie légale de conformité applicable aux contenus et services numériques (articles L224-25-1 et suivants du Code de la consommation). Le Service étant fourni de manière continue (abonnement ou accès À vie), nous répondons des défauts de conformité qui apparaissent pendant toute la durée de fourniture.",
        "p2": "En cas de défaut de conformité, vous avez droit à la mise en conformité du Service, sans frais et dans un délai raisonnable. Si elle est impossible, n'intervient pas dans un délai raisonnable ou si le défaut est grave, vous pouvez obtenir une réduction du prix ou la résolution du contrat avec remboursement. Signalez-nous tout problème à {{email}}.",
        "p3": "Nous fournissons les mises à jour nécessaires au maintien de la conformité du Service. Nous pouvons également faire évoluer le Service ; si une évolution a une incidence négative importante sur votre accès ou votre utilisation, nous vous en informons à l'avance et vous pouvez résilier le contrat sans frais dans un délai de 30 jours.",
        "title": "Garantie légale de conformité"
      },
      "contact": {
        "p1": "Pour toute question, réclamation ou demande relative à votre compte ou à une commande, contactez-nous :",
        "title": "Service client"
      },
      "data": {
        "p1": "Nous traitons vos données personnelles conformément au Règlement général sur la protection des données (RGPD) et à la loi Informatique et Libertés. Les finalités, destinataires, durées de conservation et vos droits sont décrits dans notre politique de confidentialité, et l'utilisation des cookies dans notre politique cookies.",
        "title": "Données personnelles"
      },
      "disputes": {
        "mediator": "Le médiateur de la consommation que nous avons désigné est :",
        "p1": "Pour toute réclamation, contactez-nous d'abord à {{email}} : nous ferons notre possible pour trouver une solution amiable.",
        "p2": "Conformément aux articles L611-1 et suivants du Code de la consommation, si votre réclamation écrite auprès de nous n'a pas abouti, vous pouvez recourir gratuitement à un médiateur de la consommation, dans un délai d'un an à compter de cette réclamation écrite.",
        "title": "Réclamations et médiation de la consommation"
      },
      "intro": "Les présentes conditions régissent votre utilisation de RenameFlow et tout achat d'une offre payante. Merci de les lire attentivement : la création d'un compte ou la passation d'une commande vaut acceptation de ces conditions.",
      "ip": {
        "p1": "Le Service, ses logiciels, son interface, ses textes et la marque RenameFlow sont la propriété de l'Éditeur. Vous bénéficiez d'un droit d'utilisation personnel, non exclusif et incessible du Service, pour la durée de votre compte et conformément aux présentes Conditions. Les métadonnées et images issues de bases tierces restent la propriété de leurs titulaires et sont soumises à leurs propres conditions.",
        "title": "Propriété intellectuelle"
      },
      "law": {
        "p1": "Les présentes Conditions sont soumises au droit français. Si vous êtes un consommateur résidant dans un autre pays de l'Union européenne, vous bénéficiez en outre des dispositions impératives protectrices des consommateurs de votre pays de résidence.",
        "p2": "En cas de litige, et à défaut de solution amiable, le consommateur peut saisir, à son choix, l'une des juridictions territorialement compétentes en vertu du Code de procédure civile ou la juridiction du lieu où il demeurait au moment de la conclusion du contrat ou de la survenance du fait dommageable (article R631-3 du Code de la consommation).",
        "p3": "Les présentes Conditions sont rédigées en français ; les traductions sont fournies à titre de commodité et seule la version française fait foi.",
        "title": "Droit applicable et juridiction"
      },
      "liability": {
        "p1": "Vous gardez la maîtrise de chaque renommage : le Service affiche un aperçu des noms proposés, ne les applique qu'après votre validation, et l'historique vous permet de retrouver les noms d'origine. Les métadonnées proviennent de bases tierces et peuvent être incomplètes ou inexactes : vérifiez l'aperçu avant de valider.",
        "p2": "Le renommage porte sur des fichiers stockés sur vos propres appareils, sous votre contrôle. Nous vous recommandons vivement de conserver une sauvegarde de vos fichiers, en particulier avant toute opération par lots importante.",
        "p3": "Nous sommes responsables de la bonne exécution des obligations prévues par les présentes Conditions. Notre responsabilité ne peut toutefois être engagée lorsque le dommage est imputable à votre propre fait (par exemple la validation d'un renommage dont l'erreur était visible dans l'aperçu), au fait imprévisible et insurmontable d'un tiers ou à un cas de force majeure.",
        "p4": "Le Service est fourni en ligne et peut être temporairement interrompu pour maintenance, mise à jour ou pour des raisons indépendantes de notre volonté. Nous mettons en œuvre des moyens raisonnables pour en assurer la disponibilité.",
        "p5": "Si vous utilisez le Service à des fins professionnelles, notre responsabilité totale est limitée aux sommes que vous nous avez versées au cours des douze mois précédant le fait générateur, et les dommages indirects (perte de données, perte d'exploitation) sont exclus.",
        "p6": "Aucune stipulation des présentes Conditions ne limite les droits que vous tenez, en tant que consommateur, de dispositions légales impératives.",
        "title": "Responsabilité"
      },
      "lifetime": {
        "p1": "L'offre À vie est un paiement unique qui donne au compte utilisé lors de l'achat l'accès aux fonctionnalités incluses dans les offres Pro, y compris celles qui y seraient ajoutées ultérieurement, pendant toute la durée d'exploitation du Service par l'Éditeur ou ses successeurs. Elle est personnelle et incessible.",
        "p2": "Elle est proposée en édition limitée de {{cap}} exemplaires au total ; une fois ceux-ci vendus, l'offre n'est plus disponible. Le nombre d'exemplaires restants affiché l'est à titre indicatif.",
        "p3": "« À vie » s'entend de la durée de vie du Service, et non de celle de l'utilisateur. En cas d'arrêt définitif du Service, nous vous en informerons par e-mail au moins trois mois à l'avance, sans préjudice des droits que vous tenez de la loi.",
        "p4": "L'accès À vie peut être retiré en cas de remboursement, de contestation du paiement (rétrofacturation) ou de manquement grave aux présentes Conditions.",
        "title": "Offre À vie"
      },
      "order": {
        "p1": "Pour souscrire, choisissez une offre sur la page des tarifs ou dans l'application, puis réglez sur la page sécurisée de notre prestataire de paiement Stripe. Avant de payer, vous pouvez vérifier l'offre choisie, son prix et les présentes Conditions. Le contrat est conclu à la confirmation de votre paiement.",
        "p2": "Le paiement s'effectue par carte bancaire ou par tout autre moyen proposé par Stripe. Les abonnements sont débités à la commande puis au début de chaque nouvelle période ; l'offre À vie n'est débitée qu'une seule fois. Les données de paiement sont traitées exclusivement par Stripe Payments Europe, Limited : nous n'avons jamais accès à votre numéro de carte complet.",
        "p3": "Une confirmation de commande vous est adressée par e-mail. Votre historique de facturation est disponible dans le portail client Stripe, accessible depuis votre compte, ou sur simple demande par e-mail. Si vous payez sans être connecté, l'achat est rattaché à l'adresse e-mail utilisée lors du paiement et s'active lorsque vous vous connectez ou créez un compte avec cette adresse.",
        "p4": "En cas d'échec du paiement d'un renouvellement, Stripe peut effectuer de nouvelles tentatives ; en cas d'échec persistant, l'accès Pro est suspendu et votre compte repasse à l'offre gratuite jusqu'à régularisation du paiement.",
        "title": "Commande et paiement"
      },
      "plans": {
        "annual": "Pro Annuel : {{price}} par an, abonnement reconduit automatiquement chaque année.",
        "free": "Gratuit : {{files}} fichiers renommés par jour et {{subtitles}} téléchargements de sous-titres par mois, sans frais et sans carte bancaire.",
        "intro": "Le Service est proposé selon les offres suivantes :",
        "lifetime": "À vie : {{price}} en paiement unique, dans la limite de {{cap}} exemplaires au total, donnant accès aux fonctionnalités Pro pendant toute la durée d'exploitation du Service (voir l'article 7).",
        "monthly": "Pro Mensuel : {{price}} par mois, abonnement reconduit automatiquement chaque mois.",
        "p2": "Les offres Pro (Pro Mensuel, Pro Annuel ou À vie) lèvent la limite quotidienne de fichiers et la limite mensuelle de sous-titres, dans les limites d'un usage normal (article 9). Les fonctionnalités incluses dans chaque offre sont celles présentées sur la page des tarifs au moment de votre commande.",
        "p3": "Les prix sont indiqués en euros, toutes taxes comprises. Le prix applicable est celui affiché au moment de la commande et confirmé sur la page de paiement Stripe.",
        "p4": "Nous pouvons faire évoluer nos prix pour l'avenir. Une modification de prix ne s'applique jamais à une commande déjà payée ; pour un abonnement en cours, elle ne s'applique qu'à compter du renouvellement suivant, après information préalable dans les conditions de l'article 15.",
        "title": "Offres et prix"
      },
      "purpose": {
        "p1": "RenameFlow (le « Service »), accessible à l'adresse renameflow.com, est édité par {{publisher}} (l'« Éditeur », « nous »). Les informations complètes relatives à l'Éditeur figurent dans les mentions légales.",
        "p2": "Les présentes conditions générales d'utilisation et de vente (les « Conditions ») définissent les modalités d'accès et d'utilisation du Service par tout utilisateur (« vous ») ainsi que les conditions de vente des offres payantes. Elles s'appliquent à l'exclusion de toutes autres conditions.",
        "p3": "Sauf mention contraire, les Conditions s'adressent à des consommateurs. Si vous utilisez le Service à des fins professionnelles, les dispositions réservées aux consommateurs (notamment le droit de rétractation, la garantie légale de conformité et la médiation de la consommation) ne vous sont pas applicables.",
        "title": "Éditeur et objet"
      },
      "refunds": {
        "p1": "En dehors des cas prévus par la loi (rétractation, défaut de conformité, défaut d'information sur la reconduction) et par les présentes Conditions, les sommes versées ne sont pas remboursables, notamment pour une période entamée ou pour un accès À vie déjà activé.",
        "p2": "Les paiements en double ou erronés sont intégralement remboursés dès que nous en avons connaissance.",
        "p3": "Les remboursements sont effectués sur le moyen de paiement utilisé lors de la commande et peuvent apparaître sous 5 à 10 jours ouvrés selon votre banque. Avant de contester un paiement auprès de votre banque, contactez-nous afin que nous puissions trouver une solution.",
        "title": "Remboursements"
      },
      "service": {
        "p1": "RenameFlow est une application web qui vous aide à renommer et à organiser vos fichiers multimédias (films, séries, anime, musique) selon les conventions de nommage de Plex, Jellyfin, Kodi et des logiciels similaires. Il identifie les titres à l'aide de bases de données tierces, vous présente un aperçu des noms proposés et n'applique le renommage qu'après votre validation.",
        "p2": "Vos fichiers sont renommés localement, directement sur votre ordinateur, grâce à l'API File System Access de votre navigateur : ils ne sont jamais envoyés sur nos serveurs. Pour identifier vos médias, les titres détectés dans vos noms de fichiers (et, pour la recherche de sous-titres, les noms de fichiers eux-mêmes) sont transmis à des services de métadonnées, comme décrit dans la politique de confidentialité.",
        "p3": "Le Service nécessite un ordinateur équipé d'un navigateur compatible (actuellement Google Chrome, Microsoft Edge ou Opera sur ordinateur) et une connexion internet ; il ne fonctionne pas sur les appareils mobiles, ni sous Firefox ou Safari. Avant de souscrire une offre payante, vérifiez avec l'offre gratuite que le Service fonctionne avec votre configuration.",
        "title": "Description du Service"
      },
      "subscriptions": {
        "p1": "Les abonnements Pro Mensuel et Pro Annuel sont conclus pour une période initiale d'un mois ou d'un an, à compter de la date de paiement. À l'issue de chaque période, ils sont reconduits tacitement pour une durée identique, au prix alors en vigueur, sauf résiliation de votre part.",
        "p2": "Vous pouvez résilier à tout moment, gratuitement et en quelques clics, depuis la rubrique Compte de l'application (bouton « {{button}} »), qui ouvre le portail client sécurisé de Stripe. Vous pouvez également résilier en écrivant à {{email}}. La résiliation prend effet à la fin de la période en cours : vous conservez l'accès Pro jusqu'à cette date et aucun nouveau prélèvement n'est effectué. La période en cours n'est pas remboursée, sauf dans les cas prévus aux articles 8 (rétractation) et 10 (garantie légale de conformité).",
        "p3": "Pour l'abonnement annuel, conformément à l'article L215-1 du Code de la consommation, nous vous informons par e-mail, au plus tôt trois mois et au plus tard un mois avant la date de reconduction, de la possibilité de ne pas reconduire le contrat. Si cette information ne vous a pas été adressée, vous pouvez mettre gratuitement un terme à l'abonnement à tout moment à compter de la date de reconduction ; les avances effectuées après la dernière date de reconduction vous sont alors remboursées dans un délai de trente jours à compter de la résiliation, déduction faite des sommes correspondant à l'exécution du contrat jusqu'à celle-ci.",
        "p4": "Nous pouvons suspendre ou résilier votre accès en cas de manquement grave aux présentes Conditions (article 9), après une mise en demeure restée sans effet pendant huit jours, sauf urgence (fraude, atteinte à la sécurité du Service). Si nous mettons fin à une offre payante pour une raison qui ne vous est pas imputable, nous vous remboursons la part non utilisée de la période en cours.",
        "title": "Durée, reconduction et résiliation des abonnements"
      },
      "title": "Conditions générales d'utilisation et de vente",
      "use": {
        "automation": "utiliser le Service ou ses interfaces de manière automatisée (scripts, robots, extraction de données) ou d'une manière qui lui impose une charge anormale, notamment sur les services de métadonnées qu'il utilise ;",
        "copy": "copier, modifier ou décompiler le Service, hors les cas autorisés par la loi.",
        "fairUse": "Les offres illimitées s'entendent d'un usage normal et non automatisé ; nous pouvons limiter temporairement un usage manifestement anormal afin de protéger le Service.",
        "files": "Vous êtes seul responsable des fichiers que vous traitez avec le Service et de la licéité de leur détention et de leur utilisation.",
        "intro": "Vous vous engagez à utiliser le Service conformément à la loi et aux présentes Conditions. Il vous est notamment interdit de :",
        "multiAccount": "créer plusieurs comptes gratuits ou utiliser des adresses e-mail jetables pour contourner les limites de l'offre gratuite ;",
        "security": "tenter d'accéder aux données d'autres utilisateurs, de contourner les mesures de sécurité ou les limites d'utilisation, ou de perturber le fonctionnement du Service ;",
        "share": "partager votre compte ou revendre un accès au Service ;",
        "title": "Règles d'utilisation"
      },
      "withdrawal": {
        "form": {
          "address": "Adresse du (des) consommateur(s) / adresse e-mail du compte :",
          "date": "Date :",
          "delete": "(*) Rayez la mention inutile.",
          "name": "Nom du (des) consommateur(s) :",
          "note": "(Veuillez compléter et renvoyer le présent formulaire uniquement si vous souhaitez vous rétracter du contrat.)",
          "notice": "Je/Nous (*) vous notifie/notifions (*) par la présente ma/notre (*) rétractation du contrat portant sur la prestation de services ci-dessous :",
          "orderedOn": "Commandé le (*) :",
          "signature": "Signature du (des) consommateur(s) (uniquement en cas de notification du présent formulaire sur papier) :",
          "title": "Formulaire type de rétractation",
          "to": "À l'attention de : {{recipient}}"
        },
        "p1": "En tant que consommateur, vous disposez en principe d'un délai de 14 jours à compter de la conclusion d'un contrat à distance pour vous rétracter, sans avoir à motiver votre décision (article L221-18 du Code de la consommation).",
        "p2": "Les fonctionnalités Pro sont mises à votre disposition dès la confirmation de votre paiement. Pour les abonnements Pro Mensuel et Pro Annuel, vous conservez votre droit de rétractation pendant 14 jours, même si vous avez commencé à utiliser les fonctionnalités Pro. Ayant demandé que l'exécution du Service commence avant la fin du délai de rétractation, vous êtes alors redevable d'un montant proportionnel au service fourni jusqu'à la communication de votre décision de vous rétracter (article L221-25 du Code de la consommation), et nous vous remboursons le solde.",
        "p3": "Pour l'offre À vie, dans la mesure où elle constitue la fourniture d'un contenu numérique non fourni sur un support matériel : lorsque, lors de la commande, vous avez expressément demandé cet accès immédiat avant l'expiration du délai de rétractation et reconnu perdre ainsi votre droit de rétractation, et que nous vous avons adressé la confirmation de cet accord sur un support durable (e-mail), vous ne pouvez plus exercer ce droit (article L221-28 13° du Code de la consommation). À défaut (notamment sans cette demande expresse et cette reconnaissance), vous conservez votre droit de rétractation pendant 14 jours et, si vous l'exercez, vous n'êtes redevable d'aucune somme et êtes intégralement remboursé (article L221-26 du Code de la consommation).",
        "p4": "Pour exercer votre droit de rétractation, adressez-nous avant l'expiration du délai une déclaration dénuée d'ambiguïté à {{email}}, par exemple au moyen du formulaire type ci-dessous. Nous vous remboursons les sommes dues dans un délai de 14 jours à compter de la réception de votre décision, par le même moyen de paiement que celui utilisé pour la transaction initiale, sans frais pour vous.",
        "title": "Droit de rétractation"
      }
    },
    "vatExempt": "TVA non applicable, article 293 B du Code général des impôts."
  },
  "notFound": {
    "description": "L'URL {{path}} n'existe pas (ou a été déplacée).",
    "eyebrow": "Erreur 404",
    "home": "Accueil",
    "pricing": "Voir les prix",
    "support": "Support",
    "title": "Page introuvable"
  },
  "onboarding": {
    "discovery": {
      "subtitle": "Une seule question, facultative : ça nous aide beaucoup.",
      "title": "Comment as-tu découvert RenameFlow ?"
    },
    "options": {
      "chatgpt": "ChatGPT / Perplexity",
      "friend": "Un ami / le bouche-à-oreille",
      "google": "Recherche Google",
      "other": "Autre",
      "reddit": "Reddit",
      "twitter": "Twitter / X",
      "youtube": "YouTube"
    },
    "other": {
      "placeholder": "Où ça ? (facultatif)"
    },
    "send": "Envoyer",
    "skip": "Passer",
    "thanks": "Merci pour ta réponse !"
  },
  "seoPages": {
    "contact": {
      "description": "Une question, un bug ou une idée ? Écris à l'équipe RenameFlow.",
      "title": "Contact — RenameFlow"
    },
    "privacy": {
      "description": "Quelles données personnelles RenameFlow traite, pourquoi, pendant combien de temps, qui les reçoit et comment exercer vos droits RGPD.",
      "title": "Politique de confidentialité — RenameFlow"
    },
    "terms": {
      "description": "Les conditions d'utilisation de RenameFlow et d'achat des offres Pro et À vie : prix, reconduction, résiliation, rétractation et remboursements.",
      "title": "Conditions générales d'utilisation et de vente — RenameFlow"
    }
  },
  "seoSection": {
    "b1": "Renommage par lots (bulk rename) pour bibliothèques entières",
    "b2": "Détection intelligente : titre, année, saison/épisode, version",
    "b3": "Compatible avec les conventions de nommage Plex / Kodi / Jellyfin",
    "b4": "Traitement orienté local : vous gardez le contrôle sur vos fichiers",
    "compareLink": "Voir la comparaison FileBot",
    "guideLink": "Voir le guide Plex/Kodi/Jellyfin",
    "guidesTitle": "Guides de nommage par serveur multimédia",
    "h3a": "Guide : conventions Plex/Kodi/Jellyfin",
    "h3aDesc": "Exemples concrets de formats (films, séries, anime) + erreurs à éviter pour une détection parfaite.",
    "h3b": "Comparatif : RenameFlow vs FileBot",
    "h3bDesc": "Un tableau clair et une FAQ pour comprendre les différences et choisir l'outil adapté.",
    "kicker": "Pour Plex, Kodi, Jellyfin",
    "p1": "RenameFlow est un renommeur de fichiers multimédia conçu pour standardiser les noms de vos vidéos (films, séries TV, anime) afin qu'ils soient correctement reconnus par Plex, Kodi et Jellyfin.",
    "p2": "L'objectif : renommer en masse vos fichiers téléchargés ou mal nommés, récupérer un match fiable via des bases comme TMDB / TheTVDB / AniList, et appliquer un pattern cohérent en quelques secondes.",
    "title": "Renommer et organiser sa médiathèque (films, séries, anime) — rapidement et proprement"
  }
}
