976a6eadf2
Introduce non-web media surfaces (image, video, audio) as first-class project kinds. The unifying contract is "skill workflow + project metadata tell the agent WHAT to make; one shell command — od media generate — is HOW bytes are produced", so any code-agent CLI with shell access can drive it without bespoke tools. - Frontend: New Project panel gains Image/Video/Audio tabs with model picker, aspect/length/duration controls, and audio kind/voice selection. Examples and Design Systems tabs gain layered sections. FileViewer renders the generated image/video/audio files. - Shared registry: src/media/models.ts is the single source of truth for image/video/audio model IDs, aspects, and defaults — consumed by the picker AND the daemon dispatcher. - Prompts: media-contract.ts is pinned LAST in the system prompt for media surfaces so its hard rules (call od media generate, don't emit binary in <artifact>, allowed model IDs) win over softer earlier wording. - Daemon: new media.js dispatcher + media-models.js JSON view of the registry; cli.js gets the `od media generate` subcommand wired up via server.js / projects.js so the daemon writes files back into the project dir. - Skills: audio-jingle, image-poster, video-shortform seed examples for the three surfaces. Made-with: Cursor
534 lines
23 KiB
TypeScript
534 lines
23 KiB
TypeScript
import type { Dict } from '../types';
|
||
|
||
export const zhCN: Dict = {
|
||
'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 与 Anthropic API(自带 Key)之间切换。API Key 只保存在当前浏览器中。',
|
||
'settings.modeAria': '执行模式',
|
||
'settings.modeDaemon': '本机 CLI',
|
||
'settings.modeDaemonHelp': '通过本机的代码代理 CLI 执行',
|
||
'settings.modeDaemonOffline': '后台守护进程未运行',
|
||
'settings.modeDaemonOfflineMeta': '守护进程未运行',
|
||
'settings.modeDaemonInstalledMeta': '已安装 {count} 个',
|
||
'settings.modeApi': 'Anthropic API',
|
||
'settings.modeApiMeta': '自带 Key',
|
||
'settings.codeAgent': '代码代理',
|
||
'settings.codeAgentHint': '通过扫描 PATH 自动检测,选择你希望使用的 CLI。',
|
||
'settings.rescan': '↻ 重新扫描',
|
||
'settings.rescanTitle': '重新扫描 PATH',
|
||
'settings.noAgentsDetected':
|
||
'尚未检测到任何代理。请安装 Claude Code、Codex、Gemini CLI、OpenCode、Cursor Agent 或 Qwen 中的一个,然后点击「重新扫描」。',
|
||
'settings.apiSection': 'Anthropic API',
|
||
'settings.apiKey': 'API Key',
|
||
'settings.showKey': '显示 Key',
|
||
'settings.hideKey': '隐藏 Key',
|
||
'settings.show': '显示',
|
||
'settings.hide': '隐藏',
|
||
'settings.model': '模型',
|
||
'settings.baseUrl': 'Base URL',
|
||
'settings.apiHint':
|
||
'请求会从当前浏览器直连你设置的 Base URL,无中转代理。Key 只存放在 localStorage。',
|
||
'settings.skipForNow': '暂时跳过',
|
||
'settings.getStarted': '开始使用',
|
||
'settings.envConfigure': '配置执行模式',
|
||
'settings.localCli': '本机 CLI',
|
||
'settings.anthropicApi': 'Anthropic API',
|
||
'settings.noAgentSelected': '尚未选择代理',
|
||
'settings.language': '界面语言',
|
||
'settings.languageHint': '切换界面语言,设置仅保存在当前浏览器。',
|
||
|
||
'entry.tabDesigns': '我的设计',
|
||
'entry.tabExamples': '示例',
|
||
'entry.tabDesignSystems': '设计体系',
|
||
'entry.openSettingsTitle': '设置',
|
||
'entry.openSettingsAria': '打开设置',
|
||
'entry.resizeAria': '调整侧边栏宽度',
|
||
'entry.loadingWorkspace': '正在加载工作区…',
|
||
|
||
'newproj.surfaceLabel': '类型',
|
||
'newproj.surfaceWeb': '网页',
|
||
'newproj.surfaceImage': '图片',
|
||
'newproj.surfaceVideo': '视频',
|
||
'newproj.surfaceAudio': '音频',
|
||
'newproj.surfaceWebHint': '原型 / 幻灯 / 文档',
|
||
'newproj.surfaceImageHint': '海报 / 插画 / 设计稿',
|
||
'newproj.surfaceVideoHint': '短视频 / 动效',
|
||
'newproj.surfaceAudioHint': '音乐 / 配音 / 音效',
|
||
|
||
'newproj.tabPrototype': '原型',
|
||
'newproj.tabDeck': '幻灯片',
|
||
'newproj.tabTemplate': '从模板',
|
||
'newproj.tabOther': '其它',
|
||
'newproj.titlePrototype': '新建原型',
|
||
'newproj.titleDeck': '新建幻灯片',
|
||
'newproj.titleTemplate': '从模板开始',
|
||
'newproj.titleOther': '新建项目',
|
||
'newproj.titleImage': '新建图片',
|
||
'newproj.titleVideo': '新建视频',
|
||
'newproj.titleAudio': '新建音频',
|
||
|
||
'newproj.modelLabel': '模型',
|
||
'newproj.modelHint': '选择代理调用的上游模型。',
|
||
'newproj.aspectLabel': '画幅比例',
|
||
'newproj.aspectSquare': '方形 · 1:1',
|
||
'newproj.aspectLandscape': '横版 · 16:9',
|
||
'newproj.aspectPortrait': '竖版 · 9:16',
|
||
'newproj.aspect43': '宽屏 · 4:3',
|
||
'newproj.aspect34': '高屏 · 3:4',
|
||
'newproj.imageStyleLabel': '风格备注(可选)',
|
||
'newproj.imageStylePlaceholder': '例如:编辑摄影、低饱和大地色、柔光日光',
|
||
'newproj.videoLengthLabel': '时长',
|
||
'newproj.videoLengthSeconds': '{n}秒',
|
||
'newproj.audioKindLabel': '生成什么?',
|
||
'newproj.audioKindMusic': '音乐',
|
||
'newproj.audioKindSpeech': '配音 / TTS',
|
||
'newproj.audioKindSfx': '音效 / 拟音',
|
||
'newproj.audioDurationLabel': '时长',
|
||
'newproj.audioDurationSeconds': '{n}秒',
|
||
'newproj.voiceLabel': '声线(仅 TTS)',
|
||
'newproj.voicePlaceholder': '例如:温暖女声旁白,普通话,平稳语速',
|
||
'newproj.namePlaceholder': '项目名称',
|
||
'newproj.fidelityLabel': '精度',
|
||
'newproj.fidelityWireframe': '线框图',
|
||
'newproj.fidelityHigh': '高保真',
|
||
'newproj.toggleSpeakerNotes': '使用演讲备注',
|
||
'newproj.toggleSpeakerNotesHint': '减少幻灯片上的文字,要点放到备注中。',
|
||
'newproj.toggleAnimations': '加入动效',
|
||
'newproj.toggleAnimationsHint': '在模板基础上叠加动效(入场、悬停、过渡)。',
|
||
'newproj.templateLabel': '模板',
|
||
'newproj.noTemplatesTitle': '还没有模板',
|
||
'newproj.noTemplatesBody':
|
||
'打开任意项目,在文件查看器内的「分享」菜单将其保存为模板,模板将出现在这里。',
|
||
'newproj.savedTemplate': '已保存的模板',
|
||
'newproj.fileSingular': '个文件',
|
||
'newproj.filePlural': '个文件',
|
||
'newproj.create': '创建',
|
||
'newproj.createFromTemplate': '基于模板创建',
|
||
'newproj.createDisabledTitle': '请先在任意项目内通过「分享」菜单将其保存为模板。',
|
||
'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': '主体系',
|
||
|
||
'designs.subRecent': '最近',
|
||
'designs.subYours': '我的设计',
|
||
'designs.filterAria': '筛选项目',
|
||
'designs.searchPlaceholder': '搜索…',
|
||
'designs.emptyNoProjects': '还没有项目。请在左侧创建一个。',
|
||
'designs.emptyNoMatch': '没有匹配的项目。',
|
||
'designs.deleteTitle': '删除项目',
|
||
'designs.deleteConfirm': '确定删除「{name}」?',
|
||
'designs.cardFreeform': '自由设计',
|
||
|
||
'examples.typeLabel': '类型',
|
||
'examples.scenarioLabel': '场景',
|
||
'examples.modeAll': '全部',
|
||
'examples.modePrototypeDesktop': '原型 · 桌面端',
|
||
'examples.modePrototypeMobile': '原型 · 移动端',
|
||
'examples.modeDeck': '幻灯片',
|
||
'examples.modeDocument': '文档与模板',
|
||
'examples.modeImage': '图片',
|
||
'examples.modeVideo': '视频',
|
||
'examples.modeAudio': '音频',
|
||
'examples.surfaceLabel': '类型',
|
||
'examples.surfaceWeb': '网页',
|
||
'examples.surfaceImage': '图片',
|
||
'examples.surfaceVideo': '视频',
|
||
'examples.surfaceAudio': '音频',
|
||
'examples.tagImage': '图片',
|
||
'examples.tagVideo': '视频',
|
||
'examples.tagAudio': '音频',
|
||
'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.emptyNoMatch': '没有匹配当前筛选的示例。',
|
||
'examples.openPreview': '⤢ 打开预览',
|
||
'examples.loadingPreview': '正在加载预览…',
|
||
'examples.hoverPreview': '将鼠标悬停以查看预览',
|
||
'examples.usePrompt': '使用此 Prompt',
|
||
'examples.previewModalTitle': '在弹窗中查看完整预览',
|
||
'examples.shareTitle': '分享此示例',
|
||
'examples.shareLoadFirst': '请先悬停以加载预览',
|
||
'examples.shareMenu': '分享 ▾',
|
||
'examples.exportPdfAllSlides': '导出为 PDF(全部幻灯片)',
|
||
'examples.exportPptxLocked': '导出为 PPTX…(请先打开模板)',
|
||
'examples.tagSlideDeck': '幻灯片',
|
||
'examples.tagTemplate': '模板',
|
||
'examples.tagDesignSystem': '设计体系',
|
||
'examples.tagMobilePrototype': '移动端原型',
|
||
'examples.tagDesktopPrototype': '桌面端原型',
|
||
'examples.previewLabel': '预览',
|
||
|
||
'ds.searchPlaceholder': '搜索设计体系…',
|
||
'ds.emptyNoMatch': '没有匹配的设计体系。',
|
||
'ds.badgeDefault': '默认',
|
||
'ds.preview': '预览',
|
||
'ds.previewTitle': '预览设计体系',
|
||
'ds.categoryAll': '全部',
|
||
'ds.categoryUncategorized': '未分类',
|
||
'ds.showcase': '展示',
|
||
'ds.tokens': 'Token',
|
||
'ds.surfaceLabel': '类型',
|
||
'ds.surfaceWeb': '网页',
|
||
'ds.surfaceImage': '图片',
|
||
'ds.surfaceVideo': '视频',
|
||
'ds.surfaceAudio': '音频',
|
||
|
||
'avatar.title': '账户与设置',
|
||
'avatar.localCli': '本机 CLI',
|
||
'avatar.anthropicApi': 'Anthropic API',
|
||
'avatar.useLocal': '使用本机 CLI',
|
||
'avatar.useApi': '使用 Anthropic API',
|
||
'avatar.codeAgent': '代码代理',
|
||
'avatar.rescan': '重新扫描 PATH',
|
||
'avatar.settings': '设置',
|
||
'avatar.backToProjects': '返回项目列表',
|
||
'avatar.metaActive': '使用中',
|
||
'avatar.metaOffline': '未运行',
|
||
'avatar.metaSelected': '已选',
|
||
'avatar.noAgentSelected': '尚未选择代理',
|
||
|
||
'project.backToProjects': '返回项目列表',
|
||
'project.metaFreeform': '自由设计',
|
||
'chat.tabChat': '对话',
|
||
'chat.tabComments': '评论',
|
||
'chat.commentsSoon': '评论 — 即将上线',
|
||
'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.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}…',
|
||
|
||
'misc.savedTemplate': '已保存的模板',
|
||
'misc.primary': '主体系',
|
||
'misc.designSystem': '设计体系',
|
||
|
||
'workspace.designFiles': '设计文件',
|
||
'workspace.closeTab': '关闭标签页',
|
||
'workspace.deleteFileConfirm': '从项目文件夹中删除「{name}」?',
|
||
'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.dropTitle': '⤓ 把文件拖到这里',
|
||
'designFiles.dropDesc': '图片、文档、参考资料、Figma 链接或文件夹 — Claude 都会用作上下文。',
|
||
'designFiles.upload.title': '上传一张图片',
|
||
'designFiles.paste.title': '将文本粘贴为文件',
|
||
'designFiles.upload.label': '上传',
|
||
'designFiles.paste.label': '粘贴',
|
||
'designFiles.previewOpen': '打开',
|
||
'designFiles.previewClose': '关闭预览',
|
||
'designFiles.modified': '修改于 {time} · {size}',
|
||
'designFiles.weeksAgo': '{n} 周前',
|
||
'designFiles.sectionPages': '页面',
|
||
'designFiles.sectionScripts': '脚本',
|
||
'designFiles.sectionImages': '图片',
|
||
'designFiles.sectionSketches': '草图',
|
||
'designFiles.sectionOther': '其它',
|
||
'designFiles.kindHtml': 'HTML 页面',
|
||
'designFiles.kindImage': '图片',
|
||
'designFiles.kindSketch': '草图',
|
||
'designFiles.kindText': '文本',
|
||
'designFiles.kindCode': '脚本',
|
||
'designFiles.kindBinary': '二进制',
|
||
'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.download': '下载',
|
||
'fileViewer.open': '打开',
|
||
'fileViewer.imageMeta': '图片 · {size}',
|
||
'fileViewer.sketchMeta': '草图 · {size}',
|
||
'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': '绘制',
|
||
'fileViewer.zoomOut': '缩小',
|
||
'fileViewer.zoomIn': '放大',
|
||
'fileViewer.resetZoom': '重置缩放',
|
||
'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.saveAsTemplate': '保存为模板…',
|
||
'fileViewer.savingTemplate': '正在保存模板…',
|
||
'fileViewer.savedTemplate': '已保存为「{name}」',
|
||
'fileViewer.savedTemplateFail': '保存模板失败,请重试。',
|
||
'fileViewer.templateNamePrompt': '模板名称',
|
||
'fileViewer.templateNameDefault': '未命名模板',
|
||
'fileViewer.templateDescPrompt': '简短描述(可选 — 这个模板用于什么场景?)',
|
||
|
||
'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': 'Anthropic API · 自带 Key',
|
||
'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': 'Claude',
|
||
'assistant.workingLabel': '执行中',
|
||
'assistant.doneLabel': '已完成',
|
||
'assistant.outTokens': '{n} 输出',
|
||
'assistant.producedFiles': '本轮产出的文件',
|
||
'assistant.openFile': '打开',
|
||
'assistant.downloadFile': '下载',
|
||
'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.textPrompt': '请输入文本:',
|
||
};
|