i18n(zh): complete Simplified Chinese catalogue

Fill the 408 entries that were missing from the Simplified Chinese
catalogue, bringing coverage of en.json from 72.5% to 100%
(1073 -> 1481 entries; 1480/1480 English keys now translated).

Files updated, per docs/adding_translations.md ("Commit the edited YAML
and all regenerated JSON and TypeScript resources together"):

- src/common/messagesYAML/zh.yaml            - source catalogue
- src/common/messagesJson/zh.json            - npm run i18n:yaml2json
- src/common/messages/combinedMessages.prod.ts
                                             - npm run i18n:bakejson

The TypeScript resource matters: the release workflow runs
`npm run build`, which is only `node esbuild.config.mjs production` and
does NOT re-run `i18n:bake`. Since src/common/translation.ts imports
combinedMessages.prod.ts directly, a catalogue change that omits this
file would not reach the shipped main.js.

Verification

- No existing translation was modified: every key already present in
  zh.json is byte-identical (0 changed, 0 removed).
- Placeholders checked string-for-string against the English source.
  15 new entries contain ${...} or {HERE}; all match.
- combinedMessages.prod.ts regenerated with _tools/bakei18n.ts and
  formatted with the project's Prettier config. The diff against main is
  408 added `zh:` lines plus the expected bookkeeping, and no other
  language changes.
- Terminology follows the existing catalogue (Vault -> 库,
  Passphrase -> 密码短语, Setup URI -> 设置 URI, chunk -> 块).
  Technical identifiers (URL, JWT, CouchDB, S3, TURN, IDB, P2P) are
  intentionally left in English, matching current practice.

Two unrelated upstream issues, not addressed here

1. `dialog.yourLanguageAvailable` defines its placeholder as
   `%{Display language}` while `$msg()` substitutes on `${...}`, so the
   placeholder is never expanded and the literal text is shown in every
   language.
2. The committed YAML catalogues appear stale relative to the JSON ones
   (e.g. `en.yaml` lacks entries that `en.json` already contains, and
   its wrapping differs from current tool output). This affects every
   language and probably deserves a separate change.
This commit is contained in:
llingting0 committed 2026-10-12 13:59:57 +08:00
1 parent 14141446a1
commit c54c716325
3 files changed
+1406 -163

No files matched your search

File diff suppressed because it is too large. Load diff