使用 Python 翻译 CHM 帮助文档

此方法绝对切实可行

翻译成品项目: https://github.com/foyoux/InstallShield2020-Documents

效果预览

使用 Python 翻译 CHM 帮助文档_第1张图片

安装 docts

pip install docts

pip install docts -i https://pypi.org/simple

必要时可加上 --upgrade 参数

安装本地化工具 Sisulizer

具体参考 docts 项目: https://github.com/foyoux/docts

在此不再赘述.

准备一个 chm 帮助文档文件

这里以 Sisulizer 的帮助文档为例

使用 Python 翻译 CHM 帮助文档_第2张图片

翻译步骤

1. 新建 Sisulizer 项目, 将 Sisulizer.chm 文件添加进去

2. 保存项目, 然后在 Sisulizer 中导出提取出来的词句到 xlf 文件

3. 使用 docts 进行翻译并导出

docts 中提供了一个默认的快捷翻译函数 todo

def todo(path: str):

    doc = Doc(path)
    
    doc.add_filter(filter_eq_symbol)
    
    doc.add_filter(filter_not_str)

    return doc.save_words()

尝试一下

from docts import *

xlf_path = r"H:\docts-demo\Sisulizer.xlf"

todo(xlf_path)

在实际翻译过程中, 不可能有一种通用的翻译方法, 针对不同的文档, 我们可能有一些不想翻译, docts 中提供了一些方法进行过滤, 映射替换

  • add_filter
  • add_contain_filter
  • add_start_filter
  • add_end_filter
  • add_map
  • add_replace

具体参考 docts 项目: https://github.com/foyoux/docts

4. 在 Sisulizer 中导入翻译完成的 xlf 文件

5. 在 Sisulizer 中建立翻译目标文件

6. 完成

使用 Python 翻译 CHM 帮助文档_第3张图片

你可能感兴趣的:(python,python,chm,translate,翻译,帮助文档)