ghostfolio icon indicating copy to clipboard operation
ghostfolio copied to clipboard

Translation to other languages

Open casitu opened this issue 3 years ago • 8 comments

I discover ghostfolio couple weeks ago and I think is a fabulous idea and needs to be translated to other languages. I offer my self for spanish translation if needed.

Keep up the good work!

casitu avatar Apr 03 '22 17:04 casitu

I agree, I could help with Italian.

alfredonodo avatar Jul 15 '22 12:07 alfredonodo

Ghostfolio is now ready for multi-language support. German has already been implemented, this is how the file looks like: https://github.com/ghostfolio/ghostfolio/blob/main/apps/client/src/locales/messages.de.xlf

Who would like to translate Ghostfolio into a new language? Please post here and I will create the foundation for the translation.

dtslvr avatar Sep 14 '22 18:09 dtslvr

Hi, I can translate it into Italian if you are not in a hurry :)

alfredonodo avatar Sep 14 '22 19:09 alfredonodo

Great @alfredonodo! 😎

I have set up messages.it.xlf now.

Please add <target state="translated">...</target> below each <source>...</source>.

E.g.

<source>Create Account</source>
<target state="translated">Creare un account</target>

Just start and commit if you have something to show.

dtslvr avatar Sep 15 '22 15:09 dtslvr

Hello, I extracted all the terms between <source> and </source> and translated them into a csv file. I think a spreadsheet with each language in a column and with a script would be much faster for both the volunteer translator and you to have a valid messages.language.xlf file. What do you think?

For instance: https://cryptpad.fr/sheet/#/2/sheet/edit/OwORnGwI8Obls8PIIxW1x9ND/

alfredonodo avatar Sep 20 '22 08:09 alfredonodo

Hi @alfredonodo

Have you already managed to translate the locales? 😃

I don't mind how you want to work on the translations, it just needs a pull request that can be merged. By the way, there are even dedicated tools to manage XLIFF files, but I think that's an overhead and I prefer to keep it simple at the moment.

Can you prepare a pull request? It does not have to be perfect, improvements are easy to implement. I can extend the language selector in the meantime.

dtslvr avatar Sep 20 '22 15:09 dtslvr

I can extend the language selector in the meantime.

#1276

dtslvr avatar Sep 20 '22 16:09 dtslvr

Hi @dtslvr, I completed the translation and will soon make a pull request (here there is the translation file). I am not a professional developer, however I created this script which speeds up the translation process. If you would like to feel free to use it and modify it.

alfredonodo avatar Sep 22 '22 07:09 alfredonodo

The Italian translation has just been deployed in the cloud. If you find something to improve, please create a PR or post an issue with a screenshot.

Thanks again for your contribution, @alfredonodo 🎉 Which language is next?

dtslvr avatar Sep 22 '22 19:09 dtslvr

Please, setup set up spanish file and I'll do my best to translate.

casitu avatar Sep 25 '22 11:09 casitu

Please, setup set up spanish file and I'll do my best to translate.

If you want you can compile this table (3° column) and then I will use my script to generate the corresponding messages.es.xlf file.

alfredonodo avatar Sep 25 '22 11:09 alfredonodo

Please, setup set up spanish file and I'll do my best to translate.

If you want you can compile this table (3° column) and then I will use my script to generate the corresponding messages.es.xlf file.

Thanks, I'll begin translating to spanish ;)

casitu avatar Sep 25 '22 11:09 casitu

Hi @alfredonodo, I just finished translating the table to spanish. Use your script to generate the file in order to publish it when @dtslvr thinks it is possible to do so.

casitu avatar Sep 25 '22 14:09 casitu

@casitu I generated messages.es.xlf and created a pull request.

alfredonodo avatar Sep 25 '22 15:09 alfredonodo

If you want you can compile this table (3° column) and then I will use my script to generate the corresponding messages.es.xlf file.

Please do not use this table from now on, it is causing a lot of overhead.

dtslvr avatar Sep 27 '22 18:09 dtslvr

I just finished translating the table to spanish.

Español has just been deployed in the cloud. Great work @casitu! 👍🏻

dtslvr avatar Sep 27 '22 19:09 dtslvr

If you want you can compile this table (3° column) and then I will use my script to generate the corresponding messages.es.xlf file.

Please do not use this table from now on, it is causing a lot of overhead.

What kind of overhead? Spacing problems? From a translator's point of view, it is easier, faster and less prone to errors to translate from a table than from an xml file. If you want, I can adapt the trust to your needs.

alfredonodo avatar Sep 28 '22 05:09 alfredonodo

What kind of overhead?

Resolving conflicts.

dtslvr avatar Sep 29 '22 07:09 dtslvr

What kind of overhead?

Resolving conflicts.

I took the Italian and Spanish translations here. I fine tuned the script and for the Spanish version there is no difference between github and the version generated by the script (I used diff). In the case of Italian, there is still ' (apostrophe) instead of &apos;, but I can replace it with an operation. Also, I found that there are two new untranslated strings at the end of the English locale, so I updated the Italian and Spanish versions.

P.S. I found that in the English locale, the order of the last two strings is reversed compared to the other locales.

alfredonodo avatar Sep 30 '22 07:09 alfredonodo

When I extract the locales after a change, the new locales will be marked with state="new". I think the benefit of the table applies mainly for a new language. When you just translate some (additional) locales, it's easier to change it directly.

Strange, I don't know why the order is not consistent for all files.

dtslvr avatar Sep 30 '22 08:09 dtslvr

Hi, I agree about the translation. However, I noticed that sequence numbers <context context-type="linenumber"> change during the various translation commits. I therefore modified the script and it is now able to handle the <new> tag. Finally, I noticed that in the new commit for Spanish some variables have been translated:

<target state="translated">Comisiones por <x id="INTERPOLATION" equiv-text="{{ summary?.ordersCount }}"/> <x id="ICU" equiv-text="{summary?.ordersCount, plural, =1 {t**ransacción**} otras {**transacciones**}}"/> </target>
<target state="translated">{VAR_PLURAL, plural, =1 {**transacción**} otras {**transacciones**}}</target>
<context-group purpose="location">

alfredonodo avatar Oct 02 '22 10:10 alfredonodo

X-Ray and FIRE sections are not translated. Any chance to translate it?

Captura de pantalla 2022-10-03 194806 Captura de pantalla 2022-10-03 194830

casitu avatar Oct 03 '22 17:10 casitu

X-Ray and FIRE sections are not translated. Any chance to translate it?

Thanks for the feedback @casitu. I have setup the localization for the 4% rule here: https://github.com/ghostfolio/ghostfolio/pull/1327

X-ray is currently not suitable for translation (technology wise) and will probably change in the future.

dtslvr avatar Oct 06 '22 18:10 dtslvr

The translations have a few gaps and should be refreshed. Are you fluent in Spanish, French, Italian, Portuguese or Dutch?

dtslvr avatar Sep 06 '23 08:09 dtslvr

Hi, I can do it for Italian if you are not in a hurry.

alfredonodo avatar Sep 06 '23 09:09 alfredonodo

Hi I managed to do my first contribution on GitHub. So I should be able to work on the Dutch translation and commit changes.

jstrvr avatar Sep 08 '23 17:09 jstrvr

Hi, I can do it for Italian if you are not in a hurry.

Hi, I completed the task. See my comments.

alfredonodo avatar Sep 13 '23 08:09 alfredonodo

Thank you for your great contributions! Will close this issue now, we can create new ones if needed.

dtslvr avatar Sep 14 '23 21:09 dtslvr

Add Chinese support : https://github.com/ghostfolio/ghostfolio/pull/3215

traceur avatar Mar 31 '24 04:03 traceur

Add Chinese support : https://github.com/ghostfolio/ghostfolio/pull/3215

I have just created a PR with the setup for zh: https://github.com/ghostfolio/ghostfolio/pull/3220

dtslvr avatar Mar 31 '24 08:03 dtslvr