# Portabilität: UNIVERSAL
# Version: 1.0.0
# Zuletzt validiert: 2026-03-04

HANDLER-NAME
============
lang - Mehrsprachigkeit und Übersetzungs-Verwaltung

BESCHREIBUNG
============
Der LANG-Handler verwaltet mehrsprachige Inhalte in BACH. Er scannt Code nach
deutschen Strings, führt Übersetzungen durch, validiert fehlende
Übersetzungen und verwaltet ein Basis-Wörterbuch mit 119 deutschen Begriffen.
Nutzt SQLite-Datenbank (bach.db) mit Tabellen: languages_config,
languages_translations, languages_dictionary.

OPERATIONEN
===========
  status              Sprachkonfiguration und Statistiken anzeigen
  scan                Code-Verzeichnisse nach deutschen Strings durchsuchen
  scan --namespace    Nur bestimmten Bereich scannen (cli, gui, help, skills)
  list                Alle Übersetzungen anzeigen
  list --lang <code>  Nur bestimmte Sprache (z.B. de/en/es/ru/ja/zh)
  missing             Fehlende Übersetzungen (Standard: de ohne en)
  missing --target es Fehlende spanische Übersetzungen
  translate           Auto-Übersetzung starten (basierend auf Wörterbuch)
  translate --target en  Auto-Übersetzung für Zielsprache
  add <key>           Manuell Übersetzung hinzufügen (--de, --en, --es ... oder --lang/--text)
  add-language <code> Neue Sprache registrieren (z.B. fr, es, pt)
  export              Für LLM-Review exportieren (JSON-Format, Standard: de -> en)
  export --target zh  Für Chinesisch exportieren
  import <datei>      LLM-Review-Datei importieren und integrieren
  set <lang>          Standard-Sprache setzen (z.B. de/en/es/ru/ja/zh)
  dict status         Wörterbuch-Status anzeigen
  dict init           Basis-Wörterbuch (119 Begriffe) laden
  dict add <src> <dst> [--source-lang de --target-lang es]
  dict search <term>  Begriff im Wörterbuch suchen

BEISPIELE
=========
# Sprachstatus anzeigen
  bach lang status

# Code nach deutschen Texten durchsuchen
  bach lang scan
  bach lang scan --namespace cli

# Fehlende Übersetzungen identifizieren
  bach lang missing
  bach lang missing --target es

# Manuell übersetzen
  bach lang add "speichern" --de "Speichern" --en "Save"
  bach lang add "speichern" --es "Guardar" --ru "Sohranit"

# LLM-Review vorbereiten
  bach lang export
  bach lang export --target zh
  [... LLM bearbeitet Datei ...]
  bach lang import export.json

# Neue Sprache hinzufügen (Französisch)
  bach lang add-language fr

# Standard-Sprache auf English setzen
  bach lang set en
  bach lang set ja

# Wörterbuch-Basis laden (119 Einträge)
  bach lang dict init

DATEIEN
=======
Implementierung: hub/lang.py (LangHandler-Klasse)
Datenbank:      data/bach.db (SQLite)
  - Tabelle languages_config: Standard-Sprache, Fallback, Auto-Translate-Flag
  - Tabelle languages_translations: Alle Übersetzungen mit Metadaten
  - Tabelle languages_dictionary: Basis-Wörterbuch (119 Begriffe)
Export-Format:  JSON (Übersetzungen + Metadaten, kompatibel mit LLM-Tools)
Release-Artefakte: system/exports/translations/ (Manifest, Locale-Dateien, Seed-SQL)

SIEHE AUCH
==========
  bach cli        - Befehlszeilen-Schnittstelle
  bach backup     - Datenbank-Backups (Übersetzungen schreiben zu bach.db)
  bach help       - Help-System für alle Handler
