# Portability: UNIVERSAL
# Last validated: 2026-05-17
# Next review: 2027-05-17

ИМЯ ОБРАБОТЧИКА
============
lang - Мультиязычность и управление переводами

ОПИСАНИЕ
============
Обработчик LANG управляет многоязычным контентом в BACH. Он сканирует код
Немецкие строки, выполняет переводы, проверяет отсутствующие
Переводит и управляет базовым словарем, содержащим 119 немецких терминов.
Использует базу данных SQLite (bach.db) с таблицами: Languages_config,
языки_переводы, языки_словарь.

ОПЕРАЦИИ
===========
  статус Просмотр языковой конфигурации и статистики
  сканировать каталоги кодов поиска для немецких строк
  scan --namespace Сканировать только определенную область (клиент, графический интерфейс, справка, навыки)
  list Показать все переводы
  list --lang <код> Только определенный язык (например, de/en/es/ru/ja/zh)
  отсутствует Отсутствующие переводы (по умолчанию: de без en)
  отсутствует --target es Отсутствуют испанские переводы
  перевести Начать автоматический перевод (на основе словаря)
  Translate --target ru Автоматический перевод на целевой язык
  add <key> Добавить перевод вручную (--de, --en, --es ... или --lang/--text)
  add-language <код> Зарегистрировать новый язык (например, fr, es, pt)
  экспорт Экспорт для обзора LLM (формат JSON, стандарт: de -> en)
  экспорт --target zh Для экспорта в Китай
  import <file> Импортировать и интегрировать файл обзора LLM
  set <lang> Установить язык по умолчанию (например, de/en/es/ru/ja/zh)
  dict status Показать статус словаря
  dict init Загрузить базовый словарь (119 терминов).
  dict add <источник> <dst> [--source-lang de --target-lang es]
  dict search <term> Искать термин в словаре

ПРИМЕРЫ
=========
# Показать статус языка
  bach lang status

# Код поиска для немецких текстов
  bach lang scan
  bach lang scan --namespace cli

# Определить недостающие переводы
  bach lang missing
  bach lang missing --target es

# Перевести вручную
  bach lang add "speichern" --de "Speichern" --en "Save"
  bach lang add "speichern" --es "Guardar" --ru "Sohranit"

# Подготовить обзор LLM
  bach lang export
  bach lang export --target zh
  [... LLM редактирует файл ...]
  bach lang import export.json

# Добавить новый язык (французский)
  bach lang add-language fr

# Установить язык по умолчанию на английский
  bach lang set en
  bach lang set ja

# Загрузить базу словаря (119 записей)
  bach lang dict init

ФАЙЛЫ
=======
Реализация:hub/lang.py (класс LangHandler)
База данных: data/bach.db (SQLite)
  - Таблица языков_конфигурации: язык по умолчанию, резервный вариант, флаг автоматического перевода.
  - Таблица «languages_translations»: все переводы с метаданными.
  - таблица Languages_dictionary: базовый словарь (119 терминов)
Формат экспорта: JSON (переводы + метаданные, совместимые с инструментами LLM)
Артефакты выпуска: система/экспорт/переводы/ (манифест, файлы локали, исходный SQL)

СМ. ТАКЖЕ
==========
  bach cli        - Интерфейс командной строки
  bach backup     - Резервные копии базы данных (запись переводов в bach.db)
  bach help       - Справочная система для всех обработчиков
