{
  "$schema": "../schemas/pi-i18n.bundle.schema.json",
  "version": 1,
  "namespace": "pi",
  "locale": "fr",
  "messages": {
    "app.name": "pi",

    "language.command.description": "Changer la langue de l’UI (LTR uniquement)",
    "language.dialog.title": "Langue",
    "language.dialog.pick": "Choisir une locale",
    "language.dialog.other": "Autre…",
    "language.dialog.other.placeholder": "ex. fr, ja, zh-TW",
    "language.changed": "Langue définie sur {locale}",
    "language.alreadySet": "La langue est déjà {locale}",
    "language.reloading": "Rechargement de l’UI pour {locale}…",
    "language.usage": "Usage : /lang [doctor|debug|probe [on|off|reset]|setup beginner|hacks|en|en-US|zh-TW|tw|zhtw|toggle|pick]",
    "language.rtlWarning": "Le RTL n’est pas encore pris en charge (sélection : {locale}).",

    "doctor.command.description": "Vérifier les bundles i18n : clés manquantes et placeholders incohérents",
    "i18n.command.description": "Contrôles i18n : doctor, debug, probe, setup, hacks",
    "i18n.command.usage": "Usage : /lang <doctor|debug|probe [on|off|reset]|setup beginner|hacks>",
    "i18n.hacks.option.on": "core hacks : on",
    "i18n.hacks.option.off": "core hacks : off",
    "i18n.probe.reset": "i18n probe réinitialisé",
    "i18n.probe.enabled": "i18n probe activé",
    "i18n.probe.disabled": "i18n probe désactivé",
    "i18n.setup.usage": "Usage : /lang setup beginner",
    "i18n.setup.applied": "i18n setup appliqué (preset=beginner, locale={locale})",
    "doctor.ok": "i18n doctor : OK (aucune clé manquante)",
    "doctor.issues": "i18n doctor : {count} problème(s)",
    "doctor.missingKey": "manquant : {namespace}.{key}",
    "doctor.placeholderMismatch": "placeholder incohérent : {namespace}.{key} (attendu {expected}, reçu {got})",

    "ui.header.title": "pi — localisé",
    "ui.header.hint": "{locale} • /lang",

    "demo.chat.title": "Chat de démo",
    "demo.chat.userLabel": "Vous",
    "demo.chat.assistantLabel": "Assistant",
    "demo.chat.userText": "Peux-tu expliquer ce que fait pi-i18n ?",
    "demo.chat.assistantText": "Il localise l’interface terminal de Pi et ses extensions — sans modifier pi-core.",
    "demo.chat.closeHint": "Entrée/Échap pour fermer",

    "slash.settings.description": "Ouvrir le menu des paramètres",
    "slash.model.description": "Sélectionner un modèle (ouvre le sélecteur)",
    "slash.scoped-models.description": "Activer/désactiver des modèles pour le cycle Ctrl+P",
    "slash.export.description": "Exporter la session (HTML par défaut, ou chemin .html/.jsonl)",
    "slash.import.description": "Importer et reprendre une session depuis un fichier JSONL",
    "slash.share.description": "Partager la session comme un gist secret GitHub",
    "slash.copy.description": "Copier le dernier message de l’agent dans le presse-papiers",
    "slash.name.description": "Définir le nom d’affichage de la session",
    "slash.session.description": "Afficher les infos et statistiques de session",
    "slash.changelog.description": "Afficher les entrées du changelog",
    "slash.hotkeys.description": "Afficher tous les raccourcis clavier",
    "slash.fork.description": "Créer un nouveau fork depuis un message précédent",
    "slash.clone.description": "Dupliquer la session actuelle à la position actuelle",
    "slash.tree.description": "Naviguer dans l’arbre de session (changer de branche)",
    "slash.login.description": "Se connecter via un fournisseur OAuth",
    "slash.logout.description": "Se déconnecter du fournisseur OAuth",
    "slash.new.description": "Démarrer une nouvelle session",
    "slash.compact.description": "Compacter manuellement le contexte de session",
    "slash.resume.description": "Reprendre une autre session",
    "slash.reload.description": "Recharger keybindings, extensions, skills, prompts et thèmes",
    "slash.quit.description": "Quitter pi",

    "ui.key.model": "modèle",
    "ui.key.thinking": "réflexion",
    "ui.key.tools": "outils",
    "ui.key.followUp": "suivi",
    "ui.key.expand": "développer",

    "slash.lang.description": "Changer la langue de l’UI (LTR uniquement)",

    "tool.common.running": "Exécution…",
    "tool.common.done": "Terminé",
    "tool.common.error": "Erreur",
    "tool.common.truncated": "tronqué",

    "tool.read.label": "lire",
    "tool.read.call": "lire {path}",
    "tool.read.lines": "{count} lignes",

    "tool.bash.label": "bash",
    "tool.bash.call": "$ {command}",
    "tool.bash.exit": "sortie {code}",

    "tool.edit.label": "modifier",
    "tool.edit.call": "appliquer les changements {path}",
    "tool.edit.stats": "+{add} / -{del}",

    "tool.write.label": "écrire",
    "tool.write.call": "écrire {path}",
    "tool.write.written": "Écrit",

    "hacks.fk.command.description": "fk : forker depuis un message utilisateur précédent",
    "hacks.fk.help": "Usage : /fk (ouvre le sélecteur)",
    "hacks.fk.none": "Aucun message utilisateur à forker",
    "hacks.fk.dialog.title": "Fork",
    "hacks.fk.dialog.pick": "Choisissez un message à forker",
    "hacks.fk.dialog.query": "Rechercher",
    "hacks.fk.dialog.query.placeholder": "tapez pour filtrer les messages",
    "hacks.fk.noMatches": "Aucun message utilisateur correspondant"
  }
}
