You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by ka...@apache.org on 2025/09/19 14:34:53 UTC

(airflow) 03/04: Fix (internationalization): Simplified Chinese fills in gaps and removes extra content, optimizes description (#55564)

This is an automated email from the ASF dual-hosted git repository.

kaxilnaik pushed a commit to branch v3-1-test
in repository https://gitbox.apache.org/repos/asf/airflow.git

commit 204edbf49731b2b74fd6af27b3f34e45fffe2f18
Author: Fortytwo <fo...@gmail.com>
AuthorDate: Fri Sep 19 22:34:05 2025 +0800

    Fix (internationalization): Simplified Chinese fills in gaps and removes extra content, optimizes description (#55564)
    
    * feat(i18n): Add Chinese (zh-CN) internationalization support
    
    This commit adds Simplified Chinese (zh-CN) internationalization support to Airflow UI.
    
    The changes include:
    - Added complete Simplified Chinese translation files
    - Updated i18n configuration to include zh-CN locale
    - Updated translation completeness check script
    - Updated CODEOWNERS for zh-CN translations
    - Optimized translations for better user experience
    - Unified terminology for consistency (e.g. backfill, login)
    - Updated DAG/DAGs capitalization according to #55099
    
    Co-authored-by: @gyli
    
    * Apply suggestions from code review
    
    * fixup! Apply suggestions from code review
    
    ---------
    
    Co-authored-by: Kaxil Naik <ka...@gmail.com>
    (cherry picked from commit 6204490195e6cc1e87d320c95702b6410d589f17)
---
 .../airflow/ui/public/i18n/locales/zh-CN/admin.json   | 10 +++++-----
 .../airflow/ui/public/i18n/locales/zh-CN/common.json  | 19 +++++++++++++++----
 .../src/airflow/ui/public/i18n/locales/zh-CN/dag.json |  3 +++
 .../airflow/ui/public/i18n/locales/zh-CN/dags.json    |  2 +-
 .../ui/public/i18n/locales/zh-CN/dashboard.json       |  4 ++--
 .../airflow/ui/public/i18n/locales/zh-CN/hitl.json    |  9 ++++++---
 6 files changed, 32 insertions(+), 15 deletions(-)

diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/zh-CN/admin.json b/airflow-core/src/airflow/ui/public/i18n/locales/zh-CN/admin.json
index b0adebfe4b9..c8853ac873c 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/zh-CN/admin.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/zh-CN/admin.json
@@ -16,7 +16,7 @@
     "columns": {
       "connectionId": "连接 ID",
       "connectionType": "连接类型",
-      "host": "主机",
+      "host": "主机地址",
       "port": "端口"
     },
     "connection_one": "连接",
@@ -53,7 +53,7 @@
       "error": "获取连接类型元数据失败",
       "standardFields": {
         "description": "描述",
-        "host": "主机",
+        "host": "主机地址",
         "login": "登录",
         "password": "密码",
         "port": "端口",
@@ -143,15 +143,15 @@
       "options": {
         "fail": {
           "description": "如果检测到任何已存在的变量,则导入失败。",
-          "title": "失败"
+          "title": "严格模式"
         },
         "overwrite": {
           "description": "发生冲突时覆盖变量。",
-          "title": "覆盖"
+          "title": "覆盖模式"
         },
         "skip": {
           "description": "忽略导入已存在的变量。",
-          "title": "跳过"
+          "title": "非严格模式"
         }
       },
       "title": "导入变量",
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/zh-CN/common.json b/airflow-core/src/airflow/ui/public/i18n/locales/zh-CN/common.json
index 9000a39b3bf..2f5d8930691 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/zh-CN/common.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/zh-CN/common.json
@@ -8,6 +8,12 @@
     "Variables": "变量"
   },
   "allOperators": "全部操作器",
+  "appearance": {
+    "appearance": "外观",
+    "darkMode": "深色模式",
+    "lightMode": "浅色模式",
+    "systemMode": "跟随系统设置"
+  },
   "asset_one": "资源",
   "asset_other": "资源",
   "assetEvent_one": "资源事件",
@@ -33,6 +39,7 @@
     "fileLocation": "文件位置",
     "hasTaskConcurrencyLimits": "有任务并发数限制",
     "lastExpired": "最后过期时间",
+    "lastParseDuration": "最后解析耗时",
     "lastParsed": "最后解析时间",
     "latestDagVersion": "最新 Dag 版本",
     "latestRun": "上次 Dag 执行",
@@ -93,6 +100,12 @@
     "or": "或"
   },
   "filter": "筛选",
+  "filters": {
+    "logicalDateFrom": "逻辑日期起始",
+    "logicalDateTo": "逻辑结束日期",
+    "runAfterFrom": "执行时间起始",
+    "runAfterTo": "执行时间结束"
+  },
   "logicalDate": "逻辑日期",
   "logout": "退出登录",
   "logoutConfirmation": "确定要退出登录吗?",
@@ -184,8 +197,6 @@
     "up_for_retry": "等待重试",
     "upstream_failed": "上游任务失败"
   },
-  "switchToDarkMode": "切换到深色模式",
-  "switchToLightMode": "切换到浅色模式",
   "table": {
     "completedAt": "完成时间",
     "createdAt": "创建时间",
@@ -193,7 +204,7 @@
     "filterColumns": "筛选表格列",
     "filterReset_one": "重置筛选",
     "filterReset_other": "重置筛选",
-    "from": "从",
+    "from": "开始时间",
     "maxActiveRuns": "最大活跃执行数",
     "noTagsFound": "找不到标签",
     "tagMode": {
@@ -201,7 +212,7 @@
       "any": "任何"
     },
     "tagPlaceholder": "按标签筛选",
-    "to": "到"
+    "to": "结束时间"
   },
   "task": {
     "documentation": "任务文档",
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/zh-CN/dag.json b/airflow-core/src/airflow/ui/public/i18n/locales/zh-CN/dag.json
index 100cdc41be5..6f9a498f7a2 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/zh-CN/dag.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/zh-CN/dag.json
@@ -35,6 +35,7 @@
   "code": {
     "bundleUrl": "套件包链接",
     "noCode": "找不到代码",
+    "parseDuration": "解析耗时:",
     "parsedAt": "解析时间:"
   },
   "extraLinks": "额外链接",
@@ -84,6 +85,8 @@
       "assetEvent_other": "已创建资源事件"
     },
     "failedLogs": {
+      "hideLogs": "隐藏日志",
+      "showLogs": "显示日志",
       "title": "最近失败任务的日志",
       "viewFullLogs": "查看完整日志"
     }
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/zh-CN/dags.json b/airflow-core/src/airflow/ui/public/i18n/locales/zh-CN/dags.json
index b4537e28e69..b8e4f0929d4 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/zh-CN/dags.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/zh-CN/dags.json
@@ -16,7 +16,7 @@
       "unfavorite": "未加入收藏"
     },
     "paused": {
-      "active": "启用中",
+      "active": "已启用",
       "all": "全部",
       "paused": "暂停"
     },
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/zh-CN/dashboard.json b/airflow-core/src/airflow/ui/public/i18n/locales/zh-CN/dashboard.json
index cf811012353..89022de3eb7 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/zh-CN/dashboard.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/zh-CN/dashboard.json
@@ -33,10 +33,10 @@
   },
   "source": "来源",
   "stats": {
-    "activeDags": "启用中的 Dags",
+    "activeDags": "已启用的 Dags",
     "failedDags": "失败的 Dags",
     "queuedDags": "排队的 Dags",
-    "requiredActions": "待响应的任务实例",
+    "requiredActions": "待操作的任务实例",
     "runningDags": "执行中的 Dags",
     "stats": "统计"
   },
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/zh-CN/hitl.json b/airflow-core/src/airflow/ui/public/i18n/locales/zh-CN/hitl.json
index ef0d75ecba8..0c4cc910c60 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/zh-CN/hitl.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/zh-CN/hitl.json
@@ -6,9 +6,11 @@
       "received": "已响应"
     }
   },
-  "requiredAction_one": "待响应的任务实例",
-  "requiredAction_other": "待响应的任务实例",
-  "requiredActionState": "待响应的任务实例状态",
+  "requiredAction_one": "待操作的任务实例",
+  "requiredAction_other": "待操作的任务实例",
+  "requiredActionCount_one": "待操作的任务实例 ({{count}})",
+  "requiredActionCount_other": "待操作的任务实例 ({{count}})",
+  "requiredActionState": "待操作的任务实例状态",
   "response": {
     "error": "响应失败",
     "optionsDescription": "请为此任务实例选择一个选项",
@@ -23,6 +25,7 @@
     "approvalRequired": "需要批准",
     "choiceReceived": "已选择",
     "choiceRequired": "需要选择",
+    "noResponseReceived": "未收到响应",
     "rejectionReceived": "已拒绝",
     "responseReceived": "已响应",
     "responseRequired": "需要响应"