feat(dashboard): tableau de bord Second Brain configurable avec chargement progressif
All checks were successful
CI / Lint, Unit Tests & Build (push) Successful in 7m3s
CI / Deploy production (on server) (push) Successful in 23s

Briefing granulaire, pistes rapides puis enrichissement async, layout persisté v5,
suggestions agents, intégration Gmail et navigation sidebar alignée sur /home.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Antigravity
2026-07-14 16:50:53 +00:00
parent d38a99586b
commit 30da592ba2
62 changed files with 7741 additions and 335 deletions

View File

@@ -73,6 +73,7 @@
"dropToRoot": "Drop here to move to root",
"noReminders": "No active reminders.",
"documents": "Documents",
"dashboardPanelBody": "Your second brain at a glance: AI suggestions, quick capture, and next steps. Use the shortcuts below to jump into action.",
"searchNotebooksPlaceholder": "Search notebooks…",
"clearSearch": "Clear search",
"insightsPanelBody": "Semantic map of your notes: thematic clusters, bridge notes, and connection suggestions.",
@@ -82,7 +83,10 @@
"resizeSidebar": "Resize sidebar width",
"dailyNote": "Daily Note",
"dailyNoteError": "Could not open today's note",
"dailyNoteTooltip": "Open or create your personal daily journal note for today"
"dailyNoteTooltip": "Open or create your personal daily journal note for today",
"lightMode": "Light mode",
"darkMode": "Dark mode",
"searchShortcut": "Search (Ctrl+K)"
},
"notes": {
"title": "Notes",
@@ -318,7 +322,12 @@
"unarchived": "Unarchived",
"savedJustNow": "Saved",
"unsaved": "Unsaved changes",
"historyEnabledTooltip": "Version history enabled — changes are tracked"
"historyEnabledTooltip": "Version history enabled — changes are tracked",
"heading1": "Heading 1",
"heading2": "Heading 2",
"heading3": "Heading 3",
"importSuccess": "{{count}} notes imported!",
"unpublished": "Note unpublished"
},
"pagination": {
"previous": "←",
@@ -360,7 +369,9 @@
"confirmDeleteShort": "Confirm?",
"labelRemoved": "Label \"{label}\" removed",
"filterByTags": "Filter by tags",
"searchTags": "Search tags"
"searchTags": "Search tags",
"activeCount": "{{count}} active",
"showMoreCount": "+ {{count}} more"
},
"search": {
"placeholder": "Search",
@@ -769,6 +780,7 @@
"match": "{percentage}% match",
"fused": "Fused",
"clickToView": "Click to view note →",
"defaultInsight": "These notes appear to be semantically related.",
"overlay": {
"title": "Connected Notes",
"searchPlaceholder": "Search connections...",
@@ -938,6 +950,8 @@
"graphView": "Link map",
"insights": "Semantic themes",
"revision": "Review",
"dailyNotes": "Daily Notes",
"dashboard": "Dashboard",
"userManagement": "User Management",
"accountSettings": "Account Settings",
"manageAISettings": "Manage AI Settings",
@@ -1017,7 +1031,19 @@
"autoSave": "Auto-save",
"autoSaveDesc": "Automatically save changes while typing",
"autoSaveEnabled": "Auto-save enabled!",
"autoSaveDisabled": "Auto-save disabled"
"autoSaveDisabled": "Auto-save disabled",
"publishedTitle": "My Published Pages",
"publishedDesc": "Manage notes you have published publicly.",
"publishedEmpty": "No published notes yet.",
"notesViewLabel": "Notes View",
"notesViewDescription": "Choose how notes are displayed in the list.",
"notesViewList": "List",
"notesViewMasonry": "Masonry",
"notesViewTable": "Table",
"importExportHelp": "Import / Export — how does it work?",
"aiConfigHelp": "How to configure your AI?",
"integrationsTitle": "Integrations",
"integrationsDesc": "Connect external services to Memento."
},
"profile": {
"title": "Profile",
@@ -1224,7 +1250,8 @@
"dismissIn": "Dismiss (closes in {timeLeft}s)",
"moveToNotebook": "Move to notebook",
"generalNotes": "General Notes",
"movedToNotebook": "Moved to notebook"
"movedToNotebook": "Moved to notebook",
"filterNotebooks": "Filter notebooks…"
},
"admin": {
"title": "Admin Dashboard",
@@ -1956,7 +1983,7 @@
"off": "Off",
"unknown": "Unknown",
"notAvailable": "N/A",
"loading": "Loading...",
"loading": "Loading",
"error": "Error",
"success": "Success",
"confirm": "Confirm",
@@ -1970,7 +1997,14 @@
"search": "Search...",
"noResults": "No notes found",
"required": "Required",
"optional": "Optional"
"optional": "Optional",
"notes": "notes",
"openMenu": "Open menu",
"openNav": "Open navigation",
"linkCopied": "Link copied!",
"copyLink": "Copy link",
"untitled": "Untitled",
"selectPlaceholder": "Select…"
},
"time": {
"justNow": "just now",
@@ -2391,7 +2425,20 @@
},
"lab": {
"initializing": "Initializing workspace",
"loadingIdeas": "Loading your ideas..."
"loadingIdeas": "Loading your ideas...",
"loadingSlides": "Loading slides…",
"downloadFailed": "Failed to download presentation",
"exportPpt": "Export to PowerPoint",
"downloadHtml": "Download HTML",
"openFullscreen": "Open in fullscreen",
"loadingPresentation": "Loading presentation…",
"previousSlide": "Previous slide",
"nextSlide": "Next slide",
"hideNotes": "Hide notes",
"toggleNotes": "Toggle presentation notes (Shortcut: N)",
"notes": "Notes",
"previous": "Previous",
"next": "Next"
},
"richTextEditor": {
"slashHint": "↑↓ navigate · Enter insert · Tab switch section",
@@ -2690,7 +2737,15 @@
"previewDiagramTip": "Sketch concepts or generate diagrams via AI.",
"previewLivingBlockTip": "Sync content between multiple notes.",
"previewSlidesTip": "Create interactive exportable presentations.",
"previewTableTip": "Organize your data in rows and columns."
"previewTableTip": "Organize your data in rows and columns.",
"aiActionStarted": "AI Note invoked…",
"blockDeleted": "Block deleted",
"blockDuplicated": "Block duplicated",
"blockSelected": "Entire block selected",
"slashVideo": "Video",
"startVoice": "Start voice input",
"stopVoice": "Stop voice input",
"collapsibleSection": "Collapsible section"
},
"flashcards": {
"generateTitle": "Generate flashcards",
@@ -2784,7 +2839,8 @@
"cardSaved": "Card saved",
"cardTypeBadge": "{type}",
"reviewNow": "Review now",
"deleteFailed": "Could not delete"
"deleteFailed": "Could not delete",
"toolbarGenerateHint": "SM-2 Spaced Repetition"
},
"structuredViews": {
"enableTitle": "Organize this notebook (table, kanban, gallery…)",
@@ -2916,7 +2972,14 @@
"tagApplied": "applied",
"filterDone": "Done",
"filterTodo": "To do",
"propertyStatus": "Status"
"propertyStatus": "Status",
"exportCsv": "Export CSV",
"importCsv": "Import CSV",
"relationEmpty": "Link a note…",
"relationNoResults": "No note found",
"relationSearch": "Search a note…",
"semanticResonances": "Semantic resonances",
"insertLink": "Insert link in editor"
},
"brainstorm": {
"title": "Waves of Thought",
@@ -3200,7 +3263,19 @@
"instantActivation": "Instant activation",
"secureDesc": "Secure payments by Stripe",
"secureTransactions": "Secure transactions",
"satisfactionGuarantee": "30-day satisfaction guarantee"
"satisfactionGuarantee": "30-day satisfaction guarantee",
"cancelConfirm": "Are you sure you want to cancel your subscription? You will keep your Pro/Business access until the end of the current billing period.",
"cancelSuccess": "Your subscription has been successfully cancelled. It will end at the end of the current billing period.",
"invoices": "Invoices & Receipts",
"invoiceAmount": "Amount",
"invoiceDate": "Date",
"invoiceNumber": "Number",
"invoiceStatus": "Status",
"noInvoices": "No invoices available.",
"checkoutFailed": "Failed to start checkout. Please try again.",
"portalFailed": "Failed to open billing portal.",
"cancelFailed": "Failed to cancel subscription.",
"downloadPdf": "Download PDF"
},
"quotaPaywall": {
"title": "Monthly limit reached",
@@ -3689,7 +3764,9 @@
"openFully": "Open full screen",
"openFullyHelp": "Replace the current note with this one",
"readOnlyHint": "Read-only preview — open full screen to edit.",
"loadFailed": "Could not open the linked note preview."
"loadFailed": "Could not open the linked note preview.",
"loading": "Loading…",
"untitled": "Untitled"
},
"structuredViewBlock": {
"insertLabel": "Structured View",
@@ -3856,11 +3933,317 @@
"hint_insights_refresh_desc": "If you've added new notes, click the refresh button to recalculate the clusters with the latest content."
},
"integrations": {
"title": "Integrations"
"title": "Integrations",
"gmail": {
"title": "Gmail",
"description": "Automatically capture flights, packages and subscriptions from your emails",
"connect": "Connect Gmail",
"disconnect": "Disconnect",
"scanNow": "Scan now",
"connected": "Gmail connected!",
"disconnected": "Gmail disconnected",
"scanDone": "{created} note(s) created from emails",
"recentCaptures": "{count} capture(s) this week",
"helpTitle": "How does Gmail work?",
"helpStep1": "Connect Gmail — you'll be redirected to Google to authorize read-only access.",
"helpStep2": "Memento scans recent emails for flights, packages and subscription renewals.",
"helpStep3": "Each match becomes a note with an automatic reminder when relevant.",
"helpStep4": "Scan runs daily in the background; you can also trigger a manual scan here."
},
"calendarConnected": "Google Calendar connected!",
"errorWith": "Error: {{error}}",
"readwiseError": "Readwise error",
"readwiseConnected": "Readwise connected — {{created}} notes created, {{updated}} updated",
"readwiseConnectError": "Readwise connection error",
"syncError": "Sync error",
"readwiseSynced": "Readwise sync — {{created}} created, {{updated}} updated",
"syncFailed": "Synchronization failed",
"readwiseDisconnected": "Readwise disconnected",
"noEvents": "No events today",
"eventsLoadError": "Failed to load events",
"meetingNoteCreated": "Meeting note created: {{summary}}",
"createNoteError": "Failed to create note",
"calendarDisconnected": "Google Calendar disconnected",
"gmailScanError": "Gmail scan error",
"calendarInfo": "How does Google Calendar work?",
"readwiseInfo": "How does Readwise work?",
"readwiseTokenPlaceholder": "Readwise token…",
"connected": "Connected",
"notConnected": "Not connected",
"connectCalendar": "Connect Google Calendar",
"todayEvents": "Today's events",
"disconnect": "Disconnect",
"connect": "Connect",
"syncNow": "Sync now",
"addNote": "+ Note",
"open": "Open",
"moreComing": "More integrations coming soon — Zapier, GitHub, Notion import…",
"calendarDesc": "Access your events and create meeting notes",
"readwiseDesc": "Import highlights from books, articles, and Kindle",
"lastSync": "Last sync:",
"createdLabel": "notes created",
"updatedLabel": "updated",
"calendarHelpStep1": "Click \"Connect Google Calendar\" — you will be redirected to Google to authorize access.",
"calendarHelpStep2": "Once connected, come back here and click \"Today's events\" to see your agenda.",
"calendarHelpStep3": "On each event, click \"+ Note\" to automatically create a meeting note with a template (Agenda / Notes / Actions).",
"calendarHelpStep4": "The note opens directly in Memento — add your notes in real time during the meeting.",
"readwiseHelpStep1": "Copy your Readwise access token.",
"readwiseHelpStep2": "Paste it in the field below and click \"Connect\". The first sync imports all your books and articles.",
"readwiseHelpStep3": "Each book becomes a note in a \"Readwise 📚\" notebook — with all your highlights organized.",
"readwiseHelpStep4": "To update with new highlights, come back here and click \"Sync now\".",
"readwiseHelpStep5": "💡 Tip: create AI flashcards from a Readwise note (🎓 button in the editor) to review your readings."
},
"homeDashboard": {
"title": "Dashboard",
"quickCapture": "Quick Capture",
"quickCapturePlaceholder": "An idea, a thought… Enter to capture to Inbox.",
"captured": "Captured to Inbox",
"captureError": "Failed",
"mindMap": "Mind map",
"fullMap": "Full map →",
"mindMapEmpty": "No themes detected yet. Semantic analysis groups your notes by topic.",
"mindMapOpen": "Open insights map →",
"mindMapUnavailable": "Mind map unavailable.",
"themes": "themes",
"bridges": "bridges",
"aiEchoes": "AI echoes",
"bridgeNote": "Bridge note",
"theme": "Theme",
"suggestedResearch": "Suggested research",
"dismiss": "Dismiss",
"createAgent": "Create agent",
"agentsEmpty": "No research agents suggested yet. Keep writing — Memento will propose synthesis topics when your notes cluster.",
"agentCreated": "Agent created and started",
"agentFailed": "Failed to create agent",
"notes": "notes",
"continue": "Continue",
"noRecentNotes": "No recent notes.",
"untitled": "Untitled",
"inbox": "Inbox",
"sentiment": "Sentiment",
"analyzing": "Analyzing…",
"notEnoughNotes": "Not enough notes this week.",
"toReview": "To review",
"allCaughtUp": "All caught up.",
"toOrganize": "to organize",
"review": "Review",
"cardsDue": "cards due",
"reminders": "Reminders",
"aiFound": "AI found",
"new": "new",
"noConnections": "No connections yet. AI analyzes your notes.",
"match": "Match",
"semanticConnection": "Semantic affinity",
"suggestedBridge": "Link {clusterA} & {clusterB}",
"createBridgeNote": "Create bridge note",
"bridgeNoteCreated": "Bridge note created",
"agentDiscovery": "Agent",
"connectionBetween": "Link between \"{note1}\" and \"{note2}\"",
"intelFilterAll": "All",
"intelFilterConnections": "Links",
"intelFilterBridges": "Bridges",
"intelFilterIdeas": "Ideas",
"intelFilterAgents": "Agents",
"intelFilterEmpty": "Nothing in this category yet.",
"intelOpenNote": "Open",
"intelCompare": "Compare",
"intelMissingLink": "Missing link",
"intelViewAgent": "View agent",
"intelAgentNoResult": "Research complete — see details.",
"intelPrev": "Previous",
"intelNext": "Next",
"intelGoTo": "Discovery {index}",
"intelPosition": "{current} / {total}",
"resumeOpen": "Resume",
"pulseInbox": "{count} to organize",
"pulseReview": "{count} to review",
"pulseDiscoveries": "{count} discoveries",
"pulseClear": "All caught up — enjoy your session.",
"widgetCustomize": "Customize",
"widgetDone": "Done",
"widgetAdd": "Add widget",
"widgetReset": "Reset layout",
"widgetResetDone": "Default dashboard restored.",
"layoutEmptyTitle": "Your dashboard is empty",
"layoutEmptyHint": "Restore the recommended layout to get started with your second brain.",
"widgetCatalog": "Widget catalog",
"widgetCatalogTitle": "Customize your dashboard",
"widgetActive": "Visible",
"widgetAddShort": "Add",
"widgetOpen": "Open",
"widgetDrag": "Drag widget",
"widgetHide": "Hide widget",
"widgetStatsBridges": "Bridges",
"widgetStatsNotes": "Notes",
"widgetAgentActivityEmpty": "No agent activity in the last 48 hours.",
"widgetPinnedEmpty": "No pinned notes yet.",
"widgetActivityHint": "Notes edited over the last 90 days.",
"widgetUsageHint": "Monthly AI usage by feature.",
"widgetCategories": {
"essential": "Essentials",
"paths": "Paths & review",
"cognition": "Knowledge map",
"productivity": "Productivity",
"agents": "AI & agents"
},
"widgets": {
"capture": "Quick capture",
"resume": "Resume here",
"intelligence": "AI found",
"reminders": "Reminders",
"mind-map": "Mind map",
"agents": "Suggested research",
"sentiment": "Sentiment",
"inbox": "Inbox",
"revision": "Flashcards",
"stats": "Semantic stats",
"agent-activity": "Agent activity",
"gmail": "Gmail captures",
"activity": "Writing activity",
"pinned": "Pinned notes",
"usage": "AI quota",
"next-paths": "Next paths",
"daily-review": "Daily review",
"open-loops": "Open loops",
"daily-note": "Daily journal",
"link-suggestions": "Link suggestions",
"bridges": "Bridge opportunities",
"flashcards-progress": "Learning progress"
},
"widgetDescriptions": {
"capture": "Capture a thought instantly into your inbox.",
"resume": "Pick up your most recent notes where you left off.",
"intelligence": "Semantic links, bridge ideas, and agent discoveries.",
"reminders": "Upcoming note reminders at a glance.",
"mind-map": "Theme clusters sized by note volume.",
"agents": "AI-suggested research agents for your topics.",
"sentiment": "Emotional tone of your notes this week.",
"inbox": "Notes waiting to be filed into notebooks.",
"revision": "Flashcards due for spaced repetition review.",
"stats": "Clusters, bridge notes, and total indexed notes.",
"agent-activity": "Latest completed agent runs.",
"gmail": "Email captures synced from Gmail.",
"activity": "GitHub-style heatmap of your writing rhythm.",
"pinned": "Quick access to your pinned notes.",
"usage": "Remaining AI credits and monthly limits.",
"next-paths": "AI-suggested next steps from your latest work.",
"daily-review": "10-minute morning checklist (inbox, discoveries, one link).",
"open-loops": "Notes started but left unfinished.",
"daily-note": "Today's journal entry.",
"link-suggestions": "Passages to link into your current note.",
"bridges": "Missing links between your knowledge themes.",
"flashcards-progress": "Retention, streak, and total cards."
},
"pathsTitle": "Your next paths",
"pathsFromNote": "Based on \"{title}\"",
"pathsLoading": "Analyzing your recent work…",
"pathsEnriching": "Refining suggestions…",
"pathsEmpty": "Work on a note to unlock personalized paths.",
"pathCompareHint": "Also related: {title} — open Memory Echo to compare.",
"pathAddLinkHint": "Consider linking to \"{link}\" in your note.",
"dailyReviewHint": "10 min each morning — the habit that makes your second brain compound.",
"dailyReviewInbox": "Process inbox",
"dailyReviewDiscoveries": "Review AI discoveries",
"dailyReviewConnection": "Explore one connection",
"dailyReviewCards": "Review flashcards",
"openLoopsEmpty": "No stalled notes — you're on track.",
"openLoopsStale": "{days}d ago",
"dailyNoteOpen": "Open journal",
"linkSuggestionsEmpty": "Edit a note to get link suggestions.",
"bridgesEmpty": "No bridge opportunities right now.",
"flashRetention": "Mastered",
"flashStreak": "Streak",
"flashTotal": "Cards",
"pathTypes": {
"continue": "Continue",
"connect": "Semantic link",
"add-link": "Add to note",
"bridge": "Bridge idea",
"research": "Research agent",
"explore": "Explore theme",
"organize": "Organize",
"review": "Review",
"resurface": "Resurface",
"daily": "Journal"
},
"widgetHelpLabel": "Widget help",
"widgetHelpClose": "Close",
"sentimentDominant": "Dominant tone this week",
"widgetHelp": {
"capture": "Jot down a thought in one line. It lands in your Inbox — classify it during your daily review.",
"next-paths": "Suggested next steps based on your latest edited note: resume, link, bridge, or research.",
"resume": "Your most recently updated notes. Pick up where you left off.",
"intelligence": "AI discoveries: semantic links between notes, bridge ideas, and agent findings.",
"reminders": "Upcoming note reminders. Empty when everything is on schedule.",
"mind-map": "Theme clusters sized by note volume. Click to explore in Insights.",
"agents": "AI-suggested research agents for topics you write about often.",
"sentiment": "Emotional tone of notes edited in the last 7 days. Requires at least 3 recent notes and AI enabled.",
"inbox": "Notes without a notebook yet. File them to keep your second brain tidy.",
"revision": "Flashcards due for spaced-repetition review today.",
"stats": "Semantic index stats: active themes, bridge notes, total indexed notes.",
"agent-activity": "Agents that completed a run in the last 48 hours.",
"gmail": "Email captures synced from Gmail integration.",
"activity": "Heatmap of notes you edited over the last 90 days.",
"pinned": "Quick access to notes you pinned.",
"usage": "Monthly AI credit usage by feature.",
"daily-review": "10-minute morning checklist: inbox, discoveries, one connection, flashcards.",
"open-loops": "Notes you started but haven't touched in 3+ days.",
"daily-note": "Today's journal entry — one note per day.",
"link-suggestions": "Passages from other notes worth linking into your current work.",
"bridges": "AI suggestions to connect two separate knowledge themes with a bridge note.",
"flashcards-progress": "Learning retention rate, review streak, and total cards."
},
"pathActions": {
"continue": "Resume",
"compare": "Compare",
"addLink": "Open & link",
"openInsight": "Explore",
"createBridge": "Create bridge",
"createAgent": "Launch agent",
"exploreTheme": "View themes",
"organizeInbox": "Open inbox",
"reviewCards": "Review",
"openDaily": "Open journal"
},
"gmailCaptures": "Gmail captures",
"gmailConnect": "Connect Gmail",
"gmailRecent": "{count} this week",
"aiConsentRequired": "Enable AI to discover connections between your notes.",
"aiProviderUnavailable": "AI is temporarily unavailable. Check your provider settings.",
"memoryEchoDisabled": "Memory Echo is disabled in your AI settings.",
"enableAi": "Enable AI",
"analyzeNotes": "Analyze my notes",
"echoFound": "New connection found!",
"echoNone": "No new connections right now. Try again later.",
"echoFailed": "Analysis failed",
"alreadySeen": "seen",
"dismissConnection": "Dismiss this connection",
"loading": "…",
"emotions": {
"focused": "Focused",
"curious": "Curious",
"enthusiastic": "Enthusiastic",
"frustrated": "Frustrated",
"calm": "Calm",
"anxious": "Anxious",
"creative": "Creative",
"reflective": "Reflective"
}
},
"editor": {
"voiceStart": "Dictate text (microphone)",
"voiceStop": "Stop dictation"
"voiceStop": "Stop dictation",
"backlinks": "Backlinks",
"clickToEdit": "Click to edit",
"bold": "Bold",
"italic": "Italic",
"highlight": "Highlight",
"link": "Link",
"bulletList": "Bullet List",
"taskList": "Task List",
"heading": "Heading",
"codeBlock": "Code Block",
"plus": "Plus"
},
"wizard": {
"title": "Create a notebook with AI",
@@ -3933,28 +4316,148 @@
"published": "Site published!",
"openSite": "Open site",
"updateSite": "Update site",
"unpublish": "Unpublish site"
"unpublish": "Unpublish site",
"selectAtLeastOne": "Select at least one note",
"unpublished": "Site unpublished",
"online": "Site online",
"unpublishing": "Unpublishing…"
},
"searchModal": {
"search_ariaLabel": "Search",
"search_placeholder": "Search across all your notes…",
"search_caseSensitive": "Case sensitive",
"search_regexMode": "Regex mode",
"search_trashIncluded": "Trash included",
"search_openInEditor": "Open in editor",
"search_title": "Memento Search",
"search_favorites": "Favorites:",
"search_searching": "Searching…",
"search_noResults": "No results",
"search_typeToSearch": "Type to search",
"search_aiAnalysis": "Analyzing…",
"search_aiResponse": "AI Response",
"search_resultsSummary": "Results summary…",
"search_documentPreview": "Document preview",
"search_noMatch": "No note matches.",
"search_typeForResults": "Type to get instant results.",
"search_hintNavigate": "navigate",
"search_hintOpen": "open",
"search_hintClose": "close"
"ariaLabel": "Search",
"placeholder": "Search all notes…",
"caseSensitive": "Case sensitive",
"regexMode": "Regex mode",
"trashIncluded": "Trash included",
"openInEditor": "Open in editor",
"title": "Memento Search",
"favorites": "Favorites:",
"searching": "Searching…",
"noResults": "No results",
"typeToSearch": "Type to search",
"aiAnalysis": "Analyzing…",
"aiResponse": "AI Response",
"resultsSummary": "Results summary…",
"documentPreview": "Document preview",
"noMatch": "No note matches your search.",
"typeForResults": "Type for instant results.",
"hintNavigate": "navigate",
"hintOpen": "open",
"hintClose": "close"
},
"mobile": {
"aiNote": "AI Note",
"blockActions": "Block Actions",
"convertFormat": "Convert Format",
"delete": "Delete",
"duplicate": "Duplicate",
"paragraph": "Paragraph",
"quote": "Quote",
"selectAll": "Select All"
},
"clusters": {
"empty": "No clusters to display",
"emptyHint": "Create more notes to generate clusters",
"bridgeNote": "Bridge note",
"regularNote": "Regular note",
"notes": "notes"
},
"bridgeNotes": {
"bridges": "Bridges",
"suggestions": "Suggestions",
"powerfulTitle": "Powerful Bridge Notes",
"score": "Score",
"empty": "No significant bridge notes found yet. Deepen your research to find new connections.",
"missingLinks": "Missing Links (AI Generated)",
"bridging": "Bridging",
"dismiss": "Dismiss suggestion",
"noSuggestions": "No connection suggestions yet",
"allConnected": "All your clusters may already be connected!",
"generate": "Generate Suggestions"
},
"chart": {
"code": "Chart Code",
"invalid": "Invalid Chart",
"invalidDescription": "This chart block contains invalid or empty data.",
"editSource": "Edit chart source",
"suggestions": "Chart Suggestions",
"analyzing": "Analyzing your content for chart data…",
"debugInfo": "Debug info",
"escCancel": "Esc Cancel",
"insertFailed": "Failed to insert chart: ",
"noDataDetected": "No Data Detected",
"noDataHint": "Try adding numerical data to your note. Charts work best with:",
"dataHint1": "• Sales figures, metrics, or measurements",
"dataHint2": "• Lists with values (e.g., \"Jan: 5000, Feb: 7500\")",
"dataHint3": "• Percentages or proportions",
"dataHint4": "• Time-series data",
"debugShowAnalyzed": "Debug: Show what was analyzed",
"navigateHint": "← → Navigate",
"selectHint": "↵ Select",
"dataPoints": "data points",
"analyzingSelection": "selection",
"analyzingNote": "note",
"words": "words",
"found": "Found"
},
"byok": {
"loadError": "Loading error",
"updated": "{{name}} updated ✓",
"testHint": "To test, enter your API key…",
"aliasPlaceholder": "e.g. My pro key",
"choose": "Choose…",
"keyPlaceholder": "sk-… (optional)",
"keyValid": "Valid API key ✓",
"verifyError": "Verification error",
"keySaved": "Key {{name}} saved ✓",
"keyDeleted": "Key deleted",
"noActiveKey": "No active key — using Memento quotas",
"savedKeys": "Saved keys",
"chooseProvider": "Choose a provider…",
"apiKey": "API Key",
"fetchingModels": "Fetching models…",
"chooseModel": "Choose a model…",
"editLabel": "Edit — {{name}}",
"aliasLabel": "Alias",
"apiUrl": "API URL",
"model": "Model",
"newKey": "New API key",
"newKeyHint": "(leave empty to keep current)",
"operational": "✓ Operational",
"test": "Test",
"saveChanges": "Save changes",
"contactError": "Could not contact server",
"baseUrlRequired": "Please provide the API URL",
"keyInvalid": "Invalid API key",
"byokActive": "BYOK active",
"activeStatus": "● Active",
"inactiveStatus": "○ Inactive",
"confirmDelete": "Delete the {{name}} key?",
"addOrReplace": "Add / replace a key",
"connectProvider": "Connect your AI provider",
"optional": "(optional)",
"verify": "Verify",
"modelOperational": "Model operational ✓",
"reply": "Reply:",
"testFailed": "Test failed",
"save": "Save",
"saveWithName": "Save — {{name}}"
},
"blockPicker": {
"searchPlaceholder": "Search for a note excerpt…"
},
"errors": {
"network": "Network error"
},
"pdf": {
"exportError": "PDF export error"
},
"report": {
"explainProblem": "Explain the problem…"
},
"publish": {
"defaultTitle": "Published note",
"tagline": "Your memory, augmented by AI",
"aiSheet": "AI-generated sheet",
"publishedOn": "Published on"
}
}

View File

@@ -73,6 +73,7 @@
"dropToRoot": "Déposez ici pour déplacer à la racine",
"noReminders": "Aucun rappel actif.",
"documents": "Documents",
"dashboardPanelBody": "Votre second brain en un coup d'œil : suggestions IA, capture rapide et prochaines pistes. Raccourcis pour agir tout de suite.",
"searchNotebooksPlaceholder": "Rechercher un carnet…",
"clearSearch": "Effacer la recherche",
"insightsPanelBody": "Cartographie sémantique de vos notes : clusters thématiques, notes-ponts et suggestions de connexion.",
@@ -82,7 +83,10 @@
"resizeSidebar": "Redimensionner la largeur de la barre latérale",
"dailyNote": "Note du jour",
"dailyNoteError": "Impossible d'ouvrir la note du jour",
"dailyNoteTooltip": "Ouvrir ou créer la note personnelle pour le journal d'aujourd'hui"
"dailyNoteTooltip": "Ouvrir ou créer la note personnelle pour le journal d'aujourd'hui",
"lightMode": "Mode clair",
"darkMode": "Mode sombre",
"searchShortcut": "Recherche (Ctrl+K)"
},
"notes": {
"title": "Notes",
@@ -324,7 +328,12 @@
"unarchived": "Désarchivée",
"savedJustNow": "Sauvegardé",
"unsaved": "Non sauvegardé",
"historyEnabledTooltip": "Historique des versions activé — les modifications sont suivies"
"historyEnabledTooltip": "Historique des versions activé — les modifications sont suivies",
"heading1": "Titre 1",
"heading2": "Titre 2",
"heading3": "Titre 3",
"importSuccess": "{{count}} notes importées !",
"unpublished": "Note dépubliée"
},
"pagination": {
"previous": "←",
@@ -366,7 +375,9 @@
"confirmDeleteShort": "Confirmer ?",
"labelRemoved": "Étiquette \"{label}\" supprimée",
"filterByTags": "Filtrer par étiquettes",
"searchTags": "Rechercher des étiquettes"
"searchTags": "Rechercher des étiquettes",
"activeCount": "{{count}} actifs",
"showMoreCount": "+ {{count}} de plus"
},
"search": {
"placeholder": "Rechercher",
@@ -775,6 +786,7 @@
"match": "{percentage}% correspondance",
"fused": "Fusionné",
"clickToView": "Cliquer pour voir la note →",
"defaultInsight": "Ces notes semblent sémantiquement liées.",
"overlay": {
"title": "Notes connectées",
"searchPlaceholder": "Rechercher des connexions...",
@@ -944,6 +956,8 @@
"graphView": "Carte des liens",
"insights": "Thèmes sémantiques",
"revision": "Révisions",
"dailyNotes": "Notes du jour",
"dashboard": "Tableau de bord",
"userManagement": "Gestion des utilisateurs",
"accountSettings": "Paramètres du compte",
"manageAISettings": "Gérer les paramètres IA",
@@ -1023,7 +1037,19 @@
"autoSave": "Auto-enregistrement",
"autoSaveDesc": "Enregistrer automatiquement les modifications pendant la frappe",
"autoSaveEnabled": "Auto-enregistrement activé !",
"autoSaveDisabled": "Auto-enregistrement désactivé"
"autoSaveDisabled": "Auto-enregistrement désactivé",
"publishedTitle": "Mes pages publiées",
"publishedDesc": "Gérez les notes que vous avez publiées publiquement.",
"publishedEmpty": "Aucune note publiée pour le moment.",
"notesViewLabel": "Affichage des notes",
"notesViewDescription": "Choisissez comment les notes sont affichées dans la liste.",
"notesViewList": "Liste",
"notesViewMasonry": "Mosaïque",
"notesViewTable": "Tableau",
"importExportHelp": "Import / Export — comment ça fonctionne ?",
"aiConfigHelp": "Comment configurer votre IA ?",
"integrationsTitle": "Intégrations",
"integrationsDesc": "Connectez des services externes à Memento."
},
"profile": {
"title": "Profil",
@@ -1230,7 +1256,8 @@
"dismissIn": "Rejeter (ferme dans {timeLeft}s)",
"moveToNotebook": "Déplacer vers un carnet",
"generalNotes": "Notes générales",
"movedToNotebook": "Déplacé vers le carnet"
"movedToNotebook": "Déplacé vers le carnet",
"filterNotebooks": "Filtrer les carnets…"
},
"admin": {
"title": "Tableau de bord Admin",
@@ -1922,7 +1949,9 @@
"outboundList": "Depuis cette note ({count})",
"unlinkedList": "Mentions non reliées ({count})",
"refBadge": "Entrant",
"toBadge": "Sortant"
"toBadge": "Sortant",
"noInbound": "Aucun lien wiki ne pointe vers cette note.",
"noOutbound": "Cette note ne contient pas encore de liens vers d'autres notes."
}
},
"languages": {
@@ -1960,7 +1989,7 @@
"off": "Désactivé",
"unknown": "Inconnu",
"notAvailable": "N/D",
"loading": "Chargement...",
"loading": "Chargement",
"error": "Erreur",
"success": "Succès",
"confirm": "Confirmer",
@@ -1974,7 +2003,14 @@
"search": "Rechercher...",
"noResults": "Aucune note trouvée",
"required": "Requis",
"optional": "Optionnel"
"optional": "Optionnel",
"notes": "notes",
"openMenu": "Ouvrir le menu",
"openNav": "Ouvrir la navigation",
"linkCopied": "Lien copié !",
"copyLink": "Copier le lien",
"untitled": "Sans titre",
"selectPlaceholder": "Sélectionner…"
},
"time": {
"justNow": "à l'instant",
@@ -2395,7 +2431,20 @@
},
"lab": {
"initializing": "Initialisation de l'espace de travail",
"loadingIdeas": "Chargement de vos idées..."
"loadingIdeas": "Chargement de vos idées...",
"loadingSlides": "Chargement des slides…",
"downloadFailed": "Échec du téléchargement de la présentation",
"exportPpt": "Exporter en PowerPoint",
"downloadHtml": "Télécharger le HTML",
"openFullscreen": "Ouvrir en plein écran",
"loadingPresentation": "Chargement de la présentation…",
"previousSlide": "Slide précédent",
"nextSlide": "Slide suivant",
"hideNotes": "Masquer les notes",
"toggleNotes": "Bascule des notes de présentation (Raccourci : N)",
"notes": "Notes",
"previous": "Précédent",
"next": "Suivant"
},
"richTextEditor": {
"slashHint": "↑↓ naviguer · Entrée insérer · Tab changer de section",
@@ -2694,7 +2743,15 @@
"previewDiagramTip": "Esquissez des concepts ou générez des diagrammes via IA.",
"previewLivingBlockTip": "Synchronisez du contenu entre plusieurs notes.",
"previewSlidesTip": "Créez des présentations interactives exportables.",
"previewTableTip": "Organisez vos données en lignes et colonnes."
"previewTableTip": "Organisez vos données en lignes et colonnes.",
"aiActionStarted": "IA Note sollicitée…",
"blockDeleted": "Bloc supprimé",
"blockDuplicated": "Bloc dupliqué",
"blockSelected": "Bloc sélectionné en entier",
"slashVideo": "Vidéo",
"startVoice": "Démarrer la dictée vocale",
"stopVoice": "Arrêter la dictée vocale",
"collapsibleSection": "Section repliable"
},
"flashcards": {
"generateTitle": "Générer des flashcards",
@@ -2788,7 +2845,8 @@
"cardSaved": "Carte enregistrée",
"cardTypeBadge": "{type}",
"reviewNow": "Réviser maintenant",
"deleteFailed": "Impossible de supprimer"
"deleteFailed": "Impossible de supprimer",
"toolbarGenerateHint": "Révision espacée SM-2"
},
"structuredViews": {
"enableTitle": "Organiser ce carnet (tableau, kanban, galerie…)",
@@ -2920,7 +2978,14 @@
"tagApplied": "appliqué",
"filterDone": "Fait",
"filterTodo": "À faire",
"propertyStatus": "Statut"
"propertyStatus": "Statut",
"exportCsv": "Exporter CSV",
"importCsv": "Importer CSV",
"relationEmpty": "Lier une note…",
"relationNoResults": "Aucune note trouvée",
"relationSearch": "Rechercher une note…",
"semanticResonances": "Résonances sémantiques",
"insertLink": "Insérer le lien dans l'éditeur"
},
"brainstorm": {
"title": "Vagues de pensée",
@@ -3167,8 +3232,8 @@
"planSince": "Membre depuis",
"checkoutSuccessTitle": "Abonnement activé !",
"checkoutSuccessBody": "Bienvenue sur {tier}. Vos fonctionnalités sont maintenant débloquées.",
"subscriptionType": "subscriptionType",
"renewalDate": "renewalDate",
"subscriptionType": "Type d'abonnement",
"renewalDate": "Date de renouvellement",
"noRenewalDate": "—",
"tab": "Facturation",
"currentUsage": "Utilisation actuelle",
@@ -3204,7 +3269,19 @@
"instantActivation": "Activation instantanée",
"secureDesc": "Paiements sécurisés par Stripe",
"secureTransactions": "Transactions sécurisées",
"satisfactionGuarantee": "Satisfait ou remboursé 30 jours"
"satisfactionGuarantee": "Satisfait ou remboursé 30 jours",
"cancelConfirm": "Êtes-vous sûr de vouloir résilier votre abonnement ? Vous conserverez vos accès Pro/Business jusqu'à la fin de la période en cours.",
"cancelSuccess": "Votre abonnement a été résilié avec succès. Il prendra fin à la fin de la période de facturation en cours.",
"invoices": "Factures & reçus",
"invoiceAmount": "Montant",
"invoiceDate": "Date",
"invoiceNumber": "Numéro",
"invoiceStatus": "Statut",
"noInvoices": "Aucune facture disponible.",
"checkoutFailed": "Échec du démarrage du paiement. Veuillez réessayer.",
"portalFailed": "Échec de l'ouverture du portail de facturation.",
"cancelFailed": "Échec de l'annulation de l'abonnement.",
"downloadPdf": "Télécharger le PDF"
},
"quotaPaywall": {
"title": "Limite mensuelle atteinte",
@@ -3693,7 +3770,9 @@
"openFully": "Ouvrir en plein écran",
"openFullyHelp": "Remplacer la note courante par cette note",
"readOnlyHint": "Aperçu en lecture seule — ouvrez en plein écran pour modifier.",
"loadFailed": "Impossible d'ouvrir l'aperçu de la note liée."
"loadFailed": "Impossible d'ouvrir l'aperçu de la note liée.",
"loading": "Chargement…",
"untitled": "Sans titre"
},
"structuredViewBlock": {
"insertLabel": "Vue structurée",
@@ -3860,11 +3939,317 @@
"hint_insights_refresh_desc": "Si vous avez ajouté de nouvelles notes, cliquez sur le bouton de rafraîchissement pour recalculer les clusters avec le contenu le plus récent."
},
"integrations": {
"title": "Intégrations"
"title": "Intégrations",
"gmail": {
"title": "Gmail",
"description": "Capture automatique des vols, colis et abonnements depuis vos e-mails",
"connect": "Connecter Gmail",
"disconnect": "Déconnecter",
"scanNow": "Scanner maintenant",
"connected": "Gmail connecté !",
"disconnected": "Gmail déconnecté",
"scanDone": "{created} note(s) créée(s) depuis les e-mails",
"recentCaptures": "{count} capture(s) cette semaine",
"helpTitle": "Comment fonctionne Gmail ?",
"helpStep1": "Connectez Gmail — vous serez redirigé vers Google pour autoriser un accès en lecture seule.",
"helpStep2": "Memento analyse vos e-mails récents : vols, colis, renouvellements d'abonnement.",
"helpStep3": "Chaque correspondance devient une note, avec rappel automatique si pertinent.",
"helpStep4": "Le scan tourne chaque jour en arrière-plan ; vous pouvez aussi lancer un scan manuel ici."
},
"calendarConnected": "Google Calendar connecté !",
"errorWith": "Erreur : {{error}}",
"readwiseError": "Erreur Readwise",
"readwiseConnected": "Readwise connecté — {{created}} notes créées, {{updated}} mises à jour",
"readwiseConnectError": "Erreur de connexion Readwise",
"syncError": "Erreur de synchronisation",
"readwiseSynced": "Sync Readwise — {{created}} créées, {{updated}} mises à jour",
"syncFailed": "Erreur de synchronisation",
"readwiseDisconnected": "Readwise déconnecté",
"noEvents": "Aucun événement aujourd'hui",
"eventsLoadError": "Erreur de chargement des événements",
"meetingNoteCreated": "Note de réunion créée : {{summary}}",
"createNoteError": "Erreur lors de la création de la note",
"calendarDisconnected": "Google Calendar déconnecté",
"gmailScanError": "Erreur de scan Gmail",
"calendarInfo": "Comment fonctionne Google Calendar ?",
"readwiseInfo": "Comment fonctionne Readwise ?",
"readwiseTokenPlaceholder": "Token Readwise…",
"connected": "Connecté",
"notConnected": "Non connecté",
"connectCalendar": "Connecter Google Calendar",
"todayEvents": "Événements aujourd'hui",
"disconnect": "Déconnecter",
"connect": "Connecter",
"syncNow": "Synchroniser maintenant",
"addNote": "+ Note",
"open": "Ouvrir",
"moreComing": "D'autres intégrations arrivent bientôt — Zapier, GitHub, Notion import…",
"calendarDesc": "Accédez à vos événements et créez des notes de réunion",
"readwiseDesc": "Importez vos surlignages de livres, articles et Kindle",
"lastSync": "Dernière sync :",
"createdLabel": "notes créées",
"updatedLabel": "mises à jour",
"calendarHelpStep1": "Cliquez « Connecter Google Calendar » — vous serez redirigé vers Google pour autoriser l'accès.",
"calendarHelpStep2": "Une fois connecté, revenez ici et cliquez « Événements aujourd'hui » pour voir votre agenda.",
"calendarHelpStep3": "Sur chaque événement, cliquez « + Note » pour créer automatiquement une note de réunion avec template (Ordre du jour / Notes / Actions).",
"calendarHelpStep4": "La note s'ouvre directement dans Memento — ajoutez vos notes en temps réel pendant la réunion.",
"readwiseHelpStep1": "Copiez votre token d'accès Readwise.",
"readwiseHelpStep2": "Collez-le dans le champ ci-dessous et cliquez « Connecter ». La première synchronisation importe tous vos livres et articles.",
"readwiseHelpStep3": "Chaque livre devient une note dans un carnet « Readwise 📚 » — avec tous vos surlignages organisés.",
"readwiseHelpStep4": "Pour mettre à jour avec de nouveaux surlignages, revenez ici et cliquez « Synchroniser maintenant ».",
"readwiseHelpStep5": "💡 Astuce : créez des flashcards IA depuis une note Readwise (bouton 🎓 dans l'éditeur) pour réviser vos lectures."
},
"homeDashboard": {
"title": "Tableau de bord",
"quickCapture": "Capture rapide",
"quickCapturePlaceholder": "Une idée, une pensée… Entrée pour capturer dans l'Inbox.",
"captured": "Capturé dans l'Inbox",
"captureError": "Erreur",
"mindMap": "Carte mentale",
"fullMap": "Vue complète →",
"mindMapEmpty": "Pas encore de thèmes détectés. L'analyse sémantique regroupe vos notes par sujets.",
"mindMapOpen": "Ouvrir la cartographie →",
"mindMapUnavailable": "Cartographie indisponible.",
"themes": "thèmes",
"bridges": "ponts",
"aiEchoes": "échos IA",
"bridgeNote": "Note-pont",
"theme": "Thème",
"suggestedResearch": "Recherches suggérées",
"dismiss": "Ignorer",
"createAgent": "Créer l'agent",
"agentsEmpty": "Aucune recherche suggérée pour l'instant. Continuez à écrire — Memento proposera des synthèses quand vos notes formeront des thèmes.",
"agentCreated": "Agent créé et lancé",
"agentFailed": "Échec de la création",
"notes": "notes",
"continue": "Reprendre ici",
"noRecentNotes": "Aucune note récente.",
"untitled": "Sans titre",
"inbox": "Inbox",
"sentiment": "Analyse émotionnelle",
"analyzing": "Analyse en cours…",
"notEnoughNotes": "Pas assez de notes cette semaine.",
"toReview": "À traiter",
"allCaughtUp": "Tout est à jour.",
"toOrganize": "à organiser",
"review": "Révisions",
"cardsDue": "cartes dues",
"reminders": "Rappels",
"aiFound": "L'IA a trouvé",
"new": "nouveaux",
"noConnections": "Aucune connexion trouvée. L'IA analyse vos notes.",
"match": "Connexion",
"semanticConnection": "Affinité sémantique",
"suggestedBridge": "Relier {clusterA} et {clusterB}",
"createBridgeNote": "Créer la note-pont",
"bridgeNoteCreated": "Note-pont créée",
"agentDiscovery": "Agent",
"connectionBetween": "Lien entre « {note1} » et « {note2} »",
"intelFilterAll": "Tout",
"intelFilterConnections": "Liens",
"intelFilterBridges": "Ponts",
"intelFilterIdeas": "Idées",
"intelFilterAgents": "Agents",
"intelFilterEmpty": "Rien dans cette catégorie pour l'instant.",
"intelOpenNote": "Ouvrir",
"intelCompare": "Comparer",
"intelMissingLink": "Lien manquant",
"intelViewAgent": "Voir l'agent",
"intelAgentNoResult": "Recherche terminée — voir le détail.",
"intelPrev": "Précédent",
"intelNext": "Suivant",
"intelGoTo": "Découverte {index}",
"intelPosition": "{current} / {total}",
"resumeOpen": "Reprendre",
"pulseInbox": "{count} à classer",
"pulseReview": "{count} à réviser",
"pulseDiscoveries": "{count} découvertes",
"pulseClear": "Tout est à jour — bonne session.",
"widgetCustomize": "Personnaliser",
"widgetDone": "Terminé",
"widgetAdd": "Ajouter",
"widgetReset": "Réinitialiser",
"widgetResetDone": "Tableau de bord par défaut restauré.",
"layoutEmptyTitle": "Votre tableau de bord est vide",
"layoutEmptyHint": "Restaurez la mise en page recommandée pour démarrer votre second brain.",
"widgetCatalog": "Catalogue",
"widgetCatalogTitle": "Personnaliser le tableau de bord",
"widgetActive": "Visible",
"widgetAddShort": "Ajouter",
"widgetOpen": "Ouvrir",
"widgetDrag": "Déplacer le widget",
"widgetHide": "Masquer le widget",
"widgetStatsBridges": "Ponts",
"widgetStatsNotes": "Notes",
"widgetAgentActivityEmpty": "Aucune activité d'agent sur les 48 dernières heures.",
"widgetPinnedEmpty": "Aucune note épinglée pour l'instant.",
"widgetActivityHint": "Notes modifiées sur les 90 derniers jours.",
"widgetUsageHint": "Consommation IA mensuelle par fonctionnalité.",
"widgetCategories": {
"essential": "Essentiels",
"paths": "Pistes & revue",
"cognition": "Carte de connaissances",
"productivity": "Productivité",
"agents": "IA & agents"
},
"widgets": {
"capture": "Capture rapide",
"resume": "Reprendre ici",
"intelligence": "L'IA a trouvé",
"reminders": "Rappels",
"mind-map": "Carte mentale",
"agents": "Recherches suggérées",
"sentiment": "Analyse émotionnelle",
"inbox": "Inbox",
"revision": "Flashcards",
"stats": "Statistiques sémantiques",
"agent-activity": "Activité agents",
"gmail": "Captures Gmail",
"activity": "Activité d'écriture",
"pinned": "Notes épinglées",
"usage": "Quota IA",
"next-paths": "Prochaines pistes",
"daily-review": "Revue quotidienne",
"open-loops": "Boucles ouvertes",
"daily-note": "Journal du jour",
"link-suggestions": "Liens à ajouter",
"bridges": "Opportunités de pont",
"flashcards-progress": "Progression apprentissage"
},
"widgetDescriptions": {
"capture": "Saisir une pensée immédiatement dans l'inbox.",
"resume": "Reprendre vos notes les plus récentes.",
"intelligence": "Liens sémantiques, idées-ponts et découvertes d'agents.",
"reminders": "Rappels de notes à venir en un coup d'œil.",
"mind-map": "Thèmes regroupés, taille proportionnelle au volume.",
"agents": "Agents de recherche suggérés par l'IA.",
"sentiment": "Tonalité émotionnelle de vos notes cette semaine.",
"inbox": "Notes en attente de classement dans un carnet.",
"revision": "Cartes à réviser (répétition espacée).",
"stats": "Clusters, notes-ponts et total de notes indexées.",
"agent-activity": "Dernières exécutions d'agents terminées.",
"gmail": "Captures e-mail synchronisées depuis Gmail.",
"activity": "Heatmap de votre rythme d'écriture.",
"pinned": "Accès rapide à vos notes épinglées.",
"usage": "Crédits IA restants et limites mensuelles.",
"next-paths": "Prochaines étapes suggérées à partir de votre travail récent.",
"daily-review": "Checklist matinale 10 min (inbox, découvertes, un lien).",
"open-loops": "Notes commencées mais laissées en suspens.",
"daily-note": "Entrée de journal du jour.",
"link-suggestions": "Passages à lier dans votre note en cours.",
"bridges": "Liens manquants entre vos thèmes de connaissance.",
"flashcards-progress": "Rétention, série et total de cartes."
},
"pathsTitle": "Vos prochaines pistes",
"pathsFromNote": "À partir de « {title} »",
"pathsLoading": "Analyse de votre activité récente…",
"pathsEnriching": "Affinage des suggestions…",
"pathsEmpty": "Travaillez une note pour débloquer des pistes personnalisées.",
"pathCompareHint": "Également lié : {title} — ouvrez Memory Echo pour comparer.",
"pathAddLinkHint": "Pensez à lier « {link} » dans votre note.",
"dailyReviewHint": "10 min chaque matin — l'habitude qui fait composer votre second brain.",
"dailyReviewInbox": "Traiter l'inbox",
"dailyReviewDiscoveries": "Revoir les découvertes IA",
"dailyReviewConnection": "Explorer une connexion",
"dailyReviewCards": "Réviser les flashcards",
"openLoopsEmpty": "Aucune note en suspens — vous êtes à jour.",
"openLoopsStale": "il y a {days} j",
"dailyNoteOpen": "Ouvrir le journal",
"linkSuggestionsEmpty": "Modifiez une note pour obtenir des suggestions de liens.",
"bridgesEmpty": "Pas d'opportunité de pont pour l'instant.",
"flashRetention": "Maîtrisées",
"flashStreak": "Série",
"flashTotal": "Cartes",
"pathTypes": {
"continue": "Continuer",
"connect": "Lien sémantique",
"add-link": "Ajouter à la note",
"bridge": "Idée-pont",
"research": "Agent de recherche",
"explore": "Explorer le thème",
"organize": "Organiser",
"review": "Réviser",
"resurface": "Resurfacer",
"daily": "Journal"
},
"widgetHelpLabel": "Aide du widget",
"widgetHelpClose": "Fermer",
"sentimentDominant": "Tonalité dominante cette semaine",
"widgetHelp": {
"capture": "Saisissez une pensée en une ligne. Elle arrive dans l'Inbox — classez-la lors de votre revue quotidienne.",
"next-paths": "Prochaines étapes suggérées à partir de votre dernière note : reprendre, lier, créer un pont ou lancer une recherche.",
"resume": "Vos notes les plus récemment modifiées. Reprenez là où vous vous êtes arrêté.",
"intelligence": "Découvertes IA : liens sémantiques, idées-ponts et résultats d'agents.",
"reminders": "Rappels de notes à venir. Vide quand tout est à jour.",
"mind-map": "Thèmes regroupés, taille proportionnelle au volume de notes. Cliquez pour explorer dans Insights.",
"agents": "Agents de recherche suggérés par l'IA pour vos sujets récurrents.",
"sentiment": "Tonalité émotionnelle des notes modifiées sur les 7 derniers jours. Nécessite au moins 3 notes récentes et l'IA activée.",
"inbox": "Notes sans carnet. Classez-les pour garder un second brain ordonné.",
"revision": "Cartes flashcards à réviser aujourd'hui (répétition espacée).",
"stats": "Statistiques de l'index sémantique : thèmes, notes-ponts, total indexé.",
"agent-activity": "Agents ayant terminé une exécution dans les 48 dernières heures.",
"gmail": "Captures e-mail synchronisées depuis l'intégration Gmail.",
"activity": "Heatmap des notes modifiées sur les 90 derniers jours.",
"pinned": "Accès rapide à vos notes épinglées.",
"usage": "Consommation mensuelle des crédits IA par fonctionnalité.",
"daily-review": "Checklist matinale 10 min : inbox, découvertes, une connexion, flashcards.",
"open-loops": "Notes commencées mais sans modification depuis 3+ jours.",
"daily-note": "Entrée de journal du jour — une note par jour.",
"link-suggestions": "Passages d'autres notes à lier dans votre travail en cours.",
"bridges": "Suggestions IA pour relier deux thèmes distincts par une note-pont.",
"flashcards-progress": "Taux de rétention, série de révisions et total de cartes."
},
"pathActions": {
"continue": "Reprendre",
"compare": "Comparer",
"addLink": "Ouvrir & lier",
"openInsight": "Explorer",
"createBridge": "Créer le pont",
"createAgent": "Lancer l'agent",
"exploreTheme": "Voir les thèmes",
"organizeInbox": "Ouvrir l'inbox",
"reviewCards": "Réviser",
"openDaily": "Ouvrir le journal"
},
"gmailCaptures": "Captures Gmail",
"gmailConnect": "Connecter Gmail",
"gmailRecent": "{count} cette semaine",
"aiConsentRequired": "Activez l'IA pour découvrir les connexions entre vos notes.",
"aiProviderUnavailable": "L'IA est temporairement indisponible. Vérifiez la configuration du fournisseur.",
"memoryEchoDisabled": "Memory Echo est désactivé dans vos paramètres IA.",
"enableAi": "Activer l'IA",
"analyzeNotes": "Analyser mes notes",
"echoFound": "Nouvelle connexion trouvée !",
"echoNone": "Pas de nouvelle connexion pour l'instant. Réessayez plus tard.",
"echoFailed": "Échec de l'analyse",
"alreadySeen": "vu",
"dismissConnection": "Ignorer cette connexion",
"loading": "…",
"emotions": {
"focused": "Concentré",
"curious": "Curieux",
"enthusiastic": "Enthousiaste",
"frustrated": "Frustré",
"calm": "Calme",
"anxious": "Anxieux",
"creative": "Créatif",
"reflective": "Réfléchi"
}
},
"editor": {
"voiceStart": "Dicter du texte (microphone)",
"voiceStop": "Arrêter la dictée"
"voiceStop": "Arrêter la dictée",
"backlinks": "Liens entrants",
"clickToEdit": "Cliquez pour éditer",
"bold": "Gras",
"italic": "Italique",
"highlight": "Surligner",
"link": "Lien",
"bulletList": "Liste à puces",
"taskList": "Liste de tâches",
"heading": "Titre",
"codeBlock": "Bloc de code",
"plus": "Plus"
},
"wizard": {
"title": "Créer un carnet avec l'IA",
@@ -3937,28 +4322,148 @@
"published": "Site publié !",
"openSite": "Ouvrir le site",
"updateSite": "Mettre à jour le site",
"unpublish": "Dépublier le site"
"unpublish": "Dépublier le site",
"selectAtLeastOne": "Sélectionne au moins une note",
"unpublished": "Site dépublié",
"online": "Site en ligne",
"unpublishing": "Dépublication en cours…"
},
"searchModal": {
"search_ariaLabel": "Recherche",
"search_placeholder": "Rechercher dans toutes vos notes…",
"search_caseSensitive": "Respecter la casse",
"search_regexMode": "Mode regex",
"search_trashIncluded": "Corbeille incluse",
"search_openInEditor": "Ouvrir dans l'éditeur",
"search_title": "Memento Search",
"search_favorites": "Favoris :",
"search_searching": "Recherche en cours…",
"search_noResults": "Aucun résultat",
"search_typeToSearch": "Tapez pour rechercher",
"search_aiAnalysis": "Analyse...",
"search_aiResponse": "Réponse IA",
"search_resultsSummary": "Synthèse des résultats...",
"search_documentPreview": "Aperçu du document",
"search_noMatch": "Aucune note ne correspond.",
"search_typeForResults": "Tapez pour obtenir des résultats instantanés.",
"search_hintNavigate": "naviguer",
"search_hintOpen": "ouvrir",
"search_hintClose": "fermer"
"ariaLabel": "Recherche",
"placeholder": "Rechercher dans toutes les notes…",
"caseSensitive": "Sensible à la casse",
"regexMode": "Mode regex",
"trashIncluded": "Corbeille incluse",
"openInEditor": "Ouvrir dans l'éditeur",
"title": "Recherche Memento",
"favorites": "Favoris :",
"searching": "Recherche en cours…",
"noResults": "Aucun résultat",
"typeToSearch": "Tapez pour rechercher",
"aiAnalysis": "Analyse en cours…",
"aiResponse": "Réponse IA",
"resultsSummary": "Synthèse des résultats",
"documentPreview": "Aperçu du document",
"noMatch": "Aucune note ne correspond à votre recherche.",
"typeForResults": "Tapez pour des résultats instantanés.",
"hintNavigate": "naviguer",
"hintOpen": "ouvrir",
"hintClose": "fermer"
},
"mobile": {
"aiNote": "IA Note",
"blockActions": "Actions sur le bloc",
"convertFormat": "Convertir le format",
"delete": "Supprimer",
"duplicate": "Dupliquer",
"paragraph": "Paragraphe",
"quote": "Citation",
"selectAll": "Sélectionner tout"
},
"clusters": {
"empty": "Aucun groupe à afficher",
"emptyHint": "Créez plus de notes pour générer des groupes",
"bridgeNote": "Note pont",
"regularNote": "Note standard",
"notes": "notes"
},
"bridgeNotes": {
"bridges": "Ponts",
"suggestions": "Suggestions",
"powerfulTitle": "Notes pont puissantes",
"score": "Score",
"empty": "Aucune note pont significative trouvée. Approfondissez vos recherches pour découvrir de nouvelles connexions.",
"missingLinks": "Liens manquants (générés par l'IA)",
"bridging": "Relie",
"dismiss": "Rejeter la suggestion",
"noSuggestions": "Aucune suggestion de connexion",
"allConnected": "Tous vos groupes sont peut-être déjà connectés !",
"generate": "Générer des suggestions"
},
"chart": {
"code": "Code du graphique",
"invalid": "Graphique invalide",
"invalidDescription": "Ce bloc de graphique contient des données invalides ou vides.",
"editSource": "Modifier le code source",
"suggestions": "Suggestions de graphiques",
"analyzing": "Analyse de votre contenu pour des données graphiques…",
"debugInfo": "Infos de débogage",
"escCancel": "Échap Annuler",
"insertFailed": "Échec de l'insertion du graphique : ",
"noDataDetected": "Aucune donnée détectée",
"noDataHint": "Essayez d'ajouter des données numériques à votre note. Les graphiques fonctionnent mieux avec :",
"dataHint1": "• Chiffres de vente, métriques ou mesures",
"dataHint2": "• Listes avec valeurs (ex. « Jan : 5000, Fév : 7500 »)",
"dataHint3": "• Pourcentages ou proportions",
"dataHint4": "• Données temporelles",
"debugShowAnalyzed": "Débogage : voir ce qui a été analysé",
"navigateHint": "← → Naviguer",
"selectHint": "↵ Sélectionner",
"dataPoints": "points de données",
"analyzingSelection": "sélection",
"analyzingNote": "note",
"words": "mots",
"found": "Trouvé"
},
"byok": {
"loadError": "Erreur de chargement",
"updated": "{{name}} mis à jour ✓",
"testHint": "Pour tester, entrez la clé API…",
"aliasPlaceholder": "ex. Ma clé pro",
"choose": "Choisir…",
"keyPlaceholder": "sk-… (optionnel)",
"keyValid": "Clé API valide ✓",
"verifyError": "Erreur de vérification",
"keySaved": "Clé {{name}} enregistrée ✓",
"keyDeleted": "Clé supprimée",
"noActiveKey": "Aucune clé active — utilisation des quotas Memento",
"savedKeys": "Clés enregistrées",
"chooseProvider": "Choisir un fournisseur…",
"apiKey": "Clé API",
"fetchingModels": "Récupération des modèles…",
"chooseModel": "Choisir un modèle…",
"editLabel": "Modifier — {{name}}",
"aliasLabel": "Alias",
"apiUrl": "URL de l'API",
"model": "Modèle",
"newKey": "Nouvelle clé API",
"newKeyHint": "(laisser vide pour conserver l'actuelle)",
"operational": "✓ Opérationnel",
"test": "Tester",
"saveChanges": "Enregistrer les modifications",
"contactError": "Impossible de contacter le serveur",
"baseUrlRequired": "Veuillez renseigner l'URL de l'API",
"keyInvalid": "Clé API invalide",
"byokActive": "BYOK actif",
"activeStatus": "● Actif",
"inactiveStatus": "○ Inactif",
"confirmDelete": "Supprimer la clé {{name}} ?",
"addOrReplace": "Ajouter / remplacer une clé",
"connectProvider": "Connecter votre fournisseur IA",
"optional": "(optionnel)",
"verify": "Vérifier",
"modelOperational": "Modèle opérationnel ✓",
"reply": "Réponse :",
"testFailed": "Échec du test",
"save": "Enregistrer",
"saveWithName": "Enregistrer — {{name}}"
},
"blockPicker": {
"searchPlaceholder": "Rechercher un extrait de note…"
},
"errors": {
"network": "Erreur réseau"
},
"pdf": {
"exportError": "Erreur export PDF"
},
"report": {
"explainProblem": "Expliquez le problème…"
},
"publish": {
"defaultTitle": "Note publiée",
"tagline": "Votre mémoire augmentée par l'IA",
"aiSheet": "Fiche générée par IA",
"publishedOn": "Publié sur"
}
}