Ciao everyone, recently I was asked on the GitHub discussions section of the repository whether it would be possible to host translations on Weblate in order to crowdsource the effort of localization. I had created that thread myself a lot of time ago and forgot about it as it had no interactions. But that user was right, the translation into their language was of poor quality and in my opinion all users deserve to use the app in their native language and have a good experience with it.
I decided then to move all the resources to Weblate and see if anyone wants to help out. Feel free to add languages, be them national, regional, or even constructed languages, because for me they matter too and, in case you didn’t notice, Raccoon is available also in Esperanto and Toki Pona.
I hope you like this initiative and, as always, thanks for your suggestions, ideas, contributions and support.
I would like to help with Italian… but you are Italian too 🥲
☝️My being Italian doesn’t automatically imply I speak good Italian at all! 😅 Especially because when I write code I don’t care too much about linguistic style, consistency, accurateness etc. If you have time and want to check, you’re more than welcome.
Aspects that can be improved in the 🇮🇹 translation are:
- the distinction between “purge” (admin action) / “remove” (moderator action) and “delete” (user action)
- what Lemmy calls featured (and non-featured) posts
- what Lemmy calls distinguished comments
- the distinction between “lock” (prevent comments) and “block” some user
- a consistent translation for “ban”/ “unban”
and there are just the first ones that come to my mind.
My biggest challenge is to translate “instance”. The typical translation doesn’t really fit the concept of an application instance. For now I just use the equivalent of the term “site” or “website”.
I don’t know if it makes you feel better, but for Esperanto I consistently used “nodo” meaning “server”.
Yeah server would be much easier for general users to understand. I might use it in my updated translation. Thanks.
I am slowly adding context and explanations to all strings in order to make it easier to understand where and how they are used.
Please add Cantonese. I will help with the translation.
I see you have already done it and started working on it, thanks! I am adding context information about individual messages but I think you are quicker than me 🤭
I’m working on Traditional Chinese which is mainly for Taiwan.
I would like to add Cantonese which is mainly for Hong Kong.
Do you mean this one?
Yeah that’s the one. It wouldn’t let me add the language. Looks like it is there now. Thanks.
Could you please tell me the names you want to be displayed for the two languages in the language selection bottom sheet? Which flags should I use: is it 🇭🇰 for Hong Kong and 🇹🇼 for Taiwan right?
English name / native names / region:
Traditional Chinese / 正體中文 / Taiwan 🇹🇼
Cantonese / 廣東話 / Hong Kong 🇭🇰
The flags are correct, thanks. There should be a lot of room for improvement in my translations. Please let me know when you have a pre release with the languages included. I will test and make further changes.
Thanks! On it, see this PR.
It works!
🐳 Witty whale ?? Do you actually have this in the app?
Yes 😓 ahah nobody uses theme colors I guess
How do I get to theme colours?
Settings > Application appearance > Custom theme color
it is only applied if you disable the “dynamic colors” (Material You) option.
Thanks. I thought the “custom theme color” option was just for a specific UI element. Perhaps it would help if themes and specific UI element colours are in separate sections of the “application appearance” page.
But it might be just me…
I’ve added some german translations, but I’m confused. I created an account on weblate. Most of the time the correct translation is already in the german language input. Is it auto-translated or has someone already translated it? Also, what does the check “Needs editing” do? I can click “Save and continue” or “Suggest” and go to the next translation, but I don’t know what happened with my previous translation. Is it saved? Have I actually done anything or am I wasting my time?
If you click “Save and continue” or “Save” your work is saved, don’t worry! The translation is already there because I already have received a contribution some time ago but other messages have been added later (with automatic translation) so it is better if everything is confirmed again and proof-read by someone. Make sure you uncheck the “Needs editing” so that the string is marked as finished and I’ll keep an eye on the German language to see whether the completion status progresses or there is some misconfiguration that I made.
Alright. Thanks! I’ll keep on translating then :)
Yes and many thanks 🙏 just remember to uncheck the “needs editing” before saving (either “save and continue” or “save and stay”) in order to mark the string as finished, I see that the overall completion is already at 23% so it is being actually saved. You will see that as you approach the end, where I did not receive any help and used automatic translation, the quality worsens.
I’ve translated german 100% now. Some where quite complicated, but I think it’s a good basis. I’ll check if everything’s alright once the translation is in Raccoon. There’s no nightly build right?
Wow, you’ve been super fast, kudos! I hope at least the explanations/context I put were of some help, if you have questions don’t hesitate to comment and I’ll improve them. There is no nightly build but I can make a development release… usually weekly but if there is something in particular to test (like in this case a l10n) I make an intermediate build. I’ll make a new build at most on Saturday morning 😉
On it, see #977. Probably tomorrow I’ll release a new development build, containing also the hotfix for post detail in anonymous mode.
EDIT: Latest dev release here 1.12.0-20240614-pre.
Thank you! I’ve checked the translations in the dev release and changed a few words here and there. I’m happy with it for now.
There are still some topics open for discussion. F.e. I used the generic german masculine form, which doesn’t account for all genders unfortunately. There are different ways to include all genders, but most of them create long words and phrases, which isn’t optimal for UIs. I’m open to discuss this with other translators to improve this.
But I think this is a good basis to start from. We now have a german translation that enables people who don’t speak english to use Raccoon.
Thanks, awesome! I’ll update the translation with the latest changes and, if you don’t mind, include the in next week’s dev release (they will enter the stable channel on July’s release). I can also release 1.12.0 earlier alternatively but let’s see how things evolve…
Can you add pirate English (en@pirate on weblate)? Also, doesn’t android not allow unknown languages? I’ve tried to get them on other apps before and android did not let them.
Since here I am using a library which is totally independent from Android (and this is a multiplatform app where most of the code is system-agnostic) I can have a try… it may work! Could you suggest me something in Pirate English to have a try (e.g. some item in the settings screen like “Language”), before creating anything on Weblate?
I confirm that it works! If someone volunteers to finish the translation, I can add the language to the project.
I will translate it, but I can’t seem to find it in the weblate.
Added… the “Notifications” component will not work because it relies on Android internals. But the “App” component is the main one so it is more than enough!
Thanks!
If you are using a seperate library, it should work, and you got toki pona to work which has the same problem.
Could you suggest me something in Pirate English to have a try (e.g. some item in the settings screen like “Language”), before creating anything on Weblate?
I don’t get what you are asking here, can you elaborate?
Yes I am confident that it may work… I just need a replacement for some UI element like, say, the “Language” item in the settings screen to see if the changes are applied. Or the bottom bar “Posts, Explore, Profile, Inbox, Settings” labels.
You can use Lingo for language