Skip to content

Latest commit

 

History

History
87 lines (65 loc) · 3.99 KB

README_zh.md

File metadata and controls

87 lines (65 loc) · 3.99 KB

JSON 多语言工具

在线审阅/导出 Vue i18n JSON 语言文件,自动合并增量翻译,提升效率。
更新日志 | English Readme

特性

  • 查看: 以表格形式展示 JSON 语言文件的全部标识和文案(key/value)
  • 对比: 展示两个 JSON 语言文件之间的词条差异
  • 存异: 从新版中找到新增和变更的词条,导出为 JSON 用于翻译
  • 合并: 将新增和变更的词条合并至旧版,导出为 JSON 用于研发
  • 清理: 从旧版中删除标记为移除的词条,导出为 JSON 用于研发
  • 切换: 展示新旧语言文件中,文案相同但标识不同的词条
  • 重置: 从页面清除新旧两版数据,保留当前设置

教程

增量翻译

基于版本更新翻译工作流的主要应用场景,协助研发与翻译之间的沟通。

  1. 把上一版本(LAST_VER)的基线文件 en.json 作为旧版导入,把当前版本(CURR_VER)的 en.json 作为新版导入
  2. 执行 导出不同,并将结果 exported.json 提交给翻译
  3. 把当前版本(CURR_VER)的 zh.json 作为旧版导入,把翻译好的 exported_zh.json 作为新版导入
  4. 执行 导出合并,并将结果替换 zh.json
  5. 为其它语言重复步骤 3-4

对齐基线

用于消除当前翻译和基准语言之间的差异。

  1. 将基线文件 en.json 作为新版导入
  2. 务必勾选 设置中的 忽略变更
  3. 将对齐文件 zh.json 作为旧版导入
  4. 执行 导出清理,并将结果替换 zh.json
  5. 为其它语言重复步骤 3-4

合并无 key 数据

在仅有纯翻译文案的场合中提升效率。

  1. 将基线文件 en.json 同时作为新旧两版导入
  2. 务必勾选 设置中的 平铺标识
  3. 执行 导出清理,保存结果为 exported.json
  4. 仅仅保留 数据表 en.xlsx 中包含的标识(key),值留空(null),然后删除其它 key/value
  5. 将过滤后的 exported.json 另存为 exported_en.json,并填入数据表中的文案
  6. en.json 作为旧版导入,将 exported_en.json 作为新版导入
  7. 执行 导出合并,并将结果替换 en.json
  8. 为其它语言重复步骤 5-7

设置

显示

  • 英语界面: 页面显示为英文(或者中文)
  • 文件信息: 显示语言文件的额外信息
  • 标记特殊: 高亮旧版中的空值,以及新版中复数、变量和内链
    • 复数:Cat | Cats(正则 /\|/g
    • 变量:Hello {name}!(正则 /{[^'\s]+}/g
    • 内链:Welcome to @:title{''}!(正则 /@:\S+{''}/g
  • 词条勾选: 显示(或隐藏)相同、新增、移除、变更的词条
  • 表格勾选: 显示(或隐藏)新旧版中的标识和文案

导出

  • 使用代码: 直接导入/导出代码而非 JSON 文件(默认为 ,使用对话框)
  • 平铺标识: 将 JSON 的 key 处理为平铺的字符串,而非嵌套对象(默认为 ,如common.action.submit
  • 保留变更: 在导出不同及合并时,是否包含/跳过变更的词条(默认为
  • 保留空值: 在导出合并及清除时,同时保留/删除空值的词条(默认为
  • 保留切换: 在导出不同时,是否包含/跳过切换标识的词条(默认为

备注

  • 相同: 新旧两版中都存在该标识,文案也完全一致
  • 变更: 新旧两版中都存在该标识,但文案不一致
  • 新增: 新版中存在该标识,而旧版中不存在
  • 移除: 新版中不存在该标识,而旧版中存在
  • 差异: 包含 变更新增移除
  • 总计: 包含 相同差异

更多

  • 仅需单个 HTML 文件即可运行,依赖通过 CDN 加载
  • 响应式布局,已适配平板和手机
  • 自动根据浏览器设定切换为中文(navigator.languages
  • 导出的 JSON 文件编码格式为 UTF-8 with BOM
  • 在操作按钮上展示对应词条数