- i18n.svelte.ts: store with $state locale + createIntl(), t() function, formatDate/Number/RelativeTime, getDir() for RTL, async setLocale() - i18n.types.ts: TranslationKey union (codegen from en.json) - locales/en.json: 200+ strings in ICU MessageFormat - locales/pl.json: full Polish translation - locales/ar.json: partial Arabic (validates 6-form plural + RTL) - scripts/i18n-types.ts: codegen script for type-safe keys - 6 components wired: StatusBar, AgentPane, CommandPalette, SettingsDrawer, SplashScreen, ChatInput - Language selector in AppearanceSettings - App.svelte: document.dir reactive for RTL - CONTRIBUTING_I18N.md: guide for adding languages Note: currently Electrobun-only. Will extract to @agor/i18n shared package for both Tauri and Electrobun.
150 lines
5.2 KiB
JSON
150 lines
5.2 KiB
JSON
{
|
|
"sidebar.settings": "Settings",
|
|
"sidebar.addGroup": "Add group",
|
|
"sidebar.addProject": "Add project",
|
|
"sidebar.groupName": "Group name",
|
|
"sidebar.notifications": "Notifications",
|
|
"sidebar.notifCount": "{count, plural, =0 {Notifications} one {{count} notification} other {{count} notifications}}",
|
|
"sidebar.close": "Close window",
|
|
"sidebar.maximize": "Maximize window",
|
|
"sidebar.minimize": "Minimize window",
|
|
|
|
"agent.prompt.placeholder": "Ask a question or describe a task...",
|
|
"agent.prompt.send": "Send",
|
|
"agent.prompt.stop": "Stop agent",
|
|
"agent.status.running": "Running",
|
|
"agent.status.idle": "Idle",
|
|
"agent.status.done": "Done",
|
|
"agent.status.error": "Error",
|
|
"agent.status.stalled": "Stalled",
|
|
"agent.status.thinking": "Thinking",
|
|
"agent.tokens": "{count} tok",
|
|
"agent.toolCall": "Tool call",
|
|
"agent.toolResult": "Tool result",
|
|
"agent.contextMeter": "Context: {pct}%",
|
|
|
|
"terminal.shell": "Shell",
|
|
"terminal.addTab": "New tab",
|
|
"terminal.closeTab": "Close tab",
|
|
"terminal.collapse": "Collapse",
|
|
"terminal.expand": "Expand",
|
|
|
|
"settings.title": "Settings",
|
|
"settings.close": "Close settings",
|
|
"settings.appearance": "Appearance",
|
|
"settings.agents": "Agents",
|
|
"settings.security": "Security",
|
|
"settings.projects": "Projects",
|
|
"settings.orchestration": "Orchestration",
|
|
"settings.machines": "Machines",
|
|
"settings.keyboard": "Keyboard",
|
|
"settings.advanced": "Advanced",
|
|
"settings.marketplace": "Marketplace",
|
|
"settings.diagnostics": "Diagnostics",
|
|
"settings.theme": "Theme",
|
|
"settings.uiFont": "UI Font",
|
|
"settings.termFont": "Terminal Font",
|
|
"settings.termCursor": "Terminal Cursor",
|
|
"settings.scrollback": "Scrollback",
|
|
"settings.language": "Language",
|
|
"settings.editTheme": "Edit Theme",
|
|
"settings.customTheme": "+ Custom",
|
|
"settings.deleteTheme": "Delete theme",
|
|
"settings.cursorBlink": "Blink",
|
|
"settings.cursorOn": "On",
|
|
"settings.cursorOff": "Off",
|
|
"settings.scrollbackHint": "lines (100-100k)",
|
|
|
|
"statusbar.running": "running",
|
|
"statusbar.idle": "idle",
|
|
"statusbar.stalled": "stalled",
|
|
"statusbar.attention": "attention",
|
|
"statusbar.needsAttention": "Needs attention",
|
|
"statusbar.burnRate": "Burn rate",
|
|
"statusbar.activeGroup": "Active group",
|
|
"statusbar.projects": "projects",
|
|
"statusbar.session": "session",
|
|
"statusbar.tokens": "tokens",
|
|
"statusbar.cost": "cost",
|
|
"statusbar.search": "Search (Ctrl+Shift+F)",
|
|
|
|
"notifications.title": "Notifications",
|
|
"notifications.clearAll": "Clear all",
|
|
"notifications.noNotifications": "No notifications",
|
|
|
|
"files.open": "Open",
|
|
"files.save": "Save",
|
|
"files.saving": "Saving...",
|
|
"files.modified": "Modified",
|
|
"files.tooLarge": "File too large to display",
|
|
"files.empty": "Empty file",
|
|
|
|
"search.placeholder": "Search messages, tasks, comms...",
|
|
"search.noResults": "No results found",
|
|
"search.searching": "Searching...",
|
|
"search.resultsCount": "{count, plural, one {{count} result} other {{count} results}}",
|
|
|
|
"comms.channels": "Channels",
|
|
"comms.directMessages": "Direct Messages",
|
|
"comms.sendMessage": "Send message",
|
|
"comms.placeholder": "Type a message...",
|
|
|
|
"tasks.todo": "To Do",
|
|
"tasks.inProgress": "In Progress",
|
|
"tasks.review": "Review",
|
|
"tasks.done": "Done",
|
|
"tasks.blocked": "Blocked",
|
|
"tasks.addTask": "Add task",
|
|
"tasks.deleteTask": "Delete task",
|
|
"tasks.taskCount": "{count, plural, =0 {No tasks} one {{count} task} other {{count} tasks}}",
|
|
|
|
"errors.connectionFailed": "Connection failed",
|
|
"errors.sessionExpired": "Session expired",
|
|
"errors.fileNotFound": "File not found",
|
|
"errors.unhandled": "Unhandled error: {message}",
|
|
"errors.generic": "Something went wrong",
|
|
|
|
"splash.loading": "Loading...",
|
|
|
|
"common.cancel": "Cancel",
|
|
"common.confirm": "Confirm",
|
|
"common.close": "Close",
|
|
"common.save": "Save",
|
|
"common.delete": "Delete",
|
|
"common.edit": "Edit",
|
|
"common.refresh": "Refresh",
|
|
"common.add": "Add",
|
|
"common.back": "Back",
|
|
"common.noItems": "No items",
|
|
|
|
"project.name": "Project name",
|
|
"project.cwd": "Working directory (e.g. ~/code/myproject)",
|
|
"project.deleteConfirm": "Delete project \"{name}\"?",
|
|
"project.emptyGroup": "No projects in {group}",
|
|
"project.clone": "Clone",
|
|
"project.cloneBranch": "Branch name",
|
|
|
|
"palette.title": "Command Palette",
|
|
"palette.placeholder": "Type a command...",
|
|
"palette.newTerminal": "New Terminal Tab",
|
|
"palette.openSettings": "Open Settings",
|
|
"palette.searchMessages": "Search Messages",
|
|
"palette.addProject": "Add Project",
|
|
"palette.clearAgent": "Clear Agent Context",
|
|
"palette.copyCost": "Copy Session Cost",
|
|
"palette.openDocs": "Open Documentation",
|
|
"palette.changeTheme": "Change Theme",
|
|
"palette.splitH": "Split Horizontally",
|
|
"palette.splitV": "Split Vertically",
|
|
"palette.focusNext": "Focus Next Project",
|
|
"palette.focusPrev": "Focus Previous Project",
|
|
"palette.closeTab": "Close Tab",
|
|
"palette.toggleTerminal": "Toggle Terminal",
|
|
"palette.reloadPlugins": "Reload Plugins",
|
|
"palette.toggleSidebar": "Toggle Sidebar",
|
|
"palette.zoomIn": "Zoom In",
|
|
"palette.zoomOut": "Zoom Out",
|
|
"palette.addProjectDesc": "Open a project directory",
|
|
"palette.clearAgentDesc": "Reset agent session",
|
|
"palette.changeThemeDesc": "Switch between 17 themes"
|
|
}
|