之前在开发国际化软件时,我遇到了一些问题,比如:
每当我要新增一段文案,不得不打开多个文件进行编辑,我需要在代码中使用 t('title')
,随后分别在 zh-CN.json
和 en-US.json
文件中添上相匹配的翻译。这样频繁地在不同文件间切换,让人非常的不爽。
另一方面,即使是利用 ai 翻译,我是得手动把文案复制粘贴至翻译软件,再将翻译后的文本搬回我的代码中。
后来在阅读 vscode 源码时,我发现了他们的解决方案很优雅。他们在代码中使用 localize('key',"Default Text")
,在构建的时候自动生成所有的语言文件。
所以我利用这个思路,开发了一个 vscode 插件,叫做 i18nEase ,解决了我自己的两个痛点。
i18nEase 提供了 Watch 功能,当源码改动时,会自动的解析源码,更新语言文件。
为了更方便的使用机器翻译,i18nEase 还提供了一键翻译的功能,他会将所有待翻译的文案提交给 gpt4 的 api ,然后将翻译后的文案一次性的更新到语言文件中。