ComfyUI官方发布博文宣布已内置了多语言支持,取代之前第三方翻译插件,用户将ComfyUI升级到最新版后,可以在 Comfy > Locale > Language 中选择语言,将界面翻译为英语、简体中文、俄语、日语或韩语。这一原生实现相比之前的解决方案提供了更好的性能、可靠性和可维护性,更多语言和自定义节点的翻译也即将推出。
第三方翻译的局限性
性能问题
之前,非英语用户需要依赖第三方插件AIGODLIKE-ComfyUI-Translation来实现ComfyUI界面及节点的翻译,虽然该扩展发挥了重要作用,但其局限性促使开发了原生翻译支持。
AIGODLIKE插件在每次ComfyUI更新时进行翻译检查,导致性能显著下降。用户报告在以下操作时出现严重延迟:
- 搜索节点
- 打开设置
- 添加新节点
- 进行常规 UI 交互
多个问题报告(#310, #303)记录了这些性能问题,甚至在禁用其他插件时仍然存在。本人就遇到了搜索节点时非常卡,甚至卡死的情况,卸载此插件后问题就解决了。
兼容性挑战
该插件依赖特定的 DOM 结构进行翻译,使其容易受到前端更改的影响。这种依赖性导致:
- 限制了开发者移除遗留 DOM 结构的能力
- 在 UI 更新后导致翻译失败
- 需要手动修复兼容性问题(参见 ComfyUI#5416)
其他局限性
- 新节点定义的更新延迟
- 导出工作流中的翻译持久性问题
- 与 ComfyUI 更新不同步
原生翻译解决方案
新的原生翻译系统通过以下方式解决了这些局限性:
- 集成 vue-i18n 以高效显示本地化消息
- 直接 UI 集成,无需 DOM 匹配
- 自动检测新节点和修改节点定义
- 正确处理翻译持久性
目前支持的语言
- 英语
- 简体中文
- 俄语
- 日语
- 韩语
翻译覆盖范围
- 设置对话框
- 核心设置
- 快捷键面板
- 服务器配置面板(仅限桌面版)
- Litegraph
- 节点名称(支持使用翻译语言进行搜索)
- 节点部件名称
- 节点输入/输出名称
- 菜单 UI
- 按钮
- 侧边栏标签
- 底部面板
如何启用
- 打开设置对话框
- 导航到 Comfy > Locale > Language
- 选择你偏好的语言
下一步计划
自定义节点翻译支持
ComfyUI官方将实现对自定义节点的全面翻译支持:
- 自动为托管在 ComfyUI 注册表中的节点生成翻译
- 直接向自定义节点仓库提交翻译 PR
- 实现后端机制以加载自定义节点翻译
扩展语言支持
计划增加对以下语言的支持:
- 西班牙语
- 法语
- 德语
- 以及其他更多语言
社区贡献
感谢 shinshin86、vanja-san 和 ltdrdata 添加了日语、俄语和韩语翻译。
如果你发现任何翻译问题或希望改进现有翻译:
- 访问ComfyUI前端的 locales 目录:ComfyUI_frontend/src/locales
- 进行修正或添加
- 提交包含更改的 Pull Request
评论0