i18n: translate the download progress stage strings

Fill in the 4 `modals.download.progress.*` keys added by the previous
commit across all 9 locales, so no `[TODO: Translate]` placeholder remains
and the "no remaining placeholders" claim in the guidelines holds again.

No new terminology: `metadata` reuses the §5 row (fr métadonnées, de
Metadaten, es metadatos, ru метаданные, he מטא-נתונים, ja メタデータ,
ko 메타데이터, zh-CN 元数据, zh-TW 中繼資料) and the fetching phrasing
mirrors each locale's existing `download.fetchingRepoFiles` /
`fetchingVersions` (de passive "werden abgerufen", es "Obteniendo", fr
"Récupération des", ru "Получение", he "מביא", ja "取得中", ko "가져오는
중"). "model file" follows `errors.noModelFiles` in each file.

`{name}` and `{source}` are verbatim §1-R2 placeholders. `{source}` is
replaced at runtime with the *untranslated* platform name, so its
surrounding spacing follows each locale's `modelCard.actions.viewOnSource`
precedent — ja `{source} から`, ko `{source}에서`, zh `从 {source}` /
`從 {source}`, he `מ-{source}` (as in the existing `מ-CivitAI`), ru
`из {source}` (as in `из Workflow`) — and no brand ever appears inside the
translated text.

Punctuation: ASCII `:` for the Latin / Cyrillic / Hebrew locales and for
ja / ko, whose four sibling keys in the same `progress` block already use
ASCII; French keeps this file's ` : `; zh-CN / zh-TW use full-width `:`
like their siblings.

The guidelines gain a status block recording the pass and those spacing
precedents, so a future source added to the same slot does not have to
re-derive them.

Verified: `pytest tests/i18n/test_i18n.py` 20 passed,
`sync_translation_keys.py --dry-run` reports no drift, `npm test` exits 0
(1259 JS + 91 Vue). Each locale file gains exactly 4 lines — the values
were substituted as literals rather than re-serialising the JSON, so no
formatting churn.
This commit is contained in:
Will Miao
2026-09-17 07:47:17 +08:00
parent d572292142
commit 1d6da1787a
10 changed files with 49 additions and 36 deletions
+13
View File
@@ -57,6 +57,19 @@ Locales: `en`, `zh-CN`, `zh-TW`, `ja`, `ko`, `fr`, `de`, `es`, `ru`, `he` (RTL).
> `Alt` and the `↑/↓` glyphs stay Latin/verbatim in every locale, the same precedent as
> `Shift+Enter` in `modals.model.metadata.notesHint`; zh-CN / zh-TW / ja use full-width
> parentheses and ko keeps this file's ASCII style.
>
> **Status (2026-09, download metadata phases):** the download progress UI now names the two
> post-transfer stages instead of sitting at 100% showing `0 B/s`, adding 4
> `modals.download.progress.*` keys (`metadata`, `indexingFile`, `fetchingSourceMetadata`,
> `fetchingMetadata`). Translated in all 9 locales in the same pass, so the "no remaining
> placeholders" claim holds again. No new terminology: `metadata` reuses the §5 row, and the
> fetching phrasing mirrors each locale's `download.fetchingRepoFiles` / `fetchingVersions`.
> `{name}` and `{source}` are verbatim §1-R2 placeholders — `{source}` is filled at runtime
> with the *untranslated* platform name, so its surrounding spacing follows each locale's
> `modelCard.actions.viewOnSource` precedent (ja `{source} から`, ko `{source}에서`,
> zh `从 {source}` / `從 {source}`, he `מ-{source}`) and no brand ever appears inside the
> translated text. ja / ko keep this block's ASCII `:` like their sibling progress keys;
> zh-CN / zh-TW use full-width ``.
---