KDE Localization/LTMT
This page aims to specify a tool to help translation team management. Background comes from a BoF during Desktop Summit 2011 and some though about existing tools in Italian and French teams.
This proposal could be turned into a GSoC. Everyone is invited to discussed this proposition on [email protected] and put ideas on this page.
Main features
- manage translator website with list of PO file to be translated that keep in sync with svn (and follow file moving)
- basic stats (untranslated, fuzzy...) and pology stats (rules and spell errors)
- direct link to websvn to download po/pot file
- booking system to affect a file to a translator : ask a file, give up a file etc.
- allow to set a maintainer for each module (assignee by default for new files of the module);
- same for reviewer
- handle branch to focus translator work on currently relevant branch (for teams that do not use the Summit Workflow)
- CLI (command line interface) for the coordinator to easily prepare files to commit (launch checks, ensure file booking, move to proper directory in the proper branch).
- For user authentication. Most of screen can be anonymous, but for booking, and admin stuff we'll need authentication. It would be nice to integrate to identity.kde.org, at least for admin users and regular contributors.
- show files by "bundles" (i.e.: all calligra 2.x translation, all SC 4.x, etc) in the same place with the appropriate version and the summary of the status (in addition to the big stable/trunk views)
- integration with the calendar, so that the proper nagging email arrives to the maintainer of a file or the team with the summary of the translation status when the release date of a "bundle"
- more detailed search engine (like the one on the Italian site http://kdeit.softwarelibero.it/ricerca.php)
Design model
Early (and very incomplete) design : Some comments on it:
- It defines two relationship between pofile and a translator: translator and reviewer (maybe the translator table should be renamed "people" to be more generic)
- the membership table allow to define role for a given language (coordinator for ex.) and even an optionnal module (coord. module for instance).
Next steps / To do
- comment/debate on main features.
- Separate key/essential ones and "nice to have".
- Draft some use cases to ensure we dit not miss important things
- make a proper conceptual design of database
- choose the technology we want to use to develop
- draft some essential screen and show a prototype to l10n guys to have feedback
- try to migrate Italia or/and France to the new tool to validate that the tool is usable
- write doc and help others teams to join if they want to.
Existing tools
- Italia : http://kdeit.softwarelibero.it/pacchetti.php
- France : http://fr.l10n.kde.org/apps/pofiles.php (code is here : https://github.com/digitalfox/py10n)
Technical parts
The tool will be an extension of the current l10n website ; which currentlly mainly target statistics.
- source code : http://websvn.kde.org/trunk/www/areas/l10n/scripts/l10n-stats/
- documentation : http://l10n.kde.org/scripts/l10n-stats/documentation.php