Setup of a new project
Verify the project
- Quality of strings
- Message documentation
- Activity and interest (releases, contact person)
- File format
- Push access: ensure push-access is given either to L10n-bot (wikimedia gerrit) or Niklas and Siebrand (GitHub or BitBucket).
- Read-only mirror link: https://phabricator.wikimedia.org/diffusion/GTWN/
- Repository management may describe details on how to point to the VCS.
- Also update-externals.sh for Nike, not currently in version control.
Message group configuration
Lots of examples under groups/ in translatewiki repo. Old but mostly still valid documentation: https://www.mediawiki.org/wiki/Help:Extension:Translate/Group_configuration_example
Need some info such as logo and message group description done in the next section.
Choosing a group id:
- Practice is to use lowercase letters with dashes as level separators in case of multiple groups.
- Prefix "out-" is deprecated and should not be used for new projects.
- In case of multiple groups, the aggregate group should get the top level name, i.e. "blockly", and contain all groups named "blockly-*". Suffixes like "-0-all" are deprecated.
- Do not use comma or asterisk or question mark! These have special meaning in places which accept group patterns.
- Also avoid characters which are invalid in MediaWiki titles, as that breaks shortcuts such as Special:MessageGroupStats/foo (which may be used by the people, but not generated by Translate itself).
All message keys should be prefixed with mangler if it is likely that multiple message groups (remember that one file + its translations is one group).
Update TranslateSettings.php to register the yaml file, possibly add a new namespace (if none of the existing ones fit).
Translating:projectname needs to be created (copy template from Translating:FreeCol or other). Logo needs to be in Commons or uploaded to translatewiki.net.
Add descriptions to Group descriptions and mark the page for translation.
Other misc things:
- Add babel templates (this is forgotten very often - the whole thing should be automatized)
- Add support categories and an alias if needed