Skip to content

Conversation

@me4502
Copy link
Member

@me4502 me4502 commented Dec 27, 2025

This PR adds documentation for our localisation system, closing #15

@me4502 me4502 requested a review from a team December 27, 2025 10:48

If some parts of WorldEdit aren't fully translated in your language, this usually means that no one has yet submitted a translation.

We use CrowdIn to facilitate translation submissions, with our CrowdIn page `available here <https://crowdin.com/project/worldedit-core>`_. Each time we cut a new WorldEdit release, we verify and pull in the new translations from the website.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would recommend not stating that we "verify" the translations -- we don't do much besides technical verification. We should ask if people find bad translations that they report them to us.

Zip method
~~~~~~~~~~

Within your WorldEdit jar file, you'll find a ``lang/i18n.zip`` file. Copying this to ``WorldEdit/lang/i18n.zip`` within your game directory will cause WorldEdit to additionally load from this file. You can modify the contents of the zip file, to have them take a higher priority than the zip file internal to the WorldEdit jar.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't see much point in recommending this, if we also recommend to only include strings that you modify. The file method is probably sufficient for most users given our translations are quite small.

File method
~~~~~~~~~~~

Rather than copying the zip file into the ``lang`` folder, you can instead extract it. This would mean that Australian English would be in the ``lang/en-AU`` folder, or Greek would be in the ``lang/el`` folder. The "base" translations (``en-US``) would live in a ``lang/strings.json`` file, rather than having their own directory. This is because they don't come from CrowdIn, and instead are written by us when writing the plugin.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Again, I don't think we should recommend extracting it. We should just tell people where to put things, and to see the zip file if they need help understanding the structure. But I think that saying "For example, if you wanted to add translations for French, they would go in lang/fr/strings.json. If you wanted to add translations for Canadian French, they would go in lang/fr-CA/strings.json.

I'm not sure if there's a reasonable place to link on where to look these up. The definitions are quite technical.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants