{
"generationOptions": {
"explicit": {
"label": "Explicite",
"alertTitle": "Mode Explicite",
"alertMessage": "Ce mode permet de générer du contenu mature. Certaines restrictions demeurent en vigueur. Réservé aux utilisateurs de 18 ans et plus."
},
"smart": {
"label": "Intelligent",
"alertTitle": "Mode Intelligent",
"alertMessage": "Ce mode utilise les modèles les plus performants (Claude Opus, Grok 4.1) pour une qualité de génération supérieure. Des frais supplémentaires s'appliquent."
},
"activate": "Activer",
"cancel": "Annuler"
},
"controllerBar": {
"bookNotFound": "Aucun livre trouvé",
"errorGettingBook": "Erreur lors de la récupération des informations du livre",
"selectBook": "Sélectionner un livre",
"bookSettings": "Paramètres du livre",
"chapterNotFound": "Chapitre non trouvé",
"unknownBookError": "Erreur inconnue lors de la récupération du livre",
"unknownChapterError": "Erreur inconnue lors de la récupération du chapitre"
},
"userMenu": {
"settings": "Paramètres",
"logout": "Déconnexion"
},
"bookList": {
"library": "Bibliothèque",
"booksAreMirrors": "« Les livres sont les miroirs de l'âme »",
"works": "œuvres",
"welcomeWritingWorkshop": "Bienvenue à votre atelier d'écriture!",
"whitePageText": "La page blanche attend votre créativité. Ajoutez votre première œuvre pour débuter votre aventure littéraire.",
"guideStep0Title": "Félicitation ",
"guideStep0Content": "Votre première œuvre a été ajoutée avec succès. Ceci est le début de votre aventure avec ERitors Scribe. Toutes vos œuvres sont ajoutées ici même, listées selon le type que vous créez.",
"guideStep1Title": "Votre œuvre",
"guideStep1Content": "Ceci est l'œuvre que vous venez d'ajouter. Un simple clic dessus vous permet d'entrer dans l'éditeur Scribe et laisser aller votre imagination.",
"guideStep2Title": "Options de l'œuvre",
"guideStep2ContentGear": "vous permet de gérer les paramètres de votre œuvre, tel le titre, la ligne de directive et bien d'autres options.",
"guideStep2ContentDownload": "vous permet de télécharger votre contenu en format EPUB, PDF et DOCX.",
"guideStep2ContentTrash": "vous permet de supprimer définitivement votre œuvre.",
"errorBookCreate": "Une erreur est survenue lors de la création du livre.",
"errorBooksFetch": "Une erreur est survenue lors de la récupération des livres.",
"errorBookDetails": "Erreur lors de la récupération des détails du livre.",
"errorUnknown": "Une erreur inconnue est survenue.",
"seriesSettings": "Paramètres de la série",
"emptySeries": "Séries vides"
},
"bookCard": {
"noCoverAlt": "Pas de couverture",
"initialsSeparator": ".",
"subtitlePlaceholder": "Aucun sous-titre"
},
"scribeTopBar": {
"logoAlt": "Logo",
"scribe": "Scribe",
"separator": " - "
},
"scribeLeftBar": {
"editorComponents": {
"structure": {
"title": "Structure",
"description": "Organisez votre histoire avec des chapitres, des scènes et des personnages.",
"badge": "STR"
}
},
"homeComponents": {
"addBook": {
"title": "Ajout d'un livre",
"description": "Ajoutez un livre à votre bibliothèque.",
"badge": "AJOUT"
},
"generateStory": {
"title": "Générer une histoire",
"description": "Générer une histoire à partir de zéro.",
"badge": "+"
},
"lyricGenerator": {
"title": "Générateur de paroles",
"description": "Créer des paroles de chanson en quelque cliques.",
"badge": "Lyrics"
},
"addSeries": {
"title": "Créer une série",
"description": "Créez une série pour regrouper plusieurs livres.",
"badge": "SÉRIE"
},
"importBook": {
"title": "Importer un livre",
"description": "Importez un fichier DOCX pour créer un livre.",
"badge": "DOCX"
}
}
},
"importBook": {
"header": "Importer un livre",
"pickFile": "Sélectionner un fichier DOCX",
"parsing": "Analyse du fichier en cours...",
"fields": {
"type": "Type de livre",
"title": "Titre",
"subTitle": "Sous-titre",
"summary": "Résumé",
"version": "Version des chapitres"
},
"chapters": {
"title": "Chapitres",
"detected": "{{count}} chapitre(s) détecté(s)",
"selectAll": "Tout sélectionner",
"deselectAll": "Tout désélectionner",
"words": "mots"
},
"submit": "Importer",
"importing": "Importation...",
"success": "Livre importé avec succès.",
"error": {
"invalidFormat": "Format de fichier invalide. Veuillez sélectionner un fichier DOCX.",
"parseFailed": "Échec de l'analyse du fichier.",
"titleRequired": "Le titre est requis.",
"typeRequired": "Le type de livre est requis.",
"noChaptersSelected": "Veuillez sélectionner au moins un chapitre.",
"importFailed": "Une erreur est survenue lors de l'importation du livre."
}
},
"scribeChapterComponent": {
"sheetHeading": "Feuille",
"createSheet": "Créer ta feuille",
"chaptersHeading": "Chapitres",
"addChapterPlaceholder": "+ Ajouter un chapitre",
"deleteChapterTitle": "Supprimer le chapitre",
"deleteChapterMessage": "Vous êtes sur le point de supprimer un chapitre",
"errorChapterUpdate": "Une erreur est survenue lors de la mise à jour du chapitre.",
"errorChapterDelete": "Une erreur est survenue lors de la suppression du chapitre.",
"errorChapterNameRequired": "Le nom du chapitre est requis.",
"errorChapterSubmit": "Erreur lors de la soumission du chapitre {{chapterName}}.",
"errorFetchChapter": "Erreur lors de la récupération du chapitre.",
"errorFetchChapters": "Erreur lors de la récupération des chapitres.",
"successUpdate": "Chapitre mis à jour avec succès.",
"unknownErrorChapterDelete": "Erreur inconnue lors de la suppression du chapitre."
},
"composerRightBar": {
"editorComponents": {
"quillSense": {
"title": "QuillSense",
"description": "Obtenez des conseils d'écriture et des suggestions pour améliorer votre histoire.",
"badge": "AI"
},
"worlds": {
"title": "Mondes",
"description": "Développez les mondes de votre histoire, y compris la géographie et la culture.",
"badge": "WORLD"
},
"locations": {
"title": "Lieux",
"description": "Ajoutez des lieux et des environnements à votre histoire.",
"badge": "LOC"
},
"characters": {
"title": "Personnage",
"description": "Créez et gérez vos personnages, leurs relations et leurs arcs narratifs.",
"badge": "CHAR"
},
"spells": {
"title": "Grimoire",
"description": "Gérez les sorts et la magie de votre univers.",
"badge": "SORT"
},
"items": {
"title": "Objets",
"description": "Gérez les objets importants de votre histoire.",
"badge": "ITEM"
}
},
"homeComponents": {
"about": {
"title": "À propos d'ERitors",
"description": "Découvrez les fonctionnalités et les avantages d'ERitors.",
"badge": "INFO"
},
"facebook": {
"title": "Facebook",
"description": "Rejoignez notre communauté sur Facebook.",
"badge": "FB"
},
"discord": {
"title": "Discord",
"description": "Rejoignez notre communauté sur Discord.",
"badge": "DISCORD"
}
}
},
"quillSense": {
"needSubscription": "Veuillez vous abonner à QuillSense ou Amenez vos clés pour accéder à cette fonctionnalité.",
"subscriptionDescription": "Débloquez des outils d'aide à l'écriture puissants pour enrichir votre prose.",
"toggleList": "Afficher la liste des conversations",
"options": {
"chat": "Clavardage",
"dictionary": "Dictionnaire",
"synonyms": "Synonymes",
"conjugator": "Conjugueur",
"inspiration": "Inspiration"
}
},
"dictionary": {
"fieldName": "Dictionnaire intelligent",
"searchPlaceholder": "Rechercher un mot...",
"searchAction": "Rechercher",
"loading": "Recherche en cours...",
"definitionHeading": "Définition",
"exampleHeading": "Exemple",
"literaryUsageHeading": "Usage littéraire",
"description": "Recherchez un mot pour obtenir sa définition, des exemples d'utilisation et des conseils littéraires.",
"errorUnknown": "Une erreur inconnue est survenue lors de la recherche du mot.",
"errorNoResponse": "Aucune réponse reçue du serveur.",
"locked": {
"title": "Accès requis",
"description": "Un abonnement de niveau de base de QuillSense ou une clé API est requis pour activer le dictionnaire intelligent."
}
},
"synonyms": {
"heading": "Recherche lexicale",
"subheading": "Explorez le vocabulaire",
"optionSynonyms": "Synonymes",
"optionAntonyms": "Antonymes",
"inputPlaceholder": "Entrez un mot...",
"enterWordError": "Veuillez entrer un mot à rechercher.",
"loading": "Recherche en cours...",
"resultSynonyms": "Synonymes de \"{{word}}\"",
"resultAntonyms": "Antonymes de \"{{word}}\"",
"emptySynonymsTitle": "Recherche de synonymes",
"emptyAntonymsTitle": "Recherche d'antonymes",
"emptySynonymsDescription": "Entrez un mot pour trouver des synonymes adaptés à différents contextes d'écriture.",
"emptyAntonymsDescription": "Entrez un mot pour trouver des antonymes adaptés à différents contextes d'écriture.",
"errorUnknown": "Une erreur inconnue est survenue lors de la recherche du mot.",
"errorNoResponse": "Aucune réponse reçue du serveur.",
"locked": {
"title": "Accès requis",
"description": "Un abonnement de niveau de base de QuillSense ou une clé API est requis pour activer la recherche de synonymes."
}
},
"inspireMe": {
"fieldName": "Trouver l'inspiration",
"inputPlaceholder": "En quoi aimeriez-vous être inspiré ?",
"actionLabel": "Inspire-moi",
"loading": "Recherche d'inspiration en cours...",
"resultHeading": "Idées d'inspiration",
"justificationHeading": "Justification",
"linkHeading": "Lien avec l'histoire",
"emptyHeading": "Inspire-moi",
"emptyDescription": "Recherchez des idées pour enrichir votre écriture. Entrez un prompt et laissez l'IA vous inspirer avec des suggestions créatives basées sur votre contenu actuel.",
"emptyPromptError": "Veuillez entrer un prompt pour vous inspirer.",
"error": {
"contentRetrieval": "Erreur lors de la récupération du contenu.",
"contentRetrievalUnknown": "Erreur inconnue lors de la récupération du contenu.",
"noBook": "Aucun livre sélectionné.",
"noChapter": "Aucun chapitre sélectionné.",
"unknown": "Une erreur inconnue est survenue lors de la génération."
},
"locked": {
"title": "Accès requis",
"description": "Un abonnement de niveau de base de QuillSense ou une clé API est requis pour activer le mode Inspire-moi."
}
},
"conjugator": {
"locked": {
"title": "Accès requis",
"description": "Un abonnement de niveau de base de QuillSense ou une clé API OpenAI est requis pour activer le conjugateur intelligent."
},
"input": {
"placeholder": "Entrez un verbe à conjuguer...",
"label": "Verbe",
"action": "Conjuguer"
},
"loading": "Conjugaison en cours...",
"welcome": {
"title": "Conjugateur",
"description": "Entrez un verbe pour voir toutes ses conjugaisons dans les différents modes et temps."
},
"error": {
"unknown": "Une erreur inconnue est survenue"
},
"persons": {
"je": "je",
"tu": "tu",
"il": "il/elle",
"nous": "nous",
"vous": "vous",
"ils": "ils/elles"
}
},
"worldSetting": {
"exportSuccess": "Monde exporté vers la série avec succès.",
"exportToSeries": "Exporter vers la série",
"getWorldsError": "Erreur lors de la récupération des mondes.",
"unknownError": "Erreur inconnu.",
"newWorldNameError": "Veuillez entrer un nom pour le nouveau monde.",
"selectWorld": "Monde",
"addWorldLabel": "Ajouter un monde",
"createWorldLabel": "Créer un monde",
"selectWorldPlaceholder": "Sélectionner un monde",
"noWorldAvailable": "Aucun monde disponible.",
"noWorldDescription": "Créez votre premier monde pour développer l'univers de votre histoire.",
"newWorldPlaceholder": "Nom du nouveau monde...",
"search": "Rechercher un monde...",
"newWorld": "Nouveau monde",
"deleteTitle": "Supprimer le monde",
"deleteMessage": "Vous êtes sur le point de supprimer le monde « {{name}} » définitivement.",
"worldName": "Nom du monde",
"worldNamePlaceholder": "Entrez le nom du monde",
"worldHistory": "Histoire du monde",
"worldHistoryPlaceholder": "Décrivez l'histoire de votre monde",
"basicInfo": "Informations de base",
"politicsEconomy": "Politique et économie",
"cultureLanguages": "Culture et langues",
"politics": "Description politique",
"politicsPlaceholder": "La description politique de ce monde...",
"economy": "Règles et statut économique",
"economyPlaceholder": "Les règles et le statut économique du monde.",
"religion": "Religions",
"religionPlaceholder": "Parlez des règles religieuses et des restrictions.",
"languages": "Languages",
"languagesPlaceholder": "Créez votre propre langue ou mentionnez simplement celles disponibles.",
"updateWorldError": "Échec de la mise à jour :",
"addWorldError": "Erreur lors de l'ajout du monde.",
"updateWorldSuccess": "Monde mis à jour avec succès.",
"enableTool": "Activer les mondes",
"enableToolDescription": "Activer la gestion des mondes pour ce livre.",
"toolEnabled": "Gestion des mondes activée.",
"toolDisabled": "Gestion des mondes désactivée."
},
"locationComponent": {
"exportSuccess": "Lieu exporté vers la série avec succès.",
"exportToSeries": "Exporter vers la série",
"newSectionPlaceholder": "Nom de la nouvelle section",
"addSectionLabel": "Ajouter une section",
"search": "Rechercher une section...",
"noSectionDescription": "Créez votre première section pour organiser les lieux de votre histoire.",
"newSection": "Nouvelle section",
"deleteTitle": "Supprimer la section",
"deleteMessage": "Vous êtes sur le point de supprimer la section « {{name}} » définitivement.",
"elementName": "Nom de l'élément",
"elementNamePlaceholder": "Nom de l'élément",
"elementDescriptionPlaceholder": "Description de l'élément",
"subElementsHeading": "Sous-éléments",
"subElementNamePlaceholder": "Nom du sous-élément",
"subElementDescriptionPlaceholder": "Description du sous-élément",
"newSubElementPlaceholder": "Nouveau sous-élément",
"noElementAvailable": "Aucun élément disponible.",
"editToAdd": "Cliquez sur l'icône de modification pour ajouter des éléments.",
"newElementPlaceholder": "Nouvel élément",
"noSectionAvailable": "Aucune section disponible.",
"createSectionLabel": "Créer une section",
"elementsCount": "{{count}} éléments",
"element": "Élément",
"addElement": "Ajouter un élément",
"addSubElement": "Ajouter un sous-élément",
"errorSectionNameEmpty": "Le nom de la section ne peut pas être vide.",
"errorElementNameEmpty": "Le nom de l'élément ne peut pas être vide.",
"errorSubElementNameEmpty": "Le nom du sous-élément ne peut pas être vide.",
"errorAddSection": "Une erreur est survenue lors de l'ajout de la section.",
"errorUnknownAddSection": "Impossible d'ajouter la section. Veuillez réessayer ultérieurement.",
"errorAddElement": "Une erreur est survenue lors de l'ajout de l'élément.",
"errorUnknownAddElement": "Impossible d'ajouter l'élément. Veuillez réessayer ultérieurement.",
"errorAddSubElement": "Une erreur est survenue lors de l'ajout du sous-élément.",
"errorUnknownAddSubElement": "Impossible d'ajouter le sous-élément. Veuillez réessayer ultérieurement.",
"errorDeleteElement": "Une erreur est survenue lors de la suppression de l'élément.",
"errorUnknownDeleteElement": "Impossible de supprimer l'élément. Veuillez réessayer ultérieurement.",
"errorDeleteSubElement": "Une erreur est survenue lors de la suppression du sous-élément.",
"errorUnknownDeleteSubElement": "Impossible de supprimer le sous-élément. Veuillez réessayer ultérieurement.",
"errorDeleteSection": "Une erreur est survenue lors de la suppression de la section.",
"errorUnknownDeleteSection": "Impossible de supprimer la section. Veuillez réessayer ultérieurement.",
"errorSave": "Une erreur est survenue lors de la sauvegarde des emplacements.",
"errorUnknownSave": "Impossible de sauvegarder les modifications. Veuillez réessayer ultérieurement.",
"errorUnknownFetchLocations": "Erreur inconnue lors de la récupération des emplacements.",
"successSave": "Emplacements sauvegardés avec succès.",
"enableTool": "Activer les lieux",
"enableToolDescription": "Activer la gestion des lieux pour ce livre.",
"toolEnabled": "Gestion des lieux activée.",
"toolDisabled": "Gestion des lieux désactivée."
},
"characterCategories": {
"none": "Sélectionner son rôle",
"main": "Principal",
"secondary": "Secondaire",
"recurring": "Récurrent"
},
"characterStatus": {
"alive": "Vivant",
"dead": "Décédé",
"unknown": "Inconnu"
},
"characterComponent": {
"exportSuccess": "Personnage exporté vers la série avec succès.",
"errorNameRequired": "Le nom du personnage est requis.",
"errorCategoryRequired": "Le rôle du personnage est requis.",
"successAdd": "Personnage ajouté avec succès.",
"successUpdate": "Personnage mis à jour avec succès.",
"successDelete": "Personnage supprimé avec succès.",
"errorAddCharacter": "Erreur lors de l'ajout du personnage.",
"errorUpdateCharacter": "Erreur lors de la mise à jour du personnage.",
"errorDeleteCharacter": "Erreur lors de la suppression du personnage.",
"errorAddAttribute": "Erreur lors de l'ajout de l'attribut.",
"errorRemoveAttribute": "Erreur lors de la suppression de l'attribut.",
"enableTool": "Activer les personnages",
"enableToolDescription": "Activer la gestion des personnages pour ce livre.",
"toolEnabled": "Gestion des personnages activée.",
"toolDisabled": "Gestion des personnages désactivée."
},
"spellComponent": {
"exportSuccess": "Sort exporté vers la série avec succès.",
"enableTool": "Activer le grimoire de sorts",
"enableToolDescription": "Gérez les sorts et la magie de votre univers.",
"errorNameRequired": "Le nom du sort est requis.",
"errorDescriptionRequired": "La description du sort est requise.",
"errorAppearanceRequired": "L'apparence du sort est requise.",
"errorAddSpell": "Erreur lors de l'ajout du sort.",
"errorUpdateSpell": "Erreur lors de la mise à jour du sort.",
"errorDeleteSpell": "Erreur lors de la suppression du sort.",
"successAdd": "Sort ajouté avec succès.",
"successUpdate": "Sort mis à jour avec succès.",
"successDelete": "Sort supprimé avec succès."
},
"spellList": {
"search": "Rechercher un sort...",
"add": "Ajouter un sort",
"manageTags": "Gérer les tags",
"filterByTag": "Filtrer par tag",
"filterByLevel": "Filtrer par niveau",
"allTags": "Tous les tags",
"allLevels": "Tous les niveaux",
"noSpells": "Aucun sort créé",
"noSpellsDescription": "Ajoutez votre premier sort pour commencer."
},
"spellDetail": {
"back": "Retour",
"newSpell": "Nouveau sort",
"exportToSeries": "Exporter vers la série",
"save": "Enregistrer",
"delete": "Supprimer",
"deleteTitle": "Supprimer le sort",
"deleteMessage": "Vous êtes sur le point de supprimer le sort « {{name}} » définitivement.",
"basicInfo": "Informations de base",
"name": "Nom du sort",
"namePlaceholder": "Entrez le nom du sort",
"description": "Description",
"descriptionPlaceholder": "Décrivez les effets et la nature du sort",
"appearance": "Apparence",
"appearancePlaceholder": "Décrivez l'apparence visuelle du sort",
"tags": "Tags",
"addTag": "Ajouter un tag...",
"createTag": "Créer \"{{name}}\"",
"powerLevel": "Niveau de puissance",
"components": "Composantes",
"componentsPlaceholder": "Ingrédients, gestes, incantations nécessaires...",
"limitations": "Limitations",
"limitationsPlaceholder": "Restrictions, effets secondaires, conditions d'utilisation...",
"notes": "Notes",
"notesPlaceholder": "Notes supplémentaires sur le sort..."
},
"spellTagManager": {
"title": "Gestion des tags",
"back": "Retour",
"addTag": "Ajouter un tag",
"tagName": "Nom du tag",
"tagNamePlaceholder": "Nom du tag...",
"tagColor": "Couleur",
"editTag": "Modifier le tag",
"preview": "Aperçu",
"deleteTagTitle": "Supprimer le tag",
"delete": "Supprimer",
"confirmDelete": "Supprimer ce tag? Il sera retiré de tous les sorts.",
"noTags": "Aucun tag créé",
"successAdd": "Tag ajouté avec succès.",
"successUpdate": "Tag mis à jour avec succès.",
"successDelete": "Tag supprimé avec succès."
},
"spellPowerLevels": {
"none": "Aucun",
"minor": "Mineur",
"moderate": "Modéré",
"major": "Majeur",
"legendary": "Légendaire",
"divine": "Divin"
},
"characterDetail": {
"back": "Retour",
"newCharacter": "Nouveau personnage",
"exportToSeries": "Exporter vers la série",
"deleteTitle": "Supprimer le personnage",
"deleteMessage": "Vous êtes sur le point de supprimer le personnage « {{name}} » définitivement.",
"basicInfo": "Informations de base",
"name": "Nom",
"namePlaceholder": "Entrer un nom",
"lastName": "Nom de famille",
"lastNamePlaceholder": "Exemple : Smith",
"nickname": "Surnom",
"nicknamePlaceholder": "Alias ou surnom",
"role": "Rôle",
"title": "Titre",
"titlePlaceholder": "Ex: Roi, Capitaine, Docteur...",
"gender": "Genre",
"genderPlaceholder": "Ex: Masculin, Féminin, Non-binaire",
"age": "Âge",
"agePlaceholder": "Ex: 25",
"yearsOld": "ans",
"species": "Espèce",
"speciesPlaceholder": "Ex: Humain, Elfe, Vampire",
"nationality": "Nationalité/Origine",
"nationalityPlaceholder": "Ex: Française, Elfique",
"status": "Statut",
"residence": "Lieu de résidence",
"residencePlaceholder": "Où vit le personnage",
"speechPattern": "Style de langage",
"speechPatternPlaceholder": "Tics verbaux, accent, vocabulaire...",
"catchphrase": "Phrase fétiche",
"catchphrasePlaceholder": "Citation récurrente du personnage",
"notes": "Notes de l'auteur",
"notesPlaceholder": "Notes personnelles, rappels...",
"colorLabel": "Couleur associée",
"colorPlaceholder": "Ex: #51AE84 ou vert",
"advancedMode": "Mode avancé",
"showAdvanced": "Afficher",
"hideAdvanced": "Masquer",
"identitySection": "Identité étendue",
"voiceSection": "Voix du personnage",
"authorSection": "Notes de l'auteur",
"historySection": "Parcours",
"biography": "Biographie",
"biographyPlaceholder": "La biographie du personnage.",
"history": "Histoire",
"historyPlaceholder": "Histoire du personnage...",
"roleFull": "Rôle",
"roleFullPlaceholder": "Rôle du personnage dans l'histoire",
"fetchAttributesError": "Erreur lors de la récupération des attributs."
},
"characterList": {
"search": "Rechercher un personnage...",
"add": "Ajouter un personnage",
"unknownImage": "?",
"unknown": "Inconnu",
"noLastName": "Sans nom",
"noTitle": "Sans titre",
"noRole": "Sans rôle",
"noCharacters": "Aucun personnage",
"noCharactersDescription": "Ajoutez votre premier personnage pour commencer."
},
"characterSectionElement": {
"newItem": "Nouveau {{item}}"
},
"aboutEditors": {
"title": "À propos de Scribe",
"version": "Version",
"copyrightLabel": "Copyright",
"descriptionLabel": "Description",
"teamLabel": "Équipe",
"techLabel": "Technologies",
"copyright": "© 2025, Tous droits réservés",
"description": "ERitors est une plateforme d'écriture intuitive conçue pour les auteurs. Inspirée par une passion pour les histoires captivantes, ERitors surmonte les obstacles traditionnels de l'écriture en offrant un environnement intégré pour structurer vos idées, gérer vos versions et développer vos univers narratifs. Que vous écriviez une petite histoire ou un roman épique, ERitors vous accompagne à chaque étape de votre parcours créatif. Rejoignez-nous et découvrez comment ERitors peut transformer votre processus d'écriture.",
"teamMember": "Kevin Dorion"
},
"bookSettingOption": {
"basicInformation": "Informations de base",
"guideLine": "Ligne directrice",
"storyPlan": "Plan de l'histoire",
"manageWorlds": "Gérer les mondes",
"yourLocations": "Vos lieux",
"characters": "Les personnages",
"spells": "Grimoire de sorts",
"quillsense": "Parametres QuillSense",
"export": "Exporter votre livre",
"objectsList": "Liste des objets",
"bookGoals": "Objectifs du livre",
"save": "Sauvegarder",
"notAvailable": "Option non disponible",
"unknownError": "Une erreur inconnue est survenue.",
"quillsenseOffline": "QuillSense n'est pas disponible hors ligne."
},
"noBookHome": {
"title": "Votre œuvre attend ses premiers mots",
"description": "Cette œuvre n'a pas encore de chapitres. Pour commencer à écrire, créez votre premier chapitre.",
"hint": "Cliquez sur l'icône Livre Ouvert dans la barre d'outils pour gérer la structure"
},
"textEditor": {
"preferences": "Préférences",
"ghostWriter": "Écrivain Fantôme",
"draftCompanion": "Draft Companion",
"save": "Enregistrer",
"indentDisabled": "Indentation désactivée",
"indentDisabledTitle": "Indentation de paragraphe désactivée",
"indentDisabledDescription": "L'indentation de première ligne des paragraphes est désactivée en raison d'un bug d'affichage dans le moteur WebKit d'Apple. Un correctif est en cours d'intégration et sera disponible dans une prochaine mise à jour de Safari. L'indentation sera automatiquement réactivée dès que le correctif sera disponible sur votre système.",
"indentDisabledUnderstood": "Compris"
},
"draftCompanion": {
"noPreviousVersion": "Aucune version antérieure de ce chapitre",
"errorFetchDraft": "Erreur lors de la récupération du contenu du brouillon.",
"unknownError": "Une erreur inconnue s'est produite",
"errorRefineText": "Erreur lors de la correction du texte",
"errorRefineDraft": "Erreur lors de la correction du brouillon : {{message}}",
"unknownErrorRefineDraft": "Une erreur inconnue s'est produite lors de la correction du brouillon",
"successInsert": "Correction insérée avec succès",
"selectVersion": "Sélectionner une version",
"words": "Mots",
"refine": "Perfectionner",
"refining": "En cours de perfectionnement...",
"abortSuccess": "Génération arrêtée. Les totaux de tokens et coûts seront disponibles au prochain rafraîchissement de la page.",
"sseParsingError": "Erreur lors de la lecture des données de génération"
},
"ghostWriter": {
"title": "Écrivain Fantôme",
"description": "Transformez vos idées en prose captivante",
"subscriptionRequired": "Vous devez être abonné à QuillSense Pro pour utiliser Ghost Writer.",
"subscribe": "S'abonner",
"length": "Longueur du texte",
"minimum": "Minimum",
"maximum": "Maximum",
"words": "mots",
"type": "Type d'écriture",
"toneAtmosphere": "Ton et atmosphère",
"tonePlaceholder": "Ex : Mystérieux, joyeux, sombre...",
"directive": "Directives créatives",
"importPrompt": "Importer l'invite",
"directivePlaceholder": "Ex : Écris un chapitre sur...",
"save": "Sauvegarder",
"advanced": "Avancé",
"cancel": "Annuler",
"generate": "Générer",
"generating": "Création en cours...",
"stop": "Arrêter",
"successGenerate": "Texte généré avec succès.",
"successInsert": "Extrait inséré avec succès",
"successImport": "Contenu importé avec succès",
"errorGenerate": "Une erreur est survenue pendant la génération.",
"errorImport": "Une erreur est survenue pendant l'import.",
"errorUnknown": "Une erreur inconnue est survenue.",
"errorUnknownImport": "Une erreur inconnue est survenue pendant l'import.",
"noContentFound": "Aucun contenu trouvé",
"promptEmpty": "Le prompt avancé ne peut pas être vide.",
"errorSaveAdvanced": "Erreur lors de la sauvegarde des paramètres avancés.",
"successSaveAdvanced": "Paramètres avancés sauvegardés avec succès.",
"errorSave": "Une erreur est survenue pendant la sauvegarde.",
"errorUnknownSave": "Une erreur inconnue est survenue pendant la sauvegarde.",
"errorRetrieveContent": "Erreur lors de la récupération du contenu.",
"errorUnknownRetrieveContent": "Erreur inconnue lors de la récupération du contenu.",
"abortSuccess": "Génération arrêtée. Les totaux de tokens et coûts seront disponibles au prochain rafraîchissement de la page.",
"settings": {
"unknownError": "Erreur inconnue lors de la sauvegarde des paramètres."
},
"tags": {
"addTagPlaceholder": "Tags",
"unknownError": "Erreur inconnue lors de la gestion des tags."
}
},
"userEditorSettings": {
"displayPreferences": "Préférences d'affichage",
"textSize": "Taille du texte",
"zoom": {
"Très petit": "Très petit",
"Petit": "Petit",
"Normal": "Normal",
"Grand": "Grand",
"Très grand": "Très grand"
},
"indent": "Indentation des paragraphes",
"indentNone": "Aucune",
"indentMax": "Maximum",
"lineHeight": "Interligne",
"lineHeightCompact": "Compact (1.2)",
"lineHeightNormal": "Normal (1.5)",
"lineHeightSpaced": "Aéré (1.75)",
"lineHeightDouble": "Double (2.0)",
"fontFamily": "Police de caractères",
"fontLora": "Lora (Police personnalisée)",
"fontSerif": "Serif (Times, Georgia)",
"fontSansSerif": "Sans-serif (Arial, Helvetica)",
"fontMonospace": "Monospace (Courier)",
"maxWidth": "Largeur du contenu",
"maxWidthNarrow": "Étroit",
"maxWidthWide": "Large",
"theme": "Thème d'affichage",
"themeOption": {
"clair": "Clair",
"sombre": "Sombre",
"sépia": "Sépia"
},
"focusMode": "Mode focus (masquer les distractions)",
"reset": "Réinitialiser les préférences",
"saveError": "Erreur lors de la sauvegarde des préférences.",
"unknownError": "Une erreur inconnue est survenue lors de la sauvegarde des préférences."
},
"scribeFooterBar": {
"sheet": "Feuille : ",
"madeWith": "Éditeur Scribe fait avec",
"words": "mots",
"pages": "pages",
"paragraphs": "paragraphes",
"books": "Livres"
},
"addNewBookForm": {
"title": "Ajouter un nouvel oeuvre",
"type": "Type de livre",
"typePlaceholder": "Sélectionner un type de livre",
"bookTitle": "Titre",
"bookTitlePlaceholder": "Titre du livre",
"subtitle": "Sous-titre",
"subtitlePlaceholder": "Sous-titre (optionnel)",
"publicationDate": "Date de sortie souhaitée",
"wordGoal": "Objectif de mots",
"wordGoalPlaceholder": "Objectif de mots",
"summary": "Résumé",
"summaryPlaceholder": "Résumé du livre",
"words": "mots",
"add": "Ajouter",
"adding": "Ajout...",
"error": {
"titleMissing": "Oops! Le titre est manquant.",
"titleTooShort": "Le titre est trop court. Minimum 2 caractères requis",
"titleTooLong": "Le titre est trop long. Maximum 50 caractères autorisés",
"typeMissing": "Sélectionner un genre.",
"addingBook": "Une erreur est survenue lors de l'ajout du livre."
},
"bookTypeHint": {
"title": "Type d'oeuvre",
"nouvelle": {
"title": "Nouvelle",
"range": "2 000 - 7 500 mots",
"description": "Format court centré sur un événement unique. Structure resserrée, idéale pour débuter l'écriture de fiction."
},
"novelette": {
"title": "Novelette",
"range": "7 500 - 17 500 mots",
"description": "Format intermédiaire permettant une intrigue secondaire. Populaire en science-fiction et fantasy."
},
"novella": {
"title": "Novella",
"range": "17 500 - 40 000 mots",
"description": "Œuvre courte mais substantielle. Développement approfondi des personnages avec une densité narrative optimale."
},
"chapbook": {
"title": "Chapbook",
"range": "500 - 5 000 mots",
"description": "Publication courte, souvent expérimentale. Format libre et créatif, idéal pour tester de nouveaux styles."
},
"roman": {
"title": "Roman",
"range": "40 000+ mots",
"description": "Œuvre longue avec multiples intrigues et personnages. Nécessite une structure solide et une planification rigoureuse."
},
"tip": "💡 Conseil : Commencez par une nouvelle pour maîtriser les bases, puis évoluez vers des formats plus longs selon votre expérience."
}
},
"addNewSeriesForm": {
"title": "Créer une nouvelle série",
"name": "Nom de la série",
"namePlaceholder": "Ex: Les Chroniques de...",
"description": "Description",
"descriptionPlaceholder": "Décrivez votre série...",
"optional": "optionnel",
"selectBooks": "Livres à inclure",
"selected": "sélectionné(s)",
"noBooks": "Aucun livre disponible",
"add": "Créer",
"adding": "Création...",
"success": "Série créée avec succès.",
"error": {
"nameMissing": "Le nom de la série est requis.",
"nameTooShort": "Le nom est trop court. Minimum 2 caractères requis.",
"nameTooLong": "Le nom est trop long. Maximum 100 caractères autorisés.",
"addingSeries": "Une erreur est survenue lors de la création de la série."
}
},
"searchBook": {
"placeholder": "Recherchez dans votre bibliothèque..."
},
"guideLineSetting": {
"saveSuccess": "Ligne directrice sauvegardée avec succès.",
"saveError": "Erreur lors de la sauvegarde de la ligne directrice.",
"errorUnknown": "Erreur inconnue lors de la sauvegarde.",
"personal": "Personnel",
"quillsense": "QuillSense",
"tone": "Ton",
"tonePlaceholder": "Décrivez le ton de votre livre",
"atmosphere": "Atmosphère",
"atmospherePlaceholder": "Décrivez l'atmosphère de votre livre",
"writingStyle": "Style d'écriture",
"writingStylePlaceholder": "Décrivez le style d'écriture de votre livre",
"themes": "Thèmes",
"themesPlaceholder": "Décrivez les thèmes de votre livre",
"themesPlaceholderQuill": "Thèmes désirés",
"symbolism": "Symbolisme",
"symbolismPlaceholder": "Décrivez le symbolisme dans votre livre",
"motifs": "Motifs",
"motifsPlaceholder": "Décrivez les motifs récurrents de votre livre",
"narrativeVoice": "Voix narrative",
"narrativeVoicePlaceholder": "Décrivez la voix narrative de votre livre",
"pacing": "Rythme",
"pacingPlaceholder": "Décrivez le rythme de votre livre",
"intendedAudience": "Public cible",
"intendedAudiencePlaceholder": "Décrivez le public cible de votre livre",
"keyMessages": "Messages clés",
"keyMessagesPlaceholder": "Décrivez les messages clés de votre livre",
"plotSummary": "Résumé de l'intrigue",
"plotSummaryPlaceholder": "Résumé de l'intrigue généré par QuillSense",
"toneAtmosphere": "Ton et atmosphère",
"toneAtmospherePlaceholder": "Ton et atmosphère recommandés",
"verbTense": "Temps des verbes",
"verbTensePlaceholder": "Temps des verbes recommandés",
"narrativeType": "Type de narration",
"narrativeTypePlaceholder": "Type de narration recommandé",
"dialogueType": "Type de dialogue",
"dialogueTypePlaceholder": "Type de dialogue recommandé",
"language": "Langage",
"languagePlaceholder": "Langage recommandé"
},
"story": {
"errorFetch": "Une erreur est survenue lors de la récupération des données de l'histoire.",
"errorUnknownFetch": "Une erreur inconnue lors de la récupération des données de l'histoire.",
"errorSave": "Une erreur est survenue lors de la sauvegarde.",
"errorUnknownSave": "Une erreur inconnue lors de la sauvegarde.",
"successSave": "Histoire sauvegardée avec succès."
},
"mainChapter": {
"chapters": "Chapitres",
"chapterTitlePlaceholder": "Titre du chapitre",
"noChapter": "Aucun chapitre disponible. Ajoute-en un ci-dessous!",
"newChapterPlaceholder": "Nouveau chapitre",
"deleteTitle": "Supprimer le chapitre",
"deleteMessage": "Vous êtes sur le point de supprimer un chapitre",
"errorDelete": "Une erreur est survenue lors de la suppression du chapitre.",
"errorUnknownDelete": "Une erreur inconnue est survenue lors de la suppression du chapitre.",
"errorAdd": "Erreur lors de l'ajout du chapitre principal.",
"errorUnknownAdd": "Erreur inconnue lors de l'ajout du chapitre principal."
},
"actComponent": {
"errorAddIncident": "Erreur lors de l'ajout du nouvel incident déclencheur.",
"errorUnknownAddIncident": "Erreur inconnue lors de l'ajout de l'incident déclencheur.",
"errorDeleteIncident": "Une erreur est survenue lors de la suppression de l'incident.",
"errorUnknownDeleteIncident": "Une erreur inconnue est survenue lors de la suppression de l'incident.",
"errorAddPlotPoint": "Une erreur est survenue lors de l'ajout du point de plot.",
"errorUnknownAddPlotPoint": "Une erreur inconnue est survenue lors de l'ajout du point de plot.",
"errorDeletePlotPoint": "Une erreur est survenue lors de la suppression du point de plot.",
"errorUnknownDeletePlotPoint": "Une erreur inconnue est survenue lors de la suppression du point de plot.",
"errorLinkChapter": "Une erreur est survenue lors de l'ajout du chapitre.",
"errorUnknownLinkChapter": "Une erreur inconnue est survenue lors de l'ajout du chapitre.",
"errorUnlinkChapter": "Une erreur est survenue lors de la suppression du chapitre.",
"errorUnknownUnlinkChapter": "Une erreur inconnue est survenue lors de la suppression du chapitre.",
"chapterSummaryPlaceholder": "Résumé du chapitre pour cet acte",
"remove": "Retirer",
"chapters": "Chapitres",
"noLinkedChapter": "Aucun chapitre lié",
"selectChapterPlaceholder": "Sélectionner un chapitre...",
"act1Summary": "Résumé de l'acte 1",
"act4Summary": "Résumé de l'acte 4",
"act5Summary": "Résumé de l'acte 5",
"actSummary": "Résumé de l'acte",
"act1SummaryPlaceholder": "Résumé de l'acte 1",
"act4SummaryPlaceholder": "Résumé de l'acte 4",
"act5SummaryPlaceholder": "Résumé de l'acte 5",
"actSummaryPlaceholder": "Résumé de l'acte",
"delete": "Supprimer",
"incidentsTitle": "Incidents (Éléments déclencheurs)",
"noIncidentAdded": "Aucun incident ajouté",
"newIncidentPlaceholder": "Nouveau élément déclencheur",
"plotPointsTitle": "Points d'intrigue (Péripéties)",
"linkedTo": "Lié à",
"noPlotPointAdded": "Aucun point d'intrigue ajouté",
"newPlotPointPlaceholder": "Nouveau point d'intrigue",
"act1Title": "Acte 1: Introduction",
"act2Title": "Acte 2: Éléments déclencheurs",
"act3Title": "Acte 3: Péripéties",
"act4Title": "Acte 4: Dénouement",
"act5Title": "Acte 5: Conclusion"
},
"issues": {
"title": "Problématiques",
"issueNamePlaceholder": "Nom de la problématique",
"noIssue": "Aucune problématique ajoutée. Ajoutes-en une ci-dessous!",
"newIssuePlaceholder": "Nouvelle problématique",
"errorAdd": "Une erreur est survenue lors de l'ajout.",
"errorUnknownAdd": "Une erreur inconnue est survenue.",
"errorDelete": "Une erreur est survenue lors de la suppression.",
"errorUnknownDelete": "Une erreur inconnue est survenue.",
"errorEmptyName": "Le nom de la problématique ne peut pas être vide.",
"errorInvalidId": "ID de problématique invalide."
},
"worldElementComponent": {
"errorDelete": "Erreur lors de la suppression de l'élément.",
"errorAdd": "Erreur lors de l'ajout de l'élément.",
"errorUnknown": "Une erreur inattendue s'est produite.",
"emptyField": "Le champ {{section}} est vide.",
"namePlaceholder": "Nom {{section}}",
"descriptionPlaceholder": "Description de {{section}}",
"newPlaceholder": "Nouveau {{section}}"
},
"bookTypes": {
"short": "Nouvelle",
"novelette": "Novelette",
"novella": "Novella",
"chapbook": "Chapbook",
"novel": "Roman"
},
"bookType": {
"short": "Nouvelle",
"novelette": "Novelette",
"novella": "Novella",
"chapbook": "Chapbook",
"novel": "Roman"
},
"chapterVersions": {
"prompt": "Invite",
"draft": "Brouillon",
"refine": "Perfectionnement",
"review": "Révision",
"final": "Finale"
},
"bookSetting": {
"basicInformation": "Information de base",
"guideLine": "Ligne directrice",
"story": "Histoire",
"world": "Mondes",
"locations": "Emplacements",
"characters": "Personnages",
"spells": "Grimoire",
"quillsense": "QuillSense (IA)",
"export": "Exporter",
"objects": "Objets",
"goals": "Buts"
},
"seriesSetting": {
"basicInformation": "Informations",
"books": "Œuvres",
"characters": "Personnages",
"worlds": "Mondes",
"locations": "Emplacements",
"spells": "Grimoire",
"backToLibrary": "Retour à la bibliothèque",
"errorLoading": "Erreur lors du chargement de la série",
"deleteSeries": "Supprimer la série",
"deleteConfirmMessage": "Cette action supprimera définitivement la série et tous ses éléments (personnages, mondes, lieux, sorts). Continuer?",
"deleteSuccess": "Série supprimée avec succès",
"deleteError": "Erreur lors de la suppression de la série"
},
"seriesSettingOption": {
"basicInformation": "Informations de base",
"books": "Œuvres de la série",
"characters": "Les personnages",
"worlds": "Gérer les mondes",
"locations": "Vos emplacements",
"spells": "Grimoire de sorts",
"notAvailable": "Cette option n'est pas encore disponible."
},
"seriesBasicInformation": {
"error": {
"noFileSelected": "Aucun fichier sélectionné.",
"removeCover": "Erreur lors de la suppression de la couverture.",
"nameRequired": "Le nom de la série est obligatoire.",
"update": "Erreur lors de la mise à jour des informations de la série.",
"unknown": "Une erreur inconnue est survenue."
},
"success": {
"update": "Série mise à jour avec succès."
},
"fields": {
"name": "Nom de la série",
"namePlaceholder": "Ex: Les Chroniques de...",
"description": "Description",
"descriptionPlaceholder": "Décrivez votre série...",
"coverImage": "Image couverture",
"coverImageAlt": "Couverture actuelle",
"generateWithQuillSense": "Générer avec QuillSense"
}
},
"seriesBooks": {
"addBook": "Ajouter un livre",
"add": "Ajouter",
"selectBookPlaceholder": "Sélectionner un livre...",
"booksInSeries": "Livres dans la série",
"noBooks": "Aucun livre dans cette série",
"moveUp": "Monter",
"moveDown": "Descendre",
"removeBook": "Retirer de la série",
"error": {
"selectBook": "Veuillez sélectionner un livre.",
"unknown": "Une erreur inconnue est survenue."
},
"success": {
"saved": "Changements enregistrés."
}
},
"seriesCharacter": {
"noCharacters": "Aucun personnage global dans cette série."
},
"seriesCard": {
"book": "livre",
"books": "livres",
"series": "Série",
"settings": "Paramètres de la série"
},
"basicInformationSetting": {
"error": {
"noFileSelected": "Aucun fichier sélectionné.",
"removeCover": "Erreur lors de la suppression de la couverture du livre.",
"titleRequired": "Le titre est obligatoire.",
"update": "Erreur lors de la mise à jour des informations de base du livre.",
"unknown": "Une erreur inconnue est survenue."
},
"success": {
"update": "Informations de base mises à jour avec succès."
},
"fields": {
"title": "Titre",
"titlePlaceholder": "Entrez le titre du livre",
"subtitle": "Sous-titre",
"subtitlePlaceholder": "Entrez un sous-titre (optionnel)",
"summary": "Résumé",
"summaryPlaceholder": "Décrivez brièvement votre livre",
"publicationDate": "Date de publication",
"wordCount": "Nombre de mots",
"wordCountPlaceholder": "Entrez le nombre de mots",
"coverImage": "Image couverture",
"coverImageAlt": "Couverture actuelle",
"generateWithQuillSense": "Générer avec QuillSense"
}
},
"quillList": {
"untitled": "Sans titre",
"error": {
"unknown": "Une erreur inconnue est survenue lors du chargement des conversations."
}
},
"quillConversation": {
"emptyMessageError": "Veuillez entrer un message avant de l'envoyer.",
"inputPlaceholder": "Qu'avez-vous à l'esprit?",
"accessRequired": {
"title": "Accès au Clavardage Requis",
"description": "Un abonnement à QuillSense intermédiaire est nécessaire, ou une clé Gemini activée dans vos paramètres est nécessaire si vous êtes membre fondateur ou abonné à \"Amenez vos clés\"."
},
"loadingMessage": "QuillSense écrit",
"welcomeTitle": "Bienvenue sur QuillSense",
"welcomeDescription": "Votre assistant d'écriture intelligent. Posez-moi des questions sur votre histoire, demandez des conseils d'écriture ou explorez de nouvelles idées créatives.",
"welcomeTip": "💡 Astuce : Activez le contexte pour des réponses personnalisées à votre œuvre",
"contextLabel": "Contexte :",
"context": {
"none": "Aucun",
"chapter": "Chapitre",
"book": "Ouvrage"
},
"contextAlert": {
"title": "Activation du contexte",
"chapter": "Le contenu du chapitre actuel sera envoyé à Gemini pour fournir des réponses contextualisées.",
"book": "Le contenu complet de votre ouvrage sera envoyé à Gemini pour fournir des réponses contextualisées."
},
"genericError": "Une erreur est survenue. Veuillez réessayer.",
"loadError": "Erreur lors du chargement de la conversation.",
"sendError": "Erreur lors de l'envoi du message."
},
"qsTextPreview": {
"title": "Extrait généré",
"insert": "Insérer"
},
"common": {
"back": "Retour",
"cancel": "Annuler",
"confirm": "Confirmer",
"create": "Créer",
"delete": "Supprimer",
"deleting": "Suppression...",
"edit": "Modifier",
"exportToSeries": "Exporter vers la série",
"save": "Enregistrer",
"unknownError": "Une erreur inconnue est survenue"
},
"spellPowerLevels": {
"none": "Aucun",
"cantrip": "Tour de magie",
"novice": "Novice",
"apprentice": "Apprenti",
"journeyman": "Compagnon",
"expert": "Expert",
"master": "Maître",
"grandmaster": "Grand maître",
"legendary": "Légendaire",
"divine": "Divin"
},
"editor": {
"error": {
"savedFailed": "Échec de l'enregistrement",
"unknownError": "Une erreur inconnue est survenue",
"parsingContent": "Erreur lors du chargement du contenu du chapitre"
},
"success": {
"saved": "Enregistré avec succès"
}
},
"errors": {
"wordCountError": "Erreur lors du calcul du nombre de mots"
},
"homePage": {
"loading": "Chargement en cours...",
"guide": {
"welcome": "Bienvenue {{name}}",
"step0": {
"description1": "ERitors est un logiciel assisté par l'intelligence artificielle (API Anthropic et OpenAI) intégrée sous le nom de QuillSense. Son objectif est de vous fournir tous les outils nécessaires pour créer une œuvre complète de A à Z.",
"description2": "Ce guide vous accompagnera dans vos premiers pas. Vous pouvez naturellement le passer si vous le souhaitez."
},
"step1": {
"title": "Outils de base",
"addBook": "Permet d'ouvrir le panneau pour créer un nouvel ouvrage.",
"generateStory": "Permet d'ouvrir le panneau pour générer une histoire courte (nouvelle) via QuillSense."
},
"step2": {
"title": "Recherche",
"description": "Une fois votre premier ouvrage créé, vous pourrez le retrouver facilement grâce à cette barre de recherche intégrée."
},
"step3": {
"title": "Gestion de votre compte",
"description": "Accédez à vos paramètres pour gérer votre compte, activer l'authentification à deux facteurs (2FA) ou vous déconnecter en toute sécurité."
},
"step4": {
"title": "Prêt à commencer",
"description1": "Vous êtes maintenant prêt à utiliser ERitors dans sa plénitude ! Créez votre premier ouvrage ou laissez QuillSense vous inspirer avec une nouvelle histoire.",
"description2": "Bonne rédaction ! 🖋️"
}
},
"errors": {
"termsError": "Erreur lors de la récupération des conditions d'utilisation",
"userNotFound": "Utilisateur non trouvé",
"authenticationError": "Erreur pendant l'authentification",
"termsAcceptError": "Erreur lors de l'acceptation des conditions d'utilisation",
"lastChapterError": "Erreur lors de la récupération du dernier chapitre"
}
},
"quillsenseSetting": {
"enableQuillsense": "Activer QuillSense",
"enableDescription": "Lorsque desactive, toutes les fonctionnalites d'IA seront masquees pour ce livre.",
"advancedPrompt": "Prompt avance pour Ghost Writer",
"advancedPromptPlaceholder": "Entrez des instructions personnalisees pour guider l'IA lors de la generation de texte...",
"advancedPromptDescription": "Ce prompt sera utilise comme directive prioritaire lors de la generation de texte avec Ghost Writer.",
"saveSuccess": "Parametres QuillSense sauvegardes avec succes.",
"saveError": "Erreur lors de la sauvegarde des parametres.",
"unknownError": "Une erreur inconnue est survenue.",
"enable_characters": "Activer les personnages",
"enable_worlds": "Activer les mondes",
"enable_locations": "Activer les lieux"
},
"shortStoryGenerator": {
"title": "Générateur d'histoires courtes",
"tabs": {
"basics": "Bases",
"structure": "Structure",
"atmosphere": "Ambiance",
"result": "Résultat"
},
"result": {
"title": "Ton histoire générée",
"generating": "Génération de l'histoire en cours...",
"words": "mots",
"noResponse": "Aucune réponse reçue du générateur.",
"saveError": "Erreur lors de la sauvegarde de l'histoire.",
"unknownError": "Une erreur inconnue est survenue.",
"abortSuccess": "Génération arrêtée. Les totaux de tokens et coûts seront disponibles au prochain rafraîchissement de la page."
},
"fields": {
"complexity": "Niveau d'écriture",
"preset": "Type prédéfini",
"language": "Langue",
"wordCount": "Nombre de mots",
"tense": "Temps du récit",
"narrative": "Personne narrative",
"dialogue": "Type de dialogues",
"directives": "Directives spéciales",
"tone": "Ton",
"atmosphere": "Ambiance",
"character": "Personnages"
},
"placeholders": {
"directives": "Ajoute des consignes ou des détails particuliers (ex: Fin heureuse, événement marquant…)",
"tone": "Décris le ton (ex: joyeux, mystérieux, dramatique…)",
"atmosphere": "Décris l'ambiance (ex: ensoleillée, sombre, tendue…)",
"character": "Liste les personnages principaux"
},
"actions": {
"generate": "Générer l'histoire",
"generating": "Génération...",
"save": "Enregistrer",
"regenerate": "Re-générer",
"improve": "Améliorer avec Magic Fix",
"stop": "Arrêter"
},
"navigation": {
"previous": "Précédent",
"next": "Suivant",
"cancel": "Annuler",
"close": "Fermer"
},
"accessDenied": {
"title": "Accès refusé",
"message": "Désolé! Cette fonctionnalité est réservée aux membres avancés. Tu dois avoir un abonnement supérieur ou l'option activation IA avancée.",
"close": "Fermer"
}
},
"syncField": {
"uploadSuccess": "{{count}} élément(s) mis à jour avec succès.",
"uploadTooltip": "Envoyer vers la série",
"downloadTooltip": "Récupérer depuis la série"
},
"exportOption": {
"formatLabel": "Format d'export",
"chapters": "Chapitres",
"loadingChapters": "Chargement des chapitres...",
"noChaptersAvailable": "Aucun chapitre disponible pour l'export.",
"selectAll": "Tout sélectionner",
"deselectAll": "Tout désélectionner",
"exportButton": "Exporter",
"exporting": "Exportation en cours...",
"noBookSelected": "Aucun livre sélectionné.",
"noChaptersSelected": "Veuillez sélectionner au moins un chapitre.",
"downloadSuccess": "Votre fichier {{format}} a été téléchargé avec succès.",
"downloadError": "Échec du téléchargement.",
"serverError": "Erreur du serveur lors de l'export.",
"unknownError": "Une erreur inconnue est survenue."
},
"seriesImport": {
"importButton": "Importer",
"importFromSeries": "Importer depuis la série",
"selectElement": "Sélectionner un élément"
},
"loginPage": {
"title": "Connexion",
"welcome": "Bienvenue sur ERitors Scribe",
"orSocial": "ou connectez-vous avec",
"offlineWarning": {
"title": "Mode hors-ligne requis",
"message": "Vous n'êtes pas connecté à Internet. Pour utiliser l'application hors-ligne, vous devez d'abord vous connecter au moins une fois en ligne."
}
},
"loginForm": {
"submit": "Se connecter",
"fields": {
"email": {
"label": "Adresse e-mail",
"placeholder": "Entrez votre adresse e-mail"
},
"password": {
"label": "Mot de passe",
"placeholder": "Entrez votre mot de passe",
"forgot": "Mot de passe oublié ?"
}
},
"error": {
"emailRequired": "Veuillez entrer votre adresse e-mail.",
"passwordRequired": "Veuillez entrer votre mot de passe.",
"emailLength": "L'adresse e-mail doit contenir entre 5 et 100 caractères.",
"emailInvalidChars": "L'adresse e-mail contient des caractères invalides.",
"connection": "Erreur de connexion. Vérifiez vos identifiants.",
"server": "Erreur du serveur. Veuillez réessayer plus tard.",
"unknown": "Une erreur inconnue est survenue."
}
},
"socialForm": {
"error": {
"connection": "Erreur de connexion avec le fournisseur."
}
},
"registerPage": {
"title": "Inscription",
"subtitle": "Créez votre compte ERitors",
"backToLogin": "Retour à la connexion",
"progress": {
"infos": "Informations",
"verif": "Vérification"
}
},
"registerStepOne": {
"next": "Continuer",
"fields": {
"firstName": {
"label": "Prénom",
"placeholder": "Entrez votre prénom"
},
"lastName": {
"label": "Nom",
"placeholder": "Entrez votre nom"
},
"username": {
"label": "Nom d'utilisateur",
"placeholder": "Choisissez un nom d'utilisateur",
"note": "Le nom d'utilisateur doit contenir entre 3 et 50 caractères."
},
"email": {
"label": "Adresse e-mail",
"placeholder": "Entrez votre adresse e-mail"
},
"password": {
"label": "Mot de passe",
"placeholder": "Choisissez un mot de passe"
},
"repeatPassword": {
"label": "Confirmer le mot de passe",
"placeholder": "Confirmez votre mot de passe"
}
},
"error": {
"requiredFields": "Tous les champs sont requis.",
"firstNameLength": "Le prénom doit contenir entre 2 et 50 caractères.",
"lastNameLength": "Le nom doit contenir entre 2 et 50 caractères.",
"usernameLength": "Le nom d'utilisateur doit contenir entre 3 et 50 caractères.",
"invalidInput": "Un ou plusieurs champs contiennent des caractères invalides.",
"passwordMismatch": "Les mots de passe ne correspondent pas.",
"preRegister": "Erreur lors de la pré-inscription.",
"unknown": "Une erreur inconnue est survenue."
},
"success": {
"preRegister": "Un code de vérification a été envoyé à votre adresse e-mail."
}
},
"registerStepTwo": {
"verify": "Vérifier",
"back": "Retour",
"confirmed": "Votre compte a été vérifié avec succès !",
"start": "Commencer",
"instructions": {
"sent": "Un code de vérification a été envoyé à votre adresse e-mail.",
"checkInbox": "Vérifiez votre boîte de réception et vos spams."
},
"fields": {
"code": {
"label": "Code de vérification",
"placeholder": "Entrez le code reçu par e-mail"
}
},
"error": {
"codeIncorrect": "Le code de vérification est incorrect.",
"unknown": "Une erreur inconnue est survenue."
},
"success": {
"verified": "Votre compte a été vérifié avec succès !"
}
},
"resetPassword": {
"title": "Réinitialisation",
"subtitle": "Réinitialisez votre mot de passe",
"verify": "Vérifier l'e-mail",
"confirm": "Confirmer le code",
"changePassword": "Changer le mot de passe",
"back": "Retour",
"backToLogin": "Retour à la connexion",
"success": "Votre mot de passe a été réinitialisé avec succès !",
"goToLogin": "Se connecter",
"progress": {
"email": "E-mail",
"verification": "Vérification",
"final": "Nouveau mot de passe"
},
"fields": {
"email": {
"label": "Adresse e-mail",
"placeholder": "Entrez votre adresse e-mail"
},
"code": {
"label": "Code de vérification",
"placeholder": "Entrez le code reçu"
},
"newPassword": {
"label": "Nouveau mot de passe",
"placeholder": "Entrez votre nouveau mot de passe"
}
},
"error": {
"emailInvalid": "Veuillez entrer une adresse e-mail valide.",
"emailFormat": "Le format de l'adresse e-mail est invalide.",
"emailServer": "Erreur du serveur lors de la vérification de l'e-mail.",
"emailUnknown": "Une erreur inconnue est survenue.",
"codeServer": "Erreur du serveur lors de la vérification du code.",
"codeUnknown": "Une erreur inconnue est survenue.",
"passwordServer": "Erreur du serveur lors du changement de mot de passe.",
"passwordUnknown": "Une erreur inconnue est survenue."
}
},
"terms": {
"title": "Termes d'utilisation",
"subtitle": "Acceptation requise pour accéder à ERitors Scribe",
"mandatory": "Acceptation obligatoire",
"mandatoryDesc1": "Pour pouvoir utiliser nos services, tel qu'ERitors Scribe, vous devez accepter les termes d'utilisation en cliquant sur J'accepte.",
"mandatoryDesc2": "Veuillez lire attentivement la page détaillée des termes et conditions d'utilisation avant de procéder à l'acceptation.",
"mandatoryDesc3": "Si vous n'acceptez pas ces conditions, vous ne pourrez pas accéder à nos services et serez redirigé vers la page d'accueil.",
"fullDoc": "Documentation complète",
"fullDocDesc": "Pour consulter l'intégralité de nos termes et conditions d'utilisation, veuillez visiter notre page dédiée :",
"fullDocLink": "Consulter les termes complets",
"importance": "Importance capitale",
"importanceDesc": "Cette acceptation est obligatoire et constitue un prérequis légal pour l'utilisation de nos services d'édition assistée par intelligence artificielle.",
"required": "Décision requise pour continuer",
"refuse": "Refuser et quitter",
"accept": "J'accepte les termes"
},
"offline": {
"toggle": {
"online": "En ligne",
"offline": "Hors ligne",
"switchToOnline": "Passer en mode en ligne",
"switchToOffline": "Passer en mode hors ligne"
},
"mode": {
"title": "Mode hors-ligne",
"backToOnline": "Retour en ligne"
},
"pin": {
"errors": {
"tooShort": "Le code PIN doit contenir au moins 4 chiffres.",
"tooLong": "Le code PIN ne peut pas dépasser 8 chiffres.",
"digitsOnly": "Le code PIN ne doit contenir que des chiffres.",
"mismatch": "Les codes PIN ne correspondent pas.",
"setupFailed": "Erreur lors de la configuration du PIN."
},
"setup": {
"title": "Configurer le PIN hors-ligne",
"titleFirstLogin": "Configurer un PIN pour le mode hors-ligne",
"subtitle": "Ce PIN vous permettra d'accéder à vos données sans connexion Internet.",
"description": "Choisissez un code PIN de 4 à 8 chiffres pour sécuriser l'accès hors-ligne à vos données.",
"pinLabel": "Code PIN",
"confirmPinLabel": "Confirmer le code PIN",
"laterButton": "Plus tard",
"configuringButton": "Configuration...",
"configureButton": "Configurer le PIN",
"footer": "Vous pourrez modifier ce PIN dans les paramètres."
},
"verify": {
"title": "Vérification PIN",
"subtitle": "Entrez votre code PIN pour accéder à vos données hors-ligne.",
"placeholder": "Code PIN",
"enterPin": "Veuillez entrer votre code PIN.",
"incorrect": "Code PIN incorrect.",
"tooManyAttempts": "Trop de tentatives. Veuillez vous reconnecter en ligne.",
"error": "Erreur lors de la vérification du PIN.",
"cancelButton": "Annuler",
"verifyingButton": "Vérification...",
"unlockButton": "Déverrouiller"
}
}
}
}