Команда Validate PO¶
Описание¶
Команда validate-po проверяет корректность и согласованность PO (Portable Object) файлов перевода, используемых в модах RimWorld. Она проверяет правильность заполнения плейсхолдеров как ключевой аспект и обеспечивает общее качество файлов локализации, особенно при включенном строгом режиме.
Выполняемые проверки¶
- Несоответствие плейсхолдеров — обнаруживает несоответствия в плейсхолдерах между исходными и переведёнными строками.
Использование¶
rimloc-cli validate-po --po <PO> [OPTIONS]
Опции¶
| Опция | Описание | Обязательно |
|---|---|---|
--po <PO> |
Указать PO файл для проверки. | Да |
--strict |
Включить строгий режим проверки, при котором предупреждения считаются ошибками. | Нет |
--format |
Формат вывода отчёта о проверке (по умолчанию: text). | Нет |
--ui-lang <LANG> |
Установить язык для сообщений пользовательского интерфейса. | Нет |
--quiet |
Скрыть стартовый баннер и несущественные сообщения (алиас: --no-banner) |
Нет |
--help |
Показать справку по команде validate-po. | Нет |
Примеры¶
Проверить PO файл с настройками по умолчанию:
rimloc-cli validate-po --po Mods/MyMod/Translations/en.po
Базовая проверка на распространённые ошибки.
Проверить PO файл в строгом режиме с выводом в формате JSON:
rimloc-cli validate-po --po Mods/MyMod/Translations/en.po --strict --format json
Строгая проверка, при которой предупреждения считаются ошибками, с выводом результатов в формате JSON.
Вывод¶
Команда выводит подробный отчёт об ошибках и предупреждениях, найденных в PO файле, помогая поддерживать высокое качество и согласованность переводов для вашего мода. В формате text вывод использует символы, такие как ✖ для ошибок, ⚠ для предупреждений и ℹ для информационных сообщений. В формате json вывод представляет собой структурированные объекты, отражающие результаты проверки.
Коды выхода¶
0— блокирующих несоответствий плейсхолдеров нет (в предупреждениях нестрогого режима могут остаться замечания).1— найдена хотя бы одна ошибка (или предупреждение при включённом--strict).
Решение проблем¶
- Ошибки
placeholder-mismatch— плейсхолдеры должны совпадать полностью, включая регистр и фигурные скобки; убедитесь, что переводчик сохранил токены вроде{0}или%s. - Строгий режим срывает сборку — отключите
--strict, чтобы просмотреть предупреждения локально, затем исправьте проблемные строки и снова включите флаг в CI. - PO файл не находится — указывайте абсолютный путь или запускайте команду из корня репозитория, чтобы относительные пути разрешались корректно.