social-app icon indicating copy to clipboard operation
social-app copied to clipboard

Add Russian translation

Open ponfertato opened this issue 9 months ago • 18 comments

Greetings! Sketched out a translation into Russian, as a base language was used #3552 with my corrections and additions. If there are any conflicts in the translation, welcome feedback!

ponfertato avatar May 06 '24 14:05 ponfertato

Thank you so much @ponfertato! Do you happen to know any other russian speakers who could review this?

pfrazee avatar May 06 '24 23:05 pfrazee

Thank you so much @ponfertato! Do you happen to know any other russian speakers who could review this?

There is no one in particular at the moment, I have requested help from the Bluesky audience, it could probably take a while to get there 👀

ponfertato avatar May 07 '24 04:05 ponfertato

Thank you so much @ponfertato! Do you happen to know any other russian speakers who could review this?

There is no one in particular at the moment, I have requested help from the Bluesky audience, it could probably take a while to get there 👀

I'd love to help with this, but it would be cool to see the translation directly in the interface. Perhaps you could publish messages.js for this translation, I'll try to locally replace one of the links like "https://bsky.app/static/js/src/locale/locales/en/messages.js" with the translation file, or something like that.

DearFox avatar May 29 '24 01:05 DearFox

messages.js like "https://bsky.app/static/js/src/locale/locales/en/messages.js"

Greetings, I'm not sure why you need .js, there's a .po file with the translation 👀 https://github.com/bluesky-social/social-app/blob/main/src/locale/locales/en/messages.po or the one that is now the translation: https://github.com/potatoenergy/social-app/blob/main/src/locale/locales/ru/messages.po

ponfertato avatar May 29 '24 07:05 ponfertato

messages.js like "https://bsky.app/static/js/src/locale/locales/en/messages.js"

Greetings, I'm not sure why you need .js, there's a .po file with the translation 👀 https://github.com/bluesky-social/social-app/blob/main/src/locale/locales/en/messages.po or the one that is now the translation: https://github.com/potatoenergy/social-app/blob/main/src/locale/locales/ru/messages.po

Oh, I just saw that I gave a link to 404. I don’t understand much about how translations work, but in fact on the bsky site translations in the .po format are not used. Instead, they are turned into a js file with json inside. My idea was to locally replace one of the translations for the bsky.app site with this one, but I don't think I can use .po for this. Here is an example of English and Ukrainian translation: en: https://bsky.app/static/js/521.f870cbb6.chunk.js uk: https://bsky.app/static/js/889.125c76ab.chunk.js

Well, or am I just wrong, and is there some easier way to try out the translation directly on the site, rather than reading the translation strings?

DearFox avatar May 29 '24 08:05 DearFox

Here is an example of English and Ukrainian translation

Ahh, I see your point. The point is that this translation is currently used in the bsky fork. I plan to add it to the source code of the project in order to build it into the main product in the future. You can familiarize yourself with the .po file. There are links to the lines of code that have been translated, for example:

#: src/view/com/threadgate/WhoCanReply.tsx:158
msgid "<0/> members"
msgstr "<0/> участников"

Where msgid is the original string and msgstr is its Russian translation, link: https://github.com/potatoenergy/social-app/blob/11e63802ec493aa1e0efd403168489359b777a36/src/locale/locales/ru/messages.po#L29C1-L31C25

ponfertato avatar May 29 '24 08:05 ponfertato

I tried to compile your fork, but it seems there are some problems with the paths for ru localization.

Exporting with Webpack...
Failed to compile
ModuleNotFoundError: Module not found: Error: Can't resolve './locales/ru/messages' in 'E:\Git\social-app\src\locale'
ModuleNotFoundError: Module not found: Error: Can't resolve './locales/ru/messages' in 'E:\Git\social-app\src\locale'

In all other languages ​​I get a messages.js file next to messages.po, but not in ru

DearFox avatar May 29 '24 13:05 DearFox

I tried to compile your fork, but it seems there are some problems with the paths for ru localization.

Exporting with Webpack...
Failed to compile
ModuleNotFoundError: Module not found: Error: Can't resolve './locales/ru/messages' in 'E:\Git\social-app\src\locale'
ModuleNotFoundError: Module not found: Error: Can't resolve './locales/ru/messages' in 'E:\Git\social-app\src\locale'

In all other languages ​​I get a messages.js file next to messages.po, but not in ru

I couldn't find what the problem was, but I was able to replace one of the translations with ru, so that yarn created messages.js, after which I used "Add script override" on one of the js files containing the translation and replaced locally the original translation translation to this one. So it seems like it worked. I can describe in more detail how I did it and share the file with the translation if you also want to try the Russian translation in your browser.

изображение

DearFox avatar May 29 '24 14:05 DearFox

Several edits/suggestions for translation. "Оповещение" > "Уведомления" изображение "Предпочтения" > "Нравится" изображение "Эл. адреса" > "Эл. почта" изображение

And it seems that there is a part of the stock for which there is no translation at the moment (as well as the lines themselves). изображение изображение изображение

DearFox avatar May 29 '24 14:05 DearFox

I wrote a small guide on how you can try translation directly to bsky.app: https://github.com/potatoenergy/social-app/pull/2#issuecomment-2138363991 (it's in russian) I hope this will help improve the translation before adding it to the site.

DearFox avatar May 29 '24 22:05 DearFox

I don't know how close the translation is to being complete but Paul mentioned yesterday that he will be merging translation updates later today for the 1.85 release:

https://bsky.app/profile/pfrazee.com/post/3ku27qzw7ss2d

surfdude29 avatar Jun 04 '24 14:06 surfdude29

From the end to the last correction I manually rechecked the translation taking into account the new lines, physically I hardly have time to fix everything by the release...

ponfertato avatar Jun 04 '24 15:06 ponfertato

From the end to the last correction I manually rechecked the translation taking into account the new lines, physically I hardly have time to fix everything by the release...

No pressure at all, it's ready when it's ready, I just wanted to give you a heads up in case it was almost there :)

There are over 1400 strings in the app now, so it's a big job! 😮‍💨

surfdude29 avatar Jun 04 '24 15:06 surfdude29

In all other languages ​​I get a messages.js file next to messages.po, but not in ru

Turned on the language assembly in Here is the last built file with all edits and with all translated lines: https://gist.github.com/ponfertato/e2cf7dd15d936ceed71d30619dd8859e

ponfertato avatar Jun 06 '24 07:06 ponfertato

No rush at all. Yall just let me know when it's ready! ❤️

pfrazee avatar Jun 06 '24 15:06 pfrazee

Are there any updates on this translation?

DearFox avatar Sep 05 '24 12:09 DearFox

With the caveat that I apologise for jumping in here again with unsolicited advice: I would suggest the localization is merged as-is.

There has already been a lot of feedback and many suggestions have been incorporated from several reviewers. In any localization there will always be some translations that could be improved or tweaked, and once the localization is actually available to use in the app you will get a lot of feedback from Russian speakers on what those are and the focus can then switch to refining and improving the translations further.

surfdude29 avatar Sep 05 '24 22:09 surfdude29

Okay, I've made edits again due to the latest changes in the branch. Rechecked - the translation is going to a working file. @pfrazee can you accept our translation into Russian?

(Further edits will probably be needed, but the main translation is already ready ✌️)

ponfertato avatar Sep 06 '24 13:09 ponfertato

You all probably know this already but in case not: you can try out the translation now on the dev server:

https://main.bsky.dev/settings/language

And of course it will be available on bsky.app in version 1.91, released in a few days' time hopefully.

surfdude29 avatar Sep 07 '24 22:09 surfdude29

It seems that the file src/components/hooks/dates.ts does not contain ru.

tkusano avatar Sep 08 '24 01:09 tkusano

It seems that the file src/components/hooks/dates.ts does not contain ru.

@tkusano Good spot, I opened #5220 👍

surfdude29 avatar Sep 08 '24 02:09 surfdude29