mirror of
https://github.com/nexu-io/open-design.git
synced 2026-06-01 03:14:35 +07:00
Brings in 10 new main commits: routine deep-link to specific conversations (#1508), Windows resource cache fix for Orbit templates, collapsible comment side panel (#1607), routines project radio polish, Copilot logo swap, and minor UI fixes. Conflicts resolved: - router.ts: garnet's home/view + marketplace routes + main's per-project conversationId deep-link field coexist on Route union - ProjectView.tsx: garnet's isPhantomDaemonRunMessage helper + main's isStoppableAssistantMessage helper both kept - ProjectView.run-cleanup.test.tsx: accepted HEAD (garnet's phantom-row regression test); main's three new tests for finalizeActiveAssistantMessagesOnStop / clearStreamingConversationMarker / shouldClearActiveRunRefs are queued as a follow-up TODO inline.
1560 lines
84 KiB
TypeScript
1560 lines
84 KiB
TypeScript
import type { Dict } from '../types';
|
||
import { en } from './en';
|
||
|
||
export const zhTW: Dict = {
|
||
...en,
|
||
'common.cancel': '取消',
|
||
'common.save': '儲存',
|
||
'common.close': '關閉',
|
||
'common.delete': '刪除',
|
||
'common.rename': '重新命名',
|
||
'common.preview': '預覽',
|
||
'common.share': '分享',
|
||
'common.search': '搜尋',
|
||
'common.searchEllipsis': '搜尋…',
|
||
'common.loading': '載入中…',
|
||
'common.all': '全部',
|
||
'common.none': '無',
|
||
'common.default': '預設',
|
||
'common.installed': '已安裝',
|
||
'common.notInstalled': '未安裝',
|
||
'common.active': '使用中',
|
||
'common.offline': '未執行',
|
||
'common.selected': '已選',
|
||
'common.create': '建立',
|
||
'common.openPreview': '開啟預覽',
|
||
'common.exitFullscreen': '離開全螢幕',
|
||
'common.fullscreen': '全螢幕',
|
||
'common.openInNewTab': '在新分頁中開啟',
|
||
'common.exportPdf': '匯出為 PDF',
|
||
'common.exportZip': '下載為 .zip',
|
||
'common.exportHtml': '匯出為獨立 HTML',
|
||
'common.justNow': '剛剛',
|
||
'common.minutesAgo': '{n} 分鐘前',
|
||
'common.hoursAgo': '{n} 小時前',
|
||
'common.daysAgo': '{n} 天前',
|
||
'common.now': '剛剛',
|
||
'common.minutesShort': '{n}分',
|
||
'common.hoursShort': '{n}時',
|
||
'common.daysShort': '{n}天',
|
||
'common.untitled': '未命名',
|
||
|
||
'app.brand': 'Open Design',
|
||
'app.brandPill': '研究預覽版',
|
||
'app.brandSubtitle': '由 Nexu Labs 出品',
|
||
'app.welcomeLoading': '正在載入工作區…',
|
||
|
||
'settings.welcomeKicker': '歡迎',
|
||
'settings.welcomeTitle': '初始化 Open Design',
|
||
'settings.welcomeSubtitle':
|
||
'選擇你希望使用的執行方式。後續可以隨時從頂端「設定」按鈕中修改。',
|
||
'settings.kicker': '設定',
|
||
'settings.title': '執行模式與模型',
|
||
'settings.subtitle': '在本機 CLI 與 BYOK 之間選擇。API Key 只儲存在目前瀏覽器中。',
|
||
'settings.modeAria': '執行模式',
|
||
'settings.protocolAria': 'API 協定',
|
||
'settings.modeDaemon': '本機 CLI',
|
||
'settings.modeDaemonHelp': '透過本機的程式碼代理 CLI 執行',
|
||
'settings.modeDaemonOffline': '背景守護程序未執行',
|
||
'settings.modeDaemonOfflineMeta': '守護程序未執行',
|
||
'settings.modeDaemonInstalledMeta': '已安裝 {count} 個',
|
||
'settings.modeApi': 'API 提供方',
|
||
'settings.modeApiMeta': 'BYOK',
|
||
'settings.codeAgent': '程式碼代理',
|
||
'settings.codeAgentHint': '透過掃描 PATH 自動偵測,選擇你希望使用的 CLI。',
|
||
'settings.rescan': '↻ 重新掃描',
|
||
'settings.rescanTitle': '重新掃描 PATH',
|
||
'settings.rescanRunning': '掃描中...',
|
||
'settings.rescanSuccess': '掃描完成,{count} 個可用。',
|
||
'settings.rescanFailed': '掃描失敗,請檢查背景守護程序後重試。',
|
||
'settings.test': '測試',
|
||
'settings.testTitle': '傳送極小的測試提示以驗證連線',
|
||
'settings.testRunning': '正在測試連線…',
|
||
'settings.testCancel': '取消',
|
||
'settings.testSuccessApi': '已連線。{ms} 毫秒回應 — \'{sample}\'',
|
||
'settings.testSuccessCli': '{agentName} 在 {ms} 毫秒內回應 — \'{sample}\'',
|
||
'settings.testAuthFailed': '驗證失敗,請檢查 API 金鑰。',
|
||
'settings.testForbidden': '存取被拒絕,請確認帳戶、地區或組織。',
|
||
'settings.testNotFoundModel': '此端點找不到模型 \'{model}\'。',
|
||
'settings.testInvalidModelId': '模型 ID \'{model}\' 格式無效。自訂 ID 必須以字母或數字開頭,且不能包含空格。',
|
||
'settings.testInvalidBaseUrl': 'Base URL 無效或無法連線。',
|
||
'settings.testRateLimited': '供應商對測試進行了限流,設定看起來有效。',
|
||
'settings.testUpstream': '供應商回傳 {status},請稍後再試。',
|
||
'settings.testTimeout': '測試在 {ms} 毫秒後逾時。',
|
||
'settings.testAgentMissing': '{agentName} 未安裝,或不在 PATH 中。',
|
||
'settings.testAgentSpawn': '無法啟動 {agentName}:{detail}。',
|
||
'settings.testUnknown': '測試失敗:{detail}',
|
||
'settings.agentInstall.install': '安裝',
|
||
'settings.agentInstall.docs': '文件',
|
||
'settings.agentInstall.pathHint':
|
||
'如果你透過 npm 或 Homebrew 安裝了 CLI,但仍顯示為未安裝,請確認該工具的 bin 目錄已加入 Open Design daemon 繼承的 PATH(在 macOS 上,Terminal 與 GUI 應用的 PATH 可能不同)。請參閱 QUICKSTART.md(「Local agent CLI and PATH」章節)。',
|
||
'settings.agentInstall.stepOpenLinks': '在目標代理卡片上開啟「安裝」或「文件」連結。',
|
||
'settings.agentInstall.stepAuth':
|
||
'返回 Open Design 前,請先在對應 CLI 完成驗證(登入或新增 API 憑證)。',
|
||
'settings.agentInstall.stepRescan': '在此區域點擊「重新掃描」。',
|
||
'settings.agentInstall.stepSelect': '當代理顯示為已安裝後,選擇該代理卡片。',
|
||
'settings.noAgentsDetected':
|
||
'尚未偵測到任何代理。請安裝 Claude Code、Codex、Gemini CLI、OpenCode、Cursor Agent 或 Qwen 其中之一,然後點擊「重新掃描」。',
|
||
'settings.agentAuthRequired': '需要認證',
|
||
'settings.agentAuthUnknown': '認證狀態未知',
|
||
'settings.apiSection': 'API 設定',
|
||
'settings.quickFillProvider': '快速填入提供方',
|
||
'settings.customProvider': '自訂提供方',
|
||
'settings.apiKey': 'API Key',
|
||
'settings.showKey': '顯示 Key',
|
||
'settings.hideKey': '隱藏 Key',
|
||
'settings.show': '顯示',
|
||
'settings.hide': '隱藏',
|
||
'settings.model': '模型',
|
||
'settings.suggestedModelsHint':
|
||
'這些是此協定的建議模型。你的提供方可能支援不同的模型。',
|
||
'settings.baseUrl': 'Base URL',
|
||
'settings.baseUrlInvalid': '請輸入有效的公網 http:// 或 https:// URL。允許 localhost;會阻止私有網路 IP。',
|
||
'settings.azureDeploymentModel': '部署名稱',
|
||
'settings.azureDeploymentModelHint':
|
||
'對於 Azure OpenAI,此欄位會作為 /openai/deployments/<model> 中的部署名稱使用。請填入你在 Azure 中建立的部署名稱。',
|
||
'settings.apiVersion': 'API 版本',
|
||
'settings.maxTokens': '最大 tokens(可選)',
|
||
'settings.maxTokensHint':
|
||
'回應長度上限。每個 model 有調過的預設值(在 placeholder 顯示),留空即使用,輸入數字則覆蓋。',
|
||
'settings.apiHint': '請求會透過本機 daemon 代理送到你設定的 Base URL。Key 只儲存在目前瀏覽器中,並隨提供方請求送出。',
|
||
'settings.skipForNow': '暫時跳過',
|
||
'settings.getStarted': '開始使用',
|
||
'settings.envConfigure': '設定執行模式',
|
||
'settings.localCli': '本機 CLI',
|
||
'settings.anthropicApi': 'Anthropic API',
|
||
'settings.noAgentSelected': '尚未選擇代理',
|
||
'settings.language': '介面語言',
|
||
'settings.languageHint': '切換介面語言,設定僅儲存在當前瀏覽器。',
|
||
'settings.appearance': '外觀',
|
||
'settings.appearanceHint': '選擇淺色、深色或跟隨系統設定。',
|
||
'settings.themeSystem': '系統',
|
||
'settings.themeLight': '淺色',
|
||
'settings.themeDark': '深色',
|
||
'settings.modelPicker': '模型',
|
||
'settings.reasoningPicker': '推理強度',
|
||
'settings.modelPickerHint':
|
||
'當 CLI 提供 `models` 命令時會自動拉取。選擇「預設」則沿用 CLI 自身的設定;選擇「自訂」可手動輸入任何 CLI 支援的模型 id。',
|
||
'settings.cliEnvTitle': 'CLI 設定位置',
|
||
'settings.cliEnvHint':
|
||
'為打包版應用執行和 agent 偵測設定非敏感設定目錄。',
|
||
'settings.cliEnvClaudeConfigDir': 'Claude Code 設定目錄',
|
||
'settings.cliEnvClaudeBaseUrl': 'Claude proxy base URL',
|
||
'settings.cliEnvClaudeApiKey': 'Claude proxy API key',
|
||
'settings.cliEnvCodexHome': 'Codex home',
|
||
'settings.cliEnvCodexBin': 'Codex 可執行檔路徑',
|
||
'settings.cliEnvCodexBaseUrl': 'Codex/OpenAI proxy base URL',
|
||
'settings.cliEnvCodexApiKey': 'Codex/OpenAI proxy API key',
|
||
'settings.modelCustom': '自訂(在下方填寫)…',
|
||
'settings.modelCustomLabel': '自訂模型 id',
|
||
'settings.modelCustomPlaceholder': '例如 anthropic/claude-sonnet-4-6',
|
||
'settings.mediaProviders': '媒體生成提供商',
|
||
'settings.mediaProvidersHint': '圖片、影片、音訊生成的 API key。存於本機並同步到本地守護程序。',
|
||
'settings.mcpServerTitle': 'MCP 伺服器',
|
||
'settings.mcpServerHint': '將 Open Design 作為 MCP 伺服器暴露給你的編碼代理。',
|
||
'settings.externalMcpTitle': '外部 MCP',
|
||
'settings.externalMcpHint': '接入外部服務的 MCP 工具(Higgsfield、GitHub 等)。',
|
||
'settings.mediaProviderApiKey': 'API key',
|
||
'settings.mediaProviderBaseUrl': 'Base URL',
|
||
'settings.mediaProviderConfigured': '已設定',
|
||
'settings.mediaProviderUnset': '未設定',
|
||
'settings.mediaProviderClear': '清除',
|
||
'settings.mediaProviderClearConfirm': '清除已儲存的 {name} 設定?您需要再次輸入才能使用 {name}。',
|
||
'settings.mediaProviderPlaceholder': '貼上 API key',
|
||
'settings.mediaProviderBaseUrlPlaceholder': '覆蓋預設 Base URL',
|
||
'settings.mediaProviderReload': '從本機守護程序重新載入',
|
||
'settings.mediaProviderReloadError': '無法從本機守護程序重新載入媒體供應商設定。',
|
||
'settings.mediaProviderReloadSuccess': '已從本機守護程序重新載入媒體供應商設定。',
|
||
'settings.mediaProviderLoadError': '無法從本機守護程序載入媒體供應商設定。目前將使用瀏覽器中儲存的設定。',
|
||
'settings.privacy': '隱私',
|
||
'settings.privacyHint': '與 Open Design 團隊共享哪些資料',
|
||
'settings.privacyConsentKicker': '協助我們改進 Open Design',
|
||
'settings.privacyConsentLead': 'Open Design 可以將使用資料分享給我們的團隊以協助改進。包含:',
|
||
'settings.privacyConsentFooter': '你可以隨時在 設定 → 隱私 中變更任一項。我們絕不上傳你產生的產出檔案內容。',
|
||
'settings.privacyConsentShare': '協助改進',
|
||
'settings.privacyConsentDecline': '暫不',
|
||
'settings.privacyMetrics': '匿名指標',
|
||
'settings.privacyMetricsHint': '執行次數、token 用量、錯誤率、時長。不包含 prompt,不包含專案資料。',
|
||
'settings.privacyContent': '對話內容',
|
||
'settings.privacyContentHint': '你送出的 prompt 與助理的回覆(分別截斷至 8 KB / 16 KB)。API key、token、JWT、信箱、IP 與信用卡號會在傳送前自動剝離。',
|
||
'settings.privacyArtifacts': '專案產出清單',
|
||
'settings.privacyArtifactsHint': '產生檔案的名稱、類型、大小。檔案內容絕不傳送。',
|
||
'settings.privacyInstallationId': '匿名 ID',
|
||
'settings.privacyOptedOut': '已退出',
|
||
'settings.privacyDataDeletion': '刪除我的資料',
|
||
'settings.privacyDataDeletionHint': '輪換你的匿名 ID 並停止傳送。既有資料依保留政策自然過期。',
|
||
'settings.about': '關於',
|
||
'settings.aboutHint': '版本與執行環境詳情',
|
||
'settings.appVersion': '版本',
|
||
'settings.appChannel': '通道',
|
||
'settings.appRuntime': '執行環境',
|
||
'settings.appPlatform': '平台',
|
||
'settings.appArchitecture': '架構',
|
||
'settings.runtimePackaged': '已封裝應用程式',
|
||
'settings.runtimeDevelopment': '開發環境',
|
||
'settings.versionUnavailable': '守護程式離線時無法取得版本詳情。',
|
||
|
||
// MCP server settings
|
||
'settings.mcpTitle': 'MCP server',
|
||
'settings.mcpHint':
|
||
'讓其他專案中的程式碼代理(Claude Code、Cursor、VS Code、Antigravity、Zed、Windsurf)讀取您的 Open Design 專案。您可以直接將設計匯入應用程式,無需先匯出 zip。',
|
||
'settings.mcpDaemonError':
|
||
'無法連線到本地守護程序以解析安裝路徑({error})。請確認 Open Design 正在執行,然後重新開啟此面板。',
|
||
'settings.mcpBuildDaemon': '請先建置守護行程。',
|
||
'settings.mcpNodeMissing': '缺少 Node 執行檔。',
|
||
'settings.mcpBuildHint':
|
||
'缺少 apps/daemon/dist/cli.js。請執行 `pnpm --filter @open-design/daemon build` 後重新整理。',
|
||
'settings.mcpMethodCli': 'CLI 指令',
|
||
'settings.mcpInstructionCli': '在您的終端機中執行此指令。',
|
||
'settings.mcpMethodToml': 'TOML 設定檔',
|
||
'settings.mcpInstructionCodex':
|
||
'將此表格附加到 {path}。Codex CLI 與 Codex IDE 擴充功能共用相同的設定。',
|
||
'settings.mcpMethodOneClick': '一鍵安裝',
|
||
'settings.mcpInstructionCursor':
|
||
'點擊「在 Cursor 中安裝」以透過核准對話框安裝,或將此 JSON 合併至 {path}。',
|
||
'settings.mcpDeeplinkInstallCursor': '在 Cursor 中安裝',
|
||
'settings.mcpMethodJson': 'JSON 設定檔',
|
||
'settings.mcpInstructionCopilot':
|
||
'開啟 Command Palette({shortcut}),執行「MCP: Open User Configuration」,然後合併此 JSON。Copilot Chat 必須處於 Agent 模式,工具才會顯示。',
|
||
'settings.mcpInstructionAntigravity':
|
||
'在 Antigravity 中:Agent 面板「⋯」選單 → MCP Servers → Manage MCP Servers → View raw config。合併此 JSON。',
|
||
'settings.mcpInstructionZed':
|
||
'開啟 Zed Settings({shortcut}),然後將此內容合併至最上層物件。Zed 使用「context_servers」,而非「mcpServers」。',
|
||
'settings.mcpInstructionWindsurf':
|
||
'開啟 {path}(或使用 Cascade 中的 MCPs 圖示 → Configure)並合併:',
|
||
'settings.mcpCopyAria': '複製 MCP 設定片段',
|
||
'settings.mcpResolvingFailed': '# 解析路徑失敗,請見上方錯誤',
|
||
'settings.mcpLoadingPaths': '# 正在從本地守護行程載入安裝路徑…',
|
||
'settings.mcpCopied': '已複製',
|
||
'settings.mcpCopy': '複製',
|
||
'settings.mcpCursorApproval': 'Cursor 會在寫入設定檔前彈出核准對話框。',
|
||
'settings.mcpRestartNote': '重新啟動您的客戶端以套用新的 server。',
|
||
'settings.mcpRestartDetail':
|
||
'大部分編輯器只在啟動時載入 MCP server。在 Cursor / VS Code / Antigravity / Windsurf 中,您可以從 Command Palette 執行「Developer: Reload Window」,無需完整重新啟動。Zed 與 Claude Code 則需要結束並重新開啟。',
|
||
'settings.mcpCapabilitiesTitle': '您的 agent 可以執行的操作',
|
||
'settings.mcpCapabilityRead':
|
||
'讀取或搜尋專案中的任何檔案(HTML、JSX、CSS、JSON、SVG、Markdown)。',
|
||
'settings.mcpCapabilityPull':
|
||
'透過單一呼叫拉取設計套件:包含進入點檔案以及所有引用的 CSS 變數、元件與字型。',
|
||
'settings.mcpCapabilityDefault':
|
||
'預設使用您在 Open Design 中開啟的專案與檔案,因此您可以說「在我的應用程式中建置這個」,無需重新說明是哪個設計。',
|
||
'settings.mcpRunningNote':
|
||
'Open Design 必須正在執行,MCP 工具呼叫才能成功。如果您在開啟 Open Design 之前就已啟動 coding agent,請重新啟動 agent,使其能夠連線到正在執行的守護行程。',
|
||
|
||
'entry.tabDesigns': '我的設計',
|
||
'entry.tabTemplates': '範本',
|
||
'entry.tabDesignSystems': '設計系統',
|
||
'entry.tabConnectors': '連接器',
|
||
'entry.openSettingsTitle': '設定',
|
||
'entry.openSettingsAria': '開啟設定',
|
||
'entry.resizeAria': '調整側邊欄寬度',
|
||
'entry.loadingWorkspace': '正在載入工作區…',
|
||
'entry.useEverywhereTitle': '隨處使用',
|
||
'entry.useEverywhereAria': '開啟「隨處使用」指南(CLI、MCP、HTTP、Skills)',
|
||
'entry.navNewProject': '新建專案',
|
||
'entry.navHome': '主頁',
|
||
'entry.navProjects': '專案',
|
||
'entry.navDesignSystems': '設計體系',
|
||
'entry.helpAria': '說明',
|
||
'entry.helpMenuAria': '說明選單',
|
||
'entry.helpGetHelp': '在 GitHub 取得協助',
|
||
'entry.helpSubmitFeature': '提交功能建議',
|
||
'entry.helpWhatsNew': '最新動態',
|
||
'entry.helpDownloadDesktop': '下載桌面端',
|
||
'entry.githubStarLabel': 'Star',
|
||
'entry.githubStarTitle': '在 GitHub 為我們點亮 Star',
|
||
'entry.githubStarAria': '在 GitHub 為 Open Design 點亮 Star',
|
||
'entry.tabImageTemplates': '圖片範本',
|
||
'entry.tabVideoTemplates': '影片範本',
|
||
'promptTemplates.searchPlaceholder': '搜尋範本…',
|
||
'promptTemplates.countLabel': '{n} 個結果',
|
||
'promptTemplates.emptyImage': '還沒有安裝圖片 Prompt 範本。',
|
||
'promptTemplates.emptyVideo': '還沒有安裝影片 Prompt 範本。',
|
||
'promptTemplates.emptyNoMatch': '沒有符合的範本。',
|
||
'promptTemplates.attributionFooter': '改編自公開 Prompt 庫,每張卡片都連結到原作者。',
|
||
'promptTemplates.openPreviewTitle': '開啟 Prompt 與預覽',
|
||
'promptTemplates.sourcePrefix': '來源:',
|
||
'promptTemplates.fetchError': '無法載入此範本文字。',
|
||
'promptTemplates.promptLabel': 'Prompt 內容',
|
||
'promptTemplates.copyPrompt': '複製 Prompt',
|
||
'promptTemplates.copyDone': '已複製!',
|
||
'promptTemplates.modelHint': '建議模型:{model}',
|
||
'promptTemplates.openSource': '查看原始來源',
|
||
'promptTemplates.openFullscreen': '開啟全螢幕預覽',
|
||
'promptTemplates.closeFullscreen': '關閉全螢幕預覽',
|
||
'promptTemplates.allSources': '所有來源',
|
||
'promptTemplates.sourceFilterAria': '依來源篩選',
|
||
'promptTemplates.retry': '重試',
|
||
|
||
'connectors.title': '連接器',
|
||
'connectors.subtitle': '可為即時製品提供資料的本地和未來資料來源。',
|
||
'connectors.account': '帳號',
|
||
'connectors.noAccount': '未連接',
|
||
'connectors.tools': '工具',
|
||
'connectors.connect': '連接',
|
||
'connectors.disconnect': '中斷連接',
|
||
'connectors.authorizationPending': '等待授權中...',
|
||
'connectors.authorizationPendingHint': '請在已開啟的視窗中完成授權。',
|
||
'connectors.cancelAuthorization': '取消',
|
||
'connectors.configure': '設定',
|
||
'connectors.unavailable': '不可用',
|
||
'connectors.phaseStubTitle': '連接器 API 將在 Phase 3 提供;這裡是預覽入口。',
|
||
'connectors.statusAvailable': '可用',
|
||
'connectors.statusConnected': '已連接',
|
||
'connectors.statusError': '錯誤',
|
||
'connectors.statusDisabled': '已停用',
|
||
'connectors.gateTitle': '新增 Composio API 金鑰以繼續',
|
||
'connectors.gateBody': '在上方貼上金鑰並點擊「儲存金鑰」,即可載入可用的整合。',
|
||
'connectors.aboutLabel': '簡介',
|
||
'connectors.detailsLabel': '詳情',
|
||
'connectors.statusLabel': '狀態',
|
||
'connectors.category.aiAgents': 'AI 代理',
|
||
'connectors.category.aiInfrastructure': 'AI 基礎設施',
|
||
'connectors.category.accounting': '會計',
|
||
'connectors.category.admin': '管理',
|
||
'connectors.category.advertising': '廣告',
|
||
'connectors.category.analytics': '分析',
|
||
'connectors.category.automation': '自動化',
|
||
'connectors.category.cms': 'CMS',
|
||
'connectors.category.crm': 'CRM',
|
||
'connectors.category.calendar': '日曆',
|
||
'connectors.category.commerce': '電商',
|
||
'connectors.category.communication': '溝通',
|
||
'connectors.category.contacts': '聯絡人',
|
||
'connectors.category.dataPlatform': '資料平台',
|
||
'connectors.category.database': '資料庫',
|
||
'connectors.category.design': '設計',
|
||
'connectors.category.developer': '開發者工具',
|
||
'connectors.category.documentation': '文件',
|
||
'connectors.category.erp': 'ERP',
|
||
'connectors.category.education': '教育',
|
||
'connectors.category.email': '郵件',
|
||
'connectors.category.events': '活動',
|
||
'connectors.category.fieldService': '現場服務',
|
||
'connectors.category.finance': '財務',
|
||
'connectors.category.fitness': '健身',
|
||
'connectors.category.forms': '表單',
|
||
'connectors.category.gaming': '遊戲',
|
||
'connectors.category.hr': '人力資源',
|
||
'connectors.category.hospitality': '旅宿與款待',
|
||
'connectors.category.itsm': 'ITSM',
|
||
'connectors.category.integration': '整合',
|
||
'connectors.category.localization': '在地化',
|
||
'connectors.category.logistics': '物流',
|
||
'connectors.category.maps': '地圖',
|
||
'connectors.category.marketing': '行銷',
|
||
'connectors.category.media': '媒體',
|
||
'connectors.category.meetings': '會議',
|
||
'connectors.category.nonprofit': '非營利',
|
||
'connectors.category.observability': '可觀測性',
|
||
'connectors.category.payments': '付款',
|
||
'connectors.category.personal': '個人',
|
||
'connectors.category.presentations': '簡報',
|
||
'connectors.category.procurement': '採購',
|
||
'connectors.category.product': '產品',
|
||
'connectors.category.productivity': '生產力',
|
||
'connectors.category.projectManagement': '專案管理',
|
||
'connectors.category.recruiting': '招募',
|
||
'connectors.category.research': '研究',
|
||
'connectors.category.salesIntelligence': '銷售情報',
|
||
'connectors.category.scheduling': '排程',
|
||
'connectors.category.search': '搜尋',
|
||
'connectors.category.security': '安全',
|
||
'connectors.category.signing': '簽署',
|
||
'connectors.category.social': '社交',
|
||
'connectors.category.spreadsheets': '試算表',
|
||
'connectors.category.storage': '儲存',
|
||
'connectors.category.support': '支援',
|
||
'connectors.category.surveys': '問卷',
|
||
'connectors.category.tasks': '任務',
|
||
'connectors.category.timeTracking': '時間追蹤',
|
||
'connectors.category.video': '影片',
|
||
'connectors.category.whiteboard': '白板',
|
||
'connectors.categoryLabel': '類別',
|
||
'connectors.providerLabel': '提供方',
|
||
'connectors.toolsSection': '工具',
|
||
'connectors.toolsLoading': '正在載入工具…',
|
||
'connectors.noToolsAvailable': '目前沒有可用工具,連接後即可發現此整合提供的能力。',
|
||
'connectors.toolDetailsUnavailable': 'Tool details are unavailable, but this connector reports {n} tools.',
|
||
'connectors.loadMoreTools': 'Load more tools',
|
||
'connectors.openDetailsAria': '檢視 {name} 詳情',
|
||
'connectors.toolsBadgeNone': '尚無工具',
|
||
'connectors.toolsBadgeOne': '{n} 個工具',
|
||
'connectors.toolsBadgeMany': '{n} 個工具',
|
||
'connectors.searchPlaceholder': '搜尋連接器…',
|
||
'connectors.searchAriaLabel': '依名稱、提供者或工具搜尋連接器',
|
||
'connectors.searchClear': '清除搜尋',
|
||
'connectors.emptyNoMatchTitle': '沒有符合「{query}」的連接器',
|
||
'connectors.emptyNoMatchBody': '試試其他關鍵字,或清除搜尋以瀏覽完整目錄。',
|
||
'connectors.emptyNoMatchAction': '清除搜尋',
|
||
|
||
'newproj.tabPrototype': '原型',
|
||
'newproj.tabLiveArtifact': '即時成品',
|
||
'newproj.tabDeck': '投影片',
|
||
'newproj.tabTemplate': '從範本',
|
||
'newproj.tabMedia': '媒體',
|
||
'newproj.tabOther': '其它',
|
||
'newproj.titlePrototype': '新建原型',
|
||
'newproj.titleLiveArtifact': '新建即時成品',
|
||
'newproj.titleDeck': '新建投影片',
|
||
'newproj.titleTemplate': '從範本開始',
|
||
'newproj.titleImage': '新建圖片',
|
||
'newproj.titleVideo': '新建影片',
|
||
'newproj.titleAudio': '新建音訊',
|
||
'newproj.titleMedia': '新建媒體',
|
||
'newproj.titleOther': '新建專案',
|
||
'newproj.namePlaceholder': '專案名稱',
|
||
'newproj.fidelityLabel': '精細度',
|
||
'newproj.fidelityWireframe': '線框圖',
|
||
'newproj.fidelityHigh': '高擬真',
|
||
'newproj.toggleSpeakerNotes': '使用演講備忘稿',
|
||
'newproj.toggleSpeakerNotesHint': '減少投影片上的文字,重點放到備忘稿中。',
|
||
'newproj.toggleAnimations': '加入動畫效果',
|
||
'newproj.toggleAnimationsHint': '在範本基礎上疊加動畫效果(入場、懸停、過渡)。',
|
||
'newproj.targetPlatformsLabel': '目標平台',
|
||
'newproj.targetPlatformsHint':
|
||
'可多選。響應式 Web 僅涵蓋瀏覽器斷點;如需原生跨平台版本,請加入 iOS、Android、平板應用或桌面應用。',
|
||
'newproj.platform.responsive.label': '響應式 Web',
|
||
'newproj.platform.responsive.hint': '一套 Web 體驗,適配桌面、平板與行動瀏覽器',
|
||
'newproj.platform.webDesktop.label': '桌面 Web',
|
||
'newproj.platform.webDesktop.hint': '瀏覽器優先的產品或著陸頁',
|
||
'newproj.platform.mobileIos.label': 'iOS 應用',
|
||
'newproj.platform.mobileIos.hint': 'iPhone 畫框與 iOS 互動規範',
|
||
'newproj.platform.mobileAndroid.label': 'Android 應用',
|
||
'newproj.platform.mobileAndroid.hint': 'Pixel 畫框與 Material 互動規範',
|
||
'newproj.platform.tablet.label': '平板應用',
|
||
'newproj.platform.tablet.hint': '原生風格的平板體驗,支援分割畫面',
|
||
'newproj.platform.desktopApp.label': '桌面應用',
|
||
'newproj.platform.desktopApp.hint': 'macOS/Windows 應用外觀',
|
||
'newproj.surfaceOptionsLabel': '配套介面',
|
||
'newproj.includeLandingPage': '包含著陸頁',
|
||
'newproj.includeLandingPageHint':
|
||
'為廣告、候補名單、發布活動、應用下載或產品說明加入一個響應式行銷頁面。',
|
||
'newproj.includeOsWidgets': '包含系統小工具',
|
||
'newproj.includeOsWidgetsHint':
|
||
'為行動/平板應用加入平台原生的主畫面、鎖定畫面或快捷小工具。',
|
||
'newproj.includeOsWidgetsDisabledHint':
|
||
'選擇 iOS、Android 或平板應用作為目標平台時可用。',
|
||
'newproj.templateLabel': '範本',
|
||
'newproj.noTemplatesTitle': '還沒有範本',
|
||
'newproj.noTemplatesBody':
|
||
'開啟任意專案,在檔案檢視器內的「分享」選單將其儲存為範本,範本將出現在這裡。',
|
||
'newproj.savedTemplate': '已儲存的範本',
|
||
'newproj.fileSingular': '個檔案',
|
||
'newproj.filePlural': '個檔案',
|
||
'newproj.create': '建立',
|
||
'newproj.createLiveArtifact': '建立即時成品',
|
||
'newproj.createFromTemplate': '基於範本建立',
|
||
'newproj.createDisabledTitle': '請先在任意專案內透過「分享」選單將其儲存為範本。',
|
||
'newproj.importClaudeZip': '匯入 Claude Design ZIP',
|
||
'newproj.importClaudeZipTitle': '匯入 Claude Design 匯出的 .zip 檔案',
|
||
'newproj.importingClaudeZip': '正在匯入…',
|
||
'newproj.privacyFooter': '預設情況下只有你能看到自己的專案。',
|
||
'newproj.designSystem': '設計系統',
|
||
'newproj.dsNoneFreeform': '不指定 — 自由發揮',
|
||
'newproj.dsNoneSubtitleEmpty': '不使用系統 token,由你決定整體配色',
|
||
'newproj.dsNoneSubtitleSelected': '跳過系統 token,由代理自行選擇配色。',
|
||
'newproj.dsCategoryFallback': '設計系統',
|
||
'newproj.dsSearch': '搜尋設計系統…',
|
||
'newproj.dsModeAria': '選擇模式',
|
||
'newproj.dsModeSingle': '單選',
|
||
'newproj.dsModeMulti': '多選',
|
||
'newproj.dsNoneTitle': '不指定 — 自由發揮',
|
||
'newproj.dsNoneSub': '跳過系統 token,由代理自行選擇配色。',
|
||
'newproj.dsEmpty': '沒有符合「{query}」的設計系統。',
|
||
'newproj.dsFootSingular': '只作為靈感參考。',
|
||
'newproj.dsFootPlural': '只作為靈感參考。',
|
||
'newproj.dsFootClear': '清除',
|
||
'newproj.dsBadgeDefault': '預設',
|
||
'newproj.dsPrimaryFallback': '主系統',
|
||
'newproj.surfaceImage': '圖片',
|
||
'newproj.surfaceVideo': '影片',
|
||
'newproj.surfaceAudio': '音訊',
|
||
'newproj.modelLabel': '模型',
|
||
'newproj.modelSearch': '搜尋模型…',
|
||
'newproj.modelEmpty': '沒有符合的模型。',
|
||
'newproj.modelRecommended': '推薦',
|
||
'newproj.modelMissingTitle': '選擇模型',
|
||
'newproj.modelMissingSub': '為此情境選一個模型。',
|
||
'newproj.aspectLabel': '比例',
|
||
'newproj.videoLengthLabel': '時長',
|
||
'newproj.videoLengthSeconds': '{n} 秒',
|
||
'newproj.audioKindLabel': '音訊類型',
|
||
'newproj.audioKindMusic': '音樂',
|
||
'newproj.audioKindSpeech': '配音 / TTS',
|
||
'newproj.audioKindSfx': '音效',
|
||
'newproj.audioDurationLabel': '時長',
|
||
'newproj.audioDurationSeconds': '{n} 秒',
|
||
'newproj.voiceLabel': '聲音',
|
||
'newproj.voicePlaceholder': '提供商 voice id,可選',
|
||
'newproj.connectorsLabel': '連接器',
|
||
'newproj.connectorsHint': '即時製品可以從這些資料來源拉取資訊。',
|
||
'newproj.connectorsEmptyTitle': '尚未配置連接器',
|
||
'newproj.connectorsEmptyBody': '連接一個資料來源,讓即時製品載入真實資料而非佔位內容。',
|
||
'newproj.connectorsEmptyCta': '前往配置連接器 →',
|
||
'newproj.connectorsLoading': '正在載入連接器…',
|
||
'newproj.connectorsCountOne': '已連接 {n} 個',
|
||
'newproj.connectorsCountMany': '已連接 {n} 個',
|
||
'newproj.connectorsManage': '管理',
|
||
'newproj.promptTemplateLabel': '參考範本',
|
||
'newproj.promptTemplateNoneTitle': '不指定 — 自由發揮',
|
||
'newproj.promptTemplateNoneSub': '跳過範本庫,自行描述需求',
|
||
'newproj.promptTemplateRefSub': '參考範本',
|
||
'newproj.promptTemplateSearch': '搜尋範本…',
|
||
'newproj.promptTemplateEmpty': '目前沒有此類型的範本。',
|
||
'newproj.promptTemplateBodyLabel': 'Prompt(可繼續優化)',
|
||
'newproj.promptTemplateOptimizeHint':
|
||
'可隨意編輯 — 修改後的內容會作為 agent 生成時的參考。',
|
||
'newproj.promptTemplateBodyEmpty': '內容為空 — agent 不會拿到範本參考。',
|
||
|
||
'designs.subRecent': '最近',
|
||
'designs.subYours': '我的設計',
|
||
'designs.filterAria': '篩選專案',
|
||
'designs.searchPlaceholder': '搜尋…',
|
||
'designs.emptyNoProjects': '還沒有專案。請在左側建立一個。',
|
||
'designs.emptyNoMatch': '沒有符合的專案。',
|
||
'designs.deleteTitle': '刪除專案',
|
||
'designs.deleteConfirm': '確定刪除「{name}」?',
|
||
'designs.cardFreeform': '自由設計',
|
||
'designs.badgeLive': 'Live',
|
||
'designs.liveArtifactBadgesAria': '即時產物標記',
|
||
'designs.liveCount': '{n} 個即時',
|
||
'designs.statusLive': '即時產物',
|
||
'designs.statusArchived': '已封存',
|
||
'designs.statusError': '錯誤',
|
||
'designs.statusRefreshing': '重新整理中…',
|
||
'designs.statusRefreshFailed': '重新整理失敗',
|
||
'designs.statusRefreshed': '已重新整理',
|
||
'designs.status.notStarted': '未開始',
|
||
'designs.status.queued': '等待中',
|
||
'designs.status.running': '執行中',
|
||
'designs.status.awaitingInput': '等待回覆',
|
||
'designs.status.succeeded': '已完成',
|
||
'designs.status.failed': '失敗',
|
||
'designs.status.canceled': '已取消',
|
||
'designs.viewToggleAria': '檢視模式',
|
||
'designs.viewGrid': '網格檢視',
|
||
'designs.viewKanban': '看板檢視',
|
||
'designs.kanbanEmptyColumn': '暫無設計',
|
||
'designs.deleteAria': '刪除專案 {name}',
|
||
'designs.menuMore': '更多操作',
|
||
'designs.menuRename': '重新命名',
|
||
'designs.menuDelete': '刪除',
|
||
'designs.renamePrompt': '為「{name}」輸入新名稱',
|
||
'designs.selectMode': '選擇',
|
||
'designs.cancelSelect': '取消',
|
||
'designs.deleteSelected': '刪除所選',
|
||
'designs.selectedCount': '已選擇 {n} 項',
|
||
'designs.deleteSelectedConfirm': '確定刪除選取的 {n} 個專案?',
|
||
'designs.tagPrototype': '原型',
|
||
'designs.tagLiveArtifact': 'Live Artifact',
|
||
'designs.tagSlide': 'Slide',
|
||
'designs.tagMedia': 'Media',
|
||
'designs.renameTitle': '重新命名專案',
|
||
'designs.renameSave': '確定',
|
||
'designs.renameCancel': '取消',
|
||
|
||
'examples.typeLabel': '類型',
|
||
'examples.surfaceLabel': '類型',
|
||
'examples.surfaceWeb': '網頁',
|
||
'examples.surfaceImage': '圖片',
|
||
'examples.surfaceVideo': '影片',
|
||
'examples.surfaceAudio': '音訊',
|
||
'examples.scenarioLabel': '情境',
|
||
'examples.modeAll': '全部',
|
||
'examples.modePrototypeDesktop': '原型 · 桌面版',
|
||
'examples.modePrototypeMobile': '原型 · 行動版',
|
||
'examples.modeDeck': '投影片',
|
||
'examples.modeDocument': '文件與範本',
|
||
'examples.modeOrbit': 'Orbit',
|
||
'examples.modeLive': '即時',
|
||
'examples.scenarioGeneral': '通用',
|
||
'examples.scenarioEngineering': '工程',
|
||
'examples.scenarioProduct': '產品',
|
||
'examples.scenarioDesign': '設計',
|
||
'examples.scenarioMarketing': '行銷',
|
||
'examples.scenarioSales': '業務',
|
||
'examples.scenarioFinance': '財務',
|
||
'examples.scenarioHr': '人力資源',
|
||
'examples.scenarioOperations': '營運',
|
||
'examples.scenarioSupport': '支援',
|
||
'examples.scenarioLegal': '法務',
|
||
'examples.scenarioEducation': '教育',
|
||
'examples.scenarioPersonal': '個人',
|
||
'examples.emptyNoSkills': '沒有可用的技能,守護程序是否在執行?',
|
||
'examples.searchPlaceholder': '搜尋範例…',
|
||
'examples.searchAria': '依名稱搜尋範例',
|
||
'examples.emptyNoMatch': '沒有符合當前篩選的範例。',
|
||
'examples.openPreview': '⤢ 開啟預覽',
|
||
'examples.loadingPreview': '正在載入預覽…',
|
||
'examples.hoverPreview': '將滑鼠懸停以檢視預覽',
|
||
'examples.usePrompt': '使用此 Prompt',
|
||
'examples.previewModalTitle': '在彈窗中檢視完整預覽',
|
||
'examples.shareTitle': '分享此範例',
|
||
'examples.shareLoadFirst': '請先懸停以載入預覽',
|
||
'examples.unavailablePlaceholder': '此技能未附帶 {kind} 預覽範例 — 開啟查看詳情',
|
||
'examples.shareUnavailable': '此技能未附帶 {kind} 預覽範例可分享',
|
||
'examples.shareMenu': '分享 ▾',
|
||
'examples.exportPdfAllSlides': '匯出為 PDF(全部投影片)',
|
||
'examples.exportPptxLocked': '匯出為 PPTX…(請先開啟範本)',
|
||
'examples.tagSlideDeck': '投影片',
|
||
'examples.tagTemplate': '範本',
|
||
'examples.tagDesignSystem': '設計系統',
|
||
'examples.tagMobilePrototype': '行動版原型',
|
||
'examples.tagDesktopPrototype': '桌面版原型',
|
||
'examples.tagImage': '圖片',
|
||
'examples.tagVideo': '影片',
|
||
'examples.tagAudio': '音訊',
|
||
'examples.previewLabel': '預覽',
|
||
|
||
'ds.surfaceLabel': '類型',
|
||
'ds.surfaceWeb': '網頁',
|
||
'ds.surfaceImage': '圖片',
|
||
'ds.surfaceVideo': '影片',
|
||
'ds.surfaceAudio': '音訊',
|
||
'ds.searchPlaceholder': '搜尋設計系統…',
|
||
'ds.emptyNoMatch': '沒有符合的設計系統。',
|
||
'ds.badgeDefault': '預設',
|
||
'ds.preview': '預覽',
|
||
'ds.previewTitle': '預覽設計系統',
|
||
'ds.categoryAll': '全部',
|
||
'ds.categoryUncategorized': '未分類',
|
||
'ds.showcase': '展示',
|
||
'ds.tokens': 'Token',
|
||
'ds.specToggle': 'DESIGN.md',
|
||
'ds.specLoading': '正在載入 DESIGN.md…',
|
||
|
||
'avatar.title': '帳號與設定',
|
||
'avatar.localCli': '本機 CLI',
|
||
'avatar.anthropicApi': 'Anthropic API',
|
||
'avatar.useLocal': '使用本機 CLI',
|
||
'avatar.useApi': '使用 API · BYOK',
|
||
'avatar.codeAgent': '程式碼代理',
|
||
'avatar.rescan': '重新掃描 PATH',
|
||
'avatar.settings': '設定',
|
||
'avatar.backToProjects': '返回專案列表',
|
||
'avatar.metaActive': '使用中',
|
||
'avatar.metaOffline': '未執行',
|
||
'avatar.metaSelected': '已選',
|
||
'avatar.noAgentSelected': '尚未選擇代理',
|
||
'avatar.modelSection': '模型',
|
||
'avatar.modelLabel': '模型',
|
||
'avatar.reasoningLabel': '推理',
|
||
'avatar.customSuffix': '(自訂)',
|
||
|
||
'inlineSwitcher.chipTitle': '切換 CLI / 模型',
|
||
'inlineSwitcher.chipCli': '本機 CLI',
|
||
'inlineSwitcher.chipByok': '自備 Key',
|
||
'inlineSwitcher.modelDefault': '預設',
|
||
'inlineSwitcher.noAgent': '未選擇',
|
||
'inlineSwitcher.modeLabel': '模式',
|
||
'inlineSwitcher.agentLabel': '代理',
|
||
'inlineSwitcher.providerLabel': '服務商',
|
||
'inlineSwitcher.modelLabel': '模型',
|
||
'inlineSwitcher.useCli': '使用本機 CLI',
|
||
'inlineSwitcher.useByok': '使用自備 API Key',
|
||
'inlineSwitcher.daemonOffline': '守護程序離線 — 開啟設定',
|
||
'inlineSwitcher.noAgentsDetected': 'PATH 中未偵測到可用 CLI',
|
||
'inlineSwitcher.openSettingsForModel': '在「設定」中設定該服務商',
|
||
'inlineSwitcher.missingApiKey': '尚未填寫 API Key — 在「設定」中新增。',
|
||
'inlineSwitcher.openFullSettings': '開啟執行設定',
|
||
'inlineSwitcher.customSuffix': '(自訂)',
|
||
|
||
'project.backToProjects': '返回專案列表',
|
||
'project.metaFreeform': '自由設計',
|
||
'project.resizeChatPanel': '調整聊天面板大小',
|
||
'chat.tabChat': '對話',
|
||
'chat.tabComments': '評論',
|
||
'chat.commentsSoon': '評論 — 即將上線',
|
||
'chat.comments.attached': '已附加到對話',
|
||
'chat.comments.emptyAttached': '沒有已附加的評論。',
|
||
'chat.comments.saved': '已儲存的評論',
|
||
'chat.comments.emptySaved': '沒有已儲存的評論。',
|
||
'chat.comments.add': '新增',
|
||
'chat.comments.addAll': '全部新增',
|
||
'chat.comments.remove': '移除',
|
||
'chat.comments.placeholder': '評論此元素…',
|
||
'chat.comments.addSend': '新增並傳送',
|
||
'chat.comments.updateSend': '更新並傳送',
|
||
'chat.comments.removeAttachment': '移除評論附件',
|
||
'chat.comments.removeAttachmentAria': '移除 {name} 的評論附件',
|
||
'chat.conversationsTitle': '對話紀錄',
|
||
'chat.conversationsAria': '對話紀錄',
|
||
'chat.newConversation': '新建對話',
|
||
'chat.newConversationsTitle': '新建對話',
|
||
'chat.conversationsHeading': '對話',
|
||
'chat.new': '新建',
|
||
'chat.emptyConversations': '還沒有對話。',
|
||
'chat.deleteConversation': '刪除對話',
|
||
'chat.deleteConversationConfirm': '確定刪除「{title}」?該操作會刪除其訊息。',
|
||
'chat.untitledConversation': '未命名對話',
|
||
'chat.startTitle': '開始一個對話',
|
||
'chat.startHint':
|
||
'可以拖曳或貼上圖片作為視覺參考,或鍵入 @ 引用本專案中的檔案。也可以從下面的範例開始:',
|
||
'chat.fillInputTitle': '點擊填充到輸入框',
|
||
'chat.jumpToLatest': '回到最新',
|
||
'chat.scrollToLatest': '捲動到最新',
|
||
'chat.you': '你',
|
||
'chat.openFile': '開啟 {name}',
|
||
'chat.composerPlaceholder': '描述你想要的設計 — 可貼上/拖入圖片,或用 @ 引用檔案或技能…',
|
||
'chat.composerHint': '⌘/Ctrl + Enter 傳送 · 可貼上圖片 · @ 引用檔案或技能 · / 叫出指令',
|
||
'chat.cliSettingsTitle': 'CLI 與模型設定',
|
||
'chat.cliSettingsAria': '開啟 CLI 與模型設定',
|
||
'chat.attachTitle': '附加檔案(也可以貼上/拖入)',
|
||
'chat.attachAria': '附加檔案',
|
||
'chat.importTitle': '匯入素材(即將上線)',
|
||
'chat.importLabel': '匯入',
|
||
'chat.importComingSoon': '即將上線',
|
||
'chat.importSoon': '即將',
|
||
'chat.importFig': '上傳 .fig 檔案',
|
||
'chat.importGitHub': '連接 GitHub',
|
||
'chat.importWeb': '擷取網頁元素',
|
||
'chat.importFolder': '關聯程式碼目錄',
|
||
'chat.importSkills': '技能與設計系統',
|
||
'chat.importProject': '引用其它專案',
|
||
'chat.linkedFolderRemoveAria': '移除關聯資料夾 {path}',
|
||
'chat.linkedFolderNotFound': '資料夾不存在',
|
||
'chat.linkedFolderAlready': '該資料夾已關聯',
|
||
'chat.linkedFolderPickError': '無法開啟資料夾選擇器',
|
||
'chat.send': '傳送',
|
||
'chat.stop': '停止',
|
||
'chat.removeAria': '移除 {name}',
|
||
'chat.example1Title': '編輯風路演 PPT',
|
||
'chat.example1Tag': '雜誌',
|
||
'chat.example1Prompt':
|
||
'為一家正在融種子輪的設計工作室製作 10 張編輯風路演 PPT —— 瑞士格線佈局,超大號襯線標題加粗體首字下沉,等寬字體的章節編號,留白充足,整頁大圖與文字密集頁穿插出現。封面、願景、市場、產品、成長、團隊、融資需求、聯絡方式。',
|
||
'chat.example2Title': 'SaaS 分析儀表板',
|
||
'chat.example2Tag': '資料',
|
||
'chat.example2Prompt':
|
||
'為一款面向開發者的 SaaS 設計一份資訊密度高的分析儀表板 —— 頂端 KPI 條帶(含週環比變化)、兩張堆疊折線圖(MRR 與活躍工作區)、全球使用熱力圖、留存矩陣、客戶排行榜以及即時事件流。深色主題,等寬數字,迷你圖作為點綴。',
|
||
'chat.example3Title': '長捲動年度報告',
|
||
'chat.example3Tag': '編輯',
|
||
'chat.example3Prompt':
|
||
'為一家關注氣候議題的非營利機構製作互動式年度報告 —— 長捲動編輯式佈局,混合大段引言區塊、資料視覺化(堆疊柱狀圖、動態計數器、專案地點分布的等值線地圖)、攝影分隔頁、捐贈者牆,以及最終行動號召。現代襯線內文、無襯線圖表標籤、大地紙張配色。',
|
||
|
||
'preview.shareMenu': '分享 ▾',
|
||
'preview.openInNewTab': '在新分頁中開啟',
|
||
'preview.exit': '⤓ 離開',
|
||
'preview.fullscreen': '⤢ 全螢幕',
|
||
'preview.closeTitle': '關閉(Esc)',
|
||
'preview.loading': '正在載入{label}…',
|
||
'preview.errorTitle': '無法載入此範例。',
|
||
'preview.errorBody': '範例 HTML 載入失敗。請確認 Open Design 正在執行後重試。',
|
||
'preview.retry': '重試',
|
||
'preview.unavailableTitle': '此技能尚未附帶預覽範例。',
|
||
'preview.unavailableBody': '此技能用於產生 {kind} 產物 — 請在對話中執行此 Prompt 來產生。',
|
||
'preview.showSidebar': '展開{label}',
|
||
'preview.hideSidebar': '收合{label}',
|
||
|
||
'misc.savedTemplate': '已儲存的範本',
|
||
'misc.primary': '主系統',
|
||
'misc.designSystem': '設計系統',
|
||
|
||
'workspace.designFiles': '設計檔案',
|
||
'workspace.focusMode': '專注工作區',
|
||
'workspace.showChat': '顯示聊天',
|
||
'workspace.closeTab': '關閉分頁',
|
||
'workspace.deleteFileConfirm': '從專案資料夾中刪除「{name}」?',
|
||
'workspace.deleteSelectedFilesConfirm': '從專案資料夾中刪除選中的 {n} 個檔案?',
|
||
'workspace.deleteSelectedFilesPartial': '有 {n} 個檔案刪除失敗。',
|
||
'workspace.openFromDesignFiles': '請從',
|
||
'workspace.designFilesLink': '設計檔案',
|
||
'workspace.loadingSketch': '正在載入草圖…',
|
||
'designFiles.title': '設計檔案',
|
||
'designFiles.upload': '上傳圖片',
|
||
'designFiles.pasteText': '貼上為文字檔案',
|
||
'designFiles.newSketch': '新建草圖',
|
||
'designFiles.empty': '生成的設計會出現在這裡',
|
||
'designFiles.refresh': '重新整理',
|
||
'designFiles.delete': '刪除',
|
||
'designFiles.searchPlaceholder': '搜尋檔案…',
|
||
'designFiles.up': '上一層',
|
||
'designFiles.back': '返回',
|
||
'designFiles.crumbs': '專案',
|
||
'designFiles.rowMenu': '列選單',
|
||
'designFiles.openInTab': '在分頁中開啟',
|
||
'designFiles.download': '下載',
|
||
'designFiles.downloadSelected': '下載選中的 {n} 個檔案為 ZIP',
|
||
'designFiles.deleteSelected': '刪除 {n} 個',
|
||
'designFiles.clearSelection': '取消選擇',
|
||
'designFiles.selectPage': '全選此頁',
|
||
'designFiles.selectAll': '全選',
|
||
'designFiles.dropTitle': '⤓ 把檔案拖到這裡',
|
||
'designFiles.dropDesc': '圖片、文件、參考資料或資料夾 — 智慧體都會用作上下文。',
|
||
'designFiles.upload.title': '上傳一張圖片',
|
||
'designFiles.paste.title': '將文字貼上為檔案',
|
||
'designFiles.upload.label': '上傳',
|
||
'designFiles.paste.label': '貼上',
|
||
'designFiles.previewOpen': '開啟',
|
||
'designFiles.previewClose': '關閉預覽',
|
||
'designFiles.modified': '修改於 {time} · {size}',
|
||
'designFiles.weeksAgo': '{n} 週前',
|
||
'designFiles.groupBy': '分組方式',
|
||
'designFiles.groupByKind': '類型',
|
||
'designFiles.groupByModified': '修改時間',
|
||
'designFiles.expandGroup': '展開',
|
||
'designFiles.collapseGroup': '折疊',
|
||
'designFiles.sectionPages': '頁面',
|
||
'designFiles.sectionScripts': '腳本',
|
||
'designFiles.sectionImages': '圖片',
|
||
'designFiles.sectionSketches': '草圖',
|
||
'designFiles.sectionLiveArtifacts': '即時成品',
|
||
'designFiles.sectionOther': '其它',
|
||
'designFiles.modifiedToday': '今天',
|
||
'designFiles.modifiedYesterday': '昨天',
|
||
'designFiles.modifiedPrevious7Days': '最近 7 天',
|
||
'designFiles.modifiedPrevious30Days': '最近 30 天',
|
||
'designFiles.modifiedOlder': '更早',
|
||
'designFiles.showMore': '再顯示 {n} 個',
|
||
'designFiles.kindHtml': 'HTML 頁面',
|
||
'designFiles.kindImage': '圖片',
|
||
'designFiles.kindSketch': '草圖',
|
||
'designFiles.kindText': '文字',
|
||
'designFiles.kindCode': '腳本',
|
||
'designFiles.kindPdf': 'PDF',
|
||
'designFiles.kindDocument': '文件',
|
||
'designFiles.kindPresentation': '簡報',
|
||
'designFiles.kindSpreadsheet': '試算表',
|
||
'designFiles.kindLiveArtifact': '即時成品',
|
||
'designFiles.kindBinary': '二進位',
|
||
'designFiles.colName': '名稱',
|
||
'designFiles.colKind': '類型',
|
||
'designFiles.colModified': '修改時間',
|
||
'designFiles.perPage': '顯示',
|
||
'designFiles.all': '全部',
|
||
'designFiles.prev': '上一頁',
|
||
'designFiles.next': '下一頁',
|
||
'designFiles.jumpToPage': '跳轉到頁面',
|
||
'designFiles.pageInfo': '{start}–{end} / {total}',
|
||
'quickSwitcher.placeholder': '開啟檔案…',
|
||
'quickSwitcher.empty': '此專案中沒有檔案',
|
||
'quickSwitcher.noMatches': '無符合項目',
|
||
'quickSwitcher.navigate': '導覽',
|
||
'quickSwitcher.open': '開啟',
|
||
'quickSwitcher.close': '關閉',
|
||
'pasteDialog.title': '貼上文字',
|
||
'pasteDialog.hint': '將儲存到專案資料夾中,名稱隨你定。',
|
||
'pasteDialog.fileNameLabel': '檔案名稱',
|
||
'pasteDialog.namePlaceholder': 'notes.txt',
|
||
'pasteDialog.contentLabel': '內容',
|
||
'pasteDialog.contentPlaceholder': '在此貼上任何內容…',
|
||
'pasteDialog.save': '儲存',
|
||
'pasteDialog.cancel': '取消',
|
||
'sketch.save': '儲存草圖',
|
||
'sketch.cancel': '取消',
|
||
'sketch.saving': '儲存中…',
|
||
'sketch.tooltipDirty': '尚未儲存',
|
||
'sketch.tooltipClean': '已儲存',
|
||
'fileViewer.empty': '請選擇一個檔案檢視。',
|
||
'fileViewer.loading': '載入中…',
|
||
'fileViewer.exportPptx': '匯出為 PPTX',
|
||
'fileViewer.openInNewTab': '在新分頁中開啟',
|
||
'fileViewer.copyPath': '複製路徑',
|
||
'fileViewer.copied': '已複製!',
|
||
'fileViewer.share': '分享',
|
||
'fileViewer.binaryMeta': '二進位 · {size}',
|
||
'fileViewer.binaryNote': '二進位檔案({size} 位元組)。請下載或在本機開啟檢視。',
|
||
'fileViewer.pdfMeta': 'PDF · {size}',
|
||
'fileViewer.documentMeta': '文件',
|
||
'fileViewer.presentationMeta': '簡報',
|
||
'fileViewer.spreadsheetMeta': '試算表',
|
||
'fileViewer.previewUnavailable': '無法產生預覽,請下載或開啟檔案檢視。',
|
||
'fileViewer.download': '下載',
|
||
'fileViewer.open': '開啟',
|
||
'fileViewer.imageMeta': '圖片 · {size}',
|
||
'fileViewer.reactMeta': 'React 元件 · {size}',
|
||
'fileViewer.sketchMeta': '草圖 · {size}',
|
||
'fileViewer.markdownStreamingMeta': '正在串流預覽…',
|
||
'fileViewer.markdownErrorMeta': '預覽可能不完整(產生錯誤)。',
|
||
'fileViewer.markdownStreamingStatus': '正在串流產生…顯示部分 Markdown。',
|
||
'fileViewer.markdownErrorStatus': '產生錯誤。正在顯示最後可用內容。',
|
||
'fileViewer.videoMeta': '影片 · {size}',
|
||
'fileViewer.audioMeta': '音訊 · {size}',
|
||
'fileViewer.reload': '重新載入',
|
||
'fileViewer.reloadDisk': '從磁碟重新載入',
|
||
'fileViewer.copy': '複製',
|
||
'fileViewer.copyTitle': '複製檔案內容',
|
||
'fileViewer.saveDisabled': '儲存(唯讀預覽)',
|
||
'fileViewer.save': '儲存',
|
||
'fileViewer.preview': '預覽',
|
||
'fileViewer.source': '原始碼',
|
||
'fileViewer.tweaks': '調整',
|
||
'fileViewer.comment': '評論',
|
||
'fileViewer.edit': '編輯',
|
||
'fileViewer.draw': '繪製',
|
||
'manualEdit.layers': "Layers",
|
||
'manualEdit.editableCount': "{count} editable",
|
||
'manualEdit.title': "Manual editor",
|
||
'manualEdit.selectLayer': "Select a layer",
|
||
'manualEdit.empty': "Click an element in the preview or choose a layer.",
|
||
'manualEdit.noClass': "no class",
|
||
'manualEdit.tabsAria': "Manual edit tabs",
|
||
'manualEdit.tabContent': "Content",
|
||
'manualEdit.tabStyle': "Style",
|
||
'manualEdit.tabAttributes': "Attributes",
|
||
'manualEdit.tabHtml': "Html",
|
||
'manualEdit.tabSource': "Source",
|
||
'manualEdit.attributesJson': "Attributes JSON",
|
||
'manualEdit.selectedHtml': "Selected element HTML",
|
||
'manualEdit.fullSource': "Full artifact source",
|
||
'manualEdit.applyContent': "Apply Content",
|
||
'manualEdit.applyStyle': "Apply Style",
|
||
'manualEdit.applyAttributes': "Apply Attributes",
|
||
'manualEdit.applyHtml': "Apply HTML",
|
||
'manualEdit.applySource': "Apply Source",
|
||
'manualEdit.invalidAttributes': "Invalid attributes JSON.",
|
||
'manualEdit.changes': "Changes",
|
||
'manualEdit.undo': "Undo",
|
||
'manualEdit.redo': "Redo",
|
||
'manualEdit.noChanges': "No manual edits yet.",
|
||
'manualEdit.imageUrl': "Image URL",
|
||
'manualEdit.altText': "Alt text",
|
||
'manualEdit.label': "Label",
|
||
'manualEdit.text': "Text",
|
||
'manualEdit.href': "Href",
|
||
'manualEdit.textColor': "Text color",
|
||
'manualEdit.background': "Background",
|
||
'manualEdit.fontSize': "Font size",
|
||
'manualEdit.weight': "Weight",
|
||
'manualEdit.align': "Align",
|
||
'manualEdit.padding': "Padding",
|
||
'manualEdit.margin': "Margin",
|
||
'manualEdit.radius': "Radius",
|
||
'manualEdit.border': "Border",
|
||
'manualEdit.width': "Width",
|
||
'manualEdit.minHeight': "Min height",
|
||
'fileViewer.zoomOut': '縮小',
|
||
'fileViewer.zoomIn': '放大',
|
||
'fileViewer.resetZoom': '重設縮放',
|
||
'fileViewer.viewportAria': 'Preview viewport',
|
||
'fileViewer.viewportDesktop': 'Desktop',
|
||
'fileViewer.viewportDesktopTitle': 'Full-width desktop preview',
|
||
'fileViewer.viewportTablet': 'Tablet',
|
||
'fileViewer.viewportTabletTitle': 'Tablet preview at 820 × 1180 (modern portrait baseline)',
|
||
'fileViewer.viewportMobile': 'Mobile',
|
||
'fileViewer.viewportMobileTitle': 'Mobile preview at 390 × 844',
|
||
'fileViewer.reloadAria': '重新載入',
|
||
'fileViewer.previousSlide': '上一張',
|
||
'fileViewer.nextSlide': '下一張',
|
||
'fileViewer.slideNavAria': '投影片導覽',
|
||
'fileViewer.present': '簡報',
|
||
'fileViewer.presentInTab': '在當前分頁',
|
||
'fileViewer.presentFullscreen': '全螢幕',
|
||
'fileViewer.presentNewTab': '新分頁',
|
||
'fileViewer.exitPresentation': '離開簡報',
|
||
'fileViewer.shareLabel': '分享',
|
||
'fileViewer.exportPdf': '匯出為 PDF',
|
||
'fileViewer.exportPdfAllSlides': '匯出為 PDF(全部投影片)',
|
||
'fileViewer.exportPptxBusy': '請等待當前任務完成。',
|
||
'fileViewer.exportPptxHint': '請求代理將此設計轉換為 PPTX。',
|
||
'fileViewer.exportPptxNa': '此處暫不支援匯出 PPTX。',
|
||
'fileViewer.exportZip': '下載為 .zip',
|
||
'fileViewer.exportHtml': '匯出為獨立 HTML',
|
||
'fileViewer.exportMd': '匯出為 Markdown',
|
||
'fileViewer.exportImage': '匯出為圖片',
|
||
'fileViewer.exportImageFailed': '圖片擷取失敗,請重試或使用瀏覽器的截圖工具。',
|
||
'fileViewer.exportJsx': '匯出為 JSX',
|
||
'fileViewer.exportReactHtml': '匯出預覽 HTML',
|
||
'fileViewer.saveAsTemplate': '儲存為範本…',
|
||
'fileViewer.savingTemplate': '正在儲存範本…',
|
||
'fileViewer.savedTemplate': '已儲存為「{name}」',
|
||
'fileViewer.savedTemplateFail': '儲存範本失敗,請重試。',
|
||
'fileViewer.templateNamePrompt': '範本名稱',
|
||
'fileViewer.templateNameDefault': '未命名範本',
|
||
'fileViewer.templateDescPrompt': '簡短描述(可選 — 這個範本用於什麼情境?)',
|
||
'liveArtifact.refresh.button': '重新整理',
|
||
'liveArtifact.refresh.buttonTitle': '刷新此 live artifact',
|
||
'liveArtifact.refresh.loadingTitle': '正在載入 live artifact…',
|
||
'liveArtifact.refresh.noSourceTitle': '尚無已核准的唯讀重新整理來源。',
|
||
'liveArtifact.refresh.running': '重新整理中…',
|
||
'liveArtifact.refresh.runningMessage': '正在重新整理資料和預覽,可能需要一點時間。',
|
||
'liveArtifact.refresh.runningAction': '重新整理成功前會繼續顯示上一次預覽。',
|
||
'liveArtifact.refresh.successOne': '重新整理完成,資料已更新。',
|
||
'liveArtifact.refresh.successMany': '重新整理完成,資料已更新。',
|
||
'liveArtifact.refresh.successAction': '預覽已使用最新提交的資料重新載入。',
|
||
'liveArtifact.refresh.previousFailure': '上次重新整理失敗:{message}',
|
||
'liveArtifact.refresh.failureAction': '請檢查「重新整理紀錄」,修復來源或權限問題後重試。',
|
||
'liveArtifact.refresh.networkFailure': '重新整理請求失敗。請檢查網路連線後重試。',
|
||
'liveArtifact.refresh.genericFailure': '重新整理失敗。',
|
||
'liveArtifact.refresh.statusNever': '不可重新整理',
|
||
'liveArtifact.refresh.statusReady': '可重新整理',
|
||
'liveArtifact.refresh.statusSucceeded': '已是最新',
|
||
'liveArtifact.refresh.statusFailed': '重新整理失敗',
|
||
'fileViewer.deployToVercel': '部署到 Vercel',
|
||
'fileViewer.redeployToVercel': '重新部署',
|
||
'fileViewer.deployingToVercel': '正在部署到 Vercel…',
|
||
'fileViewer.deployProviderLabel': '部署平台',
|
||
'fileViewer.vercelProvider': 'Vercel',
|
||
'fileViewer.cloudflarePagesProvider': 'Cloudflare Pages',
|
||
'fileViewer.deployToProvider': '部署到 {provider}',
|
||
'fileViewer.redeployToProvider': '重新部署到 {provider}',
|
||
'fileViewer.deployingToProvider': '正在部署到 {provider}…',
|
||
'fileViewer.preparingPublicLink': '正在準備公開連結…',
|
||
'fileViewer.copyDeployLink': '複製連結',
|
||
'fileViewer.deployModalTitle': '部署',
|
||
'fileViewer.deployModalSubtitle': '使用所選平台帳號部署目前 HTML 預覽。',
|
||
'fileViewer.vercelToken': 'Vercel token',
|
||
'fileViewer.vercelTokenGetLink': '取得 Vercel token',
|
||
'fileViewer.vercelTokenPlaceholder': '貼上你的 Vercel token',
|
||
'fileViewer.vercelTokenReuseHint': '將使用已儲存的代碼。輸入新代碼可替換。',
|
||
'fileViewer.vercelTokenRequired': '請先輸入並儲存 Vercel 代碼。',
|
||
'fileViewer.cloudflareApiToken': 'Cloudflare API 代碼',
|
||
'fileViewer.cloudflareApiTokenGetLink': '取得 Cloudflare API 代碼',
|
||
'fileViewer.cloudflareApiTokenPlaceholder': '貼上你的 Cloudflare API 代碼',
|
||
'fileViewer.cloudflareApiTokenReuseHint': '將使用已儲存的 Cloudflare API 代碼。輸入新代碼可替換。',
|
||
'fileViewer.cloudflareApiTokenRequired': '請先輸入並儲存 Cloudflare API 代碼。',
|
||
'fileViewer.cloudflareApiTokenScopeHint': '代碼需要 Account: Cloudflare Pages: Edit 權限,以及帳號讀取權限。',
|
||
'fileViewer.vercelTeamId': '團隊 ID',
|
||
'fileViewer.vercelTeamSlug': '團隊標記',
|
||
'fileViewer.cloudflareAccountId': '帳戶 ID',
|
||
'fileViewer.cloudflareAccountIdHint': '必填。可在 Cloudflare 控制台中找到帳戶 ID。',
|
||
'fileViewer.cloudflareAccountIdRequired': '請先輸入並儲存 Cloudflare 帳戶 ID。',
|
||
'fileViewer.cloudflareZoneLabel': 'Domain',
|
||
'fileViewer.cloudflareZonePlaceholder': 'Save Cloudflare settings to load domains',
|
||
'fileViewer.cloudflareZoneRequired': 'Select a Cloudflare domain first.',
|
||
'fileViewer.cloudflareZonesLoading': 'Loading Cloudflare domains…',
|
||
'fileViewer.cloudflareZonesRefresh': 'Refresh domains',
|
||
'fileViewer.cloudflareZonesLoadFailed': 'Could not load Cloudflare domains.',
|
||
'fileViewer.cloudflareZonesEmpty': 'No active full Cloudflare domains were found for this account.',
|
||
'fileViewer.cloudflareDomainPrefixLabel': 'Subdomain prefix',
|
||
'fileViewer.cloudflareDomainPrefixPlaceholder': 'demo',
|
||
'fileViewer.cloudflareDomainPrefixInvalid': 'Use one DNS label only: lowercase letters, numbers, and hyphens.',
|
||
'fileViewer.cloudflareHostnamePreview': 'Custom domain preview: {hostname}',
|
||
'fileViewer.cloudflareCustomDomainHint': 'Optional: choose a Cloudflare domain and prefix to bind a custom subdomain. pages.dev will still be available.',
|
||
'fileViewer.cloudflarePagesDevLinkLabel': 'pages.dev URL',
|
||
'fileViewer.cloudflareCustomDomainLinkLabel': 'Custom domain',
|
||
'fileViewer.optional': '可選',
|
||
'fileViewer.vercelPreviewOnly': '目前僅部署 Preview。',
|
||
'fileViewer.cloudflarePagesPreviewHint': 'Cloudflare Pages 使用 Direct Upload。',
|
||
'fileViewer.savingConfig': '儲存中…',
|
||
'fileViewer.deployConfigSaveFailed': '儲存 Vercel 設定失敗。',
|
||
'fileViewer.deployFailed': '部署失敗,請檢查 Vercel 設定後重試。',
|
||
'fileViewer.deployProviderConfigSaveFailed': '無法儲存 {provider} 設定。',
|
||
'fileViewer.deployProviderFailed': '{provider} 部署失敗。請檢查設定後重試。',
|
||
'fileViewer.deployResultLabel': '部署連結',
|
||
'fileViewer.deployLinkReady': '已就緒',
|
||
'fileViewer.deployLinkPreparingLabel': '公開連結準備中',
|
||
'fileViewer.deployLinkDelayed': '站點已部署,平台仍在準備公開連結。',
|
||
'fileViewer.deployLinkFailed': '自訂網域失敗',
|
||
'fileViewer.deployLinkProtectedLabel': '部署存取保護已開啟',
|
||
'fileViewer.deployLinkProtected': '站點已部署,但此預覽連結要求登入後才能存取。請關閉 Deployment Protection 或使用自訂網域。',
|
||
'fileViewer.retryLink': '立即重試',
|
||
|
||
'questionForm.submit': '提交',
|
||
'questionForm.skip': '跳過',
|
||
'questionForm.locked': '已回答',
|
||
|
||
'conv.switch': '切換對話',
|
||
'conv.label': '對話',
|
||
'conv.heading': '對話紀錄',
|
||
'conv.new': '+ 新建',
|
||
'conv.empty': '還沒有對話。',
|
||
'conv.untitled': '未命名對話',
|
||
'conv.renameTooltip': '雙擊重新命名',
|
||
'conv.delete': '刪除對話',
|
||
'conv.deleteConfirm': '確定刪除「{title}」?該操作會刪除其訊息。',
|
||
|
||
'agentPicker.label': '代理',
|
||
'agentPicker.modeChoose': '選擇執行模式',
|
||
'agentPicker.localCli': '本機 CLI',
|
||
'agentPicker.daemonOff': '守護程序未執行',
|
||
'agentPicker.byok': 'API · BYOK',
|
||
'agentPicker.selectAgent': '選擇已偵測到的程式碼代理 CLI',
|
||
'agentPicker.noAgents': 'PATH 中未發現代理',
|
||
'agentPicker.notInstalled': '未安裝',
|
||
'agentPicker.rescan': '重新掃描 PATH 中的代理',
|
||
|
||
'tool.openInTab': '在分頁中開啟 {name}',
|
||
'tool.open': '開啟',
|
||
'tool.todos': '待辦',
|
||
'tool.write': '寫入',
|
||
'tool.edit': '編輯',
|
||
'tool.read': '讀取',
|
||
'tool.bash': 'Bash',
|
||
'tool.glob': 'Glob',
|
||
'tool.grep': 'Grep',
|
||
'tool.fetch': '擷取',
|
||
'tool.search': '搜尋',
|
||
'tool.lines': '{n} 行',
|
||
'tool.changeSingular': '處變更',
|
||
'tool.changePlural': '處變更',
|
||
'tool.in': '於 {path}',
|
||
'tool.hide': '隱藏',
|
||
'tool.output': '輸出',
|
||
'tool.running': '執行中…',
|
||
'tool.error': '錯誤',
|
||
'tool.done': '完成',
|
||
|
||
'assistant.role': '助手',
|
||
'assistant.workingLabel': '執行中',
|
||
'assistant.doneLabel': '已完成',
|
||
'assistant.feedbackPrompt': '意見回饋',
|
||
'assistant.feedbackPositive': '有幫助',
|
||
'assistant.feedbackNegative': '沒有幫助',
|
||
'assistant.feedbackReasonTitle': '選擇原因',
|
||
'assistant.feedbackReasonPositiveMatched': '理解了我的需求',
|
||
'assistant.feedbackReasonPositiveVisual': '視覺效果滿意',
|
||
'assistant.feedbackReasonPositiveUseful': '結構有幫助',
|
||
'assistant.feedbackReasonPositiveEasy': '方便繼續修改',
|
||
'assistant.feedbackReasonNegativeMissed': '沒有理解需求',
|
||
'assistant.feedbackReasonNegativeVisual': '視覺效果不理想',
|
||
'assistant.feedbackReasonNegativeIncomplete': '產物不完整',
|
||
'assistant.feedbackReasonNegativeHard': '不方便使用',
|
||
'assistant.feedbackReasonOther': '其他',
|
||
'assistant.feedbackReasonPlaceholder': '補充說明...',
|
||
'assistant.feedbackReasonSubmit': '提交',
|
||
'assistant.emptyResponseLabel': '無輸出',
|
||
'assistant.emptyResponseMessage': '服務商結束了請求,但沒有返回文字或設計產物。請嘗試更換模型或服務商、檢查額度,或重試。',
|
||
'assistant.outTokens': '{n} 輸出',
|
||
'assistant.producedFiles': '本輪產出的檔案',
|
||
'assistant.openFile': '開啟',
|
||
'assistant.downloadFile': '下載',
|
||
'assistant.unfinishedLabel': '已停止,仍有未完成任務',
|
||
'assistant.unfinishedSummary': '剩餘 {n} 個任務',
|
||
'assistant.unfinishedMore': '還有 {n} 個',
|
||
'assistant.continueRemaining': '繼續剩餘任務',
|
||
'assistant.thinking': '思考中',
|
||
'assistant.systemReminder': '系統提示',
|
||
'assistant.waitingFirstOutput': '等待首批輸出中',
|
||
'assistant.statusBootingAgent': '正在啟動代理',
|
||
'assistant.statusStarting': '啟動中',
|
||
'assistant.statusRequesting': '正在傳送請求',
|
||
'assistant.statusThinking': '思考中',
|
||
'assistant.statusStreaming': '串流輸出中',
|
||
'assistant.slowHint':
|
||
'耗時比平時更久。一般 5–10 秒內會出現表單,可以「停止」後重新表達。',
|
||
'assistant.verbEditing': '編輯',
|
||
'assistant.verbWriting': '寫入',
|
||
'assistant.verbReading': '讀取',
|
||
'assistant.verbSearching': '搜尋',
|
||
'assistant.verbRunning': '執行',
|
||
'assistant.verbTodos': '待辦',
|
||
'assistant.verbFetching': '擷取',
|
||
'assistant.verbCalling': '呼叫',
|
||
|
||
'qf.answered': '已回答',
|
||
'qf.choose': '請選擇…',
|
||
'qf.required': '必填',
|
||
'qf.lockedSubmitted': '答案已傳送,代理將在本次工作階段後續使用。',
|
||
'qf.lockedPrev': '該表單來自先前的對話。',
|
||
'qf.hint': '挑選合適的選項;可選項可以跳過,代理會使用合理的預設值。',
|
||
'qf.submitDefault': '傳送答案',
|
||
'qf.submitDisabledTitle': '請先填寫必填項',
|
||
'qf.submitTitle': '傳送答案',
|
||
'qf.cardSelected': '已選',
|
||
'qf.cardRefs': '參考:',
|
||
'qf.cardSampleText': '飛燕環宇 · 0123',
|
||
|
||
'sketch.toolSelect': '選擇(佔位)',
|
||
'sketch.toolPen': '鋼筆',
|
||
'sketch.toolText': '文字',
|
||
'sketch.toolRect': '矩形',
|
||
'sketch.toolArrow': '箭頭',
|
||
'sketch.toolEraser': '橡皮擦',
|
||
'sketch.color': '顏色',
|
||
'sketch.strokeSize': '描邊粗細',
|
||
'sketch.undo': '復原',
|
||
'sketch.clear': '清除',
|
||
'sketch.close': '關閉',
|
||
'sketch.closeConfirm': '關閉草圖並放棄未儲存的變更嗎?',
|
||
'sketch.textPrompt': '請輸入文字:',
|
||
'sketch.textModalTitle': '新增文字',
|
||
|
||
'critiqueTheater.userFacingName': '設計評審團',
|
||
'critiqueTheater.roleDesigner': '設計師',
|
||
'critiqueTheater.roleCritic': '評審',
|
||
'critiqueTheater.roleBrand': '品牌',
|
||
'critiqueTheater.roleA11y': '無障礙',
|
||
'critiqueTheater.roleCopy': '文案',
|
||
'critiqueTheater.roundLabel': '第 {n} 輪 / 共 {m} 輪',
|
||
'critiqueTheater.mustFix': '{n} 項必改',
|
||
'critiqueTheater.composite': '綜合分',
|
||
'critiqueTheater.threshold': '門檻',
|
||
'critiqueTheater.consensus': '共識',
|
||
'critiqueTheater.interrupt': '中斷',
|
||
'critiqueTheater.interrupting': '中斷中…',
|
||
'critiqueTheater.interrupted': '已中斷',
|
||
'critiqueTheater.interruptedSummary': '已於第 {round} 輪中斷 · 最佳綜合分 {composite}',
|
||
'critiqueTheater.degradedHeading': '本次評審不可用',
|
||
'critiqueTheater.degradedReasonMalformed': '評審區塊格式錯誤,剖析器已拒絕。',
|
||
'critiqueTheater.degradedReasonOversize': '評審輸出超出了安全位元組預算。',
|
||
'critiqueTheater.degradedReasonAdapter': '介接器 {adapter} 不支援評審協定。',
|
||
'critiqueTheater.degradedReasonProtocol': '介接器 {adapter} 使用了不支援的協定版本。',
|
||
'critiqueTheater.degradedReasonMissingArtifact': '執行結束但未產出最終成果。',
|
||
'critiqueTheater.replay': '回放',
|
||
'critiqueTheater.replaySpeed': '回放速度',
|
||
'critiqueTheater.readOnly': '唯讀',
|
||
'critiqueTheater.shippedSummary': '已於第 {round} 輪發布 · 綜合分 {composite}',
|
||
'critiqueTheater.shippedBadge': '已發布',
|
||
'critiqueTheater.belowThresholdBadge': '低於門檻',
|
||
'critiqueTheater.timedOutBadge': '已逾時',
|
||
'critiqueTheater.failedHeading': '執行失敗',
|
||
'critiqueTheater.failedReasonCliExit': '智慧體 CLI 在評審完成前異常結束。',
|
||
'critiqueTheater.failedReasonPerRoundTimeout': '某一輪超出了時間預算。',
|
||
'critiqueTheater.failedReasonTotalTimeout': '整次執行超出了總時間預算。',
|
||
'critiqueTheater.failedReasonOrchestrator': '編排器內部錯誤。',
|
||
'critiqueTheater.transcriptEmpty': '尚無可回放的記錄。執行一次評審即可記錄。',
|
||
'critiqueTheater.transcriptLoading': '正在載入會談記錄…',
|
||
'critiqueTheater.transcriptError': '無法載入會談記錄:{error}',
|
||
'critiqueTheater.replaySpeedPaused': '暫停',
|
||
'critiqueTheater.replaySpeedInstant': '瞬時',
|
||
'critiqueTheater.replaySpeedLive': '即時',
|
||
'critiqueTheater.replaySpeedFast': '快進',
|
||
|
||
'pet.title': '寵物',
|
||
'pet.tabBuiltIn': '內建',
|
||
'pet.tabBuiltInHint': 'Open Design 內建的精選寵物 — 一鍵領養。',
|
||
'pet.builtInEmpty': '目前無法載入內建寵物。等本地服務恢復後,重新整理「社群」頁籤再試。',
|
||
'pet.tabCustom': '自訂',
|
||
'pet.tabCustomHint': '自己命名、選符號或上傳精靈圖。',
|
||
'pet.tabCommunity': '社群',
|
||
'pet.tabCommunityHint': '來自 Codex 的孵化寵物 — 領養或用 AI 生成新的。',
|
||
'pet.tabsAria': '寵物來源',
|
||
'pet.subtitle': '領養一隻小寵物,讓它陪你一起設計。',
|
||
'pet.navTitle': '寵物',
|
||
'pet.navHint': '領養與自訂',
|
||
'pet.adopt': '領養',
|
||
'pet.adoptedBadge': '已領養',
|
||
'pet.adoptCallout': '領養一隻寵物',
|
||
'pet.changePet': '更換寵物',
|
||
'pet.wake': '喚醒',
|
||
'pet.tuck': '收起',
|
||
'pet.wakeTitle': '喚醒寵物 — 顯示浮窗。',
|
||
'pet.tuckTitle': '收起寵物 — 隱藏浮窗。',
|
||
'pet.settingsTitle': '開啟寵物設定',
|
||
'pet.useCustom': '使用我的寵物',
|
||
'pet.customTitle': '自訂你的寵物',
|
||
'pet.customHint': '挑一個名字、表情和主題色,浮窗會即時更新。',
|
||
'pet.customGreetingPlaceholder': '來自寵物的問候…',
|
||
'pet.fieldName': '名字',
|
||
'pet.fieldGlyph': '表情',
|
||
'pet.fieldGlyphHint': '建議使用單個 emoji(例如 🐝、🦄、🐢)。',
|
||
'pet.fieldGreeting': '問候語',
|
||
'pet.fieldAccent': '主題色',
|
||
'pet.fieldAccentCustom': '自訂顏色',
|
||
'pet.overlayAria': '寵物夥伴',
|
||
'pet.spriteAria': '{name} — 拖曳可移動,點擊與它互動',
|
||
'pet.spriteTitle': '{name} 來打招呼啦!點擊聊天。',
|
||
'pet.composerTitle': '寵物 — 喚醒、收起或挑一隻',
|
||
'pet.composerMenuTitle': '寵物',
|
||
'pet.composerMenuHint': '小提示:輸入 /pet 即可切換',
|
||
'pet.composerOpenSettings': '在設定中自訂',
|
||
'pet.welcomeTeaserTitle': '領養一隻寵物',
|
||
'pet.welcomeTeaserBody': '一隻小小的浮窗夥伴,會陪你工作。',
|
||
'pet.welcomeTeaserCta': '挑一隻',
|
||
'pet.imageUpload': '上傳形象',
|
||
'pet.imageReplace': '替換形象',
|
||
'pet.imageRemove': '改用 emoji',
|
||
'pet.imageHintIdle': '支援 PNG / JPG / WebP / GIF / SVG。要做精靈動畫?傳一張橫向序列圖並設定影格數。',
|
||
'pet.imageHintActive': '正在使用你上傳的形象。把影格數設為 > 1,橫向序列圖就會動起來。',
|
||
'pet.fieldFrames': '影格數',
|
||
'pet.fieldFramesHint': '1 = 靜態;> 1 = 橫向序列圖。',
|
||
'pet.fieldFps': '速度 (fps)',
|
||
'pet.fieldFpsHint': '控制序列圖播放速度。',
|
||
'pet.atlasImport': '匯入 Codex 精靈圖',
|
||
'pet.atlasImportTitle': '匯入 hatch-pet 8x9 / 192x208 精靈圖(PNG 或 WebP)。',
|
||
'pet.atlasPickerTitle': '選擇動畫列',
|
||
'pet.atlasPickerHint': 'Codex 寵物自帶 9 個動畫狀態。預設會保留完整精靈圖,寵物會根據懸停、拖曳方向、長時間閒置自動切換動畫。也可以只保留一個迴圈。',
|
||
'pet.atlasCancel': '捨棄精靈圖',
|
||
'pet.atlasAdopt': '鎖定這一列',
|
||
'pet.atlasAdoptFull': '使用完整精靈圖(動態)',
|
||
'pet.atlasAdoptFullTitle': '保留所有動畫列,讓寵物對懸停、拖曳方向以及長時間閒置做出反應。',
|
||
'pet.atlasAdoptRowTitle': '只把高亮的這一列切成單迴圈條帶。',
|
||
'pet.atlasActiveHint': '動態精靈圖已啟用 — 寵物會依據你的互動(懸停、拖曳、閒置)自動切換動畫。',
|
||
'pet.atlasRow.idle': '待機',
|
||
'pet.atlasRow.running-right': '向右跑',
|
||
'pet.atlasRow.running-left': '向左跑',
|
||
'pet.atlasRow.waving': '揮手',
|
||
'pet.atlasRow.jumping': '跳躍',
|
||
'pet.atlasRow.failed': '失敗',
|
||
'pet.atlasRow.waiting': '等待',
|
||
'pet.atlasRow.running': '奔跑',
|
||
'pet.atlasRow.review': '審視',
|
||
'pet.hatchTitle': '用 AI 孵化新寵物',
|
||
'pet.hatchHint': '透過聊天呼叫內建的 hatch-pet 技能產生 Codex 風格的精靈圖,完成後回到這裡匯入。',
|
||
'pet.hatchConcept': '寵物概念(可選)',
|
||
'pet.hatchConceptPlaceholder': '例如:一隻穿著毛衣的像素風柴犬',
|
||
'pet.hatchCopy': '複製提示詞',
|
||
'pet.hatchCopied': '已複製!',
|
||
'pet.hatchFoot': '技能儲存好寵物後,回到這裡點擊「匯入 Codex 精靈圖」即可。',
|
||
'pet.slashPopoverAria': '斜線命令',
|
||
'pet.slashPopoverTitle': '命令',
|
||
'pet.slashPopoverHint': '↑↓ 切換 · enter 選擇 · esc 關閉',
|
||
'pet.slashPet': '切換、領養或跳到寵物設定。',
|
||
'pet.slashPetWake': '喚醒漂浮的寵物。',
|
||
'pet.slashPetTuck': '把寵物收起來。',
|
||
'pet.slashHatch': '呼叫 hatch-pet 技能生成一隻 Codex 寵物。',
|
||
'pet.slashHatchArg': '<概念>',
|
||
'pet.slashSearch': '透過 OD research 指令搜尋網頁。',
|
||
'pet.slashSearchArg': '<查詢>',
|
||
'pet.codexTitle': '最近孵化',
|
||
'pet.codexSubtitle': 'hatch-pet 技能打包的寵物會出現在這裡,可一鍵領養。',
|
||
'pet.codexSubtitleWithDir': '正在掃描 {dir},尋找 hatch-pet 技能打包的寵物。',
|
||
'pet.codexEmpty': '還沒有孵化的寵物。在聊天中輸入 /hatch 來生成一隻。',
|
||
'pet.codexLoading': '正在尋找已孵化的寵物…',
|
||
'pet.codexRefresh': '重新整理',
|
||
'pet.codexAdopt': '領養',
|
||
'pet.codexAdopting': '領養中…',
|
||
'pet.communitySync': '下載社群寵物',
|
||
'pet.communitySyncing': '下載中…',
|
||
'pet.communitySyncTitle': '從 Codex Pet Share 與 j20 Hatchery 同步最新寵物到 ~/.codex/pets/。',
|
||
'pet.communitySyncDone': '已同步 {wrote} 個新寵物(共 {total} 個)。',
|
||
'pet.communitySyncFailed': '同步失敗:{error}',
|
||
'pet.codexBundled': '內建',
|
||
'pet.codexBundledTitle': 'Open Design 內建寵物,無需下載。',
|
||
|
||
'settings.notifications': '通知',
|
||
'settings.notificationsHint': '任務完成時的音效和桌面通知',
|
||
'settings.notifyCompletionSound': '完成提示音',
|
||
'settings.notifyCompletionSoundHint': '一輪任務結束時播放,預設關閉',
|
||
'settings.notifySuccessSound': '成功音色',
|
||
'settings.notifyFailureSound': '失敗音色',
|
||
'settings.notifyDesktop': '桌面通知',
|
||
'settings.notifyDesktopHint': '視窗不在前景時跳出系統通知',
|
||
'settings.notifyDesktopBlocked': '瀏覽器已拒絕通知權限,請在網站設定中開啟',
|
||
'settings.notifyDesktopUnsupported': '當前環境不支援桌面通知',
|
||
'settings.notifyTest': '測試通知',
|
||
'settings.notifyTestSent': '測試通知已送出;如果沒有彈窗,請檢查瀏覽器和系統通知設定。',
|
||
'settings.notifyTestFailed': '通知呼叫失敗,請檢查瀏覽器和系統通知設定。',
|
||
'settings.notifySoundDing': '叮',
|
||
'settings.notifySoundChime': '風鈴',
|
||
'settings.notifySoundTwoToneUp': '上行雙音',
|
||
'settings.notifySoundPluck': '撥弦',
|
||
'settings.notifySoundBuzz': '蜂鳴',
|
||
'settings.notifySoundTwoToneDown': '下行雙音',
|
||
'settings.notifySoundThud': '低響',
|
||
'settings.skills': '技能',
|
||
'settings.skillsHint': '代理可在任務中呼叫的功能技能',
|
||
'settings.skillsNew': '新增技能',
|
||
'settings.skillsEmpty': '請於左側選擇一個技能,或新增一個。',
|
||
'settings.skillsEdit': '編輯',
|
||
'settings.skillsDelete': '刪除',
|
||
'settings.skillsDeleteConfirm': '確認刪除',
|
||
'settings.skillsName': '名稱',
|
||
'settings.skillsTriggers': '觸發詞(逗號或換行分隔)',
|
||
'settings.skillsDescription': '描述',
|
||
'settings.skillsBody': 'SKILL.md 內容',
|
||
'settings.skillsCreate': '建立',
|
||
'settings.skillsSave': '儲存',
|
||
'settings.skillsSaving': '儲存中…',
|
||
'settings.skillsFiles': '檔案',
|
||
'settings.skillsNoFiles': '此技能資料夾沒有檔案。',
|
||
'settings.designSystems': '設計系統',
|
||
'settings.designSystemsHint': '瀏覽並啟用代理可使用的設計系統',
|
||
'settings.librarySkills': '技能',
|
||
'settings.libraryDesignSystems': '設計系統',
|
||
'settings.librarySearch': '搜尋...',
|
||
'settings.libraryAll': '全部',
|
||
'settings.libraryPreview': '預覽',
|
||
'settings.libraryPreviewClose': '關閉',
|
||
'settings.libraryLoading': '載入中...',
|
||
'settings.libraryNoResults': '沒有符合的項目。',
|
||
'settings.libraryEnabled': '已啟用',
|
||
'settings.libraryDisabled': '已停用',
|
||
'settings.connectorsNavHint': '外部系統連線',
|
||
'settings.connectorsHint': '管理此裝置的連接器與工具供應商設定。',
|
||
'settings.connectorsComposioApiKey': 'Composio API 金鑰',
|
||
'settings.connectorsSavedTitle': '已儲存到本機 daemon',
|
||
'settings.connectorsSavedWithTail': '已儲存 · ••••{tail}',
|
||
'settings.connectorsSaved': '已儲存',
|
||
'settings.connectorsGetApiKey': '取得 API 金鑰',
|
||
'settings.connectorsReplaceKeyPlaceholder': '貼上新金鑰以取代已儲存的金鑰',
|
||
'settings.connectorsApiKeyPlaceholder': '貼上 Composio API 金鑰',
|
||
'settings.connectorsClear': '清除',
|
||
'settings.connectorsClearConfirmTitle': '清除已儲存的 Composio API 金鑰?',
|
||
'settings.connectorsClearConfirmBody': '移除金鑰會將此工作區下所有的 Composio 連接器全部斷開。已連線的帳戶、OAuth 授權與工具存取權限都將一併移除。',
|
||
'settings.connectorsClearConfirmContinue': '繼續',
|
||
'settings.connectorsClearFinalTitle': '此動作會斷開所有連接器',
|
||
'settings.connectorsClearFinalBody': '無法復原。貼上新金鑰後,每個整合都必須從頭重新連線。',
|
||
'settings.connectorsClearFinalConfirm': '刪除金鑰並斷線',
|
||
'settings.connectorsClearArming': '稍候\u2026',
|
||
'settings.connectorsClearCancel': '取消',
|
||
'settings.connectorsSaveKey': "儲存金鑰",
|
||
'settings.connectorsSaveKeyTitle': "將此金鑰送往本機 daemon",
|
||
'settings.connectorsKeySaving': "儲存中…",
|
||
'settings.connectorsKeySaved': "已儲存 ✓",
|
||
'settings.connectorsKeyError': "儲存金鑰失敗。請確認本機 daemon 已啟動後再試。",
|
||
'settings.connectorsHelpSaved': '你的金鑰會解鎖下方目錄,並保留在本機 daemon 中。貼上新金鑰可取代,或清除以移除。',
|
||
'settings.connectorsHelpUnsaved': "尚未儲存 — 點擊「儲存金鑰」即可將其存入本機 daemon,並解鎖下方目錄。",
|
||
'settings.connectorsHelpEmpty': '新增金鑰以解鎖下方目錄。金鑰會本機儲存在 daemon 中,絕不會透過環境變數傳送。',
|
||
'settings.connectorsLoadingSavedKey': '正在從本機 daemon 檢查已儲存的金鑰…',
|
||
'settings.autosaveSaving': "儲存中…",
|
||
'settings.autosaveSaved': "所有變更已儲存",
|
||
'settings.autosaveError': "無法儲存變更。本機 daemon 可能離線。",
|
||
'settings.libraryToggleLabel': '切換',
|
||
// Memory (auto-extracted personalization saved as on-disk markdown)
|
||
'settings.memory': '記憶',
|
||
'settings.memoryHint': '從對話中自動沉澱的個人化資訊',
|
||
'settings.memoryDescription': '自動從聊天中提取出的關於你的偏好和上下文的事實,以 Markdown 檔案形式保存,並自動注入到每次對話中。',
|
||
'settings.memoryEnabled': '已啟用',
|
||
'settings.memoryDisabled': '已關閉',
|
||
'settings.memoryEnableLabel': '啟用記憶注入',
|
||
'settings.memoryDisabledBanner': '記憶目前已關閉。已有的事實檔案保留在磁碟上,但不會被注入到新對話,也不會從新對話中提取新事實。',
|
||
'settings.memoryNew': '新增記憶',
|
||
'settings.memoryEdit': '編輯',
|
||
'settings.memoryDelete': '刪除',
|
||
'settings.memoryPreview': '預覽',
|
||
'settings.memoryEmpty': '還沒有記憶。',
|
||
'settings.memoryEmptyHintZh': '记住: 用户偏好深色主题',
|
||
'settings.memoryEmptyHintEn': 'I prefer dark mode',
|
||
'settings.memoryName': '名稱',
|
||
'settings.memoryDesc': '一行描述',
|
||
'settings.memoryBody': '記憶正文(支援 Markdown)',
|
||
'settings.memoryBodyHint': '先寫規則本身,再補「為什麼」和「何時適用」兩行。',
|
||
'settings.memoryStartersLabel': '不知道寫什麼?點一下填到表單裡:',
|
||
'settings.memoryStarterUserName': '我的角色',
|
||
'settings.memoryStarterUserDesc': '我是一名前端工程師,主要做 SaaS 設計工具',
|
||
'settings.memoryStarterUserBody': '- 角色:高級前端工程師\n- 技術棧:React、TypeScript、Vite\n- 方向:設計 / 協作工具\n- 時區:GMT+8(Asia/Shanghai)\n\n何時適用:任何對話裡舉例時優先用前端 / Web 場景。',
|
||
'settings.memoryStarterFeedbackName': 'UI 偏好',
|
||
'settings.memoryStarterFeedbackDesc': '深色主題、字號偏大、資訊密度低',
|
||
'settings.memoryStarterFeedbackBody': '- 主題:預設深色\n- 正文字號:≥ 18px\n- 資訊密度:留白多一些,一屏不要塞太多東西\n\n為什麼:長時間使用眼睛不容易累。\n何時適用:讓你畫 UI、網頁、PPT 時都按這個走。',
|
||
'settings.memoryStarterProjectName': '當前專案',
|
||
'settings.memoryStarterProjectDesc': 'Open Design v0.5 — 聊天驅動的設計編輯器',
|
||
'settings.memoryStarterProjectBody': '- 目標:本季交付聊天驅動的編輯體驗\n- 優先級:串流渲染、本地多模態、離線優先\n- 技術棧:Next.js 16、Express daemon、SQLite\n\n何時適用:與本專案相關的所有對話。',
|
||
'settings.memorySaveHint': '不會自動儲存 — 點擊「建立」/「儲存」才會生效。',
|
||
'settings.memoryIndexSaveHint': '索引不會自動儲存 — 改完後點擊「儲存索引」才會生效。',
|
||
'settings.memoryIndexUnsaved': '有尚未儲存的修改',
|
||
'settings.memoryFlashCreated': '✓ 已建立',
|
||
'settings.memoryFlashSaved': '✓ 已儲存',
|
||
'settings.memoryFlashDeleted': '✓ 已刪除',
|
||
'settings.memoryFlashIndexSaved': '✓ 索引已儲存',
|
||
'settings.memoryNameLabel': '標題',
|
||
'settings.memoryTypeLabel': '類型',
|
||
'settings.memoryDescLabel': '描述',
|
||
'settings.memoryBodyLabel': '內容',
|
||
'settings.memoryTypeUser': '使用者',
|
||
'settings.memoryTypeFeedback': '回饋',
|
||
'settings.memoryTypeProject': '專案',
|
||
'settings.memoryTypeReference': '參考',
|
||
'settings.memoryIndex': 'MEMORY.md(索引)',
|
||
'settings.memoryIndexSave': '儲存索引',
|
||
'settings.memoryIndexReset': '重設',
|
||
'settings.memoryToastChanged': '記憶已更新',
|
||
'settings.memoryToastClickHint': '查看',
|
||
'settings.memoryAll': '全部',
|
||
'settings.memoryExtractions': '抽取歷史',
|
||
'settings.memoryExtractionsHint': '最近的 LLM 抽取記錄。每次對話結束後,啟發式正則會先跑,LLM 抽取在背景非同步進行。',
|
||
'settings.memoryExtractionsEmpty': '暫無抽取記錄。下一次對話結束後會出現在這裡。',
|
||
'settings.memoryExtractionsRefresh': '重新整理',
|
||
'settings.memoryExtractionsRefreshing': '重新整理中…',
|
||
'settings.memoryExtractionPhaseRunning': '抽取中…',
|
||
'settings.memoryExtractionPhaseSuccess': '成功',
|
||
'settings.memoryExtractionPhaseSkipped': '已跳過',
|
||
'settings.memoryExtractionPhaseFailed': '失敗',
|
||
'settings.memoryExtractionSkipNoProvider': '未設定 API key,LLM 抽取未執行。',
|
||
'settings.memoryExtractionSkipDisabled': '記憶功能已關閉。',
|
||
'settings.memoryExtractionSkipEmpty': '使用者訊息為空,沒有可抽取的內容。',
|
||
'settings.memoryExtractionSkipNoMatch': '本輪沒有命中任何正則規則。',
|
||
'settings.memoryExtractionKindHeuristic': '正則',
|
||
'settings.memoryExtractionKindLlm': 'LLM',
|
||
'settings.memoryExtractionProviderEnv': '環境變數',
|
||
'settings.memoryExtractionProviderMediaConfig': '媒體設定',
|
||
'settings.memoryExtractionProposed': '候選',
|
||
'settings.memoryExtractionWritten': '寫入',
|
||
'settings.memoryExtractionDuration': '耗時',
|
||
'settings.memoryNoProviderBannerTitle': 'LLM 抽取未啟用',
|
||
'settings.memoryNoProviderBannerBody': '未找到可用的 API key,LLM 抽取已跳過。可以在媒體提供者裡填入 OpenAI key,或設定環境變數 ANTHROPIC_API_KEY / OPENAI_API_KEY 來啟用。啟發式抽取仍在執行。',
|
||
'settings.memoryExtractionProviderOverride': '記憶設定',
|
||
'settings.memoryExtractionDelete': '刪除',
|
||
'settings.memoryExtractionsClear': '清空',
|
||
'settings.memoryExtractionsClearTitle': '清空整個抽取歷史',
|
||
'settings.libraryInstall': '安裝',
|
||
'settings.libraryInstallGithub': 'GitHub',
|
||
'settings.libraryInstallLocal': '本機路徑',
|
||
'settings.libraryInstallUrl': 'https://github.com/owner/repo',
|
||
'settings.libraryInstallPath': '/path/to/skill-folder',
|
||
'settings.libraryInstallButton': '安裝',
|
||
'settings.libraryUninstall': '解除安裝',
|
||
'settings.libraryBuiltIn': '內建',
|
||
'settings.libraryInstalled': '已安裝',
|
||
'notify.successTitle': '任務已完成',
|
||
'notify.failureTitle': '任務失敗',
|
||
'notify.successBody': '一輪回答已經寫完。',
|
||
'notify.failureBody': '本輪任務出錯,請查看錯誤訊息。',
|
||
'settings.memoryModelInlineLabel': 'Memory 模型',
|
||
'settings.memoryModelInlineSameAsChat': '與聊天一致',
|
||
'settings.memoryModelInlineSameAsChatWithModel': '與聊天一致({model})',
|
||
'settings.memoryModelInlineSameAsChatWithProvider': '與聊天一致({provider})',
|
||
'settings.memoryModelInlineHintCli': '可選。Memory 擷取仍會使用環境變數或媒體設定裡的 API key 呼叫對應供應商;在這裡選模型只是覆寫自動挑選的預設值。',
|
||
'settings.memoryModelInlineHintCliConstrained': '可選。Memory 會呼叫 {provider};需要對應的環境變數或媒體設定裡的 API key,或在下方選一個模型覆寫。',
|
||
'settings.memoryModelInlineHintByok': '可選。沿用你聊天用的 API key,在同供應商上換成(通常更便宜的)模型跑背景 memory 擷取。',
|
||
'settings.memoryModelInlineFlashSaved': '已儲存',
|
||
'settings.memoryModelInlineFlashCleared': '已清除',
|
||
'settings.orbit.eyebrow': '自動化',
|
||
'settings.orbit.title': 'Orbit',
|
||
'settings.orbit.navHint': '每日連接器摘要',
|
||
'settings.orbit.lede': '依排程收集連接器活動,並將結果發布為可重新整理的 live artifact。',
|
||
'settings.orbit.statusOnTitle': '每日排程執行已開啟',
|
||
'settings.orbit.statusOffTitle': '每日排程執行已關閉',
|
||
'settings.orbit.statusActive': '啟用',
|
||
'settings.orbit.statusOff': '關閉',
|
||
'settings.orbit.runTitle': '啟動一次 Orbit 執行並開啟即時對話',
|
||
'settings.orbit.running': '執行中…',
|
||
'settings.orbit.runOpen': '立即執行',
|
||
'settings.orbit.dailySummaryTitle': '每日摘要',
|
||
'settings.orbit.dailySummarySub': '每天在排定的本地時間執行一次。',
|
||
'settings.orbit.on': '開啟',
|
||
'settings.orbit.off': '關閉',
|
||
'settings.orbit.runTimeTitle': '執行時間',
|
||
'settings.orbit.runTimeSub': '預設 08:00。儲存後套用到 daemon 排程。',
|
||
'settings.orbit.runTimeAria': '每日 Orbit 執行時間',
|
||
'settings.orbit.nextRun': '下次執行',
|
||
'settings.orbit.nextRunScheduledAfterSave': '儲存後排程',
|
||
'settings.orbit.schedule': '排程',
|
||
'settings.orbit.pausedManualOnly': '已暫停 — 僅手動執行',
|
||
'settings.orbit.templateTitle': '提示詞範本',
|
||
'settings.orbit.templateMissing': '範本 {id} 尚未安裝。',
|
||
'settings.orbit.templateMissingOption': '{id}(缺少)',
|
||
'settings.orbit.templateMissingInstall': '安裝 Orbit skill 以引導提示詞。',
|
||
'settings.orbit.templateMissingPickAnother': '從下拉選單選擇其他範本。',
|
||
'settings.orbit.templateResetTitle': '重設為 {id}',
|
||
'settings.orbit.templateReset': '重設',
|
||
'settings.orbit.templateHelp': '用 skill 引導 Orbit — 所選範本的範例提示詞會注入每次 Orbit 執行,讓摘要遵循該範本結構。',
|
||
'settings.orbit.templateAria': 'Orbit 提示詞範本',
|
||
'settings.orbit.templatesLoading': '正在載入範本…',
|
||
'settings.orbit.templatesOptgroup': 'Orbit skill 範本',
|
||
'settings.orbit.lastRun': '上次執行',
|
||
'settings.orbit.triggerManual': '手動',
|
||
'settings.orbit.triggerScheduled': '排程',
|
||
'settings.orbit.meterAria': '成功 {succeeded},略過 {skipped},失敗 {failed},共檢查 {checked}',
|
||
'settings.orbit.countChecked': '已檢查',
|
||
'settings.orbit.countSucceeded': '成功',
|
||
'settings.orbit.countSkipped': '已略過',
|
||
'settings.orbit.countFailed': '失敗',
|
||
'settings.orbit.runError': '無法執行 Orbit。請確認本機 daemon 正在執行且連接器已設定。',
|
||
'settings.orbit.gateAriaLabel': "使用 Orbit 需要先設定連接器",
|
||
'settings.orbit.gateEyebrow': "需要先完成設定",
|
||
'settings.orbit.gateTitle': "連接一個工具,讓 Orbit 開始運作",
|
||
'settings.orbit.gateBody': "Orbit 會彙整你已連接服務的活動。你目前還沒有任何連接 —— 至少加入一個整合,讓 Orbit 有內容可回報。",
|
||
'settings.orbit.gateBodyNoKey': "Orbit 會彙整連接器的活動,而連接器透過 Composio 執行。在「連接器」中填入 Composio API 金鑰即可解鎖目錄並挑選第一個整合。",
|
||
'settings.orbit.gateAction': "開啟連接器",
|
||
'settings.orbit.gateActionNoKey': "設定 Composio",
|
||
'settings.orbit.gateLoading': "正在檢查連接器…",
|
||
'settings.orbit.controlsLockedBadge': "已鎖定",
|
||
'settings.orbit.controlsLockedHint': "連接一個工具後即可解鎖 Orbit 的排程與範本設定。",
|
||
'settings.orbit.artifactKickerLive': 'live artifact',
|
||
'settings.orbit.artifactKickerLegacy': '舊版摘要',
|
||
'settings.orbit.artifactTitle': '每日 Orbit 活動摘要',
|
||
'settings.orbit.artifactMetaLive': '由連接器活動產生的可重新整理 HTML artifact。',
|
||
'settings.orbit.artifactMetaLegacy': '在啟用 live artifact 支援之前產生 — 再次執行 Orbit 以發布一個。',
|
||
'settings.orbit.copyMarkdownTitle': '複製 Markdown 摘要到剪貼簿',
|
||
'settings.orbit.copied': '已複製',
|
||
'settings.orbit.copy': '複製',
|
||
'settings.orbit.openArtifact': '開啟 artifact',
|
||
'settings.orbit.sourceMarkdown': '來源 Markdown',
|
||
'liveArtifact.viewer.tabPreview': '預覽',
|
||
'liveArtifact.viewer.tabCode': '程式碼',
|
||
'liveArtifact.viewer.tabData': '資料',
|
||
'liveArtifact.viewer.tabRefreshHistory': '重新整理歷史',
|
||
'liveArtifact.viewer.dataEmpty': '沒有可用的 data.json 快取。',
|
||
'liveArtifact.viewer.code.templateHeading': '範本 HTML',
|
||
'liveArtifact.viewer.code.renderedHeading': '渲染後 HTML',
|
||
'liveArtifact.viewer.code.templateHelp': '與 data.json 搭配產生預覽的可編輯範本。',
|
||
'liveArtifact.viewer.code.renderedHelp': 'Preview 目前載入的已產生 index.html。',
|
||
'liveArtifact.viewer.code.variantAria': '程式碼版本',
|
||
'liveArtifact.viewer.code.variantTemplate': '範本',
|
||
'liveArtifact.viewer.code.variantRendered': '已渲染',
|
||
'liveArtifact.viewer.code.loading': '正在載入程式碼…',
|
||
'liveArtifact.viewer.code.unavailable': '程式碼尚不可用。',
|
||
'liveArtifact.viewer.code.empty': '此程式碼檔案是空的。',
|
||
};
|