术语
General Translation 库关键术语指南
概览
在整套文档中,我们会使用多种术语来描述 General Translation 库中的各类概念。
本页将重点介绍我们常用的一些核心术语。
关键术语
语言环境(locale)
语言环境是用于标识特定语言的代码。
有关更详细的说明,请参阅语言环境代码字符串页面。
例如,en-US 是英语(美国)的语言环境。
在整个文档中,我们常将“语言环境(locale)”与“语言代码”互换使用。
语言
在与代码配合使用的语境中,我们提到的“语言”实际上指的是 locale(或语言代码)。
例如,当我们说“在调用 setLocale 时提供语言”时,实际上是指“在调用 setLocale 时提供 locale”。
如果我们说“法语是受支持的语言”,实际上是指“fr 是受支持的 locale”。
字典
字典是一个 JSON 文件,包含一组(可嵌套的)键值对。
键用作引用,值为字符串,既可以是源语言,也可以是目标语言。
{
"greeting": "你好,世界!",
"farewell": "再见,世界!",
"dashboard": {
"title": "Dashboard",
"description": "欢迎使用 Dashboard"
}
}这些键是便于阅读的引用,用于在你的应用中查找已翻译的内容。
这些字典在结构和用法上与常规做法一致,类似于其他 i18n 库中的翻译文件。
源字典也可以是 .js 或 .ts 文件,这意味着它可以从其他文件中导入。
包含已翻译内容的字典只能是 .json 文件。
源字典
源字典是指包含你应用默认 locale 内容的字典。
已翻译字典
已翻译字典是指在特定 locale 中包含与默认 locale 不同内容的字典。
键与源字典相同,值为翻译后的字符串。
如果你有自己的已翻译字典,可以使用 loadDictionary 函数加载它们。
内联内容
内联内容指直接写在应用代码中的文本,而不是单独存放在诸如 JSON 或字典文件中的位置。
包括:
<T>组件useGT钩子getGT函数
源内容
源内容指的是你应用默认 locale 的内容,即以应用默认语言编写的所有文本。
对于 gt-next 和 gt-react,源内容特指应用中所有可翻译的内容,包括应用的源字典以及任何内联内容。
源模板
“源模板”指用于存储源内容的特定数据格式。
{
["源内容的唯一标识符"]: "...内容..."
}源内容的唯一标识符可以是源内容的哈希,或用户自定义的唯一标识符。
根据源内容的类型,相应的 value 可以是字符串、数组或对象。(dictionaries 使用字符串和数组,<T> 组件使用对象)
翻译
在本手册中,我们使用名词“翻译”来指代对源内容进行翻译后得到的译文。
翻译是直接从你的源模板生成的。
loadTranslations 函数允许你自定义这些翻译的存储位置。该函数要求 JSON 的格式与源模板一致。
使用 CLI(命令行界面)generate 命令 从你的源内容生成这些数据文件。
注意:
需要强调的是,“翻译”与“已翻译的字典”并不相同。字典(dictionaries)可能是嵌套的,并以便于理解的人类可读引用作为键。
而翻译通常是扁平结构,键多为不可读的哈希值。
翻译 会存储在 GT CDN(内容分发网络)上。
当我们将“翻译”用于指代 JSON、MDX 或 MD 文件时,指的是对原始源文件的直接翻译。
本指南如何?