Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add language support for descriptors #602

Open
FilippoVigani opened this issue Jan 18, 2023 · 6 comments
Open

Add language support for descriptors #602

FilippoVigani opened this issue Jan 18, 2023 · 6 comments

Comments

@FilippoVigani
Copy link

So far all language descriptors are hard-coded to be in English. It would be nice if there was i18n of the library so that the community can easily add new languages both for tag names and tag descriptions.

@drewnoakes
Copy link
Owner

Any suggestions on how to go about making this work end-to-end?

@FilippoVigani
Copy link
Author

@drewnoakes One basic idea would be to use ResourceBundles and specify a Locale when extracting metadata. Then the descriptors instead of using hard-coded strings should reference the values in the resource bundle.

@drewnoakes
Copy link
Owner

Thanks. I'm interested to know where the localisations come from in the first place, how we manage them over time, any impact on other processes, etc.

@FilippoVigani
Copy link
Author

FilippoVigani commented Jan 24, 2023

I think one basic approach could be to support only an English Locale, but allow clients to provide other Locales' resource bundles so that they are loaded dynamically. That way the library itself doesn't have the burden of maintaining several localisations.

Currently if I'm not mistaken the English terms used for the library are managed or updated by the contributors of the library itself. So one alternative is to allow contributors to add or update resource bundles for languages other than English as PRs.

As far as other processes that could be impacted I'm not sure what you are referring to.

@drewnoakes
Copy link
Owner

Moving all English strings to resource bundles would be a fair bit of work, so only makes sense if we know we'll ever get localised strings. I would want any localisations to be shared with the community. There are a lot of these strings though, so getting good coverage would be challenging. Furthermore, new strings are added all the time, so we need a way for anyone contributing localisations to see what's missing and fill any gaps.

There are some online services that can help with this, such as Transifex. There may be others. I'm not an expert.

One approach that's commonly taken is to only ship languages that have a certain % of completion, in order to prevent spotty coverage of translations in any given locale.

All these things add a certain amount of ceremony and process. I don't argue the value, and in fact I spend a lot of time on localisation in my day job, so I know that doing this properly is non-trivial. In my day job, we have teams who provide the translations. In open source, I'd want to know there's enough support and dedication to provide the localisations before we start going down this road. Unfortunately I only speak English with any degree of fluency, so cannot contribute any localisations myself.

@Nadahar
Copy link
Contributor

Nadahar commented Jan 25, 2023

I've never tested Transifex but have had a good experience using Crowdin. I've even made a Maven plugin to automate the up- and downloading of files (the plugin needs an update since the API it's using is now deprecated, but it still works).

That said, it's not easy to get people to submit (good) translations unless you have a broad user-base. Since Metadata-extractor is a library, I doubt that most end users are even aware of it. How would one recruit translators? I imagine it would be hard.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants