У меня есть приложение, которое должно быть интернационализировано. В настоящее время почти все строки назначаются клавише трансляции с использованием t('.whatever')
.Извлечь все нетранслируемые ключи в приложении Rails
Я хочу, чтобы все ключи были переведены на определенный язык, прежде чем мы их выпустим. В среде разработки/тестирования я могу включить config.action_view.raise_on_missing_translations = true
.
Но некоторые части, такие как devise
и некоторые другие, сгенерированные с помощью драгоценного камня, не рассматриваются в тестах, и нет грантополучателя, который действительно проверяет все страницы перед выпуском.
Я бы предпочел решение, которое извлекает все ключи и добавляет их в locales/xxx.yml
, желательно с некоторой логикой для сортировки и добавления недостающих ключей.
Я имел взгляд на следующие драгоценные камни/проекты, которые не отвечают моим требованиям:
- LocaleApp - перепутались мои локалей полностью :(
- i18n-missing_translations не показывать недостающие ключи перевода из язык по умолчанию
Дополнительная информация
Наши ключи являются английский, наш язык по умолчанию :de
, но нам нужно перевести все, чтобы [:de, :en, :fr, :it]
Вы посмотрели [I18n-tasks] (https://github.com/glebm/i18n-tasks)? Вы можете использовать их тест RSpec, чтобы убедиться, что все ключи переведены на все языки перед выпуском. –