Foldex / AdwSteamGtk

A simple Gtk wrapper for Adwaita-for-Steam
GNU General Public License v3.0
209 stars 5 forks source link

Add Russian translation and update Ukrainian #27

Closed Vovkiv closed 1 year ago

Vovkiv commented 1 year ago

I'm not sure, if doing this in 1 pull request is okay, but... Added Russian translation and revisited Ukrainian to fix typos, misplaced strings, re-translated poorly done strings.

Foldex commented 1 year ago

I'm not sure, if doing this in 1 pull request is okay

Shrug, I don't mind it. Appreciate the TL more than anything.

For the sake of being completionist, the TLs are technically now missing this string: https://github.com/Foldex/AdwSteamGtk/blob/437f1c91f5d06fec3c233dc366373265100f4d84/src/main.py#L132

I say technically, because it doesn't actually matter. Seems the About Window Credit Titles like "Upstream" also suffer from the prior issue with strings not getting applied.

I've gone ahead and opened an issue about this here: #29

Feel free to add the string, if not I'll merge in a bit.

Vovkiv commented 1 year ago

Hah, luckily i ru and ua languages doesn't really have proper translation for "Upstream" (at least not that i know about). So i need to leave it as is or... I know that tkashkin is author of Adwaita theme for steam, so are you use "Upstream" here to reference only theme author here? You don't have plans to put there something else? If not, i will translate it like "Adwaita for Steam author" (Автор Adwaita для Steam)

Vovkiv commented 1 year ago

Right now, in both translations, i will leave it as "Upstream" until you answer about it. (And, i made typo ".por" instead of ".pot", yeah)

Foldex commented 1 year ago

so are you use "Upstream" here to reference only theme author here? You don't have plans to put there something else?

That's correct.

Vovkiv commented 1 year ago

so are you use "Upstream" here to reference only theme author here? You don't have plans to put there something else?

That's correct.

Alright, then i will update both translations and push them

Foldex commented 1 year ago

LGTM

As a side note, figured out what the issue was. I had some unneeded gettext imports that were messing things up. Now all strings seem to be working.

image

image

Vovkiv commented 1 year ago

Yay! But, hah... um.. https://github.com/Foldex/AdwSteamGtk/blob/e5e6ab03586f6bf0eb2a6df4266a8b89f1324023/po/uk.po#L289 I kinda made tiny typo... it should be: msgstr "Ця дія скине усі налаштування кастомізації клієнта Steam." Maybe you could edit manually it? Or i will create issue at my fork and update it later to avoid this "Update translation" pull requests

Foldex commented 1 year ago

Done.

Don't worry, first batch of TLs is gonna have some issues. Still, might be a good idea for me to look into getting a TL platform like weblate set up to make this process a bit smoother.

I've also made a small oopsie: Just found that I was missing a file from POTFILES: https://github.com/Foldex/AdwSteamGtk/commit/46d7b13a6a9f84c3db9a8ec3dffc69a94aa34920

It only has a single translatable string, but figured I'd mention it. https://github.com/Foldex/AdwSteamGtk/blob/f1ca859a100ebd1a16bc29688c06cd067d1bd784/src/style.py#L40

Vovkiv commented 1 year ago

Done.

Thanks! While mistakes happens, i feel myself dumb for doing them. Mostly, because i need to create new issue or pr to fix it, which might be annoying to manage for developer, but that's just me.

Still, might be a good idea for me to look into getting a TL platform like weblate set up to make this process a bit smoother.

That's actually good idea, but might be tedious is some aspects. On some webplate projects, i saw maintainers use screenshots for context, so you, as translator, don't need to guess in which context string appears. But, sadly, most of maintainers don't do it, so big chunk of translated string based on guessing, rather on real context. It's especially important, because people on this platforms tends to "translate-and-forget" rather then:

  1. Download current LANGUAGE.po file
  2. Translate it
  3. Get source of program
  4. Build
  5. Test it Testing part is actually most painful, especially for rare stuff like errors, very specific messages, etc. Most of apps devs don't put tests, so if i need to raise error to check my translation for it, i need manually raise it (for example, feed broken file to app) or hack into code. And 95% of people not going to do so.
  6. Import translated and tested string to weblate

In short: there should be as much as possible context hints. Which means more tedious work for you, as developer (or, maybe, for someone who will be your maintainer for weblate) for adding all this context and making sure it's up-to-date with UI changes, but in return you will get better quality for translations.

Foldex commented 1 year ago

Thanks! While mistakes happens, i feel myself dumb for doing it. Mostly, because i need to create new issue or pr to fix it, which might be annoying to manage for developer, but that's just me.

Shrug, if it's something small I don't mind really. Better to have so called "annoying" PRs than none at all.

That's actually good idea, but might be tedious is some aspects.

Guess that's fair enough. Good points on context and testing though, I mostly treat this as a project for my own personal use, so guess I'd be guilty as charged as I'm fairly lax with it 😅. (Granted on my end I think the project is fairly small and don't foresee it ballooning up in size, so I think the context is fairly minimal)

As a side note: You had mentioned Upscaler running into the same issue with untranslated strings. I did a quick clone and tested my fix there, and it seems to work too. I'll open a PR in a bit.

image image