Files
Zauberwald/.planning/quick/260329-u4z-deutsche-umlaute-in-ui-texten-und-claude/260329-u4z-PLAN.md
T

4.1 KiB

phase, plan, type, wave, depends_on, files_modified, autonomous
phase plan type wave depends_on files_modified autonomous
quick 260329-u4z execute 1
index.html
src/ui/screens.ts
src/companion/fallbacks.ts
src/app.ts
CLAUDE.md
true
Replace ae/oe/ue transliterations with proper German umlauts in all user-visible UI strings, and document the convention in CLAUDE.md.

Purpose: A 7-year-old child should see correct German text, not ASCII transliterations. Output: All hardcoded UI strings use proper umlauts; CLAUDE.md convention documented.

@CLAUDE.md @index.html @src/ui/screens.ts @src/companion/fallbacks.ts @src/app.ts Task 1: Replace ae/oe/ue transliterations with proper umlauts in all UI-visible strings index.html, src/ui/screens.ts, src/companion/fallbacks.ts, src/app.ts Replace the following transliterations with proper German umlauts in user-visible hardcoded strings only. Do NOT modify code identifiers, variable names, or any strings sent as API parameters.

index.html (line 34, 134, 138):

  • "Waehle" -> "Wähle"
  • "uebe" -> "übe"
  • "Uebung" -> "Übung"
  • "waechst" -> "wächst"
  • "Naechstes" -> "Nächstes"
  • "Uebungstage" -> "Übungstage"
  • "Haeufigste" -> "Häufigste"

src/ui/screens.ts (lines 111, 114, 164, 165, 369):

  • "Naechstes" -> "Nächstes"
  • "schoener" -> "schöner"
  • "ueben" -> "üben"
  • "Druecke" -> "Drücke"
  • "herunterfaellt" -> "herunterfällt"
  • "Woerter" -> "Wörter"
  • "grosse" -> "große"
  • "drueckst" -> "drückst"

src/companion/fallbacks.ts (lines 29, 59, 72, 73, 75, 76, 90, 100, 133):

  • "Frueh" -> "Früh"
  • "schoensten" -> "schönsten"
  • "Schoen" -> "Schön"
  • "Gluehwuermchen" -> "Glühwürmchen"
  • "waechst" -> "wächst"
  • "naechstes" -> "nächstes"
  • "Baeumen" -> "Bäumen"
  • "Stueck" -> "Stück"
  • "schoen" -> "schön"
  • "veraendert" -> "verändert"
  • "Spuerst" -> "Spürst"
  • "Huegel" -> "Hügel"
  • "grosse" -> "große"
  • "drueckst" -> "drückst"
  • "druecken" -> "drücken"
  • "Oe" -> "Ö" (in the text "Das Oe mit den zwei Punkten")

src/app.ts (comments only, lines 115, 121):

  • "ueben" -> "üben" (in comment)
  • "Zurueck" -> "Zurück" (in comment)

These are ALL user-visible strings. Do not touch the Gemini API prompt strings in companion.ts (those already use proper umlauts). cd /home/dev/workspace/zauberwald && grep -rn "uebe|Ueb|waechst|Naechst|naechst|drueck|Drueck|faellt|Woerter|schoen|Schoen|grosse|Grosse|Stueck|Baeumen|veraendert|Spuerst|Huegel|Gluehwuerm|Waehle|Haeufigste|Frueh" --include=".html" --include=".ts" src/ index.html | grep -v node_modules | grep -v ".planning" ; echo "EXIT:$?" Zero matches from grep -- all ae/oe/ue transliterations in UI strings replaced with proper German umlauts. The app displays correct German text to the child.

Task 2: Document umlaut convention in CLAUDE.md CLAUDE.md In CLAUDE.md, replace the "## Conventions" section content (between the GSD markers) with actual convention text. Keep the GSD comment markers intact. Replace:
Conventions not yet established. Will populate as patterns emerge during development.

With:

- Immer deutsche Umlaute (ä, ö, ü, Ä, Ö, Ü, ß) in UI-Texten verwenden, niemals ae/oe/ue Transliterierung.
cd /home/dev/workspace/zauberwald && grep -c "Immer deutsche Umlaute" CLAUDE.md CLAUDE.md Conventions section contains the umlaut convention rule. Future code generation will follow this convention. 1. `grep` for transliteration patterns returns zero matches in .ts and .html files 2. CLAUDE.md contains the new convention 3. `npx vite build` completes without errors (no broken strings)

<success_criteria>

  • All user-visible German text uses proper umlauts
  • CLAUDE.md documents the convention for future work
  • Build passes </success_criteria>
After completion, update .planning/quick/260329-u4z-deutsche-umlaute-in-ui-texten-und-claude/ with summary.