Новое в Symfony 7.2: Линтер переводов

Источник: «New in Symfony 7.2: Translations Linter»
В Symfony 7.2 появилась новая команда lint:translations для проверки валидности содержимого переводов.

Линтеры — инструменты статического анализа кода, используемые для выявления ошибок, таких как синтаксические и стилистические проблемы. Symfony включает множество команд линтеров для проверки конфигурационных файлов YAML (lint:yaml), контейнерных сервисов (lint:container), шаблонов Twig (lint:twig) и даже синтаксиса файлов перевода XLIFF (lint:xliff).

В Symfony 7.2 мы добавляем новый линтер для проверки содержимого переводов. В отличие от команды lint:xliff, новая команда lint:translations проверяет все ваши переводы, независимо от того, какой из поддерживаемых форматов перевода используется:

php bin/console lint:translations

# вы также можете проверить только некоторые из поддерживаемых локалей
php bin/console lint:translations --locale=en --locale=tr

Эта команда будет особо полезна при использовании синтаксиса ICU MessageFormat в переводах. Этот синтаксис мощный, но сложный, поэтому нередко можно пропустить закрывающую скобку (}), забыть о ключе other при использовании множественного числа и т. д.

php bin/console lint:translations

--------- -------------------------------- --------
Locale Domains Valid?
--------- -------------------------------- --------
ar validators, security, messages Yes
bn messages, validators No
de validators, security, messages Yes
en validators, security, messages Yes
es validators, security, messages Yes
tr validators, security, messages Yes
--------- -------------------------------- --------

Errors for locale "bn" and domain "messages"
--------------------------------------------
Translation key "post.num_comments" is invalid:

[ERROR] Invalid message format (error #65807): msgfmt_create: message formatter
creation failed: U_DEFAULT_KEYWORD_MISSING

Комментарии


Дополнительные материалы

Предыдущая Статья

Sass: @import объявлен устаревшим

Следующая Статья

Git Workflow: Эффективное управление кодовой базой