Page MenuHomePhabricator

Divide translation blocks by feature
Open, Needs TriagePublic


At the moment, we have the following groups:

  • User interface
  • Welcome Survey
  • Help Panel (+API)
  • Homepage (+API) (which includes Mentorship module and Suggested Edits)
  • Confirm email
  • Newcomers task API

We should have the following groups regarding interface translations:

  • User interface
  • Welcome Survey
  • Help Panel
  • Help panel API
  • Homepage
  • Homepage API
  • Confirm email
  • Newcomers task
  • Newcomers task API
  • Mentorship tools
    • mentorship module
    • future mentors tools
  • Claim a mentee

We are considering to have tool by tool deployment. As a consequence, this translation work should be split to match each feature. It would really ease community translations, since each element is separated from the others and translators can focus on a specific tool.

For instance, SuggestedEdits are part of the Homepage and should be considered as a separate group. This would allow communities to have the Homepage without Suggested edits, if they aren't ready to have them.

This should be a team good practice regarding internationalization.

Event Timeline

The how-to from @Amire80:

Division of messages requires two patches:
Patch 1: In the extension code Gerrit repository, in which en.json and qqq.json are moved to a new directory. This folder must also be mentioned in the extension.json file. The developer who writes this patch should test that the extension still works and the messages that were moved still appear. Don't change any json files except en.json and qqq.json—they will be updated automatically.
Patch 2: In the translatewiki Gerrit repository, where the new file is added to the configuration file groups/MediaWiki/mediawiki-extensions.txt, and if needed, then also to ExtensionsAgg.yaml and one of the Wikimedia*Agg.yaml files.
I'd love to get the developers' feedback about the instructions, and then write them more publicly at

@Trizek-WMF -- could you please clarify the task description to list which groups we have and which groups we want.

It should not be an issue to divide the messages into more groups. However, I'm not sure how will we preserve translations. Is copying keys from (for instance) cs.json directly in the repository itself a good idea? I feel like it would probably work, but I'm not sure, and I can't try it, as it would requiring merging a test-only patch. @Tgr, do you happen to know?

Simply moving the messages in en.json and qqq.json is enough. Everything else will be done by translatewiki scripts.