Перейти к содержимому
SheetForge

Локализация

Эта страница посвящена языкам собственного интерфейса продукта. Локализация текста вашей игры — ключи, переводы, StringTable Unity Localization — это отдельная тема со своей страницей: Таблицы локализации.

Пользовательский интерфейс продукта — меню, окно авторинга, инспекторы, диалоги, отчёты, подсказки — поставляется на 10 языках:

English (по умолчанию) · 한국어 · 日本語 · 简体中文 · 繁體中文 · Español · Français · Deutsch · Português (Brasil) · Русский

Точная граница, включая то, какие фрагменты отчётов остаются на английском, описана ниже в разделе «Граница локализации».

Смена языка

  • При первом запуске язык интерфейса устанавливается автоматически из языка ОС вашего редактора. Девять языков отображаются напрямую; для всех остальных остаётся английский. Строка в консоли отмечает этот выбор. Измените его в любой момент, как описано ниже — явно выбранный язык никогда не переопределяется.
  • Edit ▸ Preferences ▸ SheetForge → всплывающее меню выбора языка, либо поле «Editor language» в верхней части инспектора настроек импорта (оба читают/записывают одно и то же значение).
  • Язык — это настройка для каждого пользователя (EditorPrefs) — каждый участник команды использует свой язык, и это никак не затрагивает систему контроля версий (ноль изменений в VCS).

Меню тоже локализованы

Подписи [MenuItem] — это статические атрибуты, которые не могут изменяться во время выполнения. Поэтому SheetForge перегенерирует тонкий файл меню (Assets/SheetForge/Editor/Generated/, исключён из Git) на выбранном языке. Смена языка вызывает одну короткую перекомпиляцию — без циклов, и идентичное содержимое никогда не перезаписывается.

Если папка отсутствует или язык не совпадает (например, сразу после клонирования), она самовосстанавливается автоматически. Корень Tools/SheetForge — это фиксированная константа бренда; конечные подписи следуют выбранному языку.

Смена языка заблокирована, пока выполняется импорт/экспорт/отправка — перекомпиляция при перегенерации меню не должна нарушить работающий конвейер. Меняйте язык уже после завершения.

Граница локализации

Полностью локализовано на всех 10 языках:

  • Интерфейс, отрисовываемый редактором: меню, окно авторинга, инспектор, диалоги, кнопки, подсказки.
  • Каркас отчёта и предложения «почему»/«как» для каждой ошибки.

Встроенный английский текст (внутри локализованного каркаса):

  • Фрагменты деталей отчёта — некорректное значение, предложения ближайшего совпадения и другие фрагменты, подставляемые во время выполнения, которые не могут существовать как ключи в языковой таблице.
  • Низкоуровневые исключения и логи для разработчиков ([SheetForge]).

Один пробел, который пока остаётся честно озвученным: примерно 345–360 из 1,043 ключей всё ещё содержат свой английский текст в восьми языках, отличных от английского и корейского. Эти ключи — 227 ключей ui.studio.* из Data Studio, плюс настройка темы и самые новые строки диалогов и логов.

Каждый ключ существует в каждом файле, а паритет ключей обеспечивается тестами, поэтому ничего не откатывается к сырому ключу. Это скорее ожидающий выполнения перевод, а не структурный пробел. См. Возможности и ограничения ▸ Границы локализации.

Защитный тест в обоих тестовых наборах проверяет, что исходный код продукта не содержит захардкоженных строк на корейском языке — язык разработки никогда не просачивается в интерфейс. (Единственное исключение — данные: собственное название каждого языка, например 한국어, в переключателе языка.)

Добавление и исправление переводов

Каждый язык — это ровно один файл: Assets/SheetForge/Core/Tooling/Localization/Lang/Lang{Language}.cs. Это чистый статический словарь, поэтому переводчики работают параллельно, без конфликтов слияния между языками.

  • Английский (LangEn) — это канонический список ключей. Каждый другой язык должен покрывать те же ключи.
  • Тест на паритет мгновенно обнаруживает отсутствующий ключ, лишний ключ или повреждённый плейсхолдер ({name}) в любом языке.
  • Чтобы поправить перевод: отредактируйте файл языка, сохраните плейсхолдеры нетронутыми, запустите тесты.

Похожие страницы