Is there any way to spot missing messages?
Describe the feature
Assuming the following example:
<i18n>
en:
apple: Apple
pie: Pie
fr:
apple: Pomme
</i18n>
Is there any command that would allow me to easily spot that the "pie" key is missing on the "fr" locale on that component?
This would be incredibly useful, what are the other possible solutions? Manually comparing every key of every locale on every page is too tough of a job..
Thank you
Additional information
- [ ] Would you be willing to help implement this feature?
- [X] Could this feature be implemented as a module?
Final checks
- [X] Read the contribution guide (The contribution guideline of nuxt-modules/i18n is compliant with Nuxt too).
- [X] Check existing discussions and issues.
Theres an eslint rule for that: https://eslint-plugin-vue-i18n.intlify.dev/rules/no-missing-keys-in-other-locales.html
The i18n module has little to do with how you manage or mess up your keys. Instead, I recommend you checking out Tolgee, which is a free and self-hostable admin app just for translations. It'll save you from a lot of headache - can compare translations, track modifications, provide api for translations and way more.
We have this "simple" script at elk.zone:
https://github.com/elk-zone/elk/blob/main/scripts/prepare-translation-status.ts
We have the table where we show missing and outdated keys, you can expand the rows to show both:
https://docs.elk.zone/guide/contributing#translation-status