appstore icon indicating copy to clipboard operation
appstore copied to clipboard

l10n: translations of apps descriptions from Transifex are not used

Open p-bo opened this issue 5 years ago • 17 comments

As a translator, I translated lot of nextcloud apps descriptions on Transifex, but none of them made it to https://apps.nextcloud.com/, nor apps install section in Nextcloud instance (logical - the same data source). Other parts of these pages are localized (at least partly) – so, would it be possible to use translations of apps descriptions for users to have benefit from translators work please?

Thanks and have a nice day :)

p-bo avatar Apr 23 '20 07:04 p-bo

@p-bo My translation work was also done in vain 😉. Topic raised in the forum.

Valdnet avatar Apr 27 '20 10:04 Valdnet

@BernhardPosselt how is this supposed to be synced?

mario avatar Apr 29 '20 13:04 mario

@p-bo where did you translate them exactly? Maybe by looking at it I can figure out how it's supposed to be synced back.

mario avatar Apr 29 '20 22:04 mario

@mario Example (the same for others translatable Nextcloud server apps):

file: https://github.com/nextcloud/circles/blob/master/l10n/cs.js

strings:

"Bring cloud-users closer together." : "Sblížit uživatele cloudu.",

"Circles allows your users to create their own groups of users/colleagues/friends.\nThose groups of users (or 'circles') can then be used by any other app for sharing purpose (files, social feed, status update, messaging, …).\n\nDifferent type of circles can be created:\n\n- A personal circle is a list of users known only to the owner.\nThis is the right option if you want to do recurrent sharing with the same group of people.\n\n- A public circle is an open group visible to anyone willing to join.\nYour circle will be visible to everyone and everyone will be able to join the circle.\n\n- A closed circle requires invitation or confirmation by an admin.\nThis is the right circle if you are looking for privacy when sharing your files or ideas.\n\n- An Secret circle is an open group that can be protected by a password.\nUsers won't be able to find this Circle using Nextcloud search engine." : "Kruhy umožňují vašim uživatelům vytvářet jejich vlastní skupiny uživatelů/kolegů/přátel. Tyto skupiny uživatelů (neboli „okruhy“) je pak možné využívat ve všech ostatních aplikacích pro účely sdílení (soubory, společenské zdroje, aktualizace stavu, zprávy, …).\n\nJe možné vytvářet různé typy okruhů:\n\n- Osobní okruh je seznam uživatelů známý pouze vlastníkovi.\nToto je správná volba pokud chcete opakovaně sdílet se stejnou skupinou lidí.\n\n- Veřejný okruh je otevřená skupina viditelná komukoli kdo se chce připojit.\nVáš okruh bude viditelný komukoli a kdokoli bude schopen se do okruhu přidat.\n\n- Uzavřený okruh vyžaduje pozvání nebo potvrzení správcem.\nToto je správný okruh pokud hledáte soukromí při sdílení souborů nebo nápadů.\n\n- Tajný okruh je otevřená skupina kterou je možné zabezpečit heslem.\nUživatelé nebudou moci tento okruh najít prostřednictvím vyhledávání v Nextcloud."

Screenshots from localized variant of appstore - you can clearly see, that translated strings above are not used (still in English):

appstore-unused_app_desc_translation-1 appstore-unused_app_desc_translation-2

P.S.: apps descriptions are changing quite often, so there is continuous synchronization needed.

p-bo avatar Apr 30 '20 07:04 p-bo

Hm, @MorrisJobke do you know if this ever worked? o.O

mario avatar Apr 30 '20 09:04 mario

@mario worked or not - important is, that users are getting untranslated experience, which is unfortunate due fact, that translations are available for long time - clear loss-loss for everybody (users, translators, nextcloud project) :(

p-bo avatar Apr 30 '20 10:04 p-bo

Hm, @MorrisJobke do you know if this ever worked? o.O

I guess it never did. Also because it would be super tricky to fetch. For the apps we basically use our own format (one in json and one in JS). This needs to be extracted by the appstore itself from the downloaded archive for all languages. Then it needs to parse this custom format (because I guess there is no lib in python to parse nextcloud specific language file format) and then you need to store it somehow to replace it based on the language (as it does not hook into the existing translation system.

MorrisJobke avatar Apr 30 '20 10:04 MorrisJobke

nor apps install section in Nextcloud instance (logical - the same data source).

Please open a ticket in the server. This is clearly a bug.

MorrisJobke avatar Apr 30 '20 10:04 MorrisJobke

Screenshots from localized variant of appstore - you can clearly see, that translated strings above are not used (still in English):

For information: The following applications: PhoneTrack, GpxPod, Cospend they appear in their native language, which are translated in Crowdin.

Valdnet avatar Apr 30 '20 11:04 Valdnet

For information: The following applications: PhoneTrack, GpxPod, Cospend they appear in their native language, which are translated in Crowdin.

Interesting. 🤔 So there seem to be something in the appstore that does the extraction.

MorrisJobke avatar Apr 30 '20 11:04 MorrisJobke

Translations are only read from the info.xml right now, so these apps probably translated it manually I guess.

One could probably also customize the parser to read it from a JSON file.

BernhardPosselt avatar Apr 30 '20 12:04 BernhardPosselt

Translations are only read from the info.xml right now, so these apps probably translated it manually I guess.

One could probably also customize the parser to read it from a JSON file.

Ah ... good point. We could also tweak the transifex tool to not only extract the string from info.xml but also write it back there. I guess that's then the easiest approach for all. And if I'm right, we also read the translation from there in the server.

MorrisJobke avatar May 06 '20 10:05 MorrisJobke

nor apps install section in Nextcloud instance (logical - the same data source).

Please open a ticket in the server. This is clearly a bug.

@MorrisJobke done - see https://github.com/nextcloud/server/issues/20753

p-bo avatar May 06 '20 10:05 p-bo

We could also tweak the transifex tool to not only extract the string from info.xml but also write it back there.

@MorrisJobke Hello, any news regarding this please? Everytime I translate/update long text of app description on Transifex, I'm doing this with hope, that some day it will be helpful for users...

p-bo avatar Nov 21 '22 21:11 p-bo

I'm not active in the project anymore. Maybe @skjnldsv can help you find the correct person to look into this.

MorrisJobke avatar Nov 22 '22 09:11 MorrisJobke

Hello @bigcat88 @skjnldsv @vitormattos @szaimen,

IMO, a little more attention should be paid to this problem for marketing reasons. When a description appears translated, it's more reassuring, more salesy. Would one of you be able to speak, or is there someone else you could mention ?

Note : The problem is the same in the app store accessible from inside the instances (list of apps accessed by administrators). See : https://github.com/nextcloud/server/issues/38813

Jerome-Herbinet avatar Jun 14 '23 13:06 Jerome-Herbinet

More technical info is in https://github.com/nextcloud/docker-ci/issues/516

p-bo avatar Jun 14 '23 14:06 p-bo