bluesky-social / social-app

The Bluesky Social application for Web, iOS, and Android
https://bsky.app
MIT License
11.8k stars 1.51k forks source link

Add Dutch translation #6244

Open monty241 opened 1 week ago

monty241 commented 1 week ago

Describe the Feature

Add translation for nl-nl (Dutch spoken in the Netherlands).

I can do it; we are native speakers and we have been doing translations for software since 10+ years for over 100.000 keys.

It seems that it is just a messages.po. We can do it using our existing TM (including rights) using Localazy, Texterify or OmegaT.

Are there any additional steps to get the PR through besides doing the actual work, like QA checks to be checked, a language code to be added, etc?

Related Issues

auroursa commented 1 week ago

Fork the project and clone it to your local machine. Then you can refer to the recently merged Thai localization #5879 to add any additional files you need (except for messages.po, as we will generate this later using Lingui).

Once you're ready, run yarn to prepare the local build files. This will automatically download the necessary dependencies.

Finally, execute yarn intl:extract --locale nl --clean to generate the messages.po file. After that, feel free to use your preferred tool to complete the translation.

Let me know if you need any help along the way!

monty241 commented 1 week ago

Steps succesfully executed:

Translation can start now.

monty241 commented 1 week ago

@auroursa Is there also a glossary with terms and so-far collected generic translations?

auroursa commented 1 week ago

@auroursa Is there also a glossary with terms and so-far collected generic translations?

As far as I know, there isn't any.

auroursa commented 1 week ago

Steps succesfully executed:

  • Forked and cloned locally.
  • Installed nodist to install node / npm.
  • Installed yarn.
  • Forced installation of corepack and enabled it using corepack enable.
  • yarn in root folder of bsky.
  • manual changes to various files to make Dutch known (see b6fdde2)
  • yarn intl:extract --locale nl --clean to generate messages.po in folder social-app\src\locale\locales\nl

Translation can start now.

I noticed that it includes changes to the package.json file. Perhaps we should try to avoid modifying it if possible?

monty241 commented 1 week ago

Thank, reverted it.

monty241 commented 1 week ago

A few dozen of translations have been done along the process.

@auroursa Is the resulting messages.po in commit 874a624e25bbc5a8df6df41d75ef47335228b0b7 what is needed?

There are few inconsistencies in the english naming, I will raise for each one a separate issue on the english text.

auroursa commented 1 week ago

A few dozen of translations have been done along the process.

@auroursa Is the resulting messages.po in commit 874a624 what is needed?

There are few inconsistencies in the english naming, I will raise for each one a separate issue on the english text.

Technically, I haven’t found any issues so far, so feel free to submit the PR whenever you’re ready.

Sorry about that I can’t assist with reviewing the accuracy of the Dutch grammar, at the PR stage, we’ll typically need at least one Dutch-speaking reviewer to help check the translations.

After it’s reviewed by others Dutch-speaking, I believe there’s no reason to decline this high-quality localization PR.

monty241 commented 1 week ago

OK, thank you for checking it technically. That is the most tricky part.

monty241 commented 1 week ago

@auroursa The translation is approaching completion and standard reviews.

Regarding reviewing process by other Dutch-speaking:

auroursa commented 1 week ago

@auroursa The translation is approaching completion and standard reviews.

Regarding reviewing process by other Dutch-speaking:

  • how do I arrange this?

  • Should I find someone on Bsky who is willing to check it or is it assigned from some pool?

  • Is there a reviewer's guideline document with QA checks to be performed?

You just need to open a PR and look for any native Dutch speaker to help with the review. Sometimes, there are active volunteers on GitHub who are willing to assist as well, depending on how popular the language is.

Currently, there’s no QA or other formal process. The only requirement is that the translation be reviewed by at least one other native speaker.

monty241 commented 1 week ago

PR is on #6329

@auroursa I have found a native Dutch speaker with two years of Bluesky experience willing to review them.

How should he enlist as reviewer? Or how should he leave his comments?

auroursa commented 1 week ago

Just need to use the code review tools within the PR to make adjustments. Of course, leaving commits in the PR is also fine—as long as it helps improve the translation.

monty241 commented 1 week ago

@auroursa OK, thank you! Clear!