Как находить ошибки в файлах перевода

Дата обновления перевода 2022-01-30

Как находить ошибки в файлах перевода

Symfony обрабатывает все файлы перевода приложения, в качестве части процесса, который компилирует код приложения перед его выполнением. Если в каком-либо файле перевода есть ошибка, вы увидите сообщение об ошибке, объясняющее проблему.

Если хотите, вы также можете валидировать содержимое любого файла перевода YAML и XLIFF, используя команды lint:yaml и lint:xliff:

1
2
3
4
5
6
7
8
9
10
11
# контроль качества одного файла
$ ./bin/console lint:yaml app/Resources/translations/messages.en.yml
$ ./bin/console lint:xliff app/Resources/translations/messages.en.xlf

# контроль качества целого каталога
$ ./bin/console lint:yaml app/Resources/translations
$ ./bin/console lint:xliff app/Resources/translations

# контроль качества конкретного пакета
$ ./bin/console lint:yaml @AppBundle
$ ./bin/console lint:xliff @AppBundle

Результаты контроля качества могут быть экспортированы в JSON, используя опцию --format:

1
2
$ php bin/console lint:yaml translations/ --format=json
$ php bin/console lint:xliff translations/ --format=json

При запуске команд контроля качества внутри действий GitHub, вывод автоматически адаптируется к формату, требуемому GitHub, но вы можете также форсировать этот формат:

1
2
$ php bin/console lint:yaml translations/ --format=github
$ php bin/console lint:xliff translations/ --format=github

5.3

Формат вывода github был представлен в Symfony 5.3 для lint:yaml, и в Symfony 5.4 для lint:xliff.

Tip

Компонент Yaml предоставляет отдельную бинарность yaml-lint, которая позволяет вам контролировать качество YAML-файлов без необходимости создавать консольное приложение:

1
$ php vendor/bin/yaml-lint translations/

5.1

Бинарность yaml-lint была представлена в Symfony 5.1.