From 048d3d5469a6839fb7a190e5b0f83810c85eb019 Mon Sep 17 00:00:00 2001 From: sephrat <34862846+sephrat@users.noreply.github.com> Date: Thu, 22 Apr 2021 23:18:14 +0200 Subject: [PATCH] Document new translation process with Crowdin (#342) --- docs/docs/contributors/translating.md | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/docs/docs/contributors/translating.md b/docs/docs/contributors/translating.md index bf09ec62..b4fa608f 100644 --- a/docs/docs/contributors/translating.md +++ b/docs/docs/contributors/translating.md @@ -1,16 +1,21 @@ # Contributing with Translations +Translations can be a great way **for non-coders** to contribute to project. +We use **[Crowdin](https://crowdin.com/project/mealie)** to allow several contributors to work on translating Mealie. +You can simply help by voting for your preferred translations, or even by completely translating Mealie into a new language. -Mealie supports a framework for the community to contribute different translations. Translations can be a great way for non-coders to contribute to project. +Translations are regularly pulled from Crowdin and included in each new release. -## My Language Is Missing -If your language is missing, you can add it, by beginning to translate. We use a Vue-i18n in json files. Copy frontend/src/locales/en.json to get started. +Please use Crowdin as much as possible if you have any question/issue regarding a particular string. You can take a look at [Crowdin Knowledge base](https://support.crowdin.com/for-volunteer-translators/) if you want to know more about how to use this tool. -## Improving Translations -If your language is missing the translation for some strings, you can help out by adding a translation for that string. If you find a string you think could be improved, please feel free to do so. +## My language is missing in Mealie +Once your language is translated on Crowdin, we need to manually add it in Mealie. If you believe your language is ready for use, please create an issue on GitHub. -## Tooling -Currently we use Vue-i18n for translations. Translations are stored in json format located in [frontend/src/locales](https://github.com/hay-kot/mealie/tree/master/frontend/src/locales). +## I can't find a particular text in Crowdin +There can be several reasons: +- The text you're looking for is outdated: someone has already changed it or it will be removed/changed in the next release. +- It is possible some texts are not translatable (yet) for technical reasons. If you spot one, please reach out to us on [Discord](https://discord.gg/QuStdQGSGK) or raise an issue on GitHub. -If you have experience with a good Translation Management System, please feel free to chime in on the [Discord](https://discord.gg/QuStdQGSGK), as such a system could be helpful as the projects grow. -Until then, [i18n Ally for VScode](https://marketplace.visualstudio.com/items?itemName=antfu.i18n-ally) is recommended to aid in translating. It also has a nice feature, which shows translations in-place when editing code. -i18n Ally will also show which languages is missing translations. \ No newline at end of file +## Technical information +We use vue-i18n package for internationalization. Translations are stored in json format located in [frontend/src/locales/messages](https://github.com/hay-kot/mealie/tree/master/frontend/src/locales/messages). + +[i18n Ally for VScode](https://marketplace.visualstudio.com/items?itemName=lokalise.i18n-ally) is helpful for generating new strings to translate. It also has a nice feature, which shows translations in-place when editing code. \ No newline at end of file