Use Weblate for collaborative translation #552

Open
opened 2019-08-12 12:20:51 +02:00 by tuxayo · 9 comments

Hi, thanks a lot for this mod game :)

https://hosted.weblate.org/projects/minetest/minetest/

Before speaking about implementation, technical details and human resources, is the general idea ok?

Hi, thanks a lot for this ~~mod~~ game :) https://hosted.weblate.org/projects/minetest/minetest/ Before speaking about implementation, technical details and human resources, is the general idea ok?
tuxayo changed title from Suggestion: use Weblate for collaborative translation. (like Minetest) to Suggestion: use Weblate for collaborative translation (like Minetest) 2019-08-12 12:21:02 +02:00
Wuzzy added the
code quality
label 2019-08-15 02:47:40 +02:00
Member

First of all: MineClone 2 is NOT a mod!!! It's a game. That's a huge difference!

About Weblate:

I agree completely. I just need to get around to do it.
Sadly, it's not trivial to do so because Minetest uses a weird file format for translations that needs to be converted to something that Weblate understands.

So making Weblate work will require quite some work.

First of all: MineClone 2 is NOT a mod!!! It's a game. That's a huge difference! About Weblate: I agree completely. I just need to get around to do it. Sadly, it's not trivial to do so because Minetest uses a weird file format for translations that needs to be converted to something that Weblate understands. So making Weblate work will require quite some work.
Wuzzy changed title from Suggestion: use Weblate for collaborative translation (like Minetest) to Use Weblate for collaborative translation 2019-08-15 03:09:59 +02:00
Author

First of all: MineClone 2 is NOT a mod!!! It’s a game. That’s a huge difference!

Edited to fix the mistake. Sorry to have ruined what should have been a compliment ^^"

> First of all: MineClone 2 is NOT a mod!!! It’s a game. That’s a huge difference! Edited to fix the mistake. Sorry to have ruined what should have been a compliment ^^"
Author

Thanks for the green light about Weblate, and for the giving an entry point for someone willing to look into this.

Thanks for the green light about Weblate, and for the giving an entry point for someone willing to look into this.
Owner

Is creating a two-way converter between an established format that Weblate accepts and the weird Minetest format feasible? Is the MT formate completely homegrown?

Is creating a two-way converter between an established format that Weblate accepts and the weird Minetest format feasible? Is the MT formate completely homegrown?
Member

Yes, the MT format is (sadly) homegrown.
Yes, a converter would be nice. I'd recommend to use the PO format as reference, as it's well tried-and-tested.

If you create anything useful, I also strongly recommend to post about it in the forums because this will be important to the entire Minetest community, not just MCL2.

Yes, the MT format is (sadly) homegrown. Yes, a converter would be nice. I'd recommend to use the PO format as reference, as it's well tried-and-tested. If you create anything useful, I also strongly recommend to post about it in the forums because this will be important to the entire Minetest community, not just MCL2.
Contributor

According to the following wiki page, Minetest now has a new i18n library based on gettext:
https://wiki.minetest.net/Mods/Internationalization_Lib_for_Minetest

Here's a rudimentary JavaScript converter that you can test in your browser: https://output.jsbin.com/qihusix

By the way, I tested these two files in /mineclone2/mods/PLAYER/mcl_hunger/locale/

  • mcl_hunger.de.tr
  • mcl_hunger.es.tr

... and the last line looks buggy to me. Isn't the first thing supposed to be @1 instead of %1 in the translation?

@1 starved to death.=%1 verhungerte.

If you find translations that don't get properly converted to gettext, let me know. I used the gettext syntax provided here:
https://www.gnu.org/software/gettext/manual/html_node/PO-Files.html

According to the following wiki page, Minetest now has a new i18n library based on gettext: https://wiki.minetest.net/Mods/Internationalization_Lib_for_Minetest Here's a rudimentary JavaScript converter that you can test in your browser: https://output.jsbin.com/qihusix By the way, I tested these two files in **/mineclone2/mods/PLAYER/mcl_hunger/locale/** - mcl_hunger.de.tr - mcl_hunger.es.tr ... and the last line looks buggy to me. Isn't the first thing supposed to be `@1` instead of `%1` in the translation? > `@1 starved to death.=%1 verhungerte.` If you find translations that don't get properly converted to gettext, let me know. I used the gettext syntax provided here: https://www.gnu.org/software/gettext/manual/html_node/PO-Files.html
Member

intllib is not new, it's a legacy mod, as Minetest uses its own translation system since 5.0.0. The major downside of intllib is that it forces the same language on all players on a server.

Switching to intllib is NOT a solution.

I do agree, however, that Minetest must switch to Gettext PO format. Or at least provide a functional toolchain.

`intllib` is not new, it's a legacy mod, as Minetest uses its own translation system since 5.0.0. The major downside of `intllib` is that it forces the same language on all players on a server. Switching to `intllib` is NOT a solution. I do agree, however, that Minetest must switch to Gettext PO format. Or at least provide a functional toolchain.
Contributor

What about the translations I mentioned? That looks incorrect to me.

What about the translations I mentioned? That looks incorrect to me.
Member

Oh, the mcl_hunger thing? Oops, right, I forgot that. Thanks, is fixed now.

Oh, the `mcl_hunger` thing? Oops, right, I forgot that. Thanks, is fixed now.
LizzyFleckenstein03 added this to the 0.72.0 milestone 2021-01-26 14:29:18 +01:00
AFCMS added the
translation
label 2021-04-13 17:26:52 +02:00
LizzyFleckenstein03 added the
needs engine change
label 2021-04-26 13:08:04 +02:00
cora removed this from the 0.72.0 milestone 2022-02-15 05:05:07 +01:00
Sign in to join this conversation.
No Milestone
No project
No Assignees
4 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: VoxeLibre/VoxeLibre#552
No description provided.