Skip to content

Localization (l10n) language translations

Gautier Chomel edited this page Nov 28, 2024 · 44 revisions

Tooling

For issues related to localisation, flag @gautierchomel in the comments.

GitLocalize

Since May 2024, localization has been eased by the use of GitLocalized, a simple translation tool. As usual, the English locale is the reference.

Please go to https://gitlocalize.com/repo/9626 and Sign in with Github. Then, send us your GitHub ID so we can add you as a "translator". If a translation already exists and has a moderator, make sure you contact her or him as she or he will be responsible for validating any change you propose. If no translation already exist or a moderator has not been already named, please contact us.

Choose your preferred language and open the JSON file in the interface. On the left side, you'll see English labels, and on the right, translated labels. Please check the existing translations. News labels will be blank in the right cells; please fill them in. There is a "comments" feature if a discussion is required on certain terms.

When it is done, please Create a Review Request (top yellow button).

Old way

https://github.com/edrlab/thorium-reader/tree/develop/src/resources/locales

  • npm run i18n-sort => ensure locales JSON files are "canonical" (sorted keys, consistent indentation and trailing line break)
  • npm run i18n-scan => ensure locales JSON files have no missing keys and no superfluous/unused keys (this command analyzes the source code to search for well-known i18next usage patterns)
  • npm run i18n-check => ensure "secondary" locales JSON files have no missing keys and no superfluous keys, relative to the "primary" English translation. Missing keys are automatically added with an empty string value, redundant keys are removed.
  • npm run i18n-typed => rebuilds the TypeScript types for the locales JSON files (this enables static compiler checks)

Automatic translation

See Laurent's Pull Request:

25 Languages:

  • (en) English
  • (fr) Français (French)
  • (fi) Suomi (Finish)
  • (de) Deutsch (German)
  • (es) Español (Spanish)
  • (nl) Nederlands (Dutch)
  • (ja) 日本語 (Japanese)
  • (ka) ქართული (Georgian)
  • (lt) Lietuvių (Lithuanian)
  • (pt-BR) Português Brasileiro (Portuguese - Brazil)
  • (pt-PT) Português (Portuguese - Portugal)
  • (zh-CN) 中文 - 中國/国 (Chinese simp.)
  • (zh-TW) 中文 - 台湾/灣 (Chinese trad.)
  • (it) Italiano (Italian)
  • (ru) Русский (Russian)
  • (ko) 한국어 (Korean)
  • (sv) Svenska (Swedish)
  • (ca) Catalan
  • (gl) Galician
  • (eu) Euskadi (Basque)
  • (el) ελληνικός (Greek)
  • (bg) български (Bulgarian)
  • (hr) Hrvatski (Croatian)
  • (da) Dansk (Danish)
  • (sl) Slovenščina (Slovene)

English

(in house)

French

(in house)

Slovenian

Contributors:

  • Marko Hercog (Beletrina)

Pull Requests:

Danish

Contributors:

Pull Requests:

Croatian

Contributors:

Pull Requests:

Bulgarian

Contributors:

Pull Requests:

Greek

Contributors:

Pull Requests:

Portuguese

Contributors:

Pull Requests:

Swedish

Contributors:

Pull Requests:

Russian

Contributors:

Pull Requests:

Lithuanian

Contributors:

Pull Requests:

Italian

Contributors:

Pull Requests:

Japanese

Contributors:

Pull Requests:

Dutch

Contributors:

Pull Requests:

Spanish

Contributors:

Pull Requests:

German

Contributors:

Pull Requests:

Finnish

Contributors:

Pull Requests:

Chinese (Simplified)

Contributors:

Pull Requests:

Chinese (Traditional)

Contributors:

Pull Requests:

Korean

Contributors:

Pull Requests:

Georgian

Contributors:

Pull Requests:

https://github.com/edrlab/thorium-reader/pull/1557

Catalan

Contributors:

Pull Requests:

Galician

Contributors:

Pull Requests:

Basque (Euskadi)

Contributors:

Pull Requests: