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

@@ -142,7 +142,7 @@ function M.handle_click(ctx, mx, my)
end
-- L.7: Launch button → either switch directly (clean deps) or open
-- the conflict modal (warn/error deps). The "Launch anyway" path
-- the conflict modal (warn/error deps). The launch-anyway path
-- requires engine.module.switch_module_supports_fallback (separate
-- engine slice); until that ships the button stays disabled.
if ctx._launch_btn and engine.spatial.aabb_contains_point(ctx._launch_btn, mx, my) then