cinny icon indicating copy to clipboard operation
cinny copied to clipboard

Allow for translation

Open yannicka opened this issue 3 years ago • 23 comments

Allow Cinny to be translated.

Load the user's language by default. Allow the user to choose the language they want.

yannicka avatar Nov 13 '21 17:11 yannicka

(Repeating what I stated on the Matrix room)

my 2¢ about that, a few years back when I was doing work on a React app, react-intl was the best option evaluated at the time for providing correct translation capabilities, especially regarding countables and such hard to do translation features

  • https://formatjs.io/docs/core-concepts/icu-syntax

(the backing library's format)

samueldr avatar Nov 19 '21 05:11 samueldr

+1 for multi-language support.

menturion avatar Dec 12 '21 07:12 menturion

+1

lostmaniac avatar Feb 27 '22 11:02 lostmaniac

+1

I will provide the Dutch translation once this is implemented.

Vistaus avatar Apr 16 '22 09:04 Vistaus

So @Airyzz already demonstrated it's doable using i18next a month ago: https://github.com/Airyzz/cinny/commits/dev @samueldr mentioned react-intl before. I have no strong feelings one way or the other, heard good things about i18next though. If we can agree on i18next and @ajbura has no objections, we could move forward with this.

REDLINK avatar Jul 08 '22 14:07 REDLINK

I talked to @ajbura about it in the matrix chat, and they said its good to go ahead with i18next. I'm making my way through the app and implementing translation everywhere I can. I'm hoping to have everything ready in a week or two

Airyzz avatar Jul 08 '22 14:07 Airyzz

@REDLINK, Yes i18next is good choice. 👍

ajbura avatar Jul 08 '22 14:07 ajbura

The matrix-react-sdk is using counterpart, https://github.com/matrix-org/matrix-react-sdk/blob/develop/src/languageHandler.tsx.

menturion avatar Jul 10 '22 06:07 menturion

and i can do chinese translate,if needed.

jiangshanghan avatar Aug 19 '22 08:08 jiangshanghan

Should we use a continuous localization platform? Element uses Weblate, I personally find that one more on the confusing side though. i18next seems to go hand in hand with locize. Maybe someone knows something very lean. Would keep the purely translation related stuff off this repo and language maintainers don't need repo access or create PRs all the time.

Iruwen avatar Aug 19 '22 15:08 Iruwen

Should we use a continuous localization platform? Element uses Weblate, I personally find that one more on the confusing side though. i18next seems to go hand in hand with locize. Maybe someone knows something very lean. Would keep the purely translation related stuff off this repo and language maintainers don't need repo access or create PRs all the time.

There was some discussion about this in the matrix room, we were looking at using Crowdin at the moment but thats still up for discussion

Airyzz avatar Aug 20 '22 00:08 Airyzz

Crowdin is my least favorite platform to use as a translator. I always have issues with it and I know I'm not the only translator that has issues with it. Weblate, Transifex, Poeditor.com or the good old fashioned way (fork, translate translation file(s), open PR) are much better.

Vistaus avatar Aug 20 '22 10:08 Vistaus

@Airyzz if you skim over it you'll probably quickly notice a bunch of strings that aren't localized yet, e.g. the tab headers in user settings.

Iruwen avatar Aug 24 '22 08:08 Iruwen

@Iruwen Thank you! Yes I am aware of those strings. The tab headers can't be translated at the moment as the way the tab component is built relies on those strings to function. @ajbura said to me in the matrix room that this will be rewritten, and when that happens I will implement the translation.

Airyzz avatar Aug 24 '22 09:08 Airyzz

Thanks for the info and the fantastic groundwork of course, considering how long only the translation has taken your effort on this front is immeasurable :thumbsup:

Iruwen avatar Aug 24 '22 09:08 Iruwen

Crowdin is my least favorite platform to use as a translator. I always have issues with it and I know I'm not the only translator that has issues with it. Weblate, Transifex, Poeditor.com or the good old fashioned way (fork, translate translation file(s), open PR) are much better.

If Crowdin is no good, I would vote for Weblate. It seems as though they offer free hosting for open source projects

Airyzz avatar Aug 30 '22 00:08 Airyzz

locize looks intuitive, but I don't have time to actually compare it against Weblate tbh. Eventually using the latter makes it more likely we get some help from Element translation contributors who already know the platform, that would be a plus. And yes, FOSS projects get the "advanced" plan for free.

REDLINK avatar Aug 30 '22 07:08 REDLINK

German translation moved to https://github.com/REDLINK/cinny/tree/dev/public/locales/de, deployed at https://cinny-de.vercel.app and looking into Weblate.

rltas avatar Aug 31 '22 08:08 rltas

+1. I can provide a French translation. What's bothering me at the moment is the date in 12h format, as I'm used to reading it in 24h format.

enderprism avatar Apr 03 '23 21:04 enderprism

I can provide Arabic localization.

array-in-a-matrix avatar Aug 10 '23 19:08 array-in-a-matrix

minimal version for review at #1576. It can reuse translations from #681

aceArt-GmbH avatar Dec 08 '23 12:12 aceArt-GmbH

Was interested in looking into PT-BR translations potentially because I liked the client compared to others...

I personally like Weblate and Crowdin, but appreciate Weblate more for being a free project and not having the AI bs from Crowdin; I don't like how Element does it because they put it all on their domain and end up separating the components and you can't do mass-actions as easily, like check for specific words and strings, otherwise I like it. Zen mode is great. Crowdin can be quite slow as well, or just annoying.

I'm not sure I would appreciate i18next, I have never used it. Transifex on the other hand is pure garbage. The projects I have translated for, relating to AOSP, have been always usually on Weblate, or Crowdin; (and the one time with Transifex which was hell) so I have more experience on those;

lucasmz-dev avatar May 11 '24 07:05 lucasmz-dev