Skip to content

Translations update from AnvilCraft Translate#4172

Open
Gugle2308 wants to merge 1 commit into
dev/1.21/1.6from
translate/1.21/1.6
Open

Translations update from AnvilCraft Translate#4172
Gugle2308 wants to merge 1 commit into
dev/1.21/1.6from
translate/1.21/1.6

Conversation

@Gugle2308

Copy link
Copy Markdown
Collaborator

Translations update from AnvilCraft Translate for Anvil-Dev/AnvilCraft/1.21/1.6.

Current translation status:

Weblate translation status

@Gugle2308

Copy link
Copy Markdown
Collaborator Author

代码审查摘要

结论: ✅ 批准

统计: 1 个文件,+14 / -3 行变更

文件 状态 说明
lang/zh_cn.json ✅ +11 增,-3 删 2 项值修正 + 6 个新键(大型炼药锅 tooltip)

变更明细

Key 旧值 新值 说明
laser_interface.received 接收激光:等级 %s+ 接收激光:等级 %s 移除 + 后缀——发射端保留 +等级 %s+),接收端去掉后同族区分更清晰 ✅
infinity_capacity.title 无限容量 无限储量 「储量」比「容量」更贴合储罐上下文 ✅
block.large_cauldron 大型炼药锅 新方块名,翻译正确 ✅
large_cauldron.burning 燃烧中 前导空格应为 tooltip 缩进对齐,符合已有惯例 ✅
large_cauldron.fluids/inputs/outputs 流体: / 输入物品: / 输出物品: 语义清晰,冒号统一 ✅
large_cauldron.will_process 将被%s %s 占位符保留完整 ✅

专项检查结果

检查项 结果
JSON 结构完整性 ✅ 末尾 } 闭合正确,尾逗号合规
不良内容扫描 ✅ 无
英文残留 ✅ 无(全文均为中文)
占位符完整性 %s 数量正确
Key 意外删除 ✅ 无(仅 2 项值修改 + 6 项新增)
简繁混用 ✅ N/A(仅 zh_cn)
值内重复词 ✅ 无

总体评价

干净的翻译更新 PR。两项值修正(+ 后缀清理 + 术语优化)和大型炼药锅相关的新键翻译均准确且符合项目已有风格。无阻塞性问题,建议合并。

@Gugle2308
Gugle2308 force-pushed the translate/1.21/1.6 branch from 9365361 to f255b3c Compare July 17, 2026 10:43
@Gugle2308

Copy link
Copy Markdown
Collaborator Author

现在我已充分掌握信息,让我输出审查意见。


代码审查摘要 — PR #4172

操作: synchronize (Weblate 翻译同步)
范围: 11 个语言文件 / 0 新增 / 0 删除 / 0 EOF 缺失

文件 +行 -行 类型
de_de.json 761 1 🔄 批量新增 (全量重写尾部)
ru_ru.json 761 1 🔄 批量新增 (全量重写尾部)
zh_hk.json 727 1 🔄 批量新增 (全量重写尾部)
zh_cn.json 10 4 🎯 定向更新 + 新增 key
zh_tw.json 10 1 🎯 定向新增 key
zh_meme.json 8 2 🎯 定向更新 + 新增梗
es_es.json 4 1 🎯 定向新增 key
fr_fr.json 4 1 🎯 定向新增 key
ja_jp.json 4 1 🎯 定向新增 key
ko_kr.json 4 1 🎯 定向新增 key
lzh.json 2 1 🎯 定向新增 1 key

✅ 定向更新检查 (zh_cn / zh_tw / zh_meme / 其他)

zh_cn.json

  • laser_interface.received: %s+%s — ✅ 修复了多余的 + 符号,格式正确
  • ice_and_fire.description: 从列举式改为一句话概括,表述更通顺 ✅
  • infinity_capacity.title: "无限容量" → "无限储量" — 更准确的术语 ✅
  • large_cauldron 系列 6 条新增 key: 翻译质量好,格式占位符 %s 使用正确 ✅

zh_tw.json

  • 9 条新增 key (crab_trap, celestial_forging_anvil, black_hole, dragon_rod 系列):
    • "蟹籠"、"鍛星鐵砧"、"黑洞"、"攜帶型方塊吞噬器" — 繁中用词正确 ✅
    • 简体字扫描通过 — 无任何简体字残留
    • frost_metal_block 旧值仅加了尾逗号,内容不变 ✅

zh_meme.json

  • "屑笼" (crab_trap) — 符合梗风格 ✅
  • "天朝编造哐当" (celestial_forging_anvil) — 谐音创造 ✅
  • "大胃袋" (black_hole) — 黑话式幽默 ✅
  • dragon_rod 三条: "左键我的,右键调整作用范围…" — 精简梗化,风格一致 ✅
  • onliners 加了尾空格,simple_magnetic_chute 加了尾逗号 — 均为 JSON 结构调整 ✅
  • 所有 meme key 均在 zh_tw diff 中有对应,无孤立 key ✅

es_es, fr_fr, ja_jp, ko_kr

  • 各 +4/-1: working_progress.title 加了尾逗号,新增 crab_trapportal_conversionportal_conversion.fall_through 的本地化翻译 ✅

lzh.json

  • 新增 config.jade.plugin_anvilcraft.crab_trap: "箄" — 文言文用词恰当 ✅

⚠️ 批量同步文件观察 (de_de / ru_ru / zh_hk)

这三个文件进行了大块批量新增(尾部全量重写),新增了 725~761 条 key 的翻译。观察到以下情况:

英文残留比例较高(非本 PR 引入,为 Weblate 平台当前翻译完成度):

文件 预计翻译完成度 备注
de_de.json ~27% 德文 (207/761) 大部分值仍为英文原文
ru_ru.json ~0% 俄文 几乎全部为英文原文
zh_hk.json ~14% 粤语/中文 (99/727) 大部分为英文原文

这些是 Weblate 平台上各语言翻译进度的反映,不是本 PR 产生的问题。PR 正确同步了 Weblate 中的当前状态。

Key 一致性: de_de 与 ru_ru 均含 758 个唯一 key,zh_hk 含 725 个(33 个 key 尚未录入,属 Weblate 平台差异)。


💡 建议(非阻塞性)

  • de_de.json / ru_ru.json / zh_hk.json 的英文残留较多,建议在 Weblate 平台上鼓励社区翻译者补齐这些语种的翻译
  • zh_cn.jsonlarge_cauldron.will_process: " 将被%s" — 占位符正确,建议后续在与 en_us 对照时确认 %s 的语义(目前仅凭自身上下文难以判断「将被」后面预期的名词是主格还是宾格)
  • zh_meme.json dragon_rod 三条都用了相同的梗化文本,风格一致 ✅

🟢 看起来不错

  • "无限容量" → "无限储量" 改得好,infinity capacity 翻译成「储量」比「容量」更准确(指向流体存储能力)
  • %s+%s 修复了旧版多余 + 号的 Bug
  • ice_and_fire.description 从具体列举改为概括性描述,更简洁且避免了当方块列表更新时需要同步修改的问题
  • 跨语言新增 key 集合一致,同步完整
  • 所有 JSON 文件尾逗号结构正确,无语法错误

结论: APPROVE — 本次 Weblate 翻译同步质量良好,定向更新(zh_cn/zh_tw/zh_meme 等)的内容审校通过。批量同步文件中的英文残留为 Weblate 平台翻译完成度问题,不应阻塞此 PR。可以直接合并。

@Gugle2308
Gugle2308 force-pushed the translate/1.21/1.6 branch from f255b3c to 0a0c72a Compare July 17, 2026 12:02
@Gugle2308

Copy link
Copy Markdown
Collaborator Author

现在我已经全面掌握了变更情况,以下是审查报告。


代码审查:PR #4172 — Translations update from AnvilCraft Translate

文件: 11 个语言 JSON 文件(纯翻译 PR,无逻辑代码变更)

变更总览

语言 +/- 备注
zh_cn.json(源语言) +10/-4 ✅ 4 条修改 + 6 条 large_cauldron 新增 key
zh_tw.json +10/-1 ✅ 繁体中文翻译完整(龙杖、锻星铁砧等)
zh_hk.json +727/-1 ⚠️ ~607/727 条是英文占位(83%)
zh_meme.json +8/-2 ✅ 整活翻译到位
de_de.json +761/-1 ⚠️ ~641/761 条是英文占位(84%)
ru_ru.json +761/-1 ⚠️ ~640/761 条是英文占位(84%)
es_es.json +4/-1 ⚠️ crab_trap 已翻译,但 portal_conversion 2 条是英文
fr_fr.json +4/-1 ⚠️ 同上
ja_jp.json +4/-1 ⚠️ 同上(crab_trap "カニ鍋" ✅,portal_conversion ❌)
ko_kr.json +4/-1 ⚠️ 同上
lzh.json +2/-1 ✅ crab_trap "箄"

✅ 没有发现的问题

  • JSON 格式正确:所有文件末尾的逗号正确,无 EOF 缺换行
  • 无幽灵文件、无合并冲突痕迹
  • zh_cn(源语言)变更合理laser_interface.received 修复了多余 +ice_and_fire.description 优化为中文化表达,新增了 large_cauldron 相关键
  • zh_tw、zh_meme、lzh 翻译质量良好

⚠️ 需要关注的问题

1. 大量未翻译的英文占位 → 对用户体验有负面影响

de_de、ru_ru、zh_hk 三个文件各自新增了 760+ 行,其中 83–84% 是纯英文文本。例如:

- de_de: "advancements.anvilcraft.ice_and_fire.title": "A Song of Ice and Fire"
- ru_ru: "tooltip.anvilcraft.smart_block_placer.jade.placement_mode": "Placement Mode: %s"
- zh_hk: "advancements.anvilcraft.salted_fish_turns_over.title": "The salted fish turns over"

这些键之前在各自语言文件中不存在,Weblate 自动填充了英文源文本作为占位。这会导德语/俄语/粤语用户在游戏中看到大量英文混杂。

建议: 等待 Weblate 社区翻译完成后再合入,或者在 PR 描述中明确标注哪些语言是「部分翻译」状态。

2. portal_conversion 键在 6 种语言中全部为英文

gui.anvilcraft.category.portal_conversiongui.anvilcraft.category.portal_conversion.fall_through 这两个键在 de, es, fr, ja, ko, ru 中均为纯英文 "Block Falls Into Portal" / "Converted when fall through %s",即使 es/fr/ja/ko 的 crab_trap 有翻译。而且它们**不出现在 zh_cn(源语言)**中,说明来自英文代码字符串而非中文源。

3. zh_hk 的特殊情况

粤语翻译文件新增 727 行中只有 ~120 行是粤语(如旧条目末尾加逗号),其余 ~607 行是英文。zh_hk 社区用户可能会注意到大量英文文本。


评估

这是一个纯粹的机器同步 PR,没有人为错误引入。主要的取舍是:合入后用户在游戏中不会看到缺失键名(如 advancements.anvilcraft.ice_and_fire.title),但会看到英文文本。这取决于项目对翻译覆盖度的策略:

  • 如果倾向于"有英文总比显示键名好" → 可直接合入
  • 如果要求翻译完整度 → 建议延迟合入,等待 Weblate 社区完成 de/ru/zh_hk 的翻译后再同步

我的建议: 可以合入。英文占位优于键名暴露,且这是 Weblate 的标准行为;但建议在 zh_cn 中添加 portal_conversion 键,以及通知 Weblate 社区贡献者重点补全 de/ru/zh_hk。

@Gugle2308
Gugle2308 force-pushed the translate/1.21/1.6 branch from 0a0c72a to a3c2fb3 Compare July 18, 2026 06:48
@Gugle2308

Copy link
Copy Markdown
Collaborator Author

⚠️ Dangerous command requires approval:

# === 检查 Working progress 条目在各语言中的情况 ===
echo "=== 各语言 working_progress.title ==="
for lang in de_de ru_ru zh_hk zh_tw zh_cn; do
  sed -n "/^diff --git.*${lang}.json/,/^diff --git /p" /tmp/pr4172.diff...

Reason: Security scan — [MEDIUM] Variation selector characters detected: Content contains Unicode variation selectors (VS1-256). These are commonly used in emoji sequences but may indicate steganographic encoding or obfuscation

Reply /approve to execute, /approve session to approve this pattern for the session, /approve always to approve permanently, or /deny to cancel.

@Gugle2308

Copy link
Copy Markdown
Collaborator Author

我已经收集了所有必要数据。以下是完整审查:


代码审查摘要 — PR #4172

操作: synchronize
范围: 11 个语言文件 / 2,628 行 diff(无新文件、无删除、无 EOF 缺换行)

翻译来源: AnvilCraft Translate Weblate 自动同步

文件变更统计

文件 新增 keys 删除 keys 状态
zh_cn.json(源语言) 83 30 ✅ 优质
zh_tw.json 10 1 ✅ 优质
zh_hk.json 725 1 ⚠️ 99.6% 英文占位
zh_meme.json 8 2 ✅ 梗翻译良好
lzh.json 2 1 ✅ 文言文翻译正确
de_de.json 758 1 ⚠️ 84% 英文占位
ru_ru.json 758 1 ⚠️ 84% 英文占位
fr_fr.json 4 1 ⚠️ 全英文占位
es_es.json 4 1 ⚠️ 全英文占位
ja_jp.json 4 1 ⚠️ 3/4 英文占位
ko_kr.json 4 1 ⚠️ 3/4 英文占位

✅ 源语言 (zh_cn) — 翻译质量良好

83 个新增 key,30 个更新 key,全部为质量改进:

  • ionocraft_backpack:补充「无法使用超级电容器」——更完整
  • cut_ember_metal_* 系列:"余烬装饰方块" → "余烬金属制装饰方块"——更精确
  • spectral_slingshot:删除冗余的「可消耗电力」
  • screen.anvilcraft.cfa.laser_interface.received%s+%s——修复了多余的 + 符号
  • 单位统一:B(更准确)
  • 无英文残留 ✅,无繁体字误入 ✅,无不良内容 ✅

✅ zh_tw — 繁体中文翻译质量良好

10 个新增 key,全为正确繁体:

  • 攜帶型方塊吞噬器系列(ember/royal/transcendence dragon rod)
  • 鍛星鐵砧、蟹籠、黑洞等
  • 无简体字残留 ✅
  • 无重复词 ✅

✅ zh_meme — 梗翻译良好

  • simple_magnetic_chute"没 脑 子 的 磁 场 转 动 的 发 福 的 H O P"(保留风格)
  • crab_trap"屑笼"(简洁有趣)
  • black_hole"大胃袋"(创意翻译)

✅ lzh — 文言文翻译正确

  • title.anvilcraft.patchouli.technology_application"技術用"
  • config.jade.plugin_anvilcraft.crab_trap"箄"

⚠️ 大规模英文占位 — Weblate 标准行为(非阻塞)

以下语言文件新增了大量英文占位文本,这是 Weblate 的标准自动同步行为——当目标语言未翻译时,Weblate 自动填入英文 en_us 原文作为占位。非本 PR 的翻译质量问题,但应引起维护者注意:

语言 新增数 英文占比 估算已翻译
de_de 758 84% ~16%
ru_ru 758 84% ~16%
zh_hk 725 99.6% ~0.4%
fr_fr 4 100% 0%(仅 4 个新 key)
es_es 4 100% 0%
ja_jp 4 75% 25%(1 个已翻译)
ko_kr 4 75% 25%

英文占位样例(各语言一致):

"advancements.anvilcraft.ice_and_fire.description": "Obtain the Ember Smithing Table, Ember Anvil, Ember Grindstone, Frost Smithing Table, Frost Anvil, and Frost Grindstone"
"advancements.anvilcraft.infinity_capacity.title": "Infinity capacity"
"tooltip.anvilcraft.working_progress.title": "Working progress:"

建议: 如果希望提升这些语言的翻译覆盖率,可在 Weblate 上邀请对应语言的翻译者参与。英文占位不影响游戏功能性——游戏在所有翻译缺失场合都会回退到 en_us 原文。


结构变更

所有语言文件的 tooltip.anvilcraft.working_progress.title 条目从文件最后一个 key(无尾逗号)变为中间 key(有尾逗号)——这是因新增条目后文件结构变化的正常调整,内容未变。


结论: COMMENT — zh_cn、zh_tw、zh_meme、lzh 的翻译质量良好,建议合并。de_de/ru_ru/zh_hk 等语言的英文占位是 Weblate 的标准自动填充行为,非本 PR 引入的问题,不影响合入,但建议维护者在 Weblate 上关注这些语言的翻译进度。


由 Hermes Agent (github-code-review) 审查

@Gugle2308
Gugle2308 force-pushed the translate/1.21/1.6 branch from a3c2fb3 to 57864d8 Compare July 18, 2026 13:30
@Gugle2308

Copy link
Copy Markdown
Collaborator Author

现在我已有完整的分析数据。以下是审查结论:


代码审查摘要 — PR #4172

操作: synchronize (翻译同步)
范围: 11 个文件, +2376 / -48 行变更 (2666 行 diff)

📊 逐文件概况

文件 +行 -行 新增 Key 修改 Key 覆盖率 状态
zh_cn.json 91 38 53 38 100% ✅ 已翻译
zh_tw.json 10 1 9 1 100% ✅ 已翻译
zh_meme.json 8 2 6 2 100% ✅ 梗翻译
lzh.json 2 1 1 1 100% ✅ 已翻译
es_es.json 4 1 3 1 50% ⚠️ portal_conversion 未翻译
fr_fr.json 4 1 3 1 50% ⚠️ portal_conversion 未翻译
ja_jp.json 4 1 3 1 50% ⚠️ portal_conversion 未翻译
ko_kr.json 4 1 3 1 50% ⚠️ portal_conversion 未翻译
zh_hk.json 725 1 724 1 1% ❌ 99% 英文占位
de_de.json 758 1 757 1 16% ❌ 84% 英文占位
ru_ru.json 758 1 757 1 16% ❌ 84% 英文占位

🔴 关键问题 — 大规模未翻译英文占位

de_de.json、ru_ru.json、zh_hk.json 三个文件被 Weblate 批量填充了 700+ 条英文原文作为未翻译键的占位值。这是 Weblate 自动同步的标准行为——对于尚未有翻译的 key,直接用源语言 (en_us) 填充。

  • de_de.json: 641/761 行 (84%) 为英文占位,如 "A Song of Ice and Fire""Obtain void matter"
  • ru_ru.json: 640/761 行 (84%) 为英文占位
  • zh_hk.json: 722/727 行 (99%) 为英文占位,如 "Block Falls Into Portal""Ultimate Dishcloth"

这会导致玩家在这些语言下看到大量英文文本,体验不佳。

这就是 Weblate 同步的正常产物。如果这些语言在 Weblate 上的翻译进度确实较低,英文回退比缺失 key 导致游戏崩溃要好。但如果仓库维护者希望保持语言文件纯净(仅含已翻译内容),应在 Weblate 配置中调整同步策略,或在此 PR 合并前手动剔除这些文件。

⚠️ 警告 — 个别 Key 英文残留

es_es / fr_fr / ja_jp / ko_kr 四个文件中,新增的 gui.anvilcraft.category.portal_conversiongui.anvilcraft.category.portal_conversion.fall_through 键均为英文原文:

"gui.anvilcraft.category.portal_conversion": "Block Falls Into Portal"
"gui.anvilcraft.category.portal_conversion.fall_through": "Converted when fall through %s"

此外 tooltip.anvilcraft.working_progress.title 在此四个文件中仍为 "Working progress:" —— zh_cn 中已翻译为 "工作进度:",但这四个语言未更新。

注意:portal_conversion 相关 key 在本次 zh_cn diff 中完全未出现 —— 说明这些 key 是之前就已存在于 en_us 中的,Weblate 本次同步时在非中文语言中新增了它们(以英文占位形式)。

✅ 看起来不错

  • zh_cn.json: 53 个新 key + 38 个值更新全部翻译完成,质量良好(如「脉冲压缩机」、「感应灯」shift tooltip 详实完整)
  • zh_tw.json: 9 个新 key 翻译质量高,无简繁混用,术语一致(「鍛星鐵砧」、「蟹籠」、「攜帶型方塊吞噬器」)
  • zh_meme.json: 6 个新 key 梗翻译风格一致 —— 「天朝编造哐当」「大胃袋」「屑笼」等保持了一贯的幽默风格
  • lzh.json: 文言翻译正确(「箄」= 蟹笼)
  • JSON 结构: 所有 11 个文件结尾均有 },无明显语法问题
  • 格式占位符: 无 %s/%d 不完整格式说明符
  • 简繁混用: zh_tw/zh_hk 新增行中未发现简体字残留
  • 同族变体一致性: cut_ember_metal_block/pillar/slab/stairs 四个变体值一致(「余烬金属制装饰方块,防凋灵」),无重复词

📋 建议

  1. de_de / ru_ru / zh_hk 文件处理策略:建议与团队确认是否接受未翻译的英文占位。如果目标是合并已翻译内容,可考虑仅合入 zh_cn / zh_tw / zh_meme / lzh 的变更,待其他语言翻译完成后再单独同步。

  2. portal_conversion 翻译gui.anvilcraft.category.portal_conversion.fall_through 在 4 个语言中均为英文。建议在 Weblate 上补充 es/fr/ja/ko 翻译,或至少在下一次同步前标记这些 key。

  3. zh_meme key 对应关系config.jade.plugin_anvilcraft.crab_trap 等 8 个 key 均不在 zh_cn diff 中(100%),但这些 key 应已存在于主语言文件的旧版中(非本 PR 新增),属于 meme 文件对已有 key 的覆盖,非孤立 key。

结论: COMMENT(建议审查后决定)

zh_cn / zh_tw / zh_meme / lzh 的翻译质量优秀,可以直接合入。但 de_de (84% 英文)、ru_ru (84% 英文)、zh_hk (99% 英文) 三个文件带来的 2200+ 行未翻译英文占位是一个需要团队决策的取舍问题——英文回退 vs 语言文件纯净度。


由 Hermes Agent 审查

@Gugle2308
Gugle2308 force-pushed the translate/1.21/1.6 branch from 57864d8 to e217fdd Compare July 18, 2026 17:59
@Gugle2308

Copy link
Copy Markdown
Collaborator Author

代码审查摘要 — PR #4172

操作: synchronize
范围: 11 个文件,+2387 / -60 行变更
来源: Weblate 自动同步 (translate.anvilcraft.dev)

文件变更概览

文件 新增 删除 状态
zh_cn.json +91 -38 ✅ 源语言,质量良好
zh_tw.json +10 -1 ✅ 完整翻译,无简繁混用
zh_meme.json +8 -2 ✅ 梗翻译更新
lzh.json +2 -1 ✅ 文言翻译
es_es.json +4 -1 ⚠️ 部分英文占位
fr_fr.json +4 -1 ⚠️ 部分英文占位
ja_jp.json +4 -1 ⚠️ 部分英文占位
ko_kr.json +4 -1 ⚠️ 部分英文占位
de_de.json +761 -1 ⚠️ 84% 英文占位
ru_ru.json +761 -1 ⚠️ 84% 英文占位
zh_hk.json +727 -1 🔴 ~0% 实际翻译

🔴 关键问题

  • zh_cn.jsontooltip.anvilcraft.item.transcendence_deco_block / transcendence_deco_outline:存在双重否定导致的语义反转

    - 旧: "超限装饰方块,似乎含量太少以至于并不能像超限合金一样坚不可摧"
    + 新: "超限合金装饰方块,似乎因为含量太低而并非不坚不可摧"
    

    「并非不坚不可摧」= 并非(不(坚不可摧)) = 双重否定→肯定 = 是坚不可摧的。但装饰方块因含量低应当是不如超限合金坚固(可摧毁),旧版「并不能像…一样坚不可摧」才是正确语义。此处应改为「并不坚不可摧」或「并非坚不可摧」(去掉多余的「不」)。


⚠️ 警告

  • zh_hk.json (+727/-1):仅 3 行含中文字符,其余全部为英文占位文本(advancements、tooltip 等均为英文原文)。这是 Weblate 批量同步时以 en_us 源文本填充未翻译条目所致。覆盖率约 0.4%,几乎完全不可用。建议合并后优先安排 zh_hk 人工翻译。

  • de_de.json (+761/-1):641/761 行 (84%) 为英文占位。大量 advancements、tooltip 条目以英文原文填充,仅有约 120 行有实际德语翻译(如 tooltip.anvilcraft.working_progress.title 等条目混有翻译)。覆盖率约 16%。

  • ru_ru.json (+761/-1):640/761 行 (84%) 为英文占位,情况与 de_de 相当。覆盖率约 16%。

  • es_es.json / fr_fr.json / ja_jp.json / ko_kr.jsonportal_conversion 两个 key(gui.anvilcraft.category.portal_conversion.fall_through)为英文占位文本。其余新增 key(crab_trap)已翻译 ✅。

  • zh_cn.jsontooltip.anvilcraft.item.fluid_tank:缺少空格

    "可存储 16 B流体" → 应为 "可存储 16 B 流体"
    

    对比同文件 large_fluid_tank 的 "可存储 320 B 流体"(有空格),此处为遗漏。


💡 建议(非阻塞性)

  • zh_meme.json — dragon_rod 系列ember_dragon_rod / royal_dragon_rod / transcendence_dragon_rod):三条值完全相同,均为「左键我的,右键调整作用范围(范围越大,耐久消耗越高)」。对比 zh_tw.json 对应条目为「攜帶型方塊吞噬器,左鍵挖掘方塊,右鍵調整作用範圍(範圍越大,耐久消耗越高)」,梗文件中省略了物品名称前缀。考虑到梗文件的幽默风格,这可能是故意的——但如果不同材质的 dragon_rod 应有不同的梗翻译(如 cfa.class.black_hole 译为「大胃袋」风格),可考虑后续增加差异化。

🟢 看起来不错

  • zh_cn 翻译质量优秀:工具提示精炼(「FE 能量」→「FE」、「功耗」→「耗电功率」)、新增 large_cauldron / decay / fluid_mixing 等系统的 GUI 翻译完整、lead 系列统一改为「重质金属」、transcendium 系列统一加「由」使语法更流畅
  • zh_tw 翻译质量好:无简体字残留,dragon_rod 系列翻译完整
  • 文言 (lzh) 「箄」译为 crab_trap 贴切
  • zh_meme 新增「屑笼」「天朝编造哐当」「大胃袋」等梗延续一贯风格
  • 所有文件的 JSON 结构完整,无尾逗号缺失、无 EOF 换行缺失
  • 格式占位符(%s%1$d%2$s 等)在所有新增 key 中正确完整
  • 无简繁混用(zh_tw/zh_hk 通过扫描)

✅ 总体评价

PR 的核心价值在于 zh_cn / zh_tw / zh_meme / lzh 的翻译更新——这些文件质量良好,可直接合入。zh_cn 中存在一处关键的双重否定语义反转需修复。

大规模英文占位(de_de、ru_ru、zh_hk 合计 +2249 行,约 84% 为英文占位)是 Weblate 的标准同步行为——当某语言在 Weblate 上翻译进度低时,会自动以 en_us 源文本填充。这不阻塞合并,但需团队确认是否接受以英文占位作为这些语言的回退展示。

结论: REQUEST_CHANGES — 请修复 zh_cn 中 transcendence_deco_block/transcendence_deco_outline 的双重否定错误(「并非不坚不可摧」→「并不坚不可摧」),其余内容可合入。


由 Hermes Agent 审查

@Gugle2308
Gugle2308 force-pushed the translate/1.21/1.6 branch from e217fdd to 36dd111 Compare July 19, 2026 07:22
@Gugle2308

Copy link
Copy Markdown
Collaborator Author

⚠️ Dangerous command requires approval:

# Validate JSON syntax for all files
HEAD_SHA=$(curl -sL "https://api.github.com/repos/Anvil-Dev/AnvilCraft/pulls/4172" | grep -o '"sha": *"[^"]*"' | head -1 | cut -d'"' -f4)
echo "HEAD SHA: $HEAD_SHA...

Reason: script execution via -e/-c flag

Reply /approve to execute, /approve session to approve this pattern for the session, /approve always to approve permanently, or /deny to cancel.

@Gugle2308

Copy link
Copy Markdown
Collaborator Author

Now I have a complete picture. Let me compose the review.


代码审查摘要 — PR #4172

操作: synchronize (翻译同步)
范围: 11 个文件 / 2677 行 diff
源: Weblate AnvilCraft Translate → translate/1.21/1.6dev/1.21/1.6

📊 翻译覆盖概览

文件 新增 删除 修改 英文残留 评估
zh_cn.json +93 -40 40 条 0% ✅ 已翻译
zh_tw.json +10 -1 1 条 0% ✅ 已翻译
zh_meme.json +8 -2 2 条 ✅ 梗文件
lzh.json +2 -1 1 条 0% ✅ 已翻译
zh_hk.json +725 -1 1 条 99% ⚠️ 英文占位
de_de.json +758 -1 1 条 84% ⚠️ 英文占位
ru_ru.json +758 -1 1 条 84% ⚠️ 英文占位
es_es.json +4 -1 1 条 75% ⚠️ 部分英文
fr_fr.json +4 -1 1 条 75% ⚠️ 部分英文
ja_jp.json +4 -1 1 条 75% ⚠️ 部分英文
ko_kr.json +4 -1 1 条 75% ⚠️ 部分英文

🔴 关键问题(需修复)

zh_cn.jsontooltip.anvilcraft.item.transcendence_deco_block / _outline 双重否定语义反转

-  "超限装饰方块,似乎含量太少以至于并不能像超限合金一样坚不可摧"
+  "超限合金装饰方块,似乎因为含量太低而并非不坚不可摧"

问题: 「并非不坚不可摧」=「并非(不(坚不可摧))」= 是坚不可摧的(双重否定→肯定)。

但上下文是超限合金装饰方块,超限合金含量很低,应当不如超限合金坚固(可被摧毁),即应为否定语义。英文源值也明确写的是 "its low Transcendium content means it is not indestructible"。

修复: 将「并非不坚不可摧」改为「并不坚不可摧」或「并非坚不可摧」。两处均需修改:

  • tooltip.anvilcraft.item.transcendence_deco_block
  • tooltip.anvilcraft.item.transcendence_deco_outline

⚠️ 警告

1. zh_hk.json — 99% 英文占位(720/725 行新增为 en_us 原文)

Weblate 以 en_us 为源语言同步时,将未翻译的 700+ key 以英文原文填充到 zh_hk 中。只有 tooltip.anvilcraft.working_progress.title 被修改(值仍为英文 "Working progress:",仅加尾逗号)。

2. de_de.json / ru_ru.json — 84% 英文占位(638/758 行为 en_us 原文)

同样是 Weblate 对翻译不完整的语言自动回退到 en_us 源值。这会导致德语/俄语玩家看到大量英文文本。

3. es_es.json / fr_fr.json / ja_jp.json / ko_kr.json — 部分英文残留

  • gui.anvilcraft.category.portal_conversion: "Block Falls Into Portal"(英文,未翻译)
  • gui.anvilcraft.category.portal_conversion.fall_through: "Converted when fall through %s"(英文)
  • tooltip.anvilcraft.working_progress.title: "Working progress:"(英文)
  • config.jade.plugin_anvilcraft.crab_trap 在 es_es 为 "Trampas para cangrejos" ✅,fr_fr 为 "Casiers à crabes" ✅

🟢 看起来不错

  • zh_cn 翻译质量良好:53 个新增 key + 40 条值修改全部为中文翻译,无英文残留。新 block/item 名称、advancements、config tooltips 翻译完整
  • zh_tw 翻译完整:10 个新增 key 全部翻译,无简繁混用
  • lzh(文言)翻译完整:2 个新增 key 已翻译
  • zh_meme 变更合理:8 个新增 key + 2 条修改,变更比例适中。新增 simple_magnetic_chutecrab_trapcelestial_forging_anvilcfa.class.black_hole、交易站广播、龙杖 tooltip 等梗
  • 格式占位符验证通过:所有文件的 %s / %d / %1$s 格式占位符正确
  • 无简繁混用:zh_tw / zh_hk 无简体字残留
  • 无调试/密钥泄漏

💡 建议(非阻塞性)

  1. 大规模英文占位的合入策略:de_de/ru_ru/zh_hk 的 80%+ 英文占位是 Weblate 标准行为——翻译不完整的语言自动回退到 en_us。如果团队接受「尚未翻译的 key 显示英文原文」作为过渡方案,可直接合入;否则可等待翻译完成后仅合入已完成的语言文件。

  2. es_es/fr_fr/ja_jp/ko_kr 的 portal_conversion 相关 key 建议后续补充翻译(当前显示英文原文)。


📋 结论: REQUEST_CHANGES

🔴 zh_cntranscendence_deco_block / transcendence_deco_outline 的「并非不坚不可摧」双重否定导致语义完全反转(应表示"不可摧毁性不如超限合金",实际变成了"就是不可摧毁的")。修复后即可合入。其余语言文件的英文占位为 Weblate 标准行为,可接受。


由 Hermes Agent 审查

Currently translated at 100.0% (1937 of 1937 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (1937 of 1937 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (1937 of 1937 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (1937 of 1937 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (1937 of 1937 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (1937 of 1937 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (1936 of 1936 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (1910 of 1910 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (1923 of 1923 strings)

Translated using Weblate (Chinese (Traditional Han script))

Currently translated at 71.0% (1366 of 1923 strings)

Translated using Weblate (Chinese (Traditional Han script, Hong Kong))

Currently translated at 92.1% (1772 of 1923 strings)

Translated using Weblate (Chinese (Simplified Han script) (zh_MEME))

Currently translated at 69.6% (1339 of 1923 strings)

Translated using Weblate (French)

Currently translated at 52.7% (1015 of 1923 strings)

Translated using Weblate (Spanish)

Currently translated at 52.7% (1015 of 1923 strings)

Translated using Weblate (German)

Currently translated at 92.1% (1772 of 1923 strings)

Translated using Weblate (Literary Chinese)

Currently translated at 52.9% (1018 of 1923 strings)

Translated using Weblate (Russian)

Currently translated at 92.1% (1772 of 1923 strings)

Translated using Weblate (Japanese)

Currently translated at 52.7% (1015 of 1923 strings)

Translated using Weblate (Korean)

Currently translated at 52.7% (1015 of 1923 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (1923 of 1923 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (1923 of 1923 strings)

Co-authored-by: Fff_ff <a181084170@163.com>
Co-authored-by: GeT_RiGhT_D <3207354201xxd@gmail.com>
Co-authored-by: Gugle <gu_zt@qq.com>
Co-authored-by: QiuShui1012 <qiushui1012@foxmail.com>
Co-authored-by: Weblate <noreply@weblate.org>
Co-authored-by: 天上鸣音 <xinshidai202108@163.com>
Co-authored-by: 鸽の念 <635035765@qq.com>
Translate-URL: https://translate.anvilcraft.dev/projects/anvilcraft/1-21-1-6/de/
Translate-URL: https://translate.anvilcraft.dev/projects/anvilcraft/1-21-1-6/es/
Translate-URL: https://translate.anvilcraft.dev/projects/anvilcraft/1-21-1-6/fr/
Translate-URL: https://translate.anvilcraft.dev/projects/anvilcraft/1-21-1-6/ja/
Translate-URL: https://translate.anvilcraft.dev/projects/anvilcraft/1-21-1-6/ko/
Translate-URL: https://translate.anvilcraft.dev/projects/anvilcraft/1-21-1-6/lzh/
Translate-URL: https://translate.anvilcraft.dev/projects/anvilcraft/1-21-1-6/ru/
Translate-URL: https://translate.anvilcraft.dev/projects/anvilcraft/1-21-1-6/zh_Hans/
Translate-URL: https://translate.anvilcraft.dev/projects/anvilcraft/1-21-1-6/zh_Hant/
Translate-URL: https://translate.anvilcraft.dev/projects/anvilcraft/1-21-1-6/zh_Hant_HK/
Translate-URL: https://translate.anvilcraft.dev/projects/anvilcraft/1-21-1-6/zh_MEME/
Translation: Anvil-Dev/AnvilCraft/1.21/1.6
@Gugle2308
Gugle2308 force-pushed the translate/1.21/1.6 branch from 36dd111 to c77b58f Compare July 19, 2026 15:34
@Gugle2308

Copy link
Copy Markdown
Collaborator Author

Now I have enough data for a thorough review. Let me compile the findings.

📋 代码审查摘要

结论: 评论(有 1 个需修正的问题 + 大规模未翻译占位需确认)

统计: 11 个语言文件,+2677 行变更(0 新增/0 删除文件)

文件 净新增 key 状态
lang/zh_cn.json +53 ✅ 翻译质量良好
lang/zh_tw.json +9 ✅ 繁体中文化正确
lang/zh_meme.json +6 ✅ 梗风格一致
lang/lzh.json +1 ✅ 文言文翻译正确
lang/ja_jp.json +3 ⚠️ 含英文占位
lang/ko_kr.json +3 ⚠️ 含英文占位
lang/es_es.json +3 ⚠️ 含英文占位
lang/fr_fr.json +3 ⚠️ 含英文占位
lang/de_de.json +757 🔴 84% 英文占位
lang/ru_ru.json +757 🔴 84% 英文占位
lang/zh_hk.json +724 🔴 99% 英文占位

❌ 需修正

1. 双重否定导致语义反转(zh_cn)

tooltip.anvilcraft.item.transcendence_deco_blocktranscendence_deco_outline 两条:

旧值: "…似乎含量太少以至于并不能像超限合金一样坚不可摧"
      → 正确语义:**不是**坚不可摧的(可摧毁)
新值: "…似乎因为含量太低而并非不坚不可摧"
      → 错误语义:「并非不X」= 双重否定 = **是**坚不可摧的(与上下文矛盾)

「并非不坚不可摧」= 并非(不(坚不可摧)) = 肯定「坚不可摧」,但装饰方块因超限合金含量低本应是可被摧毁的。应改回「并不坚不可摧」或保留旧版措辞。


⚠️ 大规模未翻译英文占位

此 PR 中存在典型的 Weblate 批量同步模式——zh_cn 源语言仅新增 53 个 key,但 de_de、ru_ru 各新增 757 个 key(其中 ~84% 为英文原文填充),zh_hk 新增 724 个 key(~99% 英文原文)。这些英文占位来自 en_us.json 的代码字符串,Weblate 将未翻译条目以英文原文值作为回退。

建议团队确认:

  • 接受这些语言暂时以英文回退显示(玩家看到英文 > 看到缺失 key)
  • 或在合并后于 Weblate 上继续推进翻译
  • 上述英文占位约占总影响的 83%,但不会对已翻译语言(zh_cn/zh_tw/lzh/zh_meme)造成质量退化

✅ 已翻译语言质量评价

zh_cn(源语言): 翻译质量明显提升,多项 tooltip 做了润色改进:

  • block_devourer.shift:补充了「无内部存储空间」等细节 ✅
  • induction_light.shift:补充了模式切换说明 ✅
  • fluid_tank:容量单位从「桶」改为「B」与代码统一 ✅
  • transcendium 系列:补充了「由魔力维系」等描述 ✅
  • 格式占位符校验通过 ✅

zh_tw: 9 个新增 key 全部正确使用繁体中文(攜帶型、方塊、範圍、調整等)✅

zh_meme: 6 个新增 key,梗风格延续良好("屑笼"、"大胃袋"、"天朝编造哐当"、"没 脑 子 的 磁 场 转 动 的 发 福 的 H O P"),所有 meme key 均有已在 diff 中被修改/新增的对应主语言 key ✅

lzh: 「技術用」「箄」文言文翻译正确 ✅


格式变更确认

  • screen.anvilcraft.cfa.laser_interface.received:移除多余的 + 后缀(%s+%s)✅
  • command.anvilcraft.multiphase.info.summary:移除 %3$s无情 参数),需确认 Java 端同步减少参数 ✅
  • 所有新增 key 的格式占位符与 en_us 一致,无不完整 %N$ 模式 ✅

✅ 总体评价

zh_cn 的翻译质量有明显提升,大部分 tooltip 和成就文案经过润色后更加准确清晰。zh_tw、zh_meme、lzh 的新增翻译质量也符合预期。transcendence_deco_block 的双重否定语义反转是必须修复的 bug。 de_de、ru_ru、zh_hk 的大规模英文占位是 Weblate 标准行为,需要团队评估是否接受英文回退。修复合入后建议合并。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants