Команда Validate¶
Описание¶
Команда validate
проверяет целостность и корректность файлов локализации модов RimWorld в указанной корневой директории. Для английского исходника RimLoc рассматривает Languages/English
и Defs
(имплицитные label/description и др.). Проверяется согласованность, формат и структура исходных строк.
Использование¶
rimloc-cli validate --root <ROOT> [OPTIONS]
Опции¶
Опция | Описание | Обязательно |
---|---|---|
--root |
Корневая директория, содержащая файлы локализации | Да |
--source-lang |
Код исходного языка (например, en ) |
Нет |
--source-lang-dir |
Путь к директории исходного языка | Нет |
--defs-dir <PATH> |
Ограничить поиск английских строк в Defs указанным путём |
Нет |
--defs-field <NAME> |
Дополнительные поля Defs (флаг можно повторять или перечислить через запятую) |
Нет |
--defs-dict <PATH> |
Дополнительные словари Defs (JSON: DefType → [field paths]) |
Нет |
--format |
Формат вывода: text | json (по умолчанию: text) | Нет |
--game-version <VER> |
Папка версии, по которой работать (например, 1.4 , v1.4 ). Авто-выбор, если не указано. |
Нет |
--include-all-versions |
Проверять все подпапки версий, вместо авто-выбора последней. | Нет |
--ui-lang |
Язык сообщений интерфейса | Нет |
--quiet |
Скрыть стартовый баннер и несущественные сообщения (алиас: --no-banner ) |
Нет |
--help |
Показать справку | Нет |
Tip
Без --source-lang
и --source-lang-dir
RimLoc ищет исходные строки в Languages/English
и в Defs
. Используйте --defs-dir
для ограничения корня Defs, а --defs-field
— для добавления кастомных полей (можно задать в rimloc.toml
в [scan].defs_fields
).
Выполняемые проверки¶
- empty — обнаружение пустых значений
- duplicate — поиск дублирующихся ключей
- placeholder-check — проверка согласованности плейсхолдеров
Примеры¶
Проверка файлов локализации в директории ./locales
с настройками по умолчанию:
rimloc-cli validate --root ./locales
Указание исходного языка и директории исходного языка:
rimloc-cli validate --root ./locales --source-lang en --source-lang-dir ./locales/en
Получение результата проверки в формате JSON, фильтрованного по исходному языку:
rimloc-cli validate --root ./locales --format json --source-lang en
Задание языка интерфейса для сообщений:
rimloc-cli validate --root ./locales --ui-lang en
Вывод¶
Команда выводит сводку ошибок и предупреждений в выбранном формате. В режиме text
используются символы ✖ (ошибки), ⚠ (предупреждения) и ℹ (информация); в режиме json
возвращаются структурированные объекты, удобные для дальнейшей обработки.
Коды выхода¶
0
— проверка завершилась без ошибок (предупреждения возможны).1
— обнаружены ошибки (дубликаты, пустые строки, проблемы плейсхолдеров).
Решение проблем¶
- Неожиданные дубликаты — убедитесь, что файлы перевода не являются симлинками на один и тот же XML или не закоммичены дважды с разным регистром имени.
- Сообщения
placeholder-check
— сравните исходное и переведённое значение; с--format json
сразу видно ключ и строку. - Команда завершилась с кодом 0, но проблемы остаются — переключитесь на
--format json
, чтобы передавать вывод скриптам, или используйте--ui-lang ru
для локализованных диагностик.