这是一个自动替换GithubDesktop中文本为目标语言文本的程序,
优点是对GithubDesktop频繁更新的版本变化兼容性比较高。
即便只有那么一两条失去了翻译,也只需要手动再修改添加一下即可,
项目维护成本很低
第一种方法: 下载或自行构建 GitHubDesktop2Chinese.exe 双击运行, 自动联网获取最新localization.json完成汉化
第二种方法: 下载或自行构建 GitHubDesktop2Chinese.exe 和 localization.json 放在同一个文件夹。运行程序即可
GitHubDesktop每次版本更新都需要运行一次此程序才能完成汉化
下载克隆项目 本地使用VS2022 使用CMAKE打开,即可构建
只需要克隆仓库,阅读
json/关于一些注意事项.txt
,注意一些编写时的事项, 然后在json/localization.json
文件中参照已经写过的格式补充要汉化的条目即可
将此文件放在程序目录下,确保程序可以读取运行 然后提交PR
此文件存储所有GitHubDesktop中英文文本到本地化(中文)文本之间的映射,
使用正则匹配的方式 将包含英文字符串的文本替换为包含中文字符串的文本。
项目更新主要更新此文件。
- 路径: [项目目录]/json/localization.json
- 主节点 - version(int): 此json文件的版本,此值仅会因未来格式更新而更新
- 主节点 - minversion(string): 需要最低的加载器版本
- 主节点 - main(array): 存储用于替换GitHubDesktop的main.js的映射
- 主节点 - main_dev(array): 存储用于替换GitHubDesktop的main.js的映射,区别于开发时快速替换
- 主节点 - renderer(array): 存储用于替换GitHubDesktop的renderer.js的映射
- 主节点 - renderer_dev(array): 存储用于替换GitHubDesktop的renderer.js的映射,区别于开发时快速替换
如果报错提示找不到openssl 的dll文件,请更新到最新版
如果你有任何建议可以提issus.
感谢以下诸位提供的优质的开源项目
- CLI: https://github.com/CLIUtils/CLI11
- HttpLib: https://github.com/yhirose/cpp-httplib
- nlohmann/json: https://github.com/nlohmann/json
- spdlog: https://github.com/gabime/spdlog
- WinReg: https://github.com/GiovanniDicanio/WinReg
- json文件格式修改,用于标识文件版本、最低支持加载器(GitHubDesktop2Chinese.exe)的版本
- 加载器加入程序版本宏定义
- 加载器支持替换映射的第三个参数,即查找参数,将第三个参数(如果有)进行全局正则查找,
将匹配到的结果在第二个参数中进行特殊字符的替换,替换标记为#{number}
- 加载器检查json文件所需最低版本是否满足需求,如果不满足且定义了
--nopause
则提示后退出, 否则提示后询问是否强制替换 - 加载器在没有定义
--nopause
的情况下,在替换之前进行一次暂停,以便用户自行确认信息后是否往下执行 - 加载器自动更新,以及可以在参数中禁用自动更新
- JSON文件附加描述文本,在加载器中显示
- 加载器显示所有项目参与者并在汉化后显示