I18N(其来源是英文单词 internationalization的首末字符i和n,中间有18为字符数)是“国际化”的简称。 在资讯领域,国际化(i18n)指让产品(出版物,软件,硬件等)无需做大的改变就能够适应不同的语言和地区的需要。 对程序来说,在不修改内部代码的情况下,能根据不同语言及地区显示相应的界面。 在全球化的时代,国际化尤为重要,因为产品的潜在用户可能来自世界的各个角落。 通常与i18n相关的还有L10n(“本地化”的简称)。 以上摘自百度百科,I18N
本项目完全支持国际多语言,我们使用rust_i18n这个箱子来实现。 RigelA 官方仅对简体中文和英语进行了字符串的默认实现,这意味着如果您来自其他国家,您将可能无法使用本读屏,但我们可能随着时间的推移不断增加,这也需要大家一起做贡献。 如果本项目不支持您国家的语言,您可以按照以下步骤提交PR:
- 参照贡献指南,准备您的开发环境,并把本仓库克隆到您的电脑中;
- 转到main/locale文件夹,其中涵盖了本程序用到的字符串资源,您可以使用任意的编辑器打开并编辑;
- 例如我们打开talent.yml,内容如下:
此文件定义了每个功能的描述文本,每一个条目下都有各种语言的值;
_version: 2 program.exit: en: Exit screen reader zh-CN: 退出读屏 tts.speed: en: Voice speed %{value} zh-CN: 语速%{value} # ...
- 在上面的例子中,您只看到了en和zh-CN两个语言,如果您需要增加自己国家的语言,可以直接在后面追加;
- 更改完毕并保存,然后按贡献指南中的提示推送您的PR,如果看上去没有什么问题,我们会直接合并到主分支中;
- 等待下一个版本的发布,完美!
- 需要注意的是,yml文件中的_version字段的值应该是2,不要随意改动;
- 如需更多信息,可以参考rust_i18n。