minetest/minetest_game

A problem with Ukrainian translation

EGYT5453 opened this issue · 13 comments

As a native Ukrainian speaker, I can say that the Ukrainian translation of MTG (and MT as well) is bad, starting with the fact that Every Word In The Item Name Starts With A Capital Letter (which is not typical for the Ukrainian language), to inconsistencies and minor mistakes, and ending with just plain wrong translations. For example, in "binoculars" mod, "Використовується з правами 'Zoom'" translates to "[Binoculars are] used with 'Zoom' rights", and in "map" mod "Використовуйте за допомогою ключа 'Minimap'" translates to "Use [it] with a key 'Minimap'" (the key that closes doors, and I'm talking NOT about the one from the "keys" mod).
I think I can fix it, the only thing I need to figure out is how to "commit"...

If you press . on the repository code page it should open up vscode in your web browser. From there you can edit the translation files, commit and it will be put in a fork you can open a pull request for here.

The engine's translation is managed on Weblate: https://hosted.weblate.org/projects/minetest/minetest/uk/

Thanks! I hope I can do it, even though MTG doesn't have so many lines.

Update: the MTG translation fix is almost ready, but it's always good to review in the morning everything done at night. I don't know about fixing MT's translation yet, because there is even more to translate and fix... I'll try to fix (and in some places create) translations of what is available to regular players (menus, settings, etc.), but not what is related to the development of MT games (because I'm not a developer, which will most likely make it even worse).

Update 2: Almost done reviewing! I also noticed that even MTG is sometimes inconsistent. For example, "creative" permission says "Allow player to use creative inventory", while other permissions say "Can do x" ("Can use /sethome and /home" - "sethome" perm), or the "screwdriver" mod has "(left-click rotates face, right-click rotates axis)" when the terms "punch" and "use" are better suited (remember Android players). Fixing this is both easy (by replacing a few lines) and difficult (it can break translations).
Oh, and some of the lines in the Ukrainian translation are too long to fit on a mobile screen, but there is not much I can do about that.

Warning: no useful information here

Update 2.1: Oh, the "stairs" mod... There are many ways to translate you, and I don't know which to choose! Should I choose "Пустельна пісковикова цегляна сходинка" style ("Desert Sandstone Brick Stair" [every word except "stair" is adjective]) or "Сходинка з цегли з пустельного пісковику" one ("Stair [, that is made] out [of] Brick (s) [, that is/are made] out [of] Desert {adjective} Sandstone")? Or even something in between? And it has to be consistent and not sound ridiculous!

Hmm, would it be a good idea to split pull requests (PRs)? For example, the 1st PR will contain corrections that I'm 100% sure about (mostly small corrections, like changing uppercase to lowercase), the 2nd PR will contain larger corrections (like rephrasing the text "@1 player(s) are in bed" [there are three grammatical numbers in Ukrainian, so the correct translation will be something like "@1 гравець(-ці/-ців) у ліжку"]), and the 3rd PR will contain the corrections for "default" and "stairs" (they are the hardest ones).

Sounds like a sensible separation. I don't mind 3 separate PRs.

Great! Now I'm wondering, in the first RP, is it better to lowercase all translations (to avoid inconsistencies in case the second or third fixes come out after the next version), or to update only individual files (to avoid doing the same work twice)? I will probably choose the latter, but the choice is yours.

[...] in the first RP, is it better to lowercase all translations (to avoid inconsistencies in case the second or third fixes come out after the next version), or to update only individual files [...]

What do you mean by this? If I understood your proposed split into different PRs correctly, it should be something like

  1. Minor fixes (such as correcting character case);
  2. Larger fixes and rephrasings;
  3. Hardest corrections (for default and stairs)

Why would there be inconsistencies if only (1) made it into the next MTG version? Are the mistakes that need correction currently consistent?

[...] to avoid doing the same work twice [...]

I'm not sure why you would have to do the same work twice. The second PR can be based on the first PR, and the third PR can be based on the second PR.

I was going to correct case in translations that I'm sure are correct, so I wasn't going to do it for "default" and "stairs" mods (and a few others). For example, I'm still not sure I translated the "beds" mod correctly, so why would I lower the case in the 1st PR only to replace a bad translation with a good one in the 2nd PR?
I apologize for any confusion, maybe it's because I use a translator when I comment (I understand English well, but I don't speak it well, unfortunately). Now I think it's better to make lowercase letters in each translation in the 1st PR, after all, it won't take much work...

P.S. There are some mods that are fine and a 1st PR would be enough for them, like "butterflies" (where the only thing that was fixed was the case of 3 letters), "fireflies" (nothing special), "fire" (nothing special either), or... any other mod that doesn't have as many strings as "default", "stairs" or "mtg_craftguide".
Also, I think I should refer to "translations" as " strings" to not confuse them with "l10n files" ("locale files").

So, to clarify:
The 1st PR will be dedicated to small fixes (changing the case of letters, correcting individual words) in equally small mods (examples of mods that will be affected are "binoculars", "fireflies", "sfinv", but not those that will be affected in 2nd and 3rd PRs (or, if you want, I'll change them as well...));
The 2nd PR will be dedicated to bigger fixes (like changing words or even entire strings in "beds", "farming", "vessels", possibly "mtg_craftguide");
The 3rd PR will be dedicated to "default" and "stairs" (as these are the most complex and largest modifications, so I'm pretty sure I've got something wrong).

Again, I'm really sorry for the misunderstanding, I've never contributed to open source before and just trying to help...

Well, it's one whole PR instead of 3 small ones. But hey, it means that it's all finished before 5.8.0!

Sorry if I am bothering you, but how to make another commit with improvements? There are quite some already, maybe there will be more.
UPD: nevermind!