Files
Life-OS/public/locales/en.json
T

785 lines
29 KiB
JSON
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"app": {
"today": "TODAY",
"timeline": "TIMELINE",
"museum": "MUSEUM",
"insights": "INSIGHTS",
"profile": "PROFILE",
"tasks": "TASKS",
"calendar": "CALENDAR",
"system": "SYSTEM",
"browser": "BROWSER",
"terminal": "TERMINAL",
"database": "DATABASE"
},
"db": {
"title": "Database Manager",
"loginBody": "Inspect and edit the records stored for your current account.",
"setupTitle": "Set your database password",
"setupBody": "Create a password for this account. The former shared password has been retired.",
"checking": "Checking database access…",
"setPassword": "Set password and enter",
"currentPassword": "Current password",
"newPassword": "New password (at least 12 characters)",
"confirmPassword": "Confirm new password",
"passwordMismatch": "The two passwords do not match.",
"changePassword": "Change password",
"passwordChanged": "Password updated. Previous database sessions were signed out.",
"server": "Server",
"username": "Username",
"password": "Password",
"warningTitle": "Direct database access",
"warningBody": "Changes here write to the cloud database immediately. Invalid JSON or deleted records can affect your Life OS data. Export a backup before making major changes.",
"acknowledge": "I understand I am directly editing my database records.",
"login": "Enter database",
"connected": "Connected to your account's records.",
"sessionExpired": "The database session expired. Sign in again.",
"requestFailed": "Database request failed.",
"unexpectedResponse": "The database server returned an unexpected response. Please retry in a moment.",
"ownData": "CURRENT ACCOUNT ONLY",
"directMode": "Direct record editor · changes are saved to D1",
"logout": "Log out",
"tables": "Tables",
"memories": "Memories",
"goals": "Goals",
"tasks": "Tasks",
"museum": "Favorites",
"profile": "Profile",
"settings": "Settings",
"system": "System",
"refresh": "Refresh",
"newRecord": "New record",
"newRevision": "new",
"count": "{count} records",
"empty": "No records in this table.",
"selectRow": "Select a row to inspect its JSON.",
"recordId": "Record ID",
"json": "Record JSON",
"editorHint": "Keep the ID in the JSON identical to the record ID. A conflict means this row changed since you opened it.",
"create": "Create",
"save": "Save",
"delete": "Delete",
"cancel": "Cancel",
"previous": "Previous",
"next": "Next",
"invalidJson": "The JSON is invalid.",
"idMismatch": "The JSON object and record ID do not match.",
"saveConfirm": "Write record {id} directly to the database?",
"deleteConfirm": "Delete record {id} from the database? This cannot be undone here.",
"saved": "Record saved.",
"deleted": "Record deleted.",
"reloadHint": "The desktop keeps a local cache. Reload after database changes to refresh other apps.",
"reloadDesktop": "Reload desktop"
},
"common": {
"save": "SAVE",
"cancel": "CANCEL",
"edit": "EDIT",
"delete": "DELETE",
"close": "Close",
"open": "Open",
"minimize": "Minimize",
"maximize": "Maximize",
"restore": "Restore window",
"energy": "ENERGY",
"days": "DAYS",
"never": "NEVER"
},
"today": {
"prompt": "How was your day?",
"placeholder": "Write something about today...",
"archive": "ARCHIVE TODAY",
"update": "UPDATE MEMORY",
"archiveDate": "SAVE MEMORY",
"updateDate": "UPDATE MEMORY",
"backToToday": "Back to today",
"weather": "TODAY'S WEATHER",
"energy": "ENERGY LEVEL",
"film": "DAILY PROMPT",
"archiving": "ARCHIVING MEMORY...",
"archived": "MEMORY ARCHIVED"
},
"weather": {
"clear": "Clear",
"light": "Light",
"cloudy": "Cloudy",
"rain": "Rain",
"storm": "Storm"
},
"timeline": {
"eyebrow": "MEMORY ARCHIVE",
"heading": "{count} OF {total} MEMORIES",
"search": "Search memories",
"searchPlaceholder": "Search notes, tags, places, tasks…",
"filterTag": "Filter by tag",
"allTags": "ALL TAGS",
"noMatches": "No memories match these filters.",
"favorite": "FAVORITE",
"emptyTitle": "No memories yet.",
"emptyBody": "Open Today when you are ready to keep one.",
"detail": "MEMORY DETAIL",
"untitled": "Untitled memory",
"noNote": "No written note.",
"editing": "EDITING AS TODAY — SAVE TO UPDATE",
"preserved": "FAVORITED",
"addMuseum": "ADD TO MUSEUM",
"confirmDelete": "CONFIRM DELETE",
"remove": "Remove this memory?",
"irreversible": "This cannot be undone.",
"deleteMemory": "DELETE MEMORY",
"removed": "MEMORY REMOVED",
"added": "MEMORY FAVORITED",
"unpreserved": "REMOVED FROM FAVORITES"
},
"memory": {
"tags": "TAGS",
"tagsPlaceholder": "Separate tags with commas",
"place": "PLACE / SCENE (OPTIONAL)",
"placePlaceholder": "Where or what was the setting?",
"linkTask": "RELATED TASK (OPTIONAL)",
"noTask": "NO RELATED TASK",
"relatedTask": "Related task",
"favorite": "ADD TO FAVORITES",
"edit": "EDIT MEMORY DETAILS",
"note": "NOTE",
"title": "TITLE (OPTIONAL)",
"titlePlaceholder": "Give this memory a title"
},
"museum": {
"eyebrow": "MUSEUM",
"title": "Preserved moments",
"subtitle": "Worth keeping for the long view.",
"empty": "A museum begins with one preserved moment.",
"preserved": "STATUS: PRESERVED",
"collection": "COLLECTION"
},
"insights": {
"eyebrow": "PERIOD REPORTS",
"title": "Insights",
"description": "A factual view of what you recorded and completed.",
"period": "Report period",
"week": "WEEK",
"month": "MONTH",
"previous": "Previous period",
"next": "Next period",
"records": "RECORDING FREQUENCY",
"recordedDays": "{count} entries · {percent}% of elapsed days",
"tasks": "TASKS COMPLETED",
"completedTasks": "Tasks marked complete in this period",
"taskDetails": "{created} tasks created · {goals} goals completed",
"weather": "COMMON WEATHER",
"noWeather": "No weather recorded in this period",
"energy": "RECORDED ENERGY",
"energyFromTo": "First entry {first}/5 → latest {last}/5",
"singleEnergy": "One energy entry in this period",
"noEnergy": "No energy recorded in this period",
"highlights": "MOMENTS TO REVISIT",
"highlightSource": "Saved memories or entries tagged #highlight or #高光.",
"highlightFavorite": "SAVED",
"highlightTag": "TAGGED",
"highlightEmpty": "No saved or tagged memories in this period.",
"note": "Only saved records are counted. Missing dates carry no inferred weather or energy."
},
"profile": {
"eyebrow": "SYSTEM PROFILE",
"online": "LIFE OS ONLINE",
"daysOnline": "DAYS ONLINE",
"memories": "MEMORIES",
"museumItems": "MUSEUM ITEMS",
"streak": "CURRENT STREAK",
"longest": "LONGEST STREAK",
"commonWeather": "COMMON WEATHER",
"personal": "PERSONAL SYSTEM",
"name": "Display Name",
"birthday": "Birthday (optional)",
"start": "Life OS Start Date",
"motto": "Personal Motto",
"save": "SAVE PROFILE",
"saved": "PROFILE SAVED",
"average": "AVERAGE ENERGY {value} / 5"
},
"notifications": {
"title": "NOTIFICATIONS",
"allow": "Allow system notifications",
"openOnly": "Reminders run while Life OS is open. Browsers may delay them when a tab sleeps; they cannot arrive after the site is closed.",
"time": "{name} time",
"sendTest": "Send a test notification",
"status": {
"default": "Permission has not been requested. Choose Allow to enable delivery.",
"granted": "System notifications are allowed on this device.",
"denied": "Notifications are blocked. Change this site's permission in your browser settings.",
"unsupported": "System notifications are unavailable in this browser or context."
},
"memory": {
"label": "Today's memory",
"description": "Remind me if I have not recorded a memory today.",
"title": "A moment to remember",
"body": "You have not written today's memory yet."
},
"tasks": {
"label": "Today's tasks",
"description": "Show the number of unfinished tasks due today or earlier.",
"title": "Today's tasks",
"body": "{count} unfinished tasks are due today or earlier."
},
"goals": {
"label": "Goal countdown",
"description": "Show the nearest active goal with a target date.",
"title": "Goal countdown",
"days": "{name}: {count} days left.",
"today": "{name}: target date is today.",
"overdue": "{name}: {count} days past the target date."
},
"test": {
"title": "Life OS notifications are ready",
"body": "Your browser can show reminders from Life OS.",
"failed": "Could not show the test notification."
}
},
"systemNav": {
"settings": "SETTINGS",
"navigation": "Settings categories",
"home": "Home",
"appearance": "Personalization",
"notifications": "Notifications",
"language": "Language",
"data": "Data & backup",
"about": "About",
"homeHint": "Choose a category to manage your Life OS preferences.",
"device": "This browser",
"deviceHint": "Your personal Life OS workspace",
"version": "v{version}",
"quickSettings": "Settings at a glance",
"appearanceHint": "Theme, wallpaper, desktop icons and widgets",
"notificationsHint": "Memory, tasks and goal reminders",
"languageHint": "Browser language and manual selection",
"dataHint": "Import, export and local storage"
},
"system": {
"eyebrow": "SYSTEM SETTINGS",
"title": "System, local and yours.",
"appearance": "APPEARANCE",
"language": "LANGUAGE",
"browserLanguage": "BROWSER LANGUAGE",
"detectedZh": "Detected: Chinese",
"detectedEn": "Detected: English",
"auto": "AUTO",
"data": "DATA",
"storage": "STORAGE",
"dataStorage": "DATA STORAGE",
"export": "EXPORT DATA",
"import": "IMPORT DATA",
"reset": "RESET LIFE OS",
"local": "Local Storage",
"stored": "Your data is stored locally in this browser.",
"backups": "Create regular backups to prevent data loss.",
"lastBackup": "LAST BACKUP · {value}",
"recommended": "BACKUP RECOMMENDED",
"version": "VERSION",
"theme": {
"dark": "DARK",
"light": "LIGHT",
"auto": "AUTO"
},
"storageSummary": "{memories} memories · {museum} museum items · {tasks} tasks · Approx. {size} KB",
"release": "Life OS<br>Version {version} · Backup schema v2 · D1 schema v2",
"languageEnglish": "ENGLISH",
"languageChinese": "中文",
"browserDetected": "Browser language: {name}"
},
"dialog": {
"backup": "LIFE OS BACKUP",
"ready": "Ready to restore",
"exported": "Exported: {date}",
"memories": "Memories: {count}",
"museumItems": "Museum Items: {count}",
"goals": "Goals: {count}",
"tasks": "Tasks: {count}",
"merge": "MERGE",
"replaceAll": "REPLACE ALL DATA",
"final": "FINAL CONFIRMATION",
"replaceQuestion": "Replace all Life OS data?",
"replaceWarning": "This will replace all current Life OS data.",
"replace": "REPLACE DATA",
"resetQuestion": "Reset all local data?",
"resetWarning": "Export a backup first if you want to keep it.",
"resetData": "RESET DATA"
},
"feedback": {
"backup": "BACKUP CREATED",
"invalid": "INVALID BACKUP FILE",
"restored": "SYSTEM RESTORED",
"restoring": "RESTORING SYSTEM...",
"minimized": "MINIMIZED — TAP THE APP ICON TO RESTORE",
"languageZh": "Language set to Chinese",
"languageEn": "Language set to English",
"followingZh": "Following browser language: Chinese",
"followingEn": "Following browser language: English",
"languageSelected": "Language set to {name}",
"followingBrowser": "Following browser language: {name}"
},
"addon": {
"draftRestored": "DRAFT RESTORED",
"searchTitle": "SEARCH MEMORY ARCHIVE",
"searchPlaceholder": "Search titles, notes, moods…",
"searchHint": "ESC to close · click a result to open it",
"untitled": "Untitled memory",
"noResults": "No memories found.",
"syncPaused": "CLOUD SYNC PAUSED — CHANGES STAY ON THIS DEVICE",
"syncConflict": "SYNC CONFLICT — A LOCAL BACKUP WAS SAVED",
"syncConflictConfirm": "This record changed on another device. A local backup has been saved. Replace the cloud record with your local version? Cancel keeps the cloud version.",
"syncReady": "CLOUD SYNC READY",
"migrateQuestion": "Move this browser’s Life OS to the cloud?",
"migrateBody": "Your existing local records will become the first synced copy for this ChatGPT account.",
"migrate": "MIGRATE & SYNC",
"fresh": "START FRESH",
"migrated": "LOCAL LIFE OS MIGRATED",
"cloudRestored": "CLOUD LIFE OS RESTORED",
"cloudUnavailable": "CLOUD STORAGE UNAVAILABLE — LOCAL MODE ACTIVE",
"openMemory": "Open memory: {title}"
},
"calendar": {
"eyebrow": "MEMORIES & MILESTONES",
"month": "MONTH",
"day": "DAY",
"today": "TODAY",
"mon": "MON",
"tue": "TUE",
"wed": "WED",
"thu": "THU",
"fri": "FRI",
"sat": "SAT",
"sun": "SUN",
"previous": "Previous month",
"next": "Next month",
"previousDay": "Previous day",
"nextDay": "Next day",
"dayAtGlance": "THAT DAY",
"memory": "MEMORY",
"task": "TASK",
"goal": "GOAL",
"items": "items",
"taskDue": "TASK DUE",
"taskDone": "TASK COMPLETED",
"goalCreated": "GOAL CREATED",
"goalTarget": "GOAL TARGET DATE",
"goalDone": "GOAL COMPLETED",
"emptyDay": "No memories or milestones recorded for this day.",
"openToday": "Write a memory",
"writeMemory": "Add memory",
"openTasks": "Open tasks",
"holidayCountry": "Country / region",
"autoCountry": "Auto ({country})",
"publicHoliday": "Public holiday",
"festival": "Festival",
"workingDay": "Working day",
"observed": "Substitute day off",
"estimated": "Date is estimated",
"workingWeekend": "Official working weekend",
"loadingHolidays": "Loading holidays…",
"holidayUnavailable": "Holiday data unavailable.",
"retryHolidays": "Retry",
"holidaySource": "Public holiday data",
"outsideRange": "Holiday data covers 2024–2030.",
"festivals": {
"valentine": "Valentine’s Day",
"earth": "Earth Day",
"halloween": "Halloween",
"christmasEve": "Christmas Eve",
"teachers": "Teachers’ Day"
},
"holidayNames": {
"New Year's Day": "New Year's Day",
"Chinese New Year (Spring Festival)": "Chinese New Year (Spring Festival)",
"Chinese New Year": "Chinese New Year",
"Chinese New Year's Eve": "Chinese New Year's Eve",
"Tomb-Sweeping Day": "Tomb-Sweeping Day",
"Labor Day": "Labor Day",
"Dragon Boat Festival": "Dragon Boat Festival",
"Mid-Autumn Festival": "Mid-Autumn Festival",
"National Day": "National Day",
"Christmas Day": "Christmas Day",
"Christmas Eve": "Christmas Eve",
"Good Friday": "Good Friday",
"Easter Monday": "Easter Monday",
"Peace Memorial Day": "Peace Memorial Day",
"Children's Day": "Children's Day",
"Constitution Day": "Constitution Day",
"Confucius' Birthday": "Confucius' Birthday"
},
"holidayCaveat": "Dates may change; check local official announcements."
},
"tasks": {
"eyebrow": "GOALS & TASKS",
"title": "Make room for what matters.",
"subtitle": "A small, steady plan for today and the days ahead.",
"addGoal": "NEW GOAL",
"addTask": "ADD TASK",
"taskPlaceholder": "What needs doing?",
"goalPlaceholder": "What do you want to move toward?",
"goalDescription": "A note about this goal (optional)",
"finishedGoals": "COMPLETED GOALS",
"goalComplete": "COMPLETE GOAL",
"goalReopen": "REOPEN GOAL",
"all": "ALL",
"today": "TODAY",
"upcoming": "UPCOMING",
"done": "DONE",
"activeGoals": "ACTIVE GOALS",
"noGoals": "Start with one goal worth moving toward.",
"noTasks": "Nothing on this list yet.",
"due": "DUE {date}",
"noDate": "NO DUE DATE",
"priority": {
"low": "LOW",
"normal": "NORMAL",
"high": "HIGH"
},
"goal": "GOAL",
"anyGoal": "NO GOAL",
"save": "SAVE",
"cancel": "CANCEL",
"complete": "MARK COMPLETE",
"reopen": "REOPEN",
"delete": "DELETE",
"goalTitle": "New goal",
"taskTitle": "New task",
"goalCreated": "GOAL CREATED",
"taskAdded": "TASK ADDED",
"taskRemoved": "TASK REMOVED",
"goalRemoved": "GOAL REMOVED",
"confirmGoalDelete": "Delete this goal?",
"confirmGoalDeleteBody": "Tasks linked to it will be kept without a goal.",
"target": "TARGET DATE",
"completed": "COMPLETED",
"progress": "{done} OF {total} DONE",
"desktopShow": "SHOW COUNTDOWN",
"desktopHide": "HIDE COUNTDOWN",
"countdown": "GOAL COUNTDOWN",
"daysLeft": "{count} days left",
"todayTarget": "Target is today",
"daysOverdue": "{count} days overdue",
"pinOnCreate": "Show countdown on desktop",
"todayHeading": "Focus for today",
"openCount": "{count} OPEN TASKS",
"overdue": "OVERDUE",
"edit": "EDIT",
"editTask": "Edit task",
"editGoal": "Edit goal",
"dueDate": "Due date",
"priorityLabel": "Priority",
"taskUpdated": "TASK UPDATED",
"goalUpdated": "GOAL UPDATED"
},
"shell": {
"pageTitle": "Life OS",
"brand": "LIFE OS / PERSONAL DESKTOP",
"initializing": "INITIALIZING PERSONAL SYSTEM…",
"life": "LIFE",
"morning": "GOOD MORNING",
"afternoon": "GOOD AFTERNOON",
"evening": "GOOD EVENING",
"systemOnline": "SYSTEM ONLINE · LIFE OS v{version}",
"systemDate": "SYSTEM DATE",
"open": "Open",
"close": "Close",
"minimize": "Minimize",
"maximize": "Maximize",
"restore": "Restore window",
"openApp": "Open {app}",
"refresh": "Refresh desktop",
"newToday": "New today entry",
"systemSettings": "System settings",
"doubleClickMaximize": "Double-click to maximize",
"wallpaperTitle": "Bing daily wallpaper: {title}",
"dailyImage": "Daily image",
"todayMemories": "{memories} memories · {preserved} preserved",
"memoryCount": "{count} memories",
"menuCloseWindow": "Close window",
"todaySummary": "{memories} memories · {preserved} preserved"
},
"wallpaper": {
"dailyImage": "Daily image"
},
"desktop": {
"heading": "DESKTOP PERSONALIZATION",
"wallpaper": "Wallpaper source",
"bing": "Bing daily image",
"calm": "Built-in background",
"custom": "Custom image URL",
"useUrl": "USE IMAGE",
"urlHint": "Use a direct HTTPS image link. Some hosts may block external images.",
"invalidUrl": "Enter a valid HTTPS image URL",
"shortcuts": "Desktop shortcuts",
"shortcutsHint": "Choose which apps appear on the desktop. All apps remain in the Life menu. Drag icons to arrange them on desktop.",
"resetPositions": "Reset icon positions",
"windowLayout": "Window layout",
"rememberOn": "Remember open windows and positions: ON",
"rememberOff": "Remember open windows and positions: OFF",
"windowHint": "Window positions and sizes are kept on this device. Mobile apps open full screen.",
"startup": "Open at startup",
"startupHint": "These apps open whenever Life OS starts, alongside any remembered windows."
},
"widgets": {
"goals": "GOAL COUNTDOWNS",
"clock": "CLOCK",
"today": "TODAY AT A GLANCE",
"actions": "QUICK ACTIONS",
"heading": "DESKTOP WIDGETS",
"hint": "Choose which widgets appear on the desktop. Drag a header to move; drag its corner to resize. Arrow keys work when either handle has focus.",
"reset": "Reset widget layout",
"memoriesToday": "memories today",
"tasksDue": "tasks due or overdue",
"newMemory": "Open Today",
"openTasks": "Open Tasks",
"openCalendar": "Open Calendar",
"move": "Move",
"resize": "Resize",
"noGoals": "No pinned goals. Open Tasks to pin a goal."
},
"prompt": {
"films": [
{
"title": "A Quiet Tuesday",
"subtitle": "Drama · Slice of Life"
},
{
"title": "The Afternoon That Stayed",
"subtitle": "Independent · Warm"
},
{
"title": "Small Light, Long Hallway",
"subtitle": "Contemplative · Drama"
},
{
"title": "Before the Notifications",
"subtitle": "Minimal · Coming of Age"
},
{
"title": "Room With Open Curtains",
"subtitle": "Slice of Life · Calm"
},
{
"title": "The Usual Way Home",
"subtitle": "Drama · Familiar"
},
{
"title": "Notes Left Unfinished",
"subtitle": "Reflective · Short Film"
},
{
"title": "A Weather of Thoughts",
"subtitle": "Quiet · Personal"
},
{
"title": "The Day Between Things",
"subtitle": "Indie · Observational"
},
{
"title": "Slow Hours, Soft Edges",
"subtitle": "Slice of Life · Dream"
},
{
"title": "A Window Still Lit",
"subtitle": "Drama · Evening"
},
{
"title": "Ordinary, Carefully Held",
"subtitle": "Human · Gentle"
},
{
"title": "One More Page Tonight",
"subtitle": "Study · Slow Burn"
},
{
"title": "The Space After Lunch",
"subtitle": "Memory · Calm"
},
{
"title": "Late Bus, Clear Mind",
"subtitle": "Urban · Reflective"
},
{
"title": "Little Things in Focus",
"subtitle": "Documentary · Life"
},
{
"title": "What the Room Remembered",
"subtitle": "Poetic · Still"
},
{
"title": "Blue Hour, No Rush",
"subtitle": "Evening · Quiet"
},
{
"title": "The Map of a Small Day",
"subtitle": "Journey · Personal"
},
{
"title": "Somewhere After Four",
"subtitle": "Indie · Warm"
},
{
"title": "A Day With No Headline",
"subtitle": "Slice of Life · Soft"
},
{
"title": "The Sound of Taking Time",
"subtitle": "Slow Cinema · Personal"
},
{
"title": "Things That Did Not Need Fixing",
"subtitle": "Drama · Gentle"
},
{
"title": "Halfway Through September",
"subtitle": "Memory · Youth"
},
{
"title": "A Small Archive of Us",
"subtitle": "Personal · Quiet"
},
{
"title": "The Night Kept Its Shape",
"subtitle": "Noir · Calm"
},
{
"title": "Unscheduled Sunshine",
"subtitle": "Light · Personal"
},
{
"title": "The Last Open Tab",
"subtitle": "Modern · Reflective"
},
{
"title": "A Place for Today",
"subtitle": "Drama · Human"
},
{
"title": "Nothing Lost to the Day",
"subtitle": "Slice of Life · Hopeful"
}
],
"lines": [
"Nothing remarkable happened. Maybe that was the point.",
"A small day, held carefully enough to remember.",
"The ordinary parts stayed longer than expected.",
"Not every chapter needs a dramatic ending.",
"Some thoughts arrived; some were allowed to pass.",
"A quiet record of being here.",
"The day moved at its own reasonable pace.",
"There was room for a little more softness.",
"Even the unfinished things belonged here.",
"The light changed, and so did the mood.",
"A scene worth keeping, without needing an explanation.",
"It was enough to notice the day as it was.",
"Time did not rush; neither did this memory.",
"The details were small, but they were real.",
"A pause became part of the story.",
"Somewhere, this became a day to keep.",
"The familiar became briefly luminous.",
"Nothing needed to be solved before nightfall.",
"A few moments stayed in focus.",
"The story was quiet, but it was still yours.",
"Today left a small mark.",
"A gentle frame around an ordinary hour.",
"The day asked for attention, not perfection.",
"This memory can rest here for now.",
"The world was loud; this page was not.",
"A few loose threads, honestly kept.",
"The simplest version of today was enough.",
"The day settled before it ended.",
"There was meaning in the in-between.",
"A private moment, safely archived."
]
},
"login": {
"title": "Your life,<br>in sync.",
"description": "Sign in with ChatGPT to open your personal Life OS and keep your memories safely synced across devices.",
"continue": "CONTINUE WITH CHATGPT",
"footnote": "PERSONAL SYSTEM · CLOUD SYNC"
},
"browser": {
"back": "Back",
"forward": "Forward",
"reload": "Reload",
"address": "Web address or search",
"placeholder": "Enter a URL or search Google",
"go": "Go",
"external": "Open in a new tab",
"frame": "Embedded web page",
"embedHint": "Some websites do not allow embedding. If the page is blank or blocked, open it in a new tab.",
"invalid": "Enter a valid web address or search."
},
"terminal": {
"title": "TERMINAL",
"hint": "Type help to see commands",
"command": "Life OS command",
"memory": "Memory",
"task": "Task",
"goal": "Goal",
"notePrompt": "Write your memory below. Ctrl/⌘ + Enter saves; Escape cancels.",
"saveNote": "Save memory",
"cancel": "Cancel",
"cancelled": "Memory creation cancelled.",
"opened": "Opened {app}.",
"empty": "No matching records.",
"memorySaved": "Memory saved: {title} · {date}",
"goalSaved": "Goal created: {title}",
"taskSaved": "Task created: {title}",
"taskCompleted": "Task completed: {title}",
"taskReopened": "Task reopened: {title}",
"invalidTitle": "Add a title within the allowed length.",
"invalidDate": "Use a real date in YYYY-MM-DD format, today, or tomorrow.",
"invalidPriority": "Priority must be high, normal, or low.",
"invalidValue": "Weather or energy value is invalid.",
"notFound": "The referenced record was not found.",
"ambiguous": "More than one item has this title. Use its ID instead.",
"memoryExists": "A memory already exists for that date. Edit it in Today or Timeline.",
"invalidOption": "Unknown option or missing option value. Type help.",
"unclosedQuote": "A quote was not closed.",
"usage": "Missing title or item number. Type help.",
"unknownApp": "Unknown App. Type help.",
"unknownCommand": "Unknown command. Type help.",
"guidedHelp": "guided setup; Enter accepts defaults, back/cancel controls the flow",
"back": "Back",
"noWizard": "No guided entry is active.",
"wizard": {
"title": "Memory title? (required; current: {value})",
"date": "Date? [{value}] — YYYY-MM-DD, today, or tomorrow",
"tags": "Tags? [{value}] — separate with commas",
"energy": "Energy? [{value}] — enter 1–5",
"mood": "Weather? [{value}] — clear / light / cloudy / rain / storm",
"location": "Place or scene? [{value}]",
"taskId": "Related task? [{value}] — enter a list number, title, or ID\n{tasks}",
"controls": "Enter keeps the displayed value; back/cancel controls the flow. Use - to clear an optional field."
},
"goalCompleted": "Goal completed: {title}",
"goalReopened": "Goal reopened: {title}",
"confirmAnswer": "Type yes to confirm or no to cancel.",
"flow": {
"title": "Title? (required; current: {value})",
"description": "Description? [{value}] (optional)",
"targetDate": "Target date? [{value}] — YYYY-MM-DD, today, or tomorrow",
"showOnDesktop": "Show countdown on desktop? [{value}] — yes/no",
"dueDate": "Due date? [{value}] — YYYY-MM-DD, today, or tomorrow",
"goalId": "Link to a goal? [{value}] — number, title, or ID\n{items}",
"priority": "Priority? [{value}] — high / normal / low",
"pick": "Choose a {kind} by number, title, date, or ID:",
"confirmDelete": "Delete {kind}: {title}? Type yes to delete or no to cancel.",
"confirmCreate": "Create {kind}: {title}? Type yes to save or no to cancel.",
"cancelled": "Operation cancelled.",
"deleted": "Deleted {kind}: {title}"
},
"welcome": "Life OS v{version} · Terminal ready.\nType help for commands or memory add to create a memory step by step.\ndate / time / status show basic information. Browser DevTools: LifeOS.help().",
"uptime": "Session uptime: {minutes}m {seconds}s",
"status": "{memories} memories · {goals} goals · {tasks} tasks",
"consoleHelp": "Open your browser DevTools console and call LifeOS.help(), LifeOS.run(\"date\"), or LifeOS.run(\"memory add\"). After memory questions, use LifeOS.note(\"your note\"); LifeOS.cancel() stops a flow.",
"consoleReady": "DevTools bridge ready. Type LifeOS.help() to see commands.",
"consoleNotePrompt": "Enter the note with LifeOS.note(\"your text\") or cancel with LifeOS.cancel().",
"noNote": "No memory note is waiting. Start with LifeOS.run(\"memory add\").",
"cleared": "Terminal output cleared.",
"pinNeedsDate": "Set a target date before showing a desktop countdown."
}
}