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

