-
-
Notifications
You must be signed in to change notification settings - Fork 159
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Localization roadmap #1017
Comments
I noticed static pages other than the homepage (such as Features) can't be localized yet. I can look into implementing this if you'd like 🙂 |
Sure, give it a go! |
With more languages being added, and as we eventually revise copy for translated strings, you'll soon see why hardcoding translations for keys like this quickly becomes a nightmare. We'll need to ask translators to provide new translations in the PR that modifies the English strings, or we'll need to come up with a system to track modified strings that require translation updates. That's a solved problem with gettext and POT (template) and PO (translation) files as we use for the engine and the docs. So ideally we'd add support for that in the translation plugin, so we can extract all templates to a website.pot, and then language translations in es.po, fr.po, etc. When updating the .pot file, gettext then automatically updates the .po files accordingly, marking modified strings as "fuzzy", so translators still have their old translation for it (if fuzzy matching works) but need to rework it before it's used live. For the Godot editor we have some Python scripts that generate But here there are probably more clever ways to do this, I'm sure there are some web-friendly libraries to extract strings that are meant to be translated (with some template markup) and generate a POT file. |
I noticed we're using language-specific URLs too. While this is technically the more "web-y" way of proceeding, it often leads to poor UX due to users copy-pasting localized URLs on platforms like Discord or forums. This means users will see pages in the incorrect language if their system language isn't used to switch to the correct language (as opposed to English). If the system langauge is used, the language code in the URL just ends up being cruft. In comparison, websites like Lichess have dropped language codes from their URLs a few years ago, making the language a client-side detail so to speak. |
Now that the initial localization system has been implemented with bf79f99 there are some tasks to consider so I'll open this issue to discuss it and to keep the roadmap somewhere.
Todo:
The text was updated successfully, but these errors were encountered: