feat(launcher): route all UI strings through t(key) indirection

strings.lua holds English defaults. ctx.t(key, ...) looks up the key,
optionally string.formats with extra args, and falls back to '[key]'
for missing entries. All panels and init.lua sweep clean of inline
literals — verified by a grep over '"[A-Z][a-z][a-z ]+"'. This sets
up v2's localization-lib-pattern (separate slice, ADR-0036 trigger)
to swap STRINGS without touching the launcher code.
This commit is contained in:
Calic
2026-06-11 07:49:38 +02:00
parent a49aa3ef2b
commit a19dd7f1dd
5 changed files with 53 additions and 20 deletions

View File

@@ -10,9 +10,9 @@ local FONT_BTN = 18
local PADDING = 18
-- def = {
-- title = "Confirm",
-- body = "text or array of lines",
-- buttons = { { id="cancel", label="Cancel" }, { id="ok", label="Launch anyway", disabled=false } },
-- title = <localized-title-string>,
-- body = <line-or-array-of-localized-lines>,
-- buttons = { { id=<key>, label=<localized-label>, disabled=<bool> }, ... },
-- }
function M.render(def, screen_w, screen_h)
-- Backdrop.