1. 运行工具 dart run tencent_chat_i18n_tool。默认情况下,它将读取项目的pubspec.yaml文件中指定的本地工具包路径。如果您想使用其他路径,可以在提示时输入。
此步骤中,输入 Y 即可使用自动检测到的路径,如图中圈出所示。输入 n 即可按提示,指定使用特定的工具包本地路径。
2. 如果您在上一小节,在您的项目中,添加了新词条,我们需要将这些新词条注入工具包中。
选择选项 A(A. Add new language entries for internationalization. This action must be performed before adding new entries.),新增原始语言词条。本工具将提供两个方式来添加新词条:
选项1(1. Read new entries from the 'new_language_entries.txt' file in the project root directory.):从项目根目录中的 new_language_entries.txt 文件中读取新词条。您可以手动将想要添加的词条写入此文件,每行一个词条,然后选择此选项将它们添加到工具中。
选项2(2. Scan the project code to extract new entries and update the 'new_language_entries.txt' file (currently supports Simplified Chinese only).):扫描项目代码以提取新词条并更新 new_language_entries.txt 文件(目前仅支持中文)。选择此选项后,工具将自动扫描指定目录(如lib)中的 Dart 文件,并从中提取中文词条。此时,打开 new_language_entries.txt 文件并查看提取的条目。如有必要,请对条目进行编辑。如下图所示:
二次编辑确认完成后,按回车键,以继续进行。
本步骤执行如图所示。执行完成后,在下方打印,成功将新词条增加入工具内各语言的词条包。
3. 再次运行工具并选择选项B(B. Retrieve the tool's built-in language entries, including JSON files for all supported languages, and save them to your project directory for further customization.)。工具将把所有支持语言的内置语言条目保存到项目目录中的 JSON 文件中。
4. 打开位于 languages 目录中的 JSON 文件,并翻译每个文件底部的新条目。此时,您还可以根据 key 值定位特定词条,并修改各语言词条库中的翻译文本。但是,请不要删除不需要的词条。
5. (可选)如果您想添加对新语言的支持,请按照以下步骤操作:
打开项目中的 languages 目录。
选择您熟悉的语言文件并复制一份。
将复制的文件重命名为 strings_${ISO_LANGUAGE_CODE}.i18n.json,其中 ${ISO_LANGUAGE_CODE} 是您要添加的新语言的 ISO 代码(例如,对于法语,文件名为strings_fr.i18n.json)。ISO 639-1 语言代码如本文附录所示。
将新文件中的所有条目翻译成相应的语言。
6. 再次运行工具并选择选项C(C. Inject your modified language JSON files for all languages back into the tool, allowing the updated configuration to take effect.)将您修改的语言 JSON 文件注入回工具。现在,更新后的配置将在您的项目中生效。
完成这些步骤后,您所做的更改将应用于腾讯云 IM i18n 工具的本地副本。如果您想与他人合作或共享更改,可以将修改后的工具包源代码推送到内部 Pub 服务器或 Git 仓库。要在项目中使用更新后的工具包作为依赖项,只需在pubspec.yaml文件中更新工具包路径,使其指向在线仓库: