From d6fe72b50a088c881b5a35036c516bea52700c0c Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sun, 26 Jul 2026 16:40:22 +0800 Subject: [PATCH] chore(i18n): update translations (#2106) This PR contains updated translations from Crowdin. Created from [GitHub Actions](https://github.com/moeru-ai/airi/blob/main/.github/workflows/crowdin-cron-sync.yml). You can review the source of translations [here](https://crowdin.com/project/proj-airi) --------- Co-authored-by: Crowdin Bot Co-authored-by: Garfield Lee Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> --- .../i18n/src/locales/es/tamagotchi/stage.yaml | 4 +- .../i18n/src/locales/fr/tamagotchi/stage.yaml | 4 +- .../i18n/src/locales/ja/tamagotchi/stage.yaml | 4 +- .../i18n/src/locales/ko/tamagotchi/stage.yaml | 4 +- .../i18n/src/locales/ru/tamagotchi/stage.yaml | 4 +- .../i18n/src/locales/vi/tamagotchi/stage.yaml | 4 +- .../i18n/src/locales/zh-Hans/settings.yaml | 380 ++++++++++-------- .../src/locales/zh-Hans/tamagotchi/stage.yaml | 4 +- .../i18n/src/locales/zh-Hant/settings.yaml | 258 +++++++----- .../src/locales/zh-Hant/tamagotchi/stage.yaml | 4 +- 10 files changed, 383 insertions(+), 287 deletions(-) diff --git a/packages/i18n/src/locales/es/tamagotchi/stage.yaml b/packages/i18n/src/locales/es/tamagotchi/stage.yaml index e220dc900..c4a0fdb79 100644 --- a/packages/i18n/src/locales/es/tamagotchi/stage.yaml +++ b/packages/i18n/src/locales/es/tamagotchi/stage.yaml @@ -18,8 +18,8 @@ docs: 'center-main-window': Move to screen center 'open-hearing-controls': Abrir controles de audición 'drag-to-move-window': Arrastra para mover la ventana - 'stop-speaking': Stop speaking - 'speaker-idle': Speaker + 'stop-speaking': Detener voz + 'speaker-idle': Altavoz 'switch-to-light-mode': Cambiar a modo claro 'switch-to-dark-mode': Cambiar a modo oscuro 'pin-on-top': Anclar Arriba diff --git a/packages/i18n/src/locales/fr/tamagotchi/stage.yaml b/packages/i18n/src/locales/fr/tamagotchi/stage.yaml index 1339f0e7d..958269c93 100644 --- a/packages/i18n/src/locales/fr/tamagotchi/stage.yaml +++ b/packages/i18n/src/locales/fr/tamagotchi/stage.yaml @@ -18,8 +18,8 @@ docs: 'center-main-window': Move to screen center 'open-hearing-controls': Ouvrir les contrôles d'écoute 'drag-to-move-window': Glisser pour déplacer la fenêtre - 'stop-speaking': Stop speaking - 'speaker-idle': Speaker + 'stop-speaking': Arrêter la parole + 'speaker-idle': Haut-parleur 'switch-to-light-mode': Passer au mode clair 'switch-to-dark-mode': Passer au mode sombre 'pin-on-top': Épingler en haut diff --git a/packages/i18n/src/locales/ja/tamagotchi/stage.yaml b/packages/i18n/src/locales/ja/tamagotchi/stage.yaml index 7421d7f0c..8ab6efdac 100644 --- a/packages/i18n/src/locales/ja/tamagotchi/stage.yaml +++ b/packages/i18n/src/locales/ja/tamagotchi/stage.yaml @@ -18,8 +18,8 @@ docs: 'center-main-window': Move to screen center 'open-hearing-controls': 聴覚コントロールを開く 'drag-to-move-window': ウィンドウをドラッグして移動 - 'stop-speaking': Stop speaking - 'speaker-idle': Speaker + 'stop-speaking': 発話停止 + 'speaker-idle': スピーカー 'switch-to-light-mode': ライトモードに切り替え 'switch-to-dark-mode': ダークモードに切り替え 'pin-on-top': ピン留め diff --git a/packages/i18n/src/locales/ko/tamagotchi/stage.yaml b/packages/i18n/src/locales/ko/tamagotchi/stage.yaml index 35e556546..61bb7cdf9 100644 --- a/packages/i18n/src/locales/ko/tamagotchi/stage.yaml +++ b/packages/i18n/src/locales/ko/tamagotchi/stage.yaml @@ -18,8 +18,8 @@ docs: 'center-main-window': Move to screen center 'open-hearing-controls': 듣기 제어 열기 'drag-to-move-window': 드레그하여 창 이동 - 'stop-speaking': Stop speaking - 'speaker-idle': Speaker + 'stop-speaking': 말하기 중지 + 'speaker-idle': 스피커 'switch-to-light-mode': 라이트 모드로 전환 'switch-to-dark-mode': 다크 모드로 전환 'pin-on-top': 맨 위에 고정 diff --git a/packages/i18n/src/locales/ru/tamagotchi/stage.yaml b/packages/i18n/src/locales/ru/tamagotchi/stage.yaml index dd31725f5..cfc186516 100644 --- a/packages/i18n/src/locales/ru/tamagotchi/stage.yaml +++ b/packages/i18n/src/locales/ru/tamagotchi/stage.yaml @@ -18,8 +18,8 @@ docs: 'center-main-window': Переместить в центр экрана 'open-hearing-controls': Управление слухом 'drag-to-move-window': Перетащите окно - 'stop-speaking': Stop speaking - 'speaker-idle': Speaker + 'stop-speaking': Остановить воспроизведение + 'speaker-idle': Динамик 'switch-to-light-mode': Переключить на светлую тему 'switch-to-dark-mode': Переключить на темную тему 'pin-on-top': Прикрепить на верх diff --git a/packages/i18n/src/locales/vi/tamagotchi/stage.yaml b/packages/i18n/src/locales/vi/tamagotchi/stage.yaml index 178f250be..504f2d44f 100644 --- a/packages/i18n/src/locales/vi/tamagotchi/stage.yaml +++ b/packages/i18n/src/locales/vi/tamagotchi/stage.yaml @@ -18,8 +18,8 @@ docs: 'center-main-window': Move to screen center 'open-hearing-controls': Kiểm soát thính giác mở 'drag-to-move-window': Kéo để di chuyển cửa sổ - 'stop-speaking': Stop speaking - 'speaker-idle': Speaker + 'stop-speaking': Dừng nói + 'speaker-idle': Loa 'switch-to-light-mode': Chuyển sang chế độ sáng 'switch-to-dark-mode': Chuyển sang chế độ tối 'pin-on-top': Ghim lên trên diff --git a/packages/i18n/src/locales/zh-Hans/settings.yaml b/packages/i18n/src/locales/zh-Hans/settings.yaml index 04d5d269d..eb1eceb73 100644 --- a/packages/i18n/src/locales/zh-Hans/settings.yaml +++ b/packages/i18n/src/locales/zh-Hans/settings.yaml @@ -107,18 +107,18 @@ analytics: title: 此开发版本的使用数据及崩溃分析功能已禁用 model-select: panel-callout: - support-status-header: We support both 2D and 3D models + support-status-header: 我们同时支持 2D 和 3D 模型 support-status: > Click {select-button} to select or import models. Currently, {zip} (for Live2D and Spine models) and {vrm} (for VRM models) are supported. model-type-example: > - Neuro-sama uses 2D model driven by framework developed by Live2D Inc, while Grok Ani (in Grok Companion) uses 3D model driven by VRM / MMD open formats. + Neuro-sama 使用由 Live2D Inc 开发的框架驱动的 2D 模型;Grok Ani(Grok Companion 中的角色)则使用由 VRM / MMD 开放格式驱动的 3D 模型。 select-model: - title: Model Selector - button: Select model - select: Pick - import: Import - remove: Remove - confirm: Confirm + title: 模型选择器 + button: 选择模型 + select: 选择 + import: 导入 + remove: 移除 + confirm: 确认 live2d: change-model: from-file: 从文件加载 @@ -144,62 +144,62 @@ live2d: theme-color-from-model: title: 从模型提取主题颜色 description: > - Extract prominent colors from current rendering canvas. Click on the color to apply it to AIRI. Try to extract multiple times, with the model in different poses, if the colors are not desirable. + 从当前渲染画布提取主要颜色。点击颜色即可应用到 AIRI;如果颜色不理想,请让模型摆出不同姿势后多次提取。 button-extract: title: 提取 animation: - title: Animation + title: 动画 focus: - title: Enable mouse tracking - description: Look at the cursor while it is moving. Idle eye movement resumes after the cursor stops. - offset: Eye offset(%) + title: 启用鼠标跟踪 + description: 鼠标移动时注视光标;光标停止后恢复空闲眼部动作。 + offset: 眼部偏移(%) force-idle-eye-animation: - title: Idle eye movement - description: Randomly look around when there is no active cursor focus. + title: 空闲眼部动作 + description: 没有活动光标焦点时随机环顾四周。 blink-enable: - title: Enable blink - description: Let the model blink. + title: 启用眨眼 + description: 让模型眨眼。 auto-blink: - title: Auto - description: Use default blinking animation of the model + title: 自动 + description: 使用模型默认的眨眼动画 force-auto-blink: - title: Force - description: Force blinking animation with external timer + title: 强制 + description: 使用外部计时器强制播放眨眼动画 blink-mode: - title: Blink mode - description: Choose the model built-in blink or AIRI's forced blink timer. + title: 眨眼模式 + description: 选择模型内置眨眼或 AIRI 的强制眨眼计时器。 idle-motion: - title: Idle animation - no-motion: No animation available - placeholder: Select animation - disable-motion: Disabled - disable-motion-description: Disable idle animation + title: 空闲动画 + no-motion: 没有可用动画 + placeholder: 选择动画 + disable-motion: 已禁用 + disable-motion-description: 禁用空闲动画 parameters: - title: Model Parameters + title: 模型参数 render-scale: - title: Render scale + title: 渲染缩放 fps: title: FPS - description: Limit rendering frame rate + description: 限制渲染帧率 options: unlimited: '∞' - shadow: Drop shadow - reset-parameters: Reset to default parameters - clear-model-cache: Clear model cache + shadow: 投影 + reset-parameters: 重置为默认参数 + clear-model-cache: 清除模型缓存 expressions: - title: Expressions - override-toggle: Expression system + title: 表情 + override-toggle: 表情系统 sdk-preset-preserved-notice: > - SDK expression manager and eye blink are preserved when disabled. - no-expression: No expressions available for this model. - llm-integration-wip: LLM tool integration is not yet wired up. - save-default: Save expression defaults - reset: Reset all expressions - expose-to-llm-toggle: Expose to LLM + 禁用时仍保留 SDK 表情管理器和眨眼功能。 + no-expression: 此模型没有可用表情。 + llm-integration-wip: LLM 工具集成尚未接入。 + save-default: 保存表情默认值 + reset: 重置所有表情 + expose-to-llm-toggle: 公开给 LLM expose-to-llm-options: - none: None - all: All - custom: Custom + none: 无 + all: 全部 + custom: 自定义 microphone: 麦克风 models: 模型 pages: @@ -263,7 +263,7 @@ pages: label: 新密码 placeholder: 最少 8 个字符 confirmPassword: - label: Confirm new password + label: 确认新密码 placeholder: 再次输入新密码 action: changePassword: 更新密码 @@ -279,24 +279,24 @@ pages: danger: tab: 危险操作 title: 危险操作 - description: Irreversible account actions live here. + description: 不可逆的账户操作位于此处。 deleteAccount: title: 删除帐户 description: 永久删除您的帐户和所有个人数据。 action: 删除帐户 modal: - title: Delete account? + title: 删除账户? warning: 此操作无法撤销。已经激活的订阅将被取消,现存的 Flux 余额均会被清除。 confirmEmail: label: 请再次输入电子邮箱以确认删除 placeholder: '' - mismatch: Email does not match. - confirm: Send confirmation email - cancel: Cancel + mismatch: 邮箱不匹配。 + confirm: 发送确认邮件 + cancel: 取消 message: - emailSent: Check {email} for the deletion link. + emailSent: 请查看 {email} 中的删除链接。 error: - fallback: Could not start deletion. Try again later. + fallback: 无法开始删除操作,请稍后重试。 card: activate: 激活 active: 已激活 @@ -311,8 +311,8 @@ pages: consciousness: model: 意识 / 模型 vision: - provider: Vision / Provider - model: Vision / Model + provider: 视觉 / 提供商 + model: 视觉 / 模型 created_by: 创建者 creator_notes: 创建者笔记 delete: 删除 @@ -369,8 +369,8 @@ pages: scenario: '错误:必须提供一个情境。' systemprompt: '错误:请提供系统提示。' posthistoryinstructions: '错误:必须提供消息历史后的提示。' - invalid_artistry_json: 'Error: Artistry provider options contains invalid JSON.' - none: None + invalid_artistry_json: '错误:绘图提供商选项包含无效 JSON。' + none: 无 modules: 模块 name_asc: 名称 (A-Z) name_desc: 名称 (Z-A) @@ -390,14 +390,14 @@ pages: systemprompt: 系统提示词 title: AIRI 角色卡 try_different_search: 尝试使用其他关键词搜索 - export: Export - exported: Card package exported - export_failed: Failed to export card package - imported: Card package imported - import_missing_file: Card package is missing required files - import_invalid_file: Card package file is invalid + export: 导出 + exported: 卡片包已导出 + export_failed: 导出卡片包失败 + imported: 卡片包已导入 + import_missing_file: 卡片包缺少必需文件 + import_invalid_file: 卡片包文件无效 upload: 上传 - upload_desc: Click or drag an AIRI card package to import + upload_desc: 点击或拖动 AIRI 角色卡包以导入 memory: description: 存放记忆的地方,以及策略 title: 记忆体 @@ -437,7 +437,7 @@ pages: desktop: title: 重置桌面设置和状态 description: 清除 AIRI 桌面设置和运行状态。 - center: Move desktop window to center + center: 将桌面窗口移至中央 reset: 重置桌面数据 confirmations: tooltip: 您确定吗? @@ -451,7 +451,7 @@ pages: modules_reset: 重置模块设置。 providers_reset: 服务端设置重置。 all_deleted: 已删除所有本地数据。 - desktop_window_centered: Desktop window moved to screen center. + desktop_window_centered: 桌面窗口已移至屏幕中央。 desktop_reset: 桌面数据重置。 models: description: 切换角色的 Live2D、VRM、Spine 模型 @@ -514,27 +514,27 @@ pages: description: 在检测节拍之前进行预热,以提高准确性 label: 预热 artistry: - title: Artistry - description: Image generation, scene background and drawing. + title: 绘图 + description: 图像生成、场景背景和绘图。 page: - title: Artistry Provider Configuration - description: Select the active backend provider for image generation. Characters can override this in their Card settings. + title: 绘图提供商配置 + description: 选择用于图像生成的活动后端提供商。角色可以在其角色卡设置中覆盖此选项。 providers: none: - name: None - description: Bypass and disable the image generation module globally. + name: 无 + description: 全局绕过并禁用图像生成模块。 comfyui: - name: ComfyUI (Local) - description: Use a local ComfyUI instance via WSL for image generation. + name: ComfyUI(本地) + description: 使用本地 ComfyUI 实例通过 WSL 生成图像。 replicate: - name: Replicate.ai (Cloud) - description: Use cloud-based models via the Replicate API. + name: Replicate.ai(云端) + description: 通过 Replicate API 使用云端模型。 nanobanana: - name: Nano Banana (Preview) - description: Use Google AI Studio for image preview and reactions. + name: Nano Banana(预览) + description: 使用 Google AI Studio 进行图像预览和响应。 card: - description: Configure how AIRI generates images and visual content. - comfyui_empty: No ComfyUI workflows configured. Go to Settings → Providers → ComfyUI to upload a workflow template. + description: 配置 AIRI 生成图像和视觉内容的方式。 + comfyui_empty: 未配置 ComfyUI 工作流。前往设置 → 提供商 → ComfyUI 上传工作流模板。 exposed_fields: '{count} exposed fields' open_on_replicate: Open on Replicate instruction_sync: @@ -995,11 +995,11 @@ pages: description: Image generation and design model providers. e.g. ComfyUI, Replicate. items: comfyui: - description: Local image generation runner. + description: 本地图像生成运行器。 replicate: - description: Cloud-based model inference service. + description: 云端模型推理服务。 nanobanana: - description: Google AI Studio Image Preview. + description: Google AI Studio 图像预览。 helpinfo: title: 第一次使用? description: > @@ -1031,8 +1031,8 @@ pages: description: aws.amazon.com/bedrock config: api-key: - label: Bedrock API Key - description: Amazon Bedrock API key (generate in AWS Console → Bedrock → API Keys) + label: Bedrock API 密钥 + description: Amazon Bedrock API 密钥(在 AWS 控制台 → Bedrock → API Keys 中生成) placeholder: bedrock-... region: label: AWS 区域 @@ -1088,94 +1088,94 @@ pages: settings: title: ComfyUI(本地) heading: ComfyUI 原生 API - description: Connect to your local ComfyUI and bring your own workflows. + description: 连接本地 ComfyUI 并使用自己的工作流。 info: what_you_need: - label: What You Need - value: ComfyUI running locally or on your network. + label: 所需条件 + value: 在本地或局域网中运行的 ComfyUI。 how_to_export: - label: How To Export - value: Enable Dev Mode → "Save (API Format)". + label: 导出方式 + value: 启用开发者模式 → “保存(API 格式)”。 scope_boundary: - label: Scope Boundary - value: Model downloads & node installs are your job. + label: 责任范围 + value: 模型下载和节点安装需要您自行完成。 connection: - title: Connection - connected: Connected - failed: Connection failed - error_prefix: Error - test: Test - testing: Testing... - unknown_error: Unknown connection error - unknown_gpu: Unknown GPU + title: 连接 + connected: 已连接 + failed: 连接失败 + error_prefix: 错误 + test: 测试 + testing: 测试中... + unknown_error: 未知连接错误 + unknown_gpu: 未知 GPU server_url: - label: Server URL - description: The address where ComfyUI is running + label: 服务器地址 + description: ComfyUI 正在运行的地址 placeholder: http://localhost:8188 cors: - title: CORS Block Detected - description: ComfyUI blocks requests from other applications by default. To allow AIRI to connect, you must start ComfyUI with the `--enable-cors-header "*"` flag. + title: 检测到 CORS 阻止 + description: ComfyUI 默认会阻止来自其他应用程序的请求。若要允许 AIRI 连接,必须使用 --enable-cors-header "*" 参数启动 ComfyUI。 command: python main.py --enable-cors-header "*" workflows: - title: Workflow Templates - upload: Upload Workflow - cancel_upload: Cancel - empty: No workflows uploaded yet. Click "Upload Workflow" to import a workflow_api.json from ComfyUI. - exposed_parameters: Exposed Parameters - summary: '{nodes} nodes · {fields} exposed fields' - remove: Remove - config_snippet: Artistry Config Snippet - copy_json: Copy JSON - paste_hint: Paste this into your AIRI Card artistry config to override these nodes. + title: 工作流模板 + upload: 上传工作流 + cancel_upload: 取消 + empty: 尚未上传工作流。点击“上传工作流”从 ComfyUI 导入 workflow_api.json。 + exposed_parameters: 公开参数 + summary: '{nodes} 个节点 · {fields} 个公开字段' + remove: 移除 + config_snippet: 绘图配置片段 + copy_json: 复制 JSON + paste_hint: 将其粘贴到 AIRI 角色卡绘图配置中,以覆盖这些节点。 upload: - prompt: Drop or select a workflow_api.json file - invalid_json: Invalid JSON + prompt: 拖放或选择 workflow_api.json 文件 + invalid_json: 无效的 JSON workflow_name: - label: Workflow Name - description: Give this workflow a recognizable name - placeholder: e.g. Anime Text2Img - select_fields: 'Select fields to expose to the AI agent:' - fields_exposed: '{count} field(s) exposed' - save: Save Workflow + label: 工作流名称 + description: 为此工作流指定易于识别的名称 + placeholder: 例如:Anime Text2Img + select_fields: '选择要公开给 AI 智能体的字段:' + fields_exposed: '已公开 {count} 个字段' + save: 保存工作流 replicate: settings: title: Replicate.ai - heading: Replicate.ai Configuration - description: Configure your cloud image generation settings. + heading: Replicate.ai 配置 + description: 配置云端图像生成设置。 api_key: - label: API Key - description: Your Replicate API token (starts with r8_) + label: API 密钥 + description: 您的 Replicate API 令牌(以 r8_ 开头) placeholder: r8_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX default_model: - label: Default Model - description: Fallback owner/model string to use if the character card doesn't specify one + label: 默认模型 + description: 角色卡未指定模型时使用的备用所有者/模型字符串 placeholder: black-forest-labs/flux-schnell aspect_ratio: - label: Aspect Ratio - description: Default image aspect ratio (e.g. 16:9, 1:1, 9:16) + label: 宽高比 + description: 默认图像宽高比(例如 16:9、1:1、9:16) placeholder: '16:9' inference_steps: - label: Inference Steps - description: Number of steps for the diffusion process (lower is faster, higher is better quality) + label: 推理步数 + description: 扩散过程的步数(越低越快,越高质量越好) nanobanana: settings: title: Nano Banana - heading: Nano Banana (Google AI Studio) - description: Configure Google Gemini's native image generation capabilities. + heading: Nano Banana(Google AI Studio) + description: 配置 Google Gemini 的原生图像生成能力。 api_key: - label: API Key - description: Your Google AI Studio API Key + label: API 密钥 + description: 您的 Google AI Studio API 密钥 placeholder: AIpk... preferred_model: - label: Preferred Model - description: The specific Gemini image preview model to use + label: 首选模型 + description: 要使用的特定 Gemini 图像预览模型 default_resolution: - label: Default Resolution - description: The target resolution for generated images + label: 默认分辨率 + description: 生成图像的目标分辨率 model_options: - nano_banana_2: Nano Banana 2 (Gemini 3.1 Flash Image) - nano_banana_pro: Nano Banana Pro (Gemini 3 Pro Image) - nano_banana: Nano Banana (Gemini 2.5 Flash Image) + nano_banana_2: Nano Banana 2(Gemini 3.1 Flash Image) + nano_banana_pro: Nano Banana Pro(Gemini 3 Pro Image) + nano_banana: Nano Banana(Gemini 2.5 Flash Image) deepseek: description: DeepSeek.com title: 深度求索 DeepSeek @@ -1307,6 +1307,9 @@ pages: n1n: description: n1n.ai - 高性能的 AI API 提供商 title: n1n + openpaths: + description: openpaths.io + title: OpenPaths openrouter: description: OpenRouter.ai title: OpenRouter @@ -1346,8 +1349,8 @@ pages: label: App ID title: 火山引擎 volcengine-coding-plan: - description: Volcengine Coding Plan - title: Volcengine Coding Plan + description: 火山引擎 Coding Plan + title: 火山引擎 Coding Plan byteplus: description: byteplus.com title: BytePlus @@ -1380,8 +1383,8 @@ pages: description: 登录后即可使用的服务来源 speech-title: AIRI 官方语音合成服务 speech-description: 登录后即可使用的发声单元服务 - speech-streaming-title: Official Streaming Speech Provider - speech-streaming-description: Official low-latency text-to-speech provider by AIRI (bidirectional WebSocket). + speech-streaming-title: 官方流式语音服务提供商 + speech-streaming-description: AIRI 官方低延迟文本转语音服务提供商(双向 WebSocket)。 transcription-title: AIRI 官方语音识别服务 transcription-description: 登录后即可使用的听觉单元服务 transcriptions: @@ -1658,36 +1661,81 @@ vrm: skybox-intensity: 天空盒光照强度 skybox-specular-mix: 漫反射/镜面反射混合系数 spine: - title: Spine Settings + title: Spine 设置 + scale-and-position: + title: 缩放与位置 + scale: 缩放 + x: X + 'y': 'Y' + theme-color-from-model: + title: 从模型提取颜色 + button-extract: + title: 提取 + animation: + title: 动画 + idle-animation: 空闲动画 + mix-duration: 混合时长(秒) + speed: 动画速度 + appearance: + title: 外观 + variant: + title: 变体 + current-variant: 当前变体 + skin: + title: 皮肤 + current-skin: 当前皮肤 + rendering: + title: 渲染 + max-fps: 最大帧率 + render-scale: 渲染缩放 + fps: + options: + unlimited: 不限 +mmd: + title: MMD Settings scale-and-position: title: Scale And Position scale: Scale x: X 'y': 'Y' + rotation: Rotation theme-color-from-model: title: Extract colors from model button-extract: title: Extract + physics: + title: Physics & Rig + enabled: Enable physics (hair, skirt, accessories) + ik: Enable IK (inverse kinematics) + grant: Enable append-bone propagation + gravity: Gravity strength + gaze: + title: Gaze + tracking: Looking at + options: + cursor: Mouse + camera: Camera + none: Disabled animation: title: Animation - idle-animation: Idle Animation - mix-duration: Mix Duration (seconds) - speed: Animation Speed - appearance: - title: 外观 - variant: - title: Variant - current-variant: Active Variant - skin: - title: Skin - current-skin: Current Skin - rendering: - title: Rendering - max-fps: Maximum FPS - render-scale: Render Scale - fps: - options: - unlimited: Unlimited + idle-motion: Idle Motion + import-motion: Import Motion (.vmd) + play-once: Preview Animation + remove: Remove motion + description: >- + Import VMD motion files, set one as the looping idle, or play any as a one-shot gesture. Map emotions to motions to play gestures alongside facial expressions. + morphs: + title: Morphs + auto: (auto) + revert: Revert to auto + no-morphs: This model exposes no morphs. + description: >- + The renderer auto-detects standard Japanese morph names (あいうえお, まばたき). Override a slot here if your model uses non-standard names. + materials: + title: Materials + no-materials: This model exposes no materials. + description: >- + Adjust the opacity of individual model parts (face, hair, clothing, accessories). Set a part to 0 to hide it. websocket-secure-enabled: title: 启用安全WebSocket (WSS) description: >- diff --git a/packages/i18n/src/locales/zh-Hans/tamagotchi/stage.yaml b/packages/i18n/src/locales/zh-Hans/tamagotchi/stage.yaml index e7b9fc419..745b26f77 100644 --- a/packages/i18n/src/locales/zh-Hans/tamagotchi/stage.yaml +++ b/packages/i18n/src/locales/zh-Hans/tamagotchi/stage.yaml @@ -18,8 +18,8 @@ docs: 'center-main-window': 移至屏幕中央 'open-hearing-controls': 打开听力控制 'drag-to-move-window': 拖动以移动窗口 - 'stop-speaking': Stop speaking - 'speaker-idle': Speaker + 'stop-speaking': 停止说话 + 'speaker-idle': 扬声器 'switch-to-light-mode': 切换到亮色模式 'switch-to-dark-mode': 切换到暗色模式 'pin-on-top': 置顶窗口 diff --git a/packages/i18n/src/locales/zh-Hant/settings.yaml b/packages/i18n/src/locales/zh-Hant/settings.yaml index ae42279cb..1d8941b86 100644 --- a/packages/i18n/src/locales/zh-Hant/settings.yaml +++ b/packages/i18n/src/locales/zh-Hant/settings.yaml @@ -10,7 +10,7 @@ animations: dialogs: onboarding: official: - title: AIRI Official Provider + title: AIRI 官方提供者 title: 歡迎來到 AIRI! description: 讓我們先設定您的第一個服務來源來開始使用。 selectProvider: 選擇服務來源 @@ -20,26 +20,26 @@ dialogs: baseUrl: 基礎 URL baseUrlHelp: API 端點 URL(如果不確定請使用預設值) accountId: 帳號 ID - validationRunning: Running tests + validationRunning: 正在執行測試 validationSuccess: 設定驗證成功 - validationPartial: Configuration partially validated + validationPartial: 設定已部分驗證 validationFailed: 設定驗證失敗 validationError: '驗證錯誤:{error}' - testGeneration: Ping API - testGenerationRunning: Ping... - testGenerationFailed: Ping test failed - retryPingCheck: Retry + testGeneration: 測試 API + testGenerationRunning: 測試中... + testGenerationFailed: Ping 測試失敗 + retryPingCheck: 重試 skipForNow: 先略過 saveAndContinue: 儲存並繼續 next: 下一步 retry: 重試 - credentialsSafeLabel: Keep your API keys and credentials safe! + credentialsSafeLabel: 請妥善保管 API 金鑰與憑證! credentialsSafeLocal: >- - AIRI is running pure locally in your PC, and we will never steal your credentials for AI / LLM providers. But keep in mind that your API keys are sensitive information. Make sure to keep them safe and do not share them with anyone. + AIRI 完全在您的電腦本機執行,我們絕不會竊取您用於 AI / LLM 提供者的憑證。但請注意,API 金鑰屬於敏感資訊,請妥善保管,切勿與他人分享。 credentialsSafeOpenSource: >- - AIRI is open sourced at {github}, if you want to check how we handle your credentials, feel free to inspect our code. + AIRI 以 {github} 開放原始碼,如果您想了解我們如何處理您的憑證,歡迎檢視我們的程式碼。 enableChatCheck: >- - Allow airi to send a "ping" message to the first available chat model to check availability + 允許 airi 傳送「ping」訊息給第一個可用的聊天模型,以檢查是否可用 start: 開始吧! loginPrompt: Sign in to use the official AIRI provider for the best experience. loginAction: Sign in @@ -290,13 +290,13 @@ pages: confirmEmail: label: Type your email to confirm placeholder: '' - mismatch: Email does not match. - confirm: Send confirmation email - cancel: Cancel + mismatch: 電子郵件不符。 + confirm: 傳送確認郵件 + cancel: 取消 message: - emailSent: Check {email} for the deletion link. + emailSent: 請查看 {email} 中的刪除連結。 error: - fallback: Could not start deletion. Try again later. + fallback: 無法開始刪除操作,請稍後再試。 card: activate: 啟用 active: 已啟用 @@ -311,8 +311,8 @@ pages: consciousness: model: 意識 / 模型 vision: - provider: Vision / Provider - model: Vision / Model + provider: 視覺/提供者 + model: 視覺/模型 created_by: 建立者 creator_notes: 建立者筆記 delete: 刪除 @@ -369,8 +369,8 @@ pages: scenario: '錯誤:必須提供一個情境。' systemprompt: '錯誤:請提供系統提示。' posthistoryinstructions: '錯誤:必須提供訊息歷史後的提示。' - invalid_artistry_json: 'Error: Artistry provider options contains invalid JSON.' - none: None + invalid_artistry_json: '錯誤:繪圖提供者選項包含無效 JSON。' + none: 無 modules: 模組 name_asc: 名稱 (A-Z) name_desc: 名稱 (Z-A) @@ -382,7 +382,7 @@ pages: scenario: 情境 search: 搜尋角色卡... sort_by: 排序方式 - body-model: Body / Display Model + body-model: 角色卡身體/顯示模型 speech: provider: 聲音 / 聲線 model: 聲音 / 模型 @@ -390,14 +390,14 @@ pages: systemprompt: 系統提示詞 title: AIRI 角色卡 try_different_search: 嘗試使用其他關鍵字搜尋 - export: Export - exported: Card package exported - export_failed: Failed to export card package - imported: Card package imported - import_missing_file: Card package is missing required files - import_invalid_file: Card package file is invalid + export: 匯出 + exported: 角色卡套件已匯出 + export_failed: 匯出角色卡套件失敗 + imported: 角色卡套件已匯入 + import_missing_file: 角色卡套件缺少必要檔案 + import_invalid_file: 角色卡套件檔案無效 upload: 上傳 - upload_desc: Click or drag an AIRI card package to import + upload_desc: 點擊或拖曳 AIRI 角色卡套件以匯入 memory: description: 存放記憶的地方,以及策略 title: 記憶體 @@ -431,13 +431,13 @@ pages: description: 清除所有本機設定、服務提供者設定與模型。 delete: 刪除所有資料 desktop-folder: - title: Open app data folder - description: Open AIRI's data folder in your file manager. - open: Open folder + title: 開啟應用程式資料夾 + description: 在檔案管理器中開啟 AIRI 的資料夾。 + open: 開啟資料夾 desktop: title: 重設桌面設定與狀態 description: 清除 AIRI 桌面設定與執行階段狀態 - center: Move desktop window to center + center: 將桌面視窗移至中央 reset: 重設桌面資料 confirmations: tooltip: 您確定嗎? @@ -451,7 +451,7 @@ pages: modules_reset: 模組設定已重設 providers_reset: 服務提供者設定已重設 all_deleted: 所有本機資料已刪除 - desktop_window_centered: Desktop window moved to screen center. + desktop_window_centered: 桌面視窗已移至螢幕中央。 desktop_reset: 桌面資料已重設 models: description: 切換角色的 Live2D、VRM、Spine 模型 @@ -514,43 +514,43 @@ pages: description: 是否在偵測節拍前進行預熱以提高準確度。 label: 預熱 artistry: - title: Artistry - description: Image generation, scene background and drawing. + title: 繪圖 + description: 圖像生成、場景背景與繪圖。 page: - title: Artistry Provider Configuration - description: Select the active backend provider for image generation. Characters can override this in their Card settings. + title: 繪圖提供者設定 + description: 選擇用於圖像生成的作用中後端提供者。角色可以在其角色卡設定中覆寫此選項。 providers: none: - name: None - description: Bypass and disable the image generation module globally. + name: 無 + description: 全域略過並停用圖像生成模組。 comfyui: - name: ComfyUI (Local) - description: Use a local ComfyUI instance via WSL for image generation. + name: ComfyUI(本機) + description: 使用本機 ComfyUI 實例透過 WSL 生成圖像。 replicate: - name: Replicate.ai (Cloud) - description: Use cloud-based models via the Replicate API. + name: Replicate.ai(雲端) + description: 透過 Replicate API 使用雲端模型。 nanobanana: - name: Nano Banana (Preview) - description: Use Google AI Studio for image preview and reactions. + name: Nano Banana(預覽) + description: 使用 Google AI Studio 進行圖像預覽與回應。 card: - description: Configure how AIRI generates images and visual content. - comfyui_empty: No ComfyUI workflows configured. Go to Settings → Providers → ComfyUI to upload a workflow template. - exposed_fields: '{count} exposed fields' - open_on_replicate: Open on Replicate + description: 設定 AIRI 生成圖像與視覺內容的方式。 + comfyui_empty: 尚未設定 ComfyUI 工作流程。前往「設定 → 提供者 → ComfyUI」上傳工作流程範本。 + exposed_fields: '已公開 {count} 個欄位' + open_on_replicate: 在 Replicate 上開啟 instruction_sync: - title: ComfyUI Instruction Sync - description: A specialized prompt is ready for your {workflowName} workflow. Applying this will overwrite current widget instructions so the AI knows how to use this specific template. - apply: Apply Recommended Prompt - keep: Keep Existing - provider: Artistry Provider + title: ComfyUI 指令同步 + description: 已為您的 {workflowName} 工作流程準備專用提示詞。套用後將覆寫目前的小工具指令,讓 AI 知道如何使用此特定範本。 + apply: 套用建議提示詞 + keep: 保留現有設定 + provider: 繪圖提供者 spawn_mode: - label: Manifestation Mode (Spawn Mode) - description: Choose how images are delivered to the interface. + label: 具現化模式(生成模式) + description: 選擇圖像傳送至介面的方式。 options: - bg: Background Environment - inline: Inline Chat - widget: Overlay Widget - bg_widget: Dual (Background + Widget) + bg: 背景環境 + inline: 內嵌聊天 + widget: 覆蓋小工具 + bg_widget: 雙重(背景 + 小工具) autonomous: title: Cinematic Autonomy (Autonomous Artist) description: When enabled, the "Producer" runs in parallel to the character to decide if a visual is needed. This prevents the character from forgetting to manifest scenes. @@ -758,66 +758,66 @@ pages: api-key-placeholder: 輸入您的 Tavily API 金鑰 configured: 網路搜尋已就緒! mcp-server: - title: MCP servers - description: Configure MCP servers and bring their tools into AIRI. - config-path: Config file + title: MCP 伺服器 + description: 設定 MCP 伺服器並將其工具帶入 AIRI。 + config-path: 設定檔 runtime-title: 執行狀態 - empty: No MCP servers yet — click "Add server" below to create one, or paste a config via "Edit JSON". - error-title: Oops - success-title: Done! + empty: 尚無 MCP 伺服器 — 點擊下方「新增伺服器」建立一個,或透過「編輯 JSON」貼上設定。 + error-title: 糟糕 + success-title: 完成! existing: - title: Configured - description: Servers recorded in mcp.json. Click any row to expand and edit it. - empty: Nothing here yet. Add one below! + title: 已設定 + description: 伺服器已記錄在 mcp.json 中。點擊任一列以展開並編輯。 + empty: 目前沒有內容。請在下方新增一個! add: - title: New - description: "Fill in a new server, then click \"Save and restart\" — it'll move into \"Configured\" above." - pending-badge: Unsaved + title: 新增 + description: '填寫新伺服器後,點擊「儲存並重新啟動」—它會移至上方的「已設定」區域。' + pending-badge: 未儲存 status: - unknown: not loaded + unknown: 未載入 actions: - open-config: Reveal in file manager - apply-and-restart: Save and restart - restart: Restart MCP - add-server: Add server - add-env: Add var - remove: Remove - test: Test - edit-json: Edit JSON - close-json: Close - format-json: Format - reset-draft: Reset - apply-json: Apply - cancel: Cancel - expand: Expand - collapse: Collapse + open-config: 在檔案管理器中顯示 + apply-and-restart: 儲存並重新啟動 + restart: 重新啟動 MCP + add-server: 新增伺服器 + add-env: 新增變數 + remove: 移除 + test: 測試 + edit-json: 編輯 JSON + close-json: 關閉 + format-json: 格式化 + reset-draft: 重設 + apply-json: 套用 + cancel: 取消 + expand: 展開 + collapse: 收合 fields: identifier: - label: Identifier - description: Unique name; becomes the key in mcp.json. - placeholder: e.g. filesystem + label: 識別碼 + description: 唯一名稱;會成為 mcp.json 中的鍵。 + placeholder: 例如:filesystem command: - label: Command - description: Executable spawned over stdio. - placeholder: e.g. npx + label: 指令 + description: 透過標準輸入輸出啟動的可執行檔。 + placeholder: 例如:npx args: - label: Arguments - description: One per line, in order. - placeholder: "-y\nsome-package-name\n/tmp" + label: 引數 + description: 每行一個,依序排列。 + placeholder: '-y some-package-name /tmp' cwd: - label: Working directory - description: Optional directory used as the process working directory. - placeholder: e.g. /Users/you/project + label: 工作目錄 + description: 用作程序工作目錄的選用目錄。 + placeholder: 例如:/Users/you/project env: - label: Environment - description: Vars passed to the child process. + label: 環境 + description: 傳遞給子程序的變數。 key-placeholder: KEY value-placeholder: value enabled: - label: Enabled + label: 已啟用 json: - title: Edit mcp.json - description: 'Edit the raw JSON directly. Click "Apply" to load it into the form, then "Save and restart" to write it to disk.' + title: 編輯 mcp.json + description: '直接編輯原始 JSON。點擊「套用」將其載入表單,然後點擊「儲存並重新啟動」寫入磁碟。' placeholder: Paste mcp.json here… test: title: Test connection @@ -1307,6 +1307,9 @@ pages: n1n: description: n1n.ai - 高效能AI API供應商 title: n1n + openpaths: + description: openpaths.io + title: OpenPaths openrouter: description: OpenRouter.ai title: OpenRouter @@ -1688,6 +1691,51 @@ spine: fps: options: unlimited: Unlimited +mmd: + title: MMD Settings + scale-and-position: + title: Scale And Position + scale: Scale + x: X + 'y': 'Y' + rotation: Rotation + theme-color-from-model: + title: Extract colors from model + button-extract: + title: Extract + physics: + title: Physics & Rig + enabled: Enable physics (hair, skirt, accessories) + ik: Enable IK (inverse kinematics) + grant: Enable append-bone propagation + gravity: Gravity strength + gaze: + title: Gaze + tracking: Looking at + options: + cursor: Mouse + camera: Camera + none: Disabled + animation: + title: Animation + idle-motion: Idle Motion + import-motion: Import Motion (.vmd) + play-once: Preview Animation + remove: Remove motion + description: >- + Import VMD motion files, set one as the looping idle, or play any as a one-shot gesture. Map emotions to motions to play gestures alongside facial expressions. + morphs: + title: Morphs + auto: (auto) + revert: Revert to auto + no-morphs: This model exposes no morphs. + description: >- + The renderer auto-detects standard Japanese morph names (あいうえお, まばたき). Override a slot here if your model uses non-standard names. + materials: + title: Materials + no-materials: This model exposes no materials. + description: >- + Adjust the opacity of individual model parts (face, hair, clothing, accessories). Set a part to 0 to hide it. websocket-secure-enabled: title: 啟用安全 WebSocket (WSS) description: >- diff --git a/packages/i18n/src/locales/zh-Hant/tamagotchi/stage.yaml b/packages/i18n/src/locales/zh-Hant/tamagotchi/stage.yaml index 6692db460..c0dac0eaf 100644 --- a/packages/i18n/src/locales/zh-Hant/tamagotchi/stage.yaml +++ b/packages/i18n/src/locales/zh-Hant/tamagotchi/stage.yaml @@ -18,8 +18,8 @@ docs: 'center-main-window': Move to screen center 'open-hearing-controls': 開啟聽力控制 'drag-to-move-window': 長按以移動視窗 - 'stop-speaking': Stop speaking - 'speaker-idle': Speaker + 'stop-speaking': 停止說話 + 'speaker-idle': 揚聲器 'switch-to-light-mode': 切換至亮色模式 'switch-to-dark-mode': 切換至深色模式 'pin-on-top': 置頂