Commonlib's `getConfig(key, translate?)` and `getConfName(key, translate?)`
default `translate` to `englishMessageTranslator`, and this plug-in never
passed the second argument. Every automatically wired setting therefore
rendered its name and description in English, whatever `displayLanguage` was
set to. Commonlib's own Config Doctor already threads a translator through
`getConfName`, so this only restores the argument which was missing here.
`src/modules/features/SettingDialogue/settingConstants.ts` now re-exports the
names it supplies explicitly and adds thin `getConfig` and `getConfName`
wrappers which default the translator to `translateLiveSyncMessage`. That
reaches all three existing call sites, and therefore the 102 `setAuto` and
`autoWire*` calls across the setting panes, the setup-wizard configuration
summaries, and the externally-modified-setting prompt. Of the 225 distinct
name and description strings in the two manifest tables, 160 are already
catalogue keys with translations; the remaining 65 are not catalogue keys and
pass through unchanged.
`ModuleResolveMismatchedTweaks` used `confName()`, which accepts no
translator, so it gains a local `localisedConfName()` instead. Swapping in
`getConfName()` there would have silently dropped the `statusDisplay()`
suffix, replaced the empty-string fallback for an unknown key with
`${key} (No info)`, and introduced `SettingInformation` as a second source.
English output is unchanged: every catalogue key which contains a space has a
value identical to the key itself, so translating under the default language
is idempotent.
Verified with `npm run check`, `npm run test:unit`, and `npm run build`.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
- Unify 資料庫適配器 -> 資料庫轉接器 across 6 entries so the database
adapter setting uses one term throughout the catalogue.
- Drop the calqued "透過⋯⋯來⋯⋯" construction in 3 entries (Testing-only
conflict resolution, the P2P replicator description, and the
duplicated garbage-collection cleanup description); the sentences
read the same without the borrowed English "by X to Y" shape.
- Rename the Eden-chunk "Incubate" feature's label from 孵化 (hatch) to
暫存 (temporarily store) across 7 entries, matching the wording
already used in the toggle's own description and avoiding a
half-metaphor/half-literal split within the same feature.
- Convert the ASCII ellipsis "..." to the full-width "⋯" in 22
in-progress/loading strings, per Taiwanese typography convention;
the English source keys (which legitimately end in "...") are
untouched.
- Reword "Fetch database with previous behaviour" to avoid a 以前/以
+ 前一種 parsing ambiguity, matching the 先前的行為 wording already
used by the sibling 保留先前的行為 entry.
- Drop the orphaned closing paren in errMaxDocumentSize/errMaxRequestSize,
fixing a display defect inherited from the English source.
- Add 同步 to beforeLiveSync for clarity.
Regenerated messagesJson/zh-tw.json and combinedMessages.prod.ts via
`npm run i18n:bake`; no other locale's entries changed.
Verified with tsc-check, lint, lint:community, lint:community:tools,
svelte-check, build, check:compatibility, and test:unit (630 tests,
88 files) — all pass.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>