- brand.toml is the only place the product name lives; every crate and app
reads it through dac-brand (env vars with legacy fallback, settings folder
with copy-only migration, default library, preset extensions, i18n {app})
- cargo xtask brand check|test, run|install|package, docs, rename-crates,
deny and immich; packaging files are templates rendered from brand.toml
- icons regenerated from brand/icon.svg; upstream branding removed
- MIT licence (segment and fetch stay Apache-2.0); cargo deny licence policy
- clean-room rules in AGENTS.md/CLAUDE.md; docs/upstream-merge.md
- plan/ rebuilt and committed; parity tracker reopens Classic rows, adds
PLAN.md section 2 rows and the IMM Immich section; plan/immich.md and a
pinned Immich test server
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2.3 KiB
Русский интерфейс
<PREFIX>,<cli>,<binary>:brand.toml.
Выберите Правка → Язык → Русский или Настройки → Общие → Язык. Выбор применяется сразу
и сохраняется для следующего запуска (language: "ru" в ui.json).
Русский каталог охватывает меню, сочетания клавиш, библиотеку, обработку, кадрирование, маски, импорт и экспорт, настройки, встроенные стили и профили, историю, даты и сообщения о ходе работы. Технические ошибки из нижних уровней, как и в других языках, остаются на английском; строки, которых ещё нет в каталоге, показываются по-английски.
Имена файлов, идентификаторы команд, шаблоны и названные вами альбомы, стили и метаданные не переводятся. Шрифт интерфейса Inter содержит кириллицу, дополнительные шрифты не нужны.
Сопровождение и проверка
Постоянные тексты: crates/ui-egui/locales/ru.json. Сообщения со значениями:
crates/ui-egui/locales/ru-formats.json. Английские ключи не меняются; заполнители проверяются
(Название продукта в переводах не пишется: используйте {app} (отображаемое имя из brand.toml),
{cli} (программа командной строки) и {env} (префикс переменных окружения) без изменений и без
склонения, например About {app} → О программе {app}.)
компилятором Rust при сборке. Английские окончания множественного числа скрываются через {:.0}.
cargo test -p dac-ui-egui i18n::tests -- --nocapture
<PREFIX>_LANGUAGE=ru <cli> snapshot --demo -o russian.png --size 1600x1000