778 lines
31 KiB
JSON
778 lines
31 KiB
JSON
{
|
||
"app": {
|
||
"today": "AUJOURD’HUI",
|
||
"timeline": "CHRONOLOGIE",
|
||
"museum": "MUSÉE",
|
||
"insights": "ANALYSES",
|
||
"profile": "PROFIL",
|
||
"tasks": "OBJECTIFS ET TÂCHES",
|
||
"calendar": "CALENDRIER",
|
||
"system": "SYSTÈME",
|
||
"browser": "NAVIGATEUR",
|
||
"terminal": "TERMINAL",
|
||
"database": "BASE DE DONNÉES"
|
||
},
|
||
"db": {
|
||
"title": "Gestionnaire de base de données",
|
||
"loginBody": "Consultez et modifiez les données de votre compte.",
|
||
"setupTitle": "Définir le mot de passe de la base",
|
||
"setupBody": "Créez un mot de passe propre à ce compte. L’ancien mot de passe partagé est désactivé.",
|
||
"checking": "Vérification de l’accès…",
|
||
"setPassword": "Définir et ouvrir",
|
||
"currentPassword": "Mot de passe actuel",
|
||
"newPassword": "Nouveau mot de passe (12 caractères minimum)",
|
||
"confirmPassword": "Confirmer le nouveau mot de passe",
|
||
"passwordMismatch": "Les mots de passe ne correspondent pas.",
|
||
"changePassword": "Changer le mot de passe",
|
||
"passwordChanged": "Mot de passe mis à jour. Les anciennes sessions ont été fermées.",
|
||
"server": "Serveur",
|
||
"username": "Nom d’utilisateur",
|
||
"password": "Mot de passe",
|
||
"warningTitle": "Accès direct à la base de données",
|
||
"warningBody": "Les modifications sont immédiatement enregistrées dans le cloud. Un JSON invalide ou une suppression peut affecter vos données. Exportez une sauvegarde avant de grandes modifications.",
|
||
"acknowledge": "Je comprends que je modifie directement les enregistrements.",
|
||
"login": "Ouvrir la base",
|
||
"connected": "Connecté aux données de votre compte.",
|
||
"sessionExpired": "Session expirée. Connectez-vous à nouveau.",
|
||
"requestFailed": "La requête a échoué.",
|
||
"unexpectedResponse": "Réponse inattendue du serveur. Réessayez dans un instant.",
|
||
"ownData": "COMPTE ACTUEL UNIQUEMENT",
|
||
"directMode": "Éditeur direct · modifications enregistrées dans D1",
|
||
"logout": "Se déconnecter",
|
||
"tables": "Tables",
|
||
"memories": "Souvenirs",
|
||
"goals": "Objectifs",
|
||
"tasks": "Tâches",
|
||
"museum": "Favoris",
|
||
"profile": "Profil",
|
||
"settings": "Paramètres",
|
||
"system": "Système",
|
||
"refresh": "Actualiser",
|
||
"newRecord": "Nouvel enregistrement",
|
||
"newRevision": "nouveau",
|
||
"count": "{count} enregistrements",
|
||
"empty": "Aucun enregistrement dans cette table.",
|
||
"selectRow": "Sélectionnez une ligne pour voir son JSON.",
|
||
"recordId": "ID de l’enregistrement",
|
||
"json": "JSON de l’enregistrement",
|
||
"editorHint": "Gardez le même ID dans le JSON et la ligne. Un conflit signifie que la ligne a changé entre-temps.",
|
||
"create": "Créer",
|
||
"save": "Enregistrer",
|
||
"delete": "Supprimer",
|
||
"cancel": "Annuler",
|
||
"previous": "Précédent",
|
||
"next": "Suivant",
|
||
"invalidJson": "JSON invalide.",
|
||
"idMismatch": "Les ID ne correspondent pas.",
|
||
"saveConfirm": "Écrire directement l’enregistrement {id} ?",
|
||
"deleteConfirm": "Supprimer l’enregistrement {id} ? Impossible de l’annuler ici.",
|
||
"saved": "Enregistrement sauvegardé.",
|
||
"deleted": "Enregistrement supprimé.",
|
||
"reloadHint": "Le bureau conserve un cache local. Rechargez-le après modification de la base.",
|
||
"reloadDesktop": "Recharger le bureau"
|
||
},
|
||
"common": {
|
||
"save": "ENREGISTRER",
|
||
"cancel": "ANNULER",
|
||
"edit": "MODIFIER",
|
||
"delete": "SUPPRIMER",
|
||
"close": "Fermer",
|
||
"open": "Ouvrir",
|
||
"minimize": "Réduire",
|
||
"maximize": "Agrandir",
|
||
"restore": "Restaurer la fenêtre",
|
||
"energy": "ÉNERGIE",
|
||
"days": "JOURS",
|
||
"never": "JAMAIS"
|
||
},
|
||
"today": {
|
||
"prompt": "Comment s’est passée votre journée ?",
|
||
"placeholder": "Écrivez quelque chose sur aujourd’hui…",
|
||
"archive": "ARCHIVER AUJOURD’HUI",
|
||
"update": "METTRE À JOUR LE SOUVENIR",
|
||
"archiveDate": "ENREGISTRER LE SOUVENIR",
|
||
"updateDate": "METTRE À JOUR LE SOUVENIR",
|
||
"backToToday": "Revenir à aujourd’hui",
|
||
"weather": "MÉTÉO DU JOUR",
|
||
"energy": "NIVEAU D’ÉNERGIE",
|
||
"film": "SUGGESTION DU JOUR",
|
||
"archiving": "ARCHIVAGE…",
|
||
"archived": "SOUVENIR ARCHIVÉ"
|
||
},
|
||
"weather": {
|
||
"clear": "Ensoleillé",
|
||
"light": "Éclaircies",
|
||
"cloudy": "Nuageux",
|
||
"rain": "Pluie",
|
||
"storm": "Orage"
|
||
},
|
||
"timeline": {
|
||
"eyebrow": "ARCHIVE DES SOUVENIRS",
|
||
"heading": "{count} SUR {total} SOUVENIRS",
|
||
"search": "Rechercher des souvenirs",
|
||
"searchPlaceholder": "Rechercher notes, étiquettes, lieux, tâches…",
|
||
"filterTag": "Filtrer par étiquette",
|
||
"allTags": "TOUTES LES ÉTIQUETTES",
|
||
"noMatches": "Aucun souvenir ne correspond aux filtres.",
|
||
"favorite": "FAVORI",
|
||
"emptyTitle": "Aucun souvenir pour le moment.",
|
||
"emptyBody": "Ouvrez Aujourd’hui pour en conserver un.",
|
||
"detail": "DÉTAIL DU SOUVENIR",
|
||
"untitled": "Souvenir sans titre",
|
||
"noNote": "Aucune note écrite.",
|
||
"editing": "MODIFICATION — ENREGISTRER POUR METTRE À JOUR",
|
||
"preserved": "CONSERVÉ",
|
||
"addMuseum": "AJOUTER AU MUSÉE",
|
||
"confirmDelete": "CONFIRMER LA SUPPRESSION",
|
||
"remove": "Supprimer ce souvenir ?",
|
||
"irreversible": "Cette action est irréversible.",
|
||
"deleteMemory": "SUPPRIMER LE SOUVENIR",
|
||
"removed": "SOUVENIR SUPPRIMÉ",
|
||
"added": "SOUVENIR AJOUTÉ AUX FAVORIS",
|
||
"unpreserved": "RETIRÉ DES FAVORIS"
|
||
},
|
||
"memory": {
|
||
"tags": "ÉTIQUETTES",
|
||
"tagsPlaceholder": "Séparez les étiquettes par des virgules",
|
||
"place": "LIEU / CONTEXTE (FACULTATIF)",
|
||
"placePlaceholder": "Où cela s’est-il passé ?",
|
||
"linkTask": "TÂCHE LIÉE (FACULTATIF)",
|
||
"noTask": "AUCUNE TÂCHE LIÉE",
|
||
"relatedTask": "Tâche liée",
|
||
"favorite": "AJOUTER AUX FAVORIS",
|
||
"edit": "MODIFIER LE SOUVENIR",
|
||
"note": "NOTE",
|
||
"title": "TITRE (FACULTATIF)",
|
||
"titlePlaceholder": "Donnez un titre à ce souvenir"
|
||
},
|
||
"museum": {
|
||
"eyebrow": "MUSÉE",
|
||
"title": "Instants conservés",
|
||
"subtitle": "À retrouver plus tard.",
|
||
"empty": "Le musée commence par un instant conservé.",
|
||
"preserved": "STATUT : CONSERVÉ",
|
||
"collection": "COLLECTION"
|
||
},
|
||
"insights": {
|
||
"eyebrow": "RAPPORTS PÉRIODIQUES",
|
||
"title": "Analyses",
|
||
"description": "Une vue factuelle de vos notes et tâches terminées.",
|
||
"period": "Période du rapport",
|
||
"week": "SEMAINE",
|
||
"month": "MOIS",
|
||
"previous": "Période précédente",
|
||
"next": "Période suivante",
|
||
"records": "FRÉQUENCE DES NOTES",
|
||
"recordedDays": "{count} notes · {percent} % des jours écoulés",
|
||
"tasks": "TÂCHES TERMINÉES",
|
||
"completedTasks": "Tâches marquées comme terminées pendant cette période",
|
||
"taskDetails": "{created} tâches créées · {goals} objectifs terminés",
|
||
"weather": "MÉTÉO FRÉQUENTE",
|
||
"noWeather": "Aucune météo enregistrée pendant cette période",
|
||
"energy": "ÉNERGIE ENREGISTRÉE",
|
||
"energyFromTo": "Première note {first}/5 → dernière {last}/5",
|
||
"singleEnergy": "Une seule note d’énergie pendant cette période",
|
||
"noEnergy": "Aucune énergie enregistrée pendant cette période",
|
||
"highlights": "MOMENTS À REVOIR",
|
||
"highlightSource": "Souvenirs favoris ou notes marquées #highlight ou #高光.",
|
||
"highlightFavorite": "CONSERVÉ",
|
||
"highlightTag": "ÉTIQUETÉ",
|
||
"highlightEmpty": "Aucun souvenir favori ou étiqueté pendant cette période.",
|
||
"note": "Seules les données enregistrées sont comptées. Aucune météo ni énergie n’est déduite des jours manquants."
|
||
},
|
||
"profile": {
|
||
"eyebrow": "PROFIL SYSTÈME",
|
||
"online": "LIFE OS EN LIGNE",
|
||
"daysOnline": "JOURS D’UTILISATION",
|
||
"memories": "SOUVENIRS",
|
||
"museumItems": "OBJETS DU MUSÉE",
|
||
"streak": "SÉRIE ACTUELLE",
|
||
"longest": "PLUS LONGUE SÉRIE",
|
||
"commonWeather": "MÉTÉO FRÉQUENTE",
|
||
"personal": "SYSTÈME PERSONNEL",
|
||
"name": "Nom affiché",
|
||
"birthday": "Anniversaire (facultatif)",
|
||
"start": "Date de début Life OS",
|
||
"motto": "Devise personnelle",
|
||
"save": "ENREGISTRER LE PROFIL",
|
||
"saved": "PROFIL ENREGISTRÉ",
|
||
"average": "ÉNERGIE MOYENNE {value} / 5"
|
||
},
|
||
"notifications": {
|
||
"title": "NOTIFICATIONS",
|
||
"allow": "Autoriser les notifications système",
|
||
"openOnly": "Les rappels fonctionnent quand Life OS est ouvert. Le navigateur peut les retarder si l’onglet est en veille ; ils ne sont pas envoyés après la fermeture du site.",
|
||
"time": "Heure : {name}",
|
||
"sendTest": "Envoyer une notification de test",
|
||
"status": {
|
||
"default": "Autorisation non demandée. Choisissez Autoriser pour recevoir des rappels.",
|
||
"granted": "Notifications autorisées sur cet appareil.",
|
||
"denied": "Notifications bloquées. Modifiez l’autorisation du site dans votre navigateur.",
|
||
"unsupported": "Notifications indisponibles dans ce navigateur ou ce contexte."
|
||
},
|
||
"memory": {
|
||
"label": "Souvenir du jour",
|
||
"description": "Me rappeler si je n’ai pas écrit de souvenir aujourd’hui.",
|
||
"title": "Un instant à retenir",
|
||
"body": "Vous n’avez pas encore écrit de souvenir aujourd’hui."
|
||
},
|
||
"tasks": {
|
||
"label": "Tâches du jour",
|
||
"description": "Afficher le nombre de tâches non terminées arrivées à échéance.",
|
||
"title": "Tâches du jour",
|
||
"body": "{count} tâches arrivées à échéance restent à faire."
|
||
},
|
||
"goals": {
|
||
"label": "Compte à rebours",
|
||
"description": "Afficher le prochain objectif actif avec une date cible.",
|
||
"title": "Compte à rebours",
|
||
"days": "{name} : encore {count} jours.",
|
||
"today": "{name} : l’échéance est aujourd’hui.",
|
||
"overdue": "{name} : échéance dépassée de {count} jours."
|
||
},
|
||
"test": {
|
||
"title": "Notifications Life OS prêtes",
|
||
"body": "Votre navigateur peut afficher les rappels Life OS.",
|
||
"failed": "Impossible d’afficher la notification de test."
|
||
}
|
||
},
|
||
"systemNav": {
|
||
"settings": "PARAMÈTRES",
|
||
"navigation": "Catégories des paramètres",
|
||
"home": "Accueil",
|
||
"appearance": "Personnalisation",
|
||
"notifications": "Notifications",
|
||
"language": "Langue",
|
||
"data": "Données et sauvegarde",
|
||
"about": "À propos",
|
||
"homeHint": "Choisissez une catégorie pour régler Life OS.",
|
||
"device": "Ce navigateur",
|
||
"deviceHint": "Votre espace personnel Life OS",
|
||
"version": "v{version}",
|
||
"quickSettings": "Réglages rapides",
|
||
"appearanceHint": "Thème, fond d’écran, icônes et widgets",
|
||
"notificationsHint": "Rappels de souvenirs, tâches et objectifs",
|
||
"languageHint": "Langue du navigateur et choix manuel",
|
||
"dataHint": "Importer, exporter et stockage local"
|
||
},
|
||
"system": {
|
||
"eyebrow": "PARAMÈTRES SYSTÈME",
|
||
"title": "Votre système personnel.",
|
||
"appearance": "APPARENCE",
|
||
"language": "LANGUE",
|
||
"browserLanguage": "LANGUE DU NAVIGATEUR",
|
||
"detectedZh": "Détecté : chinois",
|
||
"detectedEn": "Détecté : anglais",
|
||
"auto": "AUTO",
|
||
"data": "DONNÉES",
|
||
"storage": "STOCKAGE",
|
||
"dataStorage": "STOCKAGE DES DONNÉES",
|
||
"export": "EXPORTER",
|
||
"import": "IMPORTER",
|
||
"reset": "RÉINITIALISER LIFE OS",
|
||
"local": "Stockage local",
|
||
"stored": "Vos données sont stockées localement dans ce navigateur.",
|
||
"backups": "Créez régulièrement des sauvegardes pour éviter toute perte.",
|
||
"lastBackup": "DERNIÈRE SAUVEGARDE · {value}",
|
||
"recommended": "SAUVEGARDE RECOMMANDÉE",
|
||
"version": "VERSION",
|
||
"theme": {
|
||
"dark": "SOMBRE",
|
||
"light": "CLAIR",
|
||
"auto": "AUTO"
|
||
},
|
||
"storageSummary": "{memories} souvenirs · {museum} éléments · {tasks} tâches · Environ {size} Ko",
|
||
"release": "Life OS<br>Version {version} · Sauvegarde v2 · Base D1 v2",
|
||
"languageEnglish": "ANGLAIS",
|
||
"languageChinese": "中文",
|
||
"browserDetected": "Langue du navigateur : {name}"
|
||
},
|
||
"dialog": {
|
||
"backup": "SAUVEGARDE LIFE OS",
|
||
"ready": "Prêt à restaurer",
|
||
"exported": "Exporté le : {date}",
|
||
"memories": "Souvenirs : {count}",
|
||
"museumItems": "Objets du musée : {count}",
|
||
"goals": "Objectifs : {count}",
|
||
"tasks": "Tâches : {count}",
|
||
"merge": "FUSIONNER",
|
||
"replaceAll": "REMPLACER TOUTES LES DONNÉES",
|
||
"final": "CONFIRMATION FINALE",
|
||
"replaceQuestion": "Remplacer toutes les données Life OS ?",
|
||
"replaceWarning": "Toutes les données actuelles seront remplacées.",
|
||
"replace": "REMPLACER",
|
||
"resetQuestion": "Réinitialiser toutes les données locales ?",
|
||
"resetWarning": "Exportez une sauvegarde avant de continuer.",
|
||
"resetData": "RÉINITIALISER"
|
||
},
|
||
"feedback": {
|
||
"backup": "SAUVEGARDE CRÉÉE",
|
||
"invalid": "FICHIER INVALIDE",
|
||
"restored": "SYSTÈME RESTAURÉ",
|
||
"restoring": "RESTAURATION…",
|
||
"minimized": "RÉDUIT — CLIQUEZ SUR L’ICÔNE POUR RESTAURER",
|
||
"languageZh": "Langue définie : chinois",
|
||
"languageEn": "Langue définie : anglais",
|
||
"followingZh": "Langue du navigateur : chinois",
|
||
"followingEn": "Langue du navigateur : anglais",
|
||
"languageSelected": "Langue définie : {name}",
|
||
"followingBrowser": "Langue du navigateur : {name}"
|
||
},
|
||
"addon": {
|
||
"draftRestored": "BROUILLON RESTAURÉ",
|
||
"searchTitle": "RECHERCHE DE SOUVENIRS",
|
||
"searchPlaceholder": "Rechercher titres, notes, météo…",
|
||
"searchHint": "Échap pour fermer · cliquez sur un résultat",
|
||
"untitled": "Souvenir sans titre",
|
||
"noResults": "Aucun souvenir trouvé.",
|
||
"syncPaused": "SYNCHRONISATION EN PAUSE — MODIFICATIONS LOCALES",
|
||
"syncConflict": "CONFLIT — SAUVEGARDE LOCALE CRÉÉE",
|
||
"syncConflictConfirm": "Cet enregistrement a changé sur un autre appareil. Une sauvegarde locale a été créée. Remplacer la version cloud ? Annuler conserve la version cloud.",
|
||
"syncReady": "SYNCHRONISATION PRÊTE",
|
||
"migrateQuestion": "Transférer les données de ce navigateur vers le cloud ?",
|
||
"migrateBody": "Vos données locales deviendront la première copie synchronisée de ce compte ChatGPT.",
|
||
"migrate": "TRANSFÉRER ET SYNCHRONISER",
|
||
"fresh": "REPARTIR DE ZÉRO",
|
||
"migrated": "DONNÉES LOCALES TRANSFÉRÉES",
|
||
"cloudRestored": "DONNÉES CLOUD RESTAURÉES",
|
||
"cloudUnavailable": "CLOUD INDISPONIBLE — MODE LOCAL ACTIF",
|
||
"openMemory": "Ouvrir le souvenir : {title}"
|
||
},
|
||
"calendar": {
|
||
"eyebrow": "SOUVENIRS ET ÉTAPES",
|
||
"month": "MOIS",
|
||
"day": "JOUR",
|
||
"today": "AUJOURD’HUI",
|
||
"mon": "LUN",
|
||
"tue": "MAR",
|
||
"wed": "MER",
|
||
"thu": "JEU",
|
||
"fri": "VEN",
|
||
"sat": "SAM",
|
||
"sun": "DIM",
|
||
"previous": "Mois précédent",
|
||
"next": "Mois suivant",
|
||
"previousDay": "Jour précédent",
|
||
"nextDay": "Jour suivant",
|
||
"dayAtGlance": "CE JOUR-LÀ",
|
||
"memory": "SOUVENIR",
|
||
"task": "TÂCHE",
|
||
"goal": "OBJECTIF",
|
||
"items": "éléments",
|
||
"taskDue": "ÉCHÉANCE DE TÂCHE",
|
||
"taskDone": "TÂCHE TERMINÉE",
|
||
"goalCreated": "OBJECTIF CRÉÉ",
|
||
"goalTarget": "ÉCHÉANCE DE L’OBJECTIF",
|
||
"goalDone": "OBJECTIF TERMINÉ",
|
||
"emptyDay": "Aucun souvenir ni étape pour ce jour.",
|
||
"openToday": "Écrire un souvenir",
|
||
"writeMemory": "Ajouter un souvenir",
|
||
"openTasks": "Ouvrir les tâches",
|
||
"holidayCountry": "Pays ou région",
|
||
"autoCountry": "Auto ({country})",
|
||
"publicHoliday": "Jour férié",
|
||
"festival": "Fête",
|
||
"workingDay": "Jour ouvré",
|
||
"observed": "Jour de remplacement",
|
||
"estimated": "Date estimée",
|
||
"workingWeekend": "Week-end travaillé",
|
||
"loadingHolidays": "Chargement des jours fériés…",
|
||
"holidayUnavailable": "Données indisponibles.",
|
||
"retryHolidays": "Réessayer",
|
||
"holidaySource": "Données des jours fériés",
|
||
"outsideRange": "Données disponibles de 2024 à 2030.",
|
||
"festivals": {
|
||
"valentine": "Saint-Valentin",
|
||
"earth": "Jour de la Terre",
|
||
"halloween": "Halloween",
|
||
"christmasEve": "Réveillon de Noël",
|
||
"teachers": "Journée des enseignants"
|
||
},
|
||
"holidayNames": {
|
||
"New Year's Day": "Jour de l’An",
|
||
"Chinese New Year (Spring Festival)": "Nouvel An chinois",
|
||
"Chinese New Year": "Nouvel An chinois",
|
||
"Chinese New Year's Eve": "Réveillon du Nouvel An chinois",
|
||
"Tomb-Sweeping Day": "Fête de Qingming",
|
||
"Labor Day": "Fête du Travail",
|
||
"Dragon Boat Festival": "Fête des bateaux-dragons",
|
||
"Mid-Autumn Festival": "Fête de la mi-automne",
|
||
"National Day": "Fête nationale",
|
||
"Christmas Day": "Noël",
|
||
"Christmas Eve": "Réveillon de Noël",
|
||
"Good Friday": "Vendredi saint",
|
||
"Easter Monday": "Lundi de Pâques",
|
||
"Peace Memorial Day": "Journée de commémoration de la paix",
|
||
"Children's Day": "Fête des enfants",
|
||
"Constitution Day": "Jour de la Constitution",
|
||
"Confucius' Birthday": "Anniversaire de Confucius"
|
||
},
|
||
"holidayCaveat": "Les dates peuvent changer ; consultez les annonces officielles locales."
|
||
},
|
||
"tasks": {
|
||
"eyebrow": "OBJECTIFS ET TÂCHES",
|
||
"title": "Avancez vers l’essentiel.",
|
||
"subtitle": "Un plan simple pour aujourd’hui et les jours à venir.",
|
||
"addGoal": "NOUVEL OBJECTIF",
|
||
"addTask": "AJOUTER UNE TÂCHE",
|
||
"taskPlaceholder": "Que faut-il faire ?",
|
||
"goalPlaceholder": "Quel objectif souhaitez-vous poursuivre ?",
|
||
"goalDescription": "Note sur cet objectif (facultatif)",
|
||
"finishedGoals": "OBJECTIFS TERMINÉS",
|
||
"goalComplete": "TERMINER L’OBJECTIF",
|
||
"goalReopen": "ROUVRIR L’OBJECTIF",
|
||
"all": "TOUT",
|
||
"today": "AUJOURD’HUI",
|
||
"upcoming": "À VENIR",
|
||
"done": "TERMINÉ",
|
||
"activeGoals": "OBJECTIFS ACTIFS",
|
||
"noGoals": "Commencez par un objectif.",
|
||
"noTasks": "Aucune tâche pour le moment.",
|
||
"due": "ÉCHÉANCE {date}",
|
||
"noDate": "SANS DATE",
|
||
"priority": {
|
||
"low": "BASSE",
|
||
"normal": "NORMALE",
|
||
"high": "HAUTE"
|
||
},
|
||
"goal": "OBJECTIF",
|
||
"anyGoal": "AUCUN OBJECTIF",
|
||
"save": "ENREGISTRER",
|
||
"cancel": "ANNULER",
|
||
"complete": "MARQUER TERMINÉ",
|
||
"reopen": "ROUVRIR",
|
||
"delete": "SUPPRIMER",
|
||
"goalTitle": "Nouvel objectif",
|
||
"taskTitle": "Nouvelle tâche",
|
||
"goalCreated": "OBJECTIF CRÉÉ",
|
||
"taskAdded": "TÂCHE AJOUTÉE",
|
||
"taskRemoved": "TÂCHE SUPPRIMÉE",
|
||
"goalRemoved": "OBJECTIF SUPPRIMÉ",
|
||
"confirmGoalDelete": "Supprimer cet objectif ?",
|
||
"confirmGoalDeleteBody": "Les tâches associées seront conservées sans objectif.",
|
||
"target": "DATE CIBLE",
|
||
"completed": "TERMINÉ",
|
||
"progress": "{done} SUR {total} TERMINÉES",
|
||
"desktopShow": "AFFICHER LE COMPTE À REBOURS",
|
||
"desktopHide": "MASQUER LE COMPTE À REBOURS",
|
||
"countdown": "COMPTE À REBOURS",
|
||
"daysLeft": "Encore {count} jours",
|
||
"todayTarget": "Échéance aujourd’hui",
|
||
"daysOverdue": "Retard de {count} jours",
|
||
"pinOnCreate": "Afficher le compte à rebours sur le bureau",
|
||
"todayHeading": "Priorités du jour",
|
||
"openCount": "{count} TÂCHES OUVERTES",
|
||
"overdue": "EN RETARD"
|
||
},
|
||
"shell": {
|
||
"pageTitle": "Life OS",
|
||
"brand": "LIFE OS / BUREAU PERSONNEL",
|
||
"initializing": "INITIALISATION…",
|
||
"life": "VIE",
|
||
"morning": "BONJOUR",
|
||
"afternoon": "BON APRÈS-MIDI",
|
||
"evening": "BONSOIR",
|
||
"systemOnline": "SYSTÈME ACTIF · LIFE OS v{version}",
|
||
"systemDate": "DATE DU SYSTÈME",
|
||
"open": "Ouvrir",
|
||
"close": "Fermer",
|
||
"minimize": "Réduire",
|
||
"maximize": "Agrandir",
|
||
"restore": "Restaurer",
|
||
"openApp": "Ouvrir {app}",
|
||
"refresh": "Actualiser le bureau",
|
||
"newToday": "Nouveau souvenir",
|
||
"systemSettings": "Paramètres système",
|
||
"doubleClickMaximize": "Double-cliquer pour agrandir",
|
||
"wallpaperTitle": "Image Bing du jour : {title}",
|
||
"dailyImage": "Image du jour",
|
||
"todayMemories": "{memories} souvenirs · {preserved} conservés",
|
||
"memoryCount": "{count} souvenirs",
|
||
"menuCloseWindow": "Fermer la fenêtre",
|
||
"todaySummary": "{memories} souvenirs · {preserved} conservés"
|
||
},
|
||
"wallpaper": {
|
||
"dailyImage": "Image du jour"
|
||
},
|
||
"desktop": {
|
||
"heading": "PERSONNALISATION DU BUREAU",
|
||
"wallpaper": "Source du fond d’écran",
|
||
"bing": "Image Bing du jour",
|
||
"calm": "Fond intégré",
|
||
"custom": "URL d’image personnalisée",
|
||
"useUrl": "UTILISER L’IMAGE",
|
||
"urlHint": "Utilisez un lien HTTPS direct. Certains hébergeurs bloquent les images externes.",
|
||
"invalidUrl": "Saisissez une URL HTTPS valide",
|
||
"shortcuts": "Raccourcis du bureau",
|
||
"shortcutsHint": "Choisissez les apps visibles sur le bureau. Elles restent dans le menu Vie. Faites glisser les icônes pour les organiser.",
|
||
"resetPositions": "Réinitialiser les positions",
|
||
"windowLayout": "Disposition des fenêtres",
|
||
"rememberOn": "Mémoriser fenêtres et positions : OUI",
|
||
"rememberOff": "Mémoriser fenêtres et positions : NON",
|
||
"windowHint": "Positions et tailles sont conservées sur cet appareil. Sur mobile, les apps s’ouvrent en plein écran.",
|
||
"startup": "Ouvrir au démarrage",
|
||
"startupHint": "Ces apps s’ouvrent au démarrage de Life OS, en plus des fenêtres mémorisées."
|
||
},
|
||
"widgets": {
|
||
"goals": "COMPTES À REBOURS",
|
||
"clock": "HORLOGE",
|
||
"today": "APERÇU DU JOUR",
|
||
"actions": "ACTIONS RAPIDES",
|
||
"heading": "WIDGETS DU BUREAU",
|
||
"hint": "Choisissez les widgets visibles. Faites glisser l’en-tête pour déplacer et le coin pour redimensionner. Les flèches fonctionnent quand une poignée est sélectionnée.",
|
||
"reset": "Réinitialiser les widgets",
|
||
"memoriesToday": "souvenirs aujourd’hui",
|
||
"tasksDue": "tâches dues ou en retard",
|
||
"newMemory": "Ouvrir Aujourd’hui",
|
||
"openTasks": "Ouvrir les tâches",
|
||
"openCalendar": "Ouvrir le calendrier",
|
||
"move": "Déplacer",
|
||
"resize": "Redimensionner",
|
||
"noGoals": "Aucun objectif épinglé. Épinglez-en un dans Tâches."
|
||
},
|
||
"prompt": {
|
||
"films": [
|
||
{
|
||
"title": "Un mardi tranquille",
|
||
"subtitle": "Drame · Quotidien"
|
||
},
|
||
{
|
||
"title": "L’après-midi qui resta",
|
||
"subtitle": "Indépendant · Chaleureux"
|
||
},
|
||
{
|
||
"title": "Petite lumière, long couloir",
|
||
"subtitle": "Contemplatif · Drame"
|
||
},
|
||
{
|
||
"title": "Avant les notifications",
|
||
"subtitle": "Minimaliste · Jeunesse"
|
||
},
|
||
{
|
||
"title": "La chambre aux rideaux ouverts",
|
||
"subtitle": "Quotidien · Calme"
|
||
},
|
||
{
|
||
"title": "Le chemin habituel",
|
||
"subtitle": "Drame · Familier"
|
||
},
|
||
{
|
||
"title": "Notes inachevées",
|
||
"subtitle": "Réflexif · Court métrage"
|
||
},
|
||
{
|
||
"title": "Un temps de pensées",
|
||
"subtitle": "Calme · Intime"
|
||
},
|
||
{
|
||
"title": "Le jour entre les choses",
|
||
"subtitle": "Indépendant · Observation"
|
||
},
|
||
{
|
||
"title": "Heures lentes, contours doux",
|
||
"subtitle": "Quotidien · Rêve"
|
||
},
|
||
{
|
||
"title": "Une fenêtre encore éclairée",
|
||
"subtitle": "Drame · Soir"
|
||
},
|
||
{
|
||
"title": "L’ordinaire bien gardé",
|
||
"subtitle": "Humain · Doux"
|
||
},
|
||
{
|
||
"title": "Encore une page ce soir",
|
||
"subtitle": "Études · Doucement"
|
||
},
|
||
{
|
||
"title": "L’espace après le déjeuner",
|
||
"subtitle": "Souvenir · Calme"
|
||
},
|
||
{
|
||
"title": "Bus tardif, esprit clair",
|
||
"subtitle": "Urbain · Réflexif"
|
||
},
|
||
{
|
||
"title": "Les petites choses au point",
|
||
"subtitle": "Documentaire · Vie"
|
||
},
|
||
{
|
||
"title": "Ce que la pièce gardait",
|
||
"subtitle": "Poétique · Immobile"
|
||
},
|
||
{
|
||
"title": "L’heure bleue sans hâte",
|
||
"subtitle": "Soir · Calme"
|
||
},
|
||
{
|
||
"title": "La carte d’un petit jour",
|
||
"subtitle": "Voyage · Intime"
|
||
},
|
||
{
|
||
"title": "Quelque part après quatre heures",
|
||
"subtitle": "Indépendant · Chaleureux"
|
||
},
|
||
{
|
||
"title": "Un jour sans titre",
|
||
"subtitle": "Quotidien · Doux"
|
||
},
|
||
{
|
||
"title": "Le bruit de prendre son temps",
|
||
"subtitle": "Cinéma lent · Intime"
|
||
},
|
||
{
|
||
"title": "Ce qui n’avait pas à être réparé",
|
||
"subtitle": "Drame · Doux"
|
||
},
|
||
{
|
||
"title": "À mi-chemin de septembre",
|
||
"subtitle": "Souvenir · Jeunesse"
|
||
},
|
||
{
|
||
"title": "Nos petites archives",
|
||
"subtitle": "Intime · Calme"
|
||
},
|
||
{
|
||
"title": "La nuit garda sa forme",
|
||
"subtitle": "Noir · Calme"
|
||
},
|
||
{
|
||
"title": "Un soleil imprévu",
|
||
"subtitle": "Léger · Intime"
|
||
},
|
||
{
|
||
"title": "Le dernier onglet ouvert",
|
||
"subtitle": "Moderne · Réflexif"
|
||
},
|
||
{
|
||
"title": "Une place pour aujourd’hui",
|
||
"subtitle": "Drame · Humain"
|
||
},
|
||
{
|
||
"title": "Rien de perdu aujourd’hui",
|
||
"subtitle": "Quotidien · Espoir"
|
||
}
|
||
],
|
||
"lines": [
|
||
"Rien d’extraordinaire n’est arrivé. C’était peut-être l’essentiel.",
|
||
"Un petit jour, assez bien gardé pour être rappelé.",
|
||
"Les moments ordinaires ont duré plus longtemps que prévu.",
|
||
"Chaque chapitre n’a pas besoin d’une fin dramatique.",
|
||
"Certaines pensées sont venues ; d’autres sont passées.",
|
||
"Une trace tranquille d’avoir été là.",
|
||
"Le jour a suivi son propre rythme.",
|
||
"Il restait de la place pour un peu de douceur.",
|
||
"Même l’inachevé avait sa place ici.",
|
||
"La lumière a changé, et l’humeur aussi.",
|
||
"Une scène à garder sans devoir l’expliquer.",
|
||
"Il suffisait de remarquer ce jour tel qu’il était.",
|
||
"Le temps ne se pressait pas, ce souvenir non plus.",
|
||
"Les détails étaient petits, mais réels.",
|
||
"Une pause est devenue partie de l’histoire.",
|
||
"Quelque part, ce jour est devenu digne d’être gardé.",
|
||
"Le familier a brillé un instant.",
|
||
"Rien n’avait à être résolu avant la nuit.",
|
||
"Quelques instants sont restés nets.",
|
||
"L’histoire était calme, mais toujours la vôtre.",
|
||
"Aujourd’hui a laissé une petite trace.",
|
||
"Un cadre doux autour d’une heure ordinaire.",
|
||
"Le jour demandait de l’attention, pas de la perfection.",
|
||
"Ce souvenir peut reposer ici pour l’instant.",
|
||
"Le monde était bruyant ; cette page ne l’était pas.",
|
||
"Quelques fils épars, gardés honnêtement.",
|
||
"La version la plus simple d’aujourd’hui suffisait.",
|
||
"Le jour s’est posé avant de finir.",
|
||
"Il y avait du sens entre les moments.",
|
||
"Un instant privé, bien archivé."
|
||
]
|
||
},
|
||
"login": {
|
||
"title": "Votre vie,<br>synchronisée.",
|
||
"description": "Connectez-vous avec ChatGPT pour accéder à votre Life OS et synchroniser vos souvenirs entre appareils.",
|
||
"continue": "CONTINUER AVEC CHATGPT",
|
||
"footnote": "SYSTÈME PERSONNEL · SYNCHRONISATION"
|
||
},
|
||
"browser": {
|
||
"back": "Retour",
|
||
"forward": "Avancer",
|
||
"reload": "Actualiser",
|
||
"address": "Adresse ou recherche",
|
||
"placeholder": "Saisissez une URL ou recherchez sur Google",
|
||
"go": "Aller",
|
||
"external": "Ouvrir dans un nouvel onglet",
|
||
"frame": "Page intégrée",
|
||
"embedHint": "Certains sites refusent l’intégration. Si la page est vide, ouvrez-la dans un nouvel onglet.",
|
||
"invalid": "Saisissez une adresse valide ou une recherche."
|
||
},
|
||
"terminal": {
|
||
"title": "TERMINAL",
|
||
"hint": "Tapez help pour voir les commandes",
|
||
"command": "Commande Life OS",
|
||
"memory": "Souvenir",
|
||
"task": "Tâche",
|
||
"goal": "Objectif",
|
||
"notePrompt": "Écrivez votre souvenir ci-dessous. Ctrl/⌘ + Entrée pour enregistrer ; Échap pour annuler.",
|
||
"saveNote": "Enregistrer le souvenir",
|
||
"cancel": "Annuler",
|
||
"cancelled": "Création annulée.",
|
||
"opened": "{app} ouvert.",
|
||
"empty": "Aucun enregistrement correspondant.",
|
||
"memorySaved": "Souvenir enregistré : {title} · {date}",
|
||
"goalSaved": "Objectif créé : {title}",
|
||
"taskSaved": "Tâche créée : {title}",
|
||
"taskCompleted": "Tâche terminée : {title}",
|
||
"taskReopened": "Tâche rouverte : {title}",
|
||
"invalidTitle": "Ajoutez un titre de longueur autorisée.",
|
||
"invalidDate": "Utilisez une date réelle au format YYYY-MM-DD, today ou tomorrow.",
|
||
"invalidPriority": "La priorité doit être high, normal ou low.",
|
||
"invalidValue": "Météo ou énergie invalide.",
|
||
"notFound": "Enregistrement introuvable.",
|
||
"ambiguous": "Plusieurs éléments portent ce titre. Utilisez l’ID.",
|
||
"memoryExists": "Un souvenir existe déjà à cette date. Modifiez-le dans Aujourd’hui ou Chronologie.",
|
||
"invalidOption": "Option inconnue ou valeur manquante. Tapez help.",
|
||
"unclosedQuote": "Guillemet non fermé.",
|
||
"usage": "Titre ou numéro manquant. Tapez help.",
|
||
"unknownApp": "App inconnue. Tapez help.",
|
||
"unknownCommand": "Commande inconnue. Tapez help.",
|
||
"guidedHelp": "configuration guidée ; Entrée accepte la valeur proposée, back/cancel pilote le parcours",
|
||
"back": "Retour",
|
||
"noWizard": "Aucune saisie guidée active.",
|
||
"wizard": {
|
||
"title": "Titre du souvenir ? (obligatoire ; actuel : {value})",
|
||
"date": "Date ? [{value}] — YYYY-MM-DD, today ou tomorrow",
|
||
"tags": "Étiquettes ? [{value}] — séparées par des virgules",
|
||
"energy": "Énergie ? [{value}] — nombre de 1 à 5",
|
||
"mood": "Météo ? [{value}] — clear / light / cloudy / rain / storm",
|
||
"location": "Lieu ou contexte ? [{value}]",
|
||
"taskId": "Tâche liée ? [{value}] — numéro, titre ou ID\n{tasks}",
|
||
"controls": "Entrée garde la valeur affichée ; back/cancel pilote le parcours. Utilisez - pour vider un champ facultatif."
|
||
},
|
||
"goalCompleted": "Objectif terminé : {title}",
|
||
"goalReopened": "Objectif rouvert : {title}",
|
||
"confirmAnswer": "Tapez yes pour confirmer ou no pour annuler.",
|
||
"flow": {
|
||
"title": "Titre ? (obligatoire ; actuel : {value})",
|
||
"description": "Description ? [{value}] (facultatif)",
|
||
"targetDate": "Date cible ? [{value}] — YYYY-MM-DD, today ou tomorrow",
|
||
"showOnDesktop": "Afficher le compte à rebours sur le bureau ? [{value}] — yes/no",
|
||
"dueDate": "Échéance ? [{value}] — YYYY-MM-DD, today ou tomorrow",
|
||
"goalId": "Lier à un objectif ? [{value}] — numéro, titre ou ID\n{items}",
|
||
"priority": "Priorité ? [{value}] — high / normal / low",
|
||
"pick": "Choisissez un(e) {kind} par numéro, titre, date ou ID :",
|
||
"confirmDelete": "Supprimer {kind} : {title} ? Tapez yes ou no.",
|
||
"confirmCreate": "Créer {kind} : {title} ? Tapez yes pour enregistrer ou no pour annuler.",
|
||
"cancelled": "Opération annulée.",
|
||
"deleted": "{kind} supprimé(e) : {title}"
|
||
},
|
||
"welcome": "Life OS v{version} · Terminal prêt.\nTapez help pour les commandes ou memory add pour créer un souvenir étape par étape.\ndate / time / status affichent des informations. Outils du navigateur : LifeOS.help().",
|
||
"uptime": "Durée de session : {minutes} min {seconds} s",
|
||
"status": "{memories} souvenirs · {goals} objectifs · {tasks} tâches",
|
||
"consoleHelp": "Ouvrez la console du navigateur et utilisez LifeOS.help(), LifeOS.run(\"date\") ou LifeOS.run(\"memory add\"). Après les questions, utilisez LifeOS.note(\"votre note\") ; LifeOS.cancel() annule.",
|
||
"consoleReady": "Console prête. Tapez LifeOS.help() pour voir les commandes.",
|
||
"consoleNotePrompt": "Saisissez la note avec LifeOS.note(\"votre texte\") ou annulez avec LifeOS.cancel().",
|
||
"noNote": "Aucune note en attente. Commencez avec LifeOS.run(\"memory add\").",
|
||
"cleared": "Sortie du terminal effacée.",
|
||
"pinNeedsDate": "Fixez une date cible avant d’afficher un compte à rebours."
|
||
}
|
||
}
|