Elgg Localization

Hello All,

I would like to go straight to my goal: I discovered that Elgg Translation/Localization in languages other that English happens through Transifex.

Unfortunately the Elgg project there seems a dead thing. No way to contact anybody. No recent activity.

Do you know the best way to contribute for a good Elgg translation (in my case in Italian) because the current Italian version can be improved, a lot.

Thank you

  • Yes, you are right: translations in Elgg are now good, Elgg2 translations are bad.

    My will is to improve also the Elgg2 translations, but starting from the situation as it is today it would be a really long and boring task.

    My wish is to find the fastest way to improve Elgg2 translations. I agree with your concern, but once all the Elgg translation would be imported in Elgg2 it would be a shorter task to review all of them for coherency, because the most of them would be OK.

    I have some ideas on how to perform that, but I was wondering may be you have a magic wand able to do that in one click!

    Let me know

  • I'm not sure what kind of permissions your user role has at Transifex, but at least the project owners can do this:

    1. Go to "Elgg Core 1" translation project
    2. Choose Italian
    3. Choose a translation resource (e.g. blog)
    4. Use "Download file to translate" to download the translations
    5. Verify manually that the translations in the file are valid also in Elgg 2
    6. Go to "Elgg Core 2" translation project
    7. Choose Italian
    8. Choose the correct resource
    9. Use "Upload file" to upload the translations
    10. Use the Transifex web interface to add the missing translations (for new strings added in Elgg 2 that were not present in the file you downloaded from the "Elgg Core 1" project) 

    If you have access to command line, you can automate all the download/upload steps using Transifex client tool: the http://docs.transifex.com/client/

  • Thank you.

    I did so, exactly as you suggested. Using an external filediff editor to update the Elgg2 files.

    Work in progress...

    Thank you again for your kind support!

  • I think it's wise to do a filediff locally and not just uploading the Elgg 1 translations to Elgg 2.

    The problem is not due to new or removed strings. New strings will just missing after upload and strings no longer existing in the 2.0 language file will be dropped.

    But the problem is with changed language strings where the language key is still the same. The "new" translation from the old Elgg 1 translation would just be taken as the changed translation even if it no longer matches the modified English string. In some cases this might only be confusing if the translated text output no longer matches. But in case the number of placeholders (%s) has changed this can be more of a problem.

    As far as I remember from updating the German translations, the changes in the language files between Elgg 1 and Elgg 2 were not too extensive. Maybe the main language file needed most of the work while the changes in the plugin language files were minimal. I'm using a diff tool when updating the German translations anyway and do all changes locally. I think it's easier that way with the web interface of Transifex being slow anyway.

  • Thank you a lot for your advice about string variable placeholders (s%). I checked their number in each pair Elgg1-Elgg2 after the translation porting and they seem to be the same. (poor test?)

    You were also right that the two most edited resource files are "engine" and "install", changes in other files are minimal.

    Now that all the files have been fixed, I can't wait to install a new Elgg2 release to see the result of all of this.

  • I checked their number in each pair Elgg1-Elgg2 after the translation porting and they seem to be the same. (poor test?)

    I can't say for sure. It's a possible cause for errors but it might not necessarily be happening after all. Maybe there were no changes between Elgg 1 and 2 in language strings containing placeholders or at least the number of placeholders hasn't changed in these.

  • Before anyone else says anything further: Let's keep this discussion about the technical process of how to contribute to translations. If anyone wants to talk about anything else, please open a separate discussion thread.

    Thank you.

Beginning Developers

Beginning Developers

This space is for newcomers, who wish to build a new plugin or to customize an existing one to their liking