This commit is contained in:
Glavo 2025-09-19 18:44:52 +08:00
parent 49a467a8c0
commit c911464afd

View File

@ -12,7 +12,7 @@ HMCL 为多种语言提供本地化支持。
| 语言 | 语言标签 | 本地化文件后缀 | 本地化键 | 支持状态 | 志愿者 |
|---------|-----------|------------|-----------|------|-------------------------------------------|
| 英语 | `en` | `` | `default` | 主要 | |
| 英语 | `en` | (空) | `default` | 主要 | |
| 中文 (简体) | `zh-Hans` | `_zh` | `zh` | 主要 | |
| 中文 (繁体) | `zh-Hant` | `_zh_Hant` | `zh-Hant` | 主要 | |
| 中文 (文言) | `lzh` | `_lzh` | `lzh` | 次要 | |
@ -85,11 +85,11 @@ HMCL 会要求所有 Pull Request 在更新文档和本地化资源时同步更
对于某个语言下的缺失的资源HMCL 支持一套资源回退机制,会根据不同的语言标签推导出一个搜索列表,
根据该列表依次搜索资源。
例如,如果当前环境的语言标签为 `en-US` (英文 (美国)),那么 HMCL 会根据以下列表的顺序搜索对应的本地化资源:
例如,如果当前环境的语言标签为 `en-US`,那么 HMCL 会根据以下列表的顺序搜索对应的本地化资源:
1. `en-US` (英文 (美国))
2. `en` (英文)
3. `` (默认)
1. `en-US`
2. `en`
3. `und`
对于能够混合的资源 (例如 `.properties` 文件)HMCL 会根据此列表的优先级混合资源;
对于难以混合的资源 (例如字体文件)HMCL 会根据此列表加载找到的最高优先级的资源。
@ -97,71 +97,71 @@ HMCL 会要求所有 Pull Request 在更新文档和本地化资源时同步更
如果当前语言使用 ISO 639-3 标准的三字符标签,那么 HMCL 也会尝试搜索其对应的 ISO 639-1 两字符标签所对应的资源。
如果一个语言没有两字符标签,但其对应的宏语言存在两字符标签,那么 HMCL 会搜索对应的宏语言的两字符标签的资源。
例如,如果当前环境的语言标签为 `eng-US` (英文 (美国)),那么 HMCL 会根据以下列表的顺序搜索对应的本地化资源:
例如,如果当前环境的语言标签为 `eng-US`,那么 HMCL 会根据以下列表的顺序搜索对应的本地化资源:
1. `eng-US` (英文 (美国))
2. `eng` (英文)
3. `en-US` (英文 (美国))
4. `en` (英文)
5. `` (默认)
1. `eng-US`
2. `eng`
3. `en-US`
4. `en`
5. `und`
### 对于中文的额外规则
对于中文 (以及其子语言标签,例如文言文 (`lzh`)、普通话 (`cmn`)、粤语 (`yue`) 等等)HMCL 有着额外的支持。
如果当前环境的语言为中文 (及其子语言),且未指定书写脚本,那么 HMCL 会根据语言和地区标签推导出对应的书写脚本。
对于语言为文言文 (`lzh`) 或地区为中国台湾 (`TW`)、中国香港特别行政区 (`HK`)、中国澳门特别行政区 (`MO`) 的情况,
默认书写脚本为繁体中文 (`Hant`)
而对于其他语言和区域 (如中国大陆 (`CN`)),默认书写脚本为简体中文 (`Hans`)。
如果当前环境的语言为中文 (及其子语言),且未指定书写脚本,那么 HMCL 会根据语言和地区标签推导出默认的书写脚本。
对于语言为 `lzh` 或地区为 `TW``HK``MO` 的情况,默认书写脚本为繁体中文 (`Hant`)
而对于其他语言和区,默认书写脚本为简体中文 (`Hans`)。
此外HMCL 会将 `zh-CN` 加入所有中文环境的搜索列表中,将 `zh-TW` 加入所有繁体中文环境的搜索列表中,
从而适应更多场景。
以下是几个常见中文环境对应的本地化资源搜索列表。
`zh-CN` (中文 (中国大陆)):
`zh-CN`:
1. `zh-Hans-CN` (中文 (简体, 中国大陆))
2. `zh-Hans` (中文 (简体))
3. `zh-CN` (中文 (中国大陆))
4. `zh` (中文)
5. `` (默认)
1. `zh-Hans-CN`
2. `zh-Hans`
3. `zh-CN`
4. `zh`
5. `und`
`zh-SG` (中文 (新加坡)):
`zh-SG`:
1. `zh-Hans-SG` (中文 (简体, 新加坡))
2. `zh-Hans` (中文 (简体))
3. `zh-SG` (中文 (新加坡))
4. `zh-CN` (中文 (中国大陆))
5. `zh` (中文)
6. `` (默认)
1. `zh-Hans-SG`
2. `zh-Hans`
3. `zh-SG`
4. `zh-CN`
5. `zh`
6. `und`
`zh-TW` (中文 (中国台湾)):
`zh-TW`:
1. `zh-Hant-TW` (中文 (繁体, 中国台湾))
2. `zh-Hant` (中文 (繁体))
3. `zh-TW` (中文 (中国台湾))
4. `zh` (中文)
5. `zh-CN` (中文 (中国大陆))
6. `` (默认)
1. `zh-Hant-TW`
2. `zh-Hant`
3. `zh-TW`
4. `zh`
5. `zh-CN`
6. `und`
`zh-HK` (中文 (中国香港特别行政区)):
`zh-HK`:
1. `zh-Hant-HK` (中文 (繁体, 中国香港特别行政区))
2. `zh-Hant` (中文 (繁体))
3. `zh-HK` (中文 (中国香港特别行政区))
4. `zh-TW` (中文 (中国台湾))
5. `zh` (中文)
6. `zh-CN` (中文 (中国大陆))
7. `` (默认)
1. `zh-Hant-HK`
2. `zh-Hant`
3. `zh-HK`
4. `zh-TW`
5. `zh`
6. `zh-CN`
7. `und`
`lzh` (文言):
`lzh`:
1. `lzh-Hant` (文言 (繁体))
2. `lzh` (文言)
3. `zh-Hant` (中文 (繁体))
4. `zh` (中文)
5. `` (默认)
1. `lzh-Hant`
2. `lzh`
3. `zh-Hant`
4. `zh`
5. `und`
## 自动同步文档内容