Content
You are here:
crowdsourcing translating openproject
Added by Philipp Tessenow over 11 years ago
Gustavo started a discussion about how to contribute translations for openproject. In the resulting pull request relaxdiego proposed to crowdsoure translations.
‘Great idea!’ I though, so let’s collect some translations tools/websites
site | pricing | notes | |
transiflex | website | free for open source | used by VLC, redmine_backlogs, bitbucket,.. |
crowdin | website | free for open source | used by minecraft, alfresco,.. |
translation center | rails engine | free as in open source | integrates in openproject. backed by a company. video on youtube demo site |
I propose we collect some more translation tools/services/plugins first (please tell me if you know some) and opinions about them.
After comparing what we’ve found, we can decide which tool to use.
Best,
Tessi
Replies (38)
+1 crowdin
When it’s good enough for Notch at Mojang, it’s good enough for me.
Ok, I will create a crowdin account.
Now we have to decide, which languages we want to support.
Hello Christian,
Did you have some progress on that field?
We are interested to support the french translation. If there’s an effort already started we could join it.
Hi Francois,
Unfortunately there is still no progress on the translations. We focused on a stable OpenProject 3.0 release.
I will start a crowdin project soon and provide all related information.
Best
Christian
tkx
I created this crowdin right now. And added only a request for french translation.
I will talk to the other guys, how we handle this in the future. After this I will provide a wiki page with further information.
Thanks in advance for your Participation.
Best
Ratzi
Hi,
I’m working with a French team on OpenProject, and we are going to need to translate the interface for the bulk of our staff.
We’re really happy to contribute to the Crowdin translations (there’s a bunch of bilinguals I can interrogate), but I’m struggling to figure out how to actually install the translations from a technical perspective…
Could anyone point to some documentation or help me understand how to do that part?
Thanks! :)
Hi Jamil,
We already started the translation job for the french language.
Don"t hesitate to join us here (it’s free) for a collaborative translation (really easy app to use). We already made 50% of the job.
https://crowdin.net/project/openproject
Your help will be really welcome.
Thank you, that’s looking good and I’m looking forward to contributing.
But how do you actually install a language module once the translations have been made on Crowdin? Is that a download somewhere? Do we need to install any Ruby stuff?
Thanks for your advice.
Hi Jamil,
unfortunately, only an crowdin project admin can download the translations currently. We are working on a process to do this automated and continuous than we can deliver all translations with the OpenProject core.
For now I attached the file attachment:openproject_translations_es_fr_nl_zh.zip with the current translations for:
To use the translation in OpenProject follow this steps:
1. Extract the openproject_translations_es_fr_nl_zh.zip
2. Copy the translation file (e.g. fr.yml for french, or all files) in the ‘config/locales/’ folder
3. Restart the server
4. Login as an admin and go to ‘Administration -> Settings -> Display (tab)’
5. Activate new language within ‘Available languages’
All users are now able to select this language within “My account”.
Best
Ratzi
Update:
Added thai (100%) translation attachment:th.yml
Ah, fantastic, thanks very much!
That’s a great start, and I’ll get my team to make some additions to it.
There is bug in the files above. I guess Crowdin doesn’t process the singular and plural right, so we can only translate the plural item and the singular item is missing in the translation file. If you put the file downloaded here, you might get error message when you access the page containing the item.
Here is Ratzi’s replied on how to fix:
Ratzi,
Have you finished your setup for downloading translation automatically from Crowdin? I am eager to get my installation translated so that my team can start use it ASAP.
You are right, the missing keys (`x_days.one` etc.) are a crowdin bug.
You can vote at this uservoice entry to raise attention for this missing feature.
Besides that, I have implemented an OpenProject plugin, which offers all existing crowdin translations. You can find it here .
We plan to synchronize this plugin with crowdin on a daily basis (for now I will update the translations manually till I find some time to automate this).
Please let me know, if this plugin works for you, or if you find any bugs etc.
— Tessi
FYI: Even if you don’t use the plugin, you can find the recent translation files in the plugin sources
I can’t install the plugin following the instruction, adding below line to Gemfile.plugins.
When executing
I got error message:
if I changed from ‘stable’ to ‘dev’, the installation can complete without errors. But I found no way to select language rather than the original 2 languages.
Then I downloaded the translation file from github directly and put it under config/locales. I can select the new language, but got error when getting into project setting:
Ups, this is my fault. I copy&pasted the wrong gem into the installation instructions.
I already updated the README, please do not install the webhooks gem, but the translations gem.
it seems still incorrect, all of the translation name become ‘English’.
I select them one by one, it seems Simplified Chinese is missing.
The translations key
general_lang_name
should contain the name of the language, which is ‘English’ for the english translations.Unfortunately people translated the word english to their language instead of writing the name of the current language into that key.
This can be easily fixed on crowdin.
I am not sure what happened with Simplified Chinese but I’ll investigate.
— tessi
Simplified Chinese should now appear. Taiwanese Mandarine (both have the ‘zh’ language code) took it’s place. Now both should appear (but Taiwanese Mandarin is still named “English” in the menu).
I took the chance to fetch the current translations from crowdin and uploaded them.
I know I misunderstood the key general_lang_name when I was working on crowdin, so I have already fixed it for Simplified Chinese translation.
However, if I put the yml file directly into folder locales, I can get the right translation with direct translation of ‘English’. But it is not the case after installing the plugin, all of them became ‘English’(I have captured the screen in attachment), and none of them is Simplified Chinese.(actually 2 of them are the uncompleted Traditional Chinese.)
update plugin to the latest, it is correct now.
but still getting error message in log when i click ‘administration’->‘settings’. I have tried run the precompile, not working.
Thanks for the error report!
It seems that crowdin and jstoolbar disagree on the names of translation files.
I added a file-rename step to the plugin, which names the translation files so that jstoolbar works with it.
After an update of the plugin
All user which use chinese will be reverted to use english. You have to reenable chinese as an available language (in the settings).
Please tell me if it works for you (the administration page works for me in production).
So far the translation is working fine. Thanks for the work.
Is there any plan to translate the plug-in?
got a error today when creating new work package in timeline view, if I decided to close the dialog without saving current input.
this should be a translation of
maybe it is missing in the Simplified Chinese file. BTW, where is the translation file after the plug-in installation?
The translation exists in zh.yml (you’ll find the translations at the place where the
openproject-translation
gem was installed and then in the subdirectoryconfig/locales
.It might be that you need to do another
(and then a server restart)
so that javascript translation get recompiled.
If this fixes your problem, then I’ll add the step to the plugin README.
Concerning plugin-translations, I’ll ask some colleagues and come back to you later.
Hello all,
My team and I have finished the French translation of the interface. I’m sorry I didn’t use the Crowdin thing, but we could work much faster by directly editing the file.
The translation is complete as we’ve gone through every line, which means that this is basically ready to be used as an official translation if you like. Of course, there’s always a small possibility of errors that we’ve missed (or got mangled in a technical-speech kind of way), so please feel free to give feedback.
We’re very happy to contribute this back to the project, and hope others find it useful.
Philipp Tessenow wrote:
the precompile works as expected.
Thanks, I’ll add the precompile step to the plugin-readme.
Concerning plugin translations, we are currently not set on a solution.
Plugins may be contributed by everyone (so the OPF team has no control over their translations). We could rely on the plugins to server their own translations, or have a separate crowdin project (and translation gem?) for every plugin. Which option do you prefer? Do you have any other ideas?
Jay Kay, thanks for your contribution! :)
I’ll look into merging your translations with the crowdin ones, if I find enough spare time to do that.
Philipp Tessenow wrote:
At least you can manage the translation for those plugins from OPF team, and integrate the crowdin projects together. For the rest of plugins, of course you have no control and I agree to let them decide their translation method. The OPF team can give your guidline and preference. What do you think?
It seems the latest stable openproject code has been changed a lot, the crowdin project doesn’t reflect the changes. If we use the current translation file, we might get errors. For example, in the latest stable 3.0.3, the original en.yml file contains a group named ‘select2’, while it is not existing in the crowdin file. As we can see a lot of difference, could you update the crowdin project accordingly?
Thanks for notifying us.
Unfortunately I am not aware of a method to have crowdin translations for two branches of the same project (`dev` and `stable`). currently we use the `dev` branch. But you are right, we should better take the `stable` branch, as that is what we recommend for installation.
Currently, I cannot promise when we are able to fix it. However, I created a WorkPackage ( ) to track the progress of this bug. I will try to schedule it, so that we can fix it soon.
cheers,
tessi
Hi everyone,
I’ve just sign up on crowdin, and made myself part of the project. I’ve started validating the Spanish translation already. I’d like to know if there’s a way of downloading the .yml file, in order to add it to my local OpenProject install.
Thanks in advance,
Ignacio
Hello Ignacio,
as you can read here in the thread ;) just install the OpenProject Translations plugin and you can use all OpenProject translations.
To install the plugin add the following line to the Gemfile.plugins than run
bundle install
Best
Ratzi
Thanks so much, Ratzi :)
I’m really sorry I didn’t read the thread thoroughly :( I’ll try to pay more attention next time.
Cheers,
Nacho
Hello everyone,
the translations plugin was out of sync with the OpenProject core for some time now. Sorry if this caused you any inconvenience! I have fixed the underlying problem in the last couple of days.
Now we have up-to-date translations again. A plus is that the error which came when installing the translations plugin should be fixed too.
Another thing is, that we support multiple versions of OpenProjet now. So we can have translations for the current stable version, older versions, as well as a bleeding edge development version.
If you experience any problems with the updated translations plugin, please reach out to us and we have a look at it.
cheers,
Philipp