Files
iiEsaywebUIapp/lib/l10n/app_fr.arb

758 lines
31 KiB
Plaintext
Raw Normal View History

{
"@@locale": "fr",
"appTitle": "Conduit",
"retry": "Réessayer",
"back": "Retour",
"you": "Vous",
"loadingProfile": "Chargement du profil...",
"unableToLoadProfile": "Impossible de charger le profil",
"pleaseCheckConnection": "Veuillez vérifier votre connexion et réessayer",
"connectionIssueTitle": "Impossible d'atteindre votre serveur",
"@connectionIssueTitle": {
"description": "Titre affiché lorsque le serveur configuré est injoignable"
},
"connectionIssueSubtitle": "Reconnectez-vous pour continuer ou déconnectez-vous pour choisir un autre serveur.",
"@connectionIssueSubtitle": {
"description": "Sous-titre expliquant les actions possibles quand le serveur est injoignable"
},
"account": "Compte",
2025-10-02 15:14:34 +05:30
"supportConduit": "Soutenir Conduit",
"supportConduitSubtitle": "Financez le développement continu et les nouvelles fonctionnalités.",
"githubSponsorsTitle": "GitHub Sponsors",
"githubSponsorsSubtitle": "Devenez sponsor récurrent pour soutenir la feuille de route.",
"buyMeACoffeeTitle": "Buy Me a Coffee",
"buyMeACoffeeSubtitle": "Faites un don ponctuel pour nous encourager.",
"signOut": "Se déconnecter",
"endYourSession": "Terminer votre session",
"defaultModel": "Modèle par défaut",
"autoSelect": "Sélection automatique",
"loadingModels": "Chargement des modèles...",
"failedToLoadModels": "Échec du chargement des modèles",
"availableModels": "Modèles disponibles",
"noResults": "Aucun résultat",
"searchModels": "Rechercher des modèles...",
"errorMessage": "Une erreur s'est produite. Veuillez réessayer.",
"closeButtonSemantic": "Fermer",
"loadingContent": "Chargement du contenu",
"noItems": "Aucun élément",
"noItemsToDisplay": "Aucun élément à afficher",
"knowledgeBase": "Base de connaissances",
2025-09-16 20:10:53 +05:30
"attachments": "Pièces jointes",
"takePhoto": "Prendre une photo",
"document": "Document",
"backToServerSetup": "Retour à la configuration du serveur",
"connectedToServer": "Connecté au serveur",
"signIn": "Se connecter",
"enterCredentials": "Entrez vos identifiants pour accéder à vos conversations IA",
"credentials": "Identifiants",
"apiKey": "Clé API",
"usernameOrEmail": "Nom d'utilisateur ou email",
"password": "Mot de passe",
"signInWithApiKey": "Se connecter avec une clé API",
"connectToServer": "Se connecter au serveur",
"enterServerAddress": "Saisissez l'adresse de votre serveur Open-WebUI pour commencer",
"serverUrl": "URL du serveur",
"serverUrlHint": "https://votre-serveur.com",
"enterServerUrlSemantic": "Saisissez l'URL ou l'adresse IP de votre serveur",
"headerName": "Nom de l'en-tête",
"headerValue": "Valeur de l'en-tête",
"headerValueHint": "api-key-123 ou jeton Bearer",
"addHeader": "Ajouter l'en-tête",
"maximumHeadersReached": "Nombre maximal atteint",
"removeHeader": "Supprimer l'en-tête",
"connecting": "Connexion en cours...",
"connectToServerButton": "Se connecter au serveur",
"demoModeActive": "Mode démo activé",
"skipServerSetupTryDemo": "Ignorer la configuration et essayer la démo",
"enterDemo": "Entrer en démo",
"demoBadge": "Démo",
"serverNotOpenWebUI": "Ceci ne semble pas être un serveur Open-WebUI.",
"serverUrlEmpty": "L'URL du serveur ne peut pas être vide",
"invalidUrlFormat": "Format d'URL invalide. Veuillez vérifier votre saisie.",
"onlyHttpHttps": "Seuls les protocoles HTTP et HTTPS sont pris en charge.",
"serverAddressRequired": "Adresse du serveur requise (ex. 192.168.1.10 ou example.com).",
"portRange": "Le port doit être compris entre 1 et 65535.",
"invalidIpFormat": "Format d'IP invalide. Exemple : 192.168.1.10.",
"couldNotConnectGeneric": "Connexion impossible. Vérifiez l'adresse et réessayez.",
"weCouldntReachServer": "Impossible d'atteindre le serveur. Vérifiez la connexion et l'état du serveur.",
"connectionTimedOut": "Délai d'attente dépassé. Le serveur est peut-être occupé ou bloqué.",
"useHttpOrHttpsOnly": "Utilisez uniquement http:// ou https://.",
"loginFailed": "Échec de la connexion",
"invalidCredentials": "Nom d'utilisateur ou mot de passe invalide. Réessayez.",
"serverRedirectingHttps": "Le serveur redirige les requêtes. Vérifiez la configuration HTTPS.",
"unableToConnectServer": "Impossible de se connecter au serveur. Vérifiez votre connexion.",
"requestTimedOut": "Délai d'attente dépassé. Réessayez.",
"genericSignInFailed": "Connexion impossible. Vérifiez vos identifiants et le serveur.",
"skip": "Ignorer",
"next": "Suivant",
"done": "Terminé",
2025-09-16 16:24:45 +05:30
"onboardStartTitle": "Bonjour, {username}",
2025-09-16 20:10:53 +05:30
"onboardStartSubtitle": "Choisissez un modèle pour commencer. Touchez Nouveau chat à tout moment.",
"onboardStartBullet1": "Touchez le nom du modèle en haut pour changer",
"onboardStartBullet2": "Utilisez Nouveau chat pour réinitialiser le contexte",
"onboardAttachTitle": "Ajouter du contexte",
"onboardAttachSubtitle": "Ancrez les réponses avec l'Espace de travail ou des photos.",
"onboardAttachBullet1": "Espace de travail : PDF, documents, jeux de données",
"onboardAttachBullet2": "Photos : appareil photo ou galerie",
"onboardSpeakTitle": "Parlez naturellement",
"onboardSpeakSubtitle": "Touchez le micro pour dicter avec retour visuel.",
"onboardSpeakBullet1": "Arrêtez à tout moment ; le texte partiel est conservé",
"onboardSpeakBullet2": "Idéal pour des notes rapides ou de longs prompts",
"onboardQuickTitle": "Actions rapides",
"onboardQuickSubtitle": "Ouvrez le menu pour passer entre Chats, Espace de travail et Profil.",
"onboardQuickBullet1": "Touchez le menu pour accéder à Chats, Espace, Profil",
"onboardQuickBullet2": "Lancez Nouveau chat ou gérez les modèles depuis la barre",
"attachmentLabel": "Pièce jointe",
"tools": "Outils",
"voiceInput": "Entrée vocale",
"voice": "Voix",
"voiceStatusListening": "Écoute…",
"voiceStatusRecording": "Enregistrement…",
"voiceHoldToTalk": "Maintenir pour parler",
"voiceAutoSend": "Envoi automatique",
"voiceTranscript": "Transcription",
"voicePromptSpeakNow": "Parlez maintenant…",
"voicePromptTapStart": "Appuyez sur \"Démarrer\" pour commencer",
"voiceActionStop": "Arrêter",
"voiceActionStart": "Démarrer",
"messageInputLabel": "Saisie du message",
"messageInputHint": "Saisissez votre message",
"messageHintText": "Demander à Conduit",
"stopGenerating": "Arrêter la génération",
"codeCopiedToClipboard": "Code copié dans le presse-papiers.",
"send": "Envoyer",
"sendMessage": "Envoyer le message",
"file": "Fichier",
"photo": "Photo",
"camera": "Appareil photo",
"apiUnavailable": "Service API indisponible",
"unableToLoadImage": "Impossible de charger l'image",
"notAnImageFile": "Ce n'est pas un fichier image : {fileName}",
"failedToLoadImage": "Échec du chargement de l'image : {error}",
"invalidDataUrl": "Format d'URL de données invalide",
"failedToDecodeImage": "Échec du décodage de l'image",
"invalidImageFormat": "Format d'image invalide",
"emptyImageData": "Données d'image vides",
"confirm": "Confirmer",
"cancel": "Annuler",
"ok": "OK",
"inputField": "Champ de saisie",
"checkConnection": "Vérifier la connexion",
"openSettings": "Ouvrir les réglages",
"goBack": "Retour",
2025-08-23 23:56:53 +05:30
"technicalDetails": "Détails techniques",
"save": "Enregistrer",
"chooseModel": "Choisir le modèle",
"reviewerMode": "REVIEWER MODE",
"selectLanguage": "Sélectionner la langue",
"newFolder": "Nouveau dossier",
"folderName": "Nom du dossier",
"newChat": "Nouveau chat",
"more": "Plus",
"clear": "Effacer",
"searchConversations": "Rechercher des conversations...",
"create": "Créer",
"failedToCreateFolder": "Échec de la création du dossier",
"failedToMoveChat": "Échec du déplacement du chat",
"failedToLoadChats": "Échec du chargement des chats",
"failedToUpdatePin": "Échec de la mise à jour de l'épingle",
"failedToDeleteChat": "Échec de la suppression du chat",
"manage": "Gérer",
"rename": "Renommer",
"delete": "Supprimer",
"renameChat": "Renommer le chat",
"enterChatName": "Saisir le nom du chat",
"failedToRenameChat": "Échec du renommage du chat",
"failedToUpdateArchive": "Échec de la mise à jour de l'archive",
"unarchive": "Désarchiver",
"archive": "Archiver",
"pin": "Épingler",
"unpin": "Détacher",
"recent": "Récent",
"system": "Système",
"english": "Anglais",
"deutsch": "Allemand",
"francais": "Français",
"italiano": "Italien",
"espanol": "Espagnol",
"nederlands": "Néerlandais",
"russian": "Russe",
"chinese": "Chinois",
"chineseSimplified": "Chinois (simplifié)",
"chineseTraditional": "Chinois (traditionnel)",
2025-11-05 14:12:58 +05:30
"korean": "Coréen",
2025-08-23 23:56:53 +05:30
"deleteMessagesTitle": "Supprimer les messages",
"deleteMessagesMessage": "Supprimer {count} messages ?",
"@deleteMessagesMessage": {
"placeholders": {
"count": {
"type": "int"
}
2025-08-23 23:56:53 +05:30
}
},
"routeNotFound": "Route introuvable : {routeName}",
"@routeNotFound": {
"placeholders": {
"routeName": {
"type": "String"
}
2025-08-23 23:56:53 +05:30
}
},
"deleteChatTitle": "Supprimer le chat",
"deleteChatMessage": "Ce chat sera supprimé définitivement.",
2025-09-07 23:48:47 +05:30
"deleteFolderTitle": "Supprimer le dossier",
"deleteFolderMessage": "Ce dossier et ses associations seront supprimés.",
"failedToDeleteFolder": "Échec de la suppression du dossier",
"aboutApp": "À propos",
"aboutAppSubtitle": "Informations et liens Conduit",
"web": "Web",
"imageGen": "Gén. image",
"pinned": "Épinglé",
"folders": "Dossiers",
"archived": "Archivé",
"appLanguage": "Langue de l'app",
"darkMode": "Mode sombre",
"webSearch": "Recherche Web",
"webSearchDescription": "Recherchez sur le web et citez les sources.",
"imageGeneration": "Génération d'images",
2025-08-28 23:46:32 +05:30
"imageGenerationDescription": "Créez des images à partir de vos prompts.",
"copy": "Copier",
2025-09-20 23:58:18 +05:30
"ttsListen": "Écouter",
"ttsStop": "Arrêter",
2025-08-28 23:46:32 +05:30
"edit": "Modifier",
"regenerate": "Régénérer",
"noConversationsYet": "Aucune conversation pour l'instant",
2025-08-28 23:46:32 +05:30
"usernameOrEmailHint": "Entrez votre nom d'utilisateur ou email",
"passwordHint": "Entrez votre mot de passe",
"enterApiKey": "Entrez votre clé API",
"signingIn": "Connexion en cours...",
"advancedSettings": "Paramètres avancés",
"customHeaders": "En-têtes personnalisés",
"customHeadersDescription": "Ajoutez des en-têtes HTTP personnalisés pour l'authentification, les clés API ou des exigences spécifiques du serveur.",
"allowSelfSignedCertificates": "Faire confiance aux certificats auto-signés",
"@allowSelfSignedCertificates": {
"description": "Libellé du commutateur permettant d'autoriser les certificats TLS auto-signés pour le serveur configuré."
},
"allowSelfSignedCertificatesDescription": "Acceptez le certificat TLS de ce serveur même s'il est auto-signé. Activez cette option uniquement pour les serveurs auxquels vous faites confiance.",
"@allowSelfSignedCertificatesDescription": {
"description": "Texte d'aide expliquant les risques liés à l'activation de l'option de certificat auto-signé."
},
2025-08-28 23:46:32 +05:30
"headerNameEmpty": "Le nom de l'en-tête ne peut pas être vide",
"headerNameTooLong": "Nom d'en-tête trop long (max 64 caractères)",
"headerNameInvalidChars": "Nom d'en-tête invalide. Utilisez uniquement des lettres, des chiffres et ces symboles : !#$&-^_`|~",
"headerNameReserved": "Impossible d'écraser l'en-tête réservé « {key} »",
"@headerNameReserved": {
"placeholders": {
"key": {
"type": "String"
}
}
},
2025-08-28 23:46:32 +05:30
"headerValueEmpty": "La valeur de l'en-tête ne peut pas être vide",
"headerValueTooLong": "Valeur d'en-tête trop longue (max 1024 caractères)",
"headerValueInvalidChars": "La valeur de l'en-tête contient des caractères invalides. Utilisez uniquement des caractères ASCII imprimables.",
"headerValueUnsafe": "La valeur de l'en-tête semble contenir du contenu potentiellement dangereux",
"headerAlreadyExists": "L'en-tête « {key} » existe déjà. Supprimez-le d'abord pour le modifier.",
"@headerAlreadyExists": {
"placeholders": {
"key": {
"type": "String"
}
}
},
"maxHeadersReachedDetail": "Maximum 10 en-têtes personnalisés. Supprimez-en pour en ajouter.",
2025-08-28 23:46:32 +05:30
"noModelsAvailable": "Aucun modèle disponible",
"followingSystem": "Selon le système : {theme}",
"@followingSystem": {
"placeholders": {
"theme": {
"type": "String"
}
}
},
2025-08-28 23:46:32 +05:30
"themeDark": "Sombre",
"themePalette": "Palette de couleurs",
"@themePalette": {
"description": "Titre pour choisir la palette de couleurs de l'application."
},
2025-08-28 23:46:32 +05:30
"themeLight": "Clair",
"currentlyUsingDarkTheme": "Thème sombre actuellement utilisé",
"currentlyUsingLightTheme": "Thème clair actuellement utilisé",
"aboutConduit": "À propos de Conduit",
"versionLabel": "Version : {version} ({build})",
"@versionLabel": {
"placeholders": {
"version": {
"type": "String"
},
"build": {
"type": "String"
}
}
},
2025-08-28 23:46:32 +05:30
"githubRepository": "Dépôt GitHub",
2025-08-29 01:04:29 +05:30
"unableToLoadAppInfo": "Impossible de charger les informations de l'application",
"thinking": "Réflexion…",
"thoughts": "Réflexions",
"thoughtForDuration": "A réfléchi pendant {duration}",
"@thoughtForDuration": {
"description": "Indique la durée de réflexion de l'assistant.",
"placeholders": {
"duration": {
"type": "String",
"example": "3 s"
}
}
},
"appCustomization": "Personnalisation",
"appCustomizationSubtitle": "Thème, langue, voix et quickpills",
"quickActionsDescription": "Raccourcis dans le chat",
"chatSettings": "Discussion",
"sendOnEnter": "Envoyer avec Entrée",
"sendOnEnterDescription": "Entrée envoie (clavier logiciel). Cmd/Ctrl+Entrée aussi disponible",
"androidAssistantTitle": "Android digital assistant",
"androidAssistantDescription": "Choose what happens when you trigger the Android digital assistant.",
"androidAssistantOverlayOption": "Show quick overlay (default)",
"androidAssistantNewChatOption": "Open Conduit with a new chat",
"androidAssistantVoiceCallOption": "Start a voice call",
"sttSettings": "Voix vers texte",
"sttEngineLabel": "Moteur de reconnaissance",
"sttEngineDevice": "Sur lappareil",
"sttEngineServer": "Serveur",
"sttEngineDeviceDescription": "Conserve laudio sur cet appareil. Lentrée vocale cesse de fonctionner si la reconnaissance vocale nest pas prise en charge.",
"sttEngineServerDescription": "Envoie toujours les enregistrements à votre serveur OpenWebUI pour transcription.",
"sttDeviceUnavailableWarning": "La reconnaissance vocale sur lappareil nest pas disponible sur cet appareil.",
"sttServerUnavailableWarning": "Connectez-vous à un serveur avec la transcription activée pour utiliser cette option.",
"sttSilenceDuration": "Durée du silence",
"sttSilenceDurationDescription": "Temps d'attente après le silence avant d'arrêter automatiquement l'enregistrement",
"ttsSettings": "Synthèse vocale",
"ttsEngineDeviceDescription": "Garde la synthèse sur cet appareil. La lecture vocale ne fonctionne plus si lappareil noffre pas la synthèse vocale.",
"ttsEngineServerDescription": "Demande toujours l'audio à votre serveur OpenWebUI.",
"ttsDeviceUnavailableWarning": "La synthèse vocale sur lappareil nest pas disponible sur cet appareil.",
"ttsServerUnavailableWarning": "Connectez-vous à un serveur avec la synthèse vocale activée pour utiliser cette option.",
"ttsVoice": "Voix",
"ttsSpeechRate": "Vitesse de parole",
"ttsPitch": "Hauteur",
"ttsVolume": "Volume",
"ttsPreview": "Aperçu de la voix",
"ttsSystemDefault": "Système par défaut",
"ttsSelectVoice": "Sélectionner la voix",
"ttsPreviewText": "Ceci est un aperçu de la voix sélectionnée.",
"ttsNoVoicesAvailable": "Aucune voix disponible",
"ttsVoicesForLanguage": "Voix {language}",
"ttsOtherVoices": "Autres langues",
"error": "Erreur",
2025-09-07 11:29:29 +05:30
"display": "Affichage",
"realtime": "Temps réel",
"transportMode": "Mode de transport",
"mode": "Mode",
"transportModePolling": "Polling de secours",
2025-09-07 11:29:29 +05:30
"transportModeWs": "WebSocket uniquement",
"transportModePollingInfo": "Bascule sur HTTP polling lorsque WebSocket est bloqué. Repasse à WebSocket dès que possible.",
"transportModeWsInfo": "Moins de surcharge, mais peut échouer derrière des proxys/firewalls stricts.",
"quickActionsSelectedCount": "{count, plural, =0{Aucune action sélectionnée} one{{count} action sélectionnée} other{{count} actions sélectionnées}}",
"@quickActionsSelectedCount": {
"description": "Subtitle indicating how many quick actions are selected.",
"placeholders": {
"count": {
"type": "int",
"example": "2"
}
}
},
"autoSelectDescription": "Laissez l'application choisir le meilleur modèle",
"@autoSelectDescription": {
"description": "Explains what the auto-select model setting does."
},
"ttsEngineLabel": "Moteur",
"@ttsEngineLabel": {
"description": "Label for selecting the text-to-speech engine."
},
"ttsEngineDevice": "Sur l'appareil",
"@ttsEngineDevice": {
"description": "Chip label for using on-device text-to-speech."
},
"ttsEngineServer": "Serveur",
"@ttsEngineServer": {
"description": "Chip label for using server-side text-to-speech."
},
"modelCapabilityMultimodal": "Multimodal",
"@modelCapabilityMultimodal": {
"description": "Capability chip label for models that support multimodal input."
},
"modelCapabilityReasoning": "Raisonnement",
"@modelCapabilityReasoning": {
"description": "Capability chip label for models that support reasoning features."
},
"voiceCallTitle": "Appel vocal",
"@voiceCallTitle": {
"description": "Title displayed on the voice call screen."
},
"voiceCallPause": "Pause",
"@voiceCallPause": {
"description": "Button label to pause a voice call."
},
"voiceCallResume": "Reprendre",
"@voiceCallResume": {
"description": "Button label to resume a paused voice call."
},
"voiceCallStop": "Arrêter",
"@voiceCallStop": {
"description": "Button label to stop the active voice call."
},
"voiceCallEnd": "Terminer l'appel",
"@voiceCallEnd": {
"description": "Button label to end the voice call session."
},
"chooseDifferentFile": "Choisir un autre fichier",
"@chooseDifferentFile": {
"description": "Action label prompting the user to pick another file."
},
"errorWithMessage": "Erreur : {message}",
"@errorWithMessage": {
"description": "Error label with appended message text.",
"placeholders": {
"message": {
"type": "String",
"example": "Network timeout"
}
}
},
"networkTimeoutError": "La connexion a expiré. Vérifiez votre connexion Internet et réessayez.",
"@networkTimeoutError": {
"description": "User-facing message when a network request times out."
},
"networkUnreachableError": "Impossible d'atteindre le serveur. Vérifiez l'URL du serveur et votre connexion Internet.",
"@networkUnreachableError": {
"description": "User-facing message when the server cannot be reached."
},
"networkServerNotResponding": "Le serveur ne répond pas. Vérifiez qu'il est en cours d'exécution et accessible.",
"@networkServerNotResponding": {
"description": "User-facing message when the server does not respond to a request."
},
"networkGenericError": "Problème de connexion réseau. Vérifiez votre connexion Internet.",
"@networkGenericError": {
"description": "Fallback message for generic network errors."
},
"serverError500": "Le serveur rencontre des problèmes. Cela est généralement temporaire.",
"@serverError500": {
"description": "Message when a 500 error is encountered."
},
"serverErrorUnavailable": "Le serveur est temporairement indisponible. Réessayez dans un instant.",
"@serverErrorUnavailable": {
"description": "Message when a 502/503 error is encountered."
},
"serverErrorTimeout": "Le serveur a mis trop de temps à répondre. Réessayez.",
"@serverErrorTimeout": {
"description": "Message when the server times out."
},
"serverErrorGeneric": "Le serveur rencontre des difficultés. Réessayez plus tard.",
"@serverErrorGeneric": {
"description": "Fallback server error message."
},
"authSessionExpired": "Votre session a expiré. Veuillez vous reconnecter.",
"@authSessionExpired": {
"description": "Message when an authentication session expires."
},
"authForbidden": "Vous n'avez pas l'autorisation d'effectuer cette action.",
"@authForbidden": {
"description": "Message when the user lacks required permissions."
},
"authInvalidToken": "Le jeton d'authentification est invalide. Veuillez vous reconnecter.",
"@authInvalidToken": {
"description": "Message when the authentication token is invalid."
},
"authGenericError": "Problème d'authentification. Veuillez vous reconnecter.",
"@authGenericError": {
"description": "Fallback authentication error message."
},
"validationInvalidEmail": "Veuillez saisir une adresse e-mail valide.",
"@validationInvalidEmail": {
"description": "Validation message for invalid email input."
},
"validationWeakPassword": "Le mot de passe ne respecte pas les exigences. Vérifiez-le et réessayez.",
"@validationWeakPassword": {
"description": "Validation message for weak passwords."
},
"validationMissingRequired": "Veuillez remplir tous les champs obligatoires.",
"@validationMissingRequired": {
"description": "Validation message when required fields are missing."
},
"validationFormatError": "Certaines informations sont au mauvais format. Vérifiez-les et réessayez.",
"@validationFormatError": {
"description": "Validation message for generic formatting issues."
},
"validationGenericError": "Veuillez vérifier vos informations et réessayer.",
"@validationGenericError": {
"description": "Fallback validation message."
},
"fileNotFound": "Fichier introuvable. Il a peut-être été déplacé ou supprimé.",
"@fileNotFound": {
"description": "Message when a file cannot be located."
},
"fileAccessDenied": "Impossible d'accéder au fichier. Vérifiez les autorisations.",
"@fileAccessDenied": {
"description": "Message when file access is denied."
},
"fileTooLarge": "Le fichier est trop volumineux. Choisissez un fichier plus petit.",
"@fileTooLarge": {
"description": "Message when a file exceeds size limits."
},
"fileGenericError": "Problème avec le fichier. Essayez un autre fichier.",
"@fileGenericError": {
"description": "Fallback file error message."
},
"permissionCameraRequired": "L'autorisation de la caméra est nécessaire. Activez-la dans les paramètres.",
"@permissionCameraRequired": {
"description": "Message when camera permission is missing."
},
"permissionStorageRequired": "L'autorisation de stockage est nécessaire. Activez-la dans les paramètres.",
"@permissionStorageRequired": {
"description": "Message when storage permission is missing."
},
"permissionMicrophoneRequired": "L'autorisation du microphone est nécessaire. Activez-la dans les paramètres.",
"@permissionMicrophoneRequired": {
"description": "Message when microphone permission is missing."
},
"permissionGenericError": "Autorisation requise. Vérifiez les autorisations de l'application dans les paramètres.",
"@permissionGenericError": {
"description": "Fallback permission error message."
},
"actionRetryRequest": "Réessayez la requête.",
"@actionRetryRequest": {
"description": "Description for retrying a failed request."
},
"actionVerifyConnection": "Vérifiez votre connexion Internet.",
"@actionVerifyConnection": {
"description": "Description for checking internet connectivity."
},
"actionRetryOperation": "Réessayez l'opération.",
"@actionRetryOperation": {
"description": "Description for retrying the same operation."
},
"actionRetryAfterDelay": "Attendez un instant puis réessayez.",
"@actionRetryAfterDelay": {
"description": "Description suggesting a short delay before retrying."
},
"actionSignInToAccount": "Connectez-vous à votre compte.",
"@actionSignInToAccount": {
"description": "Description for signing back into the app."
},
"actionSelectAnotherFile": "Sélectionnez un autre fichier.",
"@actionSelectAnotherFile": {
"description": "Description for choosing a different file."
},
"actionOpenAppSettings": "Ouvrez les paramètres de l'application pour accorder les autorisations.",
"@actionOpenAppSettings": {
"description": "Description for opening system or app settings."
},
"actionRetryAfterPermission": "Réessayez après avoir accordé l'autorisation.",
"@actionRetryAfterPermission": {
"description": "Description for retrying once permissions are granted."
},
"actionReturnToPrevious": "Revenir à l'écran précédent.",
"@actionReturnToPrevious": {
"description": "Description for navigating back to the prior screen."
},
"continueAction": "Continuer",
"@continueAction": {
"description": "Button label to continue an action or flow."
},
"loadingShort": "Chargement",
"@loadingShort": {
"description": "Short loading label used for accessibility."
},
"loadingAnnouncement": "Chargement : {message}",
"@loadingAnnouncement": {
"description": "Screen reader announcement when loading a resource.",
"placeholders": {
"message": {
"type": "String",
"example": "Messages"
}
}
},
"errorAnnouncement": "Erreur : {error}",
"@errorAnnouncement": {
"description": "Screen reader announcement for an error.",
"placeholders": {
"error": {
"type": "String",
"example": "Network timeout"
}
}
},
"errorAnnouncementWithSuggestion": "Erreur : {error}. {suggestion}",
"@errorAnnouncementWithSuggestion": {
"description": "Screen reader announcement for an error with a follow-up suggestion.",
"placeholders": {
"error": {
"type": "String",
"example": "Network timeout"
},
"suggestion": {
"type": "String",
"example": "Please try again later."
}
}
},
"successAnnouncement": "Succès : {message}",
"@successAnnouncement": {
"description": "Screen reader announcement for successful actions.",
"placeholders": {
"message": {
"type": "String",
"example": "Profile updated"
}
}
},
"requiredFieldLabel": "{label} *",
"@requiredFieldLabel": {
"description": "Label text indicating a required field.",
"placeholders": {
"label": {
"type": "String",
"example": "Email"
}
}
},
"requiredFieldHelper": "Champ obligatoire",
"@requiredFieldHelper": {
"description": "Helper text indicating that the field is required."
},
"switchOnLabel": "Activé",
"@switchOnLabel": {
"description": "Semantic label when a switch is enabled."
},
"switchOffLabel": "Désactivé",
"@switchOffLabel": {
"description": "Semantic label when a switch is disabled."
},
"dialogSemanticLabel": "Dialogue : {title}",
"@dialogSemanticLabel": {
"description": "Semantic label describing the dialog title.",
"placeholders": {
"title": {
"type": "String",
"example": "Settings"
}
}
},
"previousLabel": "Précédent",
"@previousLabel": {
"description": "Label for navigating to the previous item."
},
"nextLabel": "Suivant",
"@nextLabel": {
"description": "Label for navigating to the next item."
},
"themePaletteConduitLabel": "Conduit",
"@themePaletteConduitLabel": {
"description": "Palette name for the default Conduit theme."
},
"themePaletteConduitDescription": "Thème neutre et épuré conçu pour Conduit.",
"@themePaletteConduitDescription": {
"description": "Description of the Conduit palette."
},
"themePaletteClaudeLabel": "Claude",
"@themePaletteClaudeLabel": {
"description": "Palette name inspired by the Claude web client."
},
"themePaletteClaudeDescription": "Palette chaleureuse inspirée du client web de Claude.",
"@themePaletteClaudeDescription": {
"description": "Description of the Claude palette."
},
"themePaletteT3ChatLabel": "T3 Chat",
"@themePaletteT3ChatLabel": {
"description": "Palette name inspired by the T3 Stack brand."
},
"themePaletteT3ChatDescription": "Dégradés ludiques inspirés de la marque T3 Stack.",
"@themePaletteT3ChatDescription": {
"description": "Description of the T3 Chat palette."
},
"themePaletteCatppuccinLabel": "Catppuccin",
"@themePaletteCatppuccinLabel": {
"description": "Palette name for Catppuccin colors."
},
"themePaletteCatppuccinDescription": "Palette douce de tons pastel.",
"@themePaletteCatppuccinDescription": {
"description": "Description of the Catppuccin palette."
},
"themePaletteTangerineLabel": "Tangerine",
"@themePaletteTangerineLabel": {
"description": "Palette name for Tangerine colors."
},
"themePaletteTangerineDescription": "Palette chaleureuse d'oranges et d'ardoises.",
"@themePaletteTangerineDescription": {
"description": "Description of the Tangerine palette."
},
"@onboardStartTitle": {
"description": "Onboarding card: start chatting title.",
"placeholders": {
"username": {
"type": "String",
"example": "Alex"
}
}
},
"@notAnImageFile": {
"description": "Error when a referenced file is not an image.",
"placeholders": {
"fileName": {
"type": "String",
"example": "image.txt"
}
}
},
"@failedToLoadImage": {
"description": "Error including the underlying reason when image loading fails.",
"placeholders": {
"error": {
"type": "String",
"example": "Network error"
}
}
},
"@ttsVoicesForLanguage": {
"description": "Section header for voices matching the app language",
"placeholders": {
"language": {
"type": "String",
"example": "EN"
}
}
},
"voiceCallReady": "Prêt",
"@voiceCallReady": {
"description": "Status label shown when the voice call is ready to start."
},
"voiceCallConnecting": "Connexion…",
"@voiceCallConnecting": {
"description": "Status label shown while the voice call is connecting."
},
"voiceCallListening": "Écoute",
"@voiceCallListening": {
"description": "Status label shown while the call is listening for input."
},
"voiceCallPaused": "En pause",
"@voiceCallPaused": {
"description": "Status label shown when the call is paused."
},
"voiceCallProcessing": "Réflexion…",
"@voiceCallProcessing": {
"description": "Status label shown while the call processes a response."
},
"voiceCallSpeaking": "Parle",
"@voiceCallSpeaking": {
"description": "Status label shown while the assistant is speaking."
},
"voiceCallDisconnected": "Déconnecté",
"@voiceCallDisconnected": {
"description": "Status label shown when the voice call has ended or disconnected."
},
"voiceCallErrorHelp": "Veuillez vérifier :\n• Les autorisations du microphone sont accordées\n• La reconnaissance vocale est disponible sur votre appareil\n• Vous êtes connecté au serveur",
"@voiceCallErrorHelp": {
"description": "Guidance shown when the voice call encounters an error."
}
}