-
Notifications
You must be signed in to change notification settings - Fork 80
Workflow between GitHub and Transifex
WARNING: WORK IN PROCESS!!!
Find out how to create a perfect workflow for the plone.app.locales package between GitHub & Transifex with the .TX Client command tool.
This a proposal to improvement the concurrent Plone i18n workflow, using the Transifex platform and GitHub repository.
There a several open-source projects that using different workflow for translations, using some features like:
-
Terminology database (vocabularies).
All these feature are including into the Transifex platform, these very useful to more people working on Plone translations process.
Thera a good examples of open-source projects that using the Transifex platform, as the following:
-
WP-Translations, is a community that aims to be a bridge between developers and translators. We are dedicated entirely to translate WordPress, it’s themes, plugins and documentations.
-
Plone Intranet, is the code name for Quaive, a Social Intranet Collaboration Solution based on Plone.
-
Plone 5 Training, A collection of Plone 5 trainings developed and created by the Plone Community.
-
Plone 4 Training, A collection of Plone 4 trainings developed and created by the Plone Community.
-
Plone 5 Documentation, The translation of Plone 5 Documentation.
Transifex is a dedicated platform for translation, trusted by the Open Source Community, so perfect for Plone projects.
Based on a cloud platform, no need to install anything on your computer. If you’re used to translate on your own locally, with Poedit, no problem, you can import your translated files.
With a clear dashboard and the notifications system stay up to date is everything that happens to our projects.
Transifex integrates lots of tools to create way to communicate between users, at every level of a project, from the management to the translation with tools like global announcements, discussions places (forums) for every languages. At the string level you have a detailed area (extracted from the source language file and the comments of the authors), a tag system, an history system, a glossary and the suggestions.
The suggestions system use a globalized TM (Translation Memory) shared between all the projects of our community. It means a better uniformation of regular stings used in different projects but also a gain of time for every translators with the autocomplete of similar strings.
Every project as in Plone got is own use role system to easily manage them : coordinators, reviewers and translators and to create quality translations files.
Project can be linked to your .pot source file and every changes you do to it will automatically be reflected on Transifex side. No more hassle managing i18n files and getting in touch with translators, you’re free to spend your time coding.
The Transifex dedicated command line client tool, integrates perfectly in your workflow. Like a Git or svn client simply push and pull to your local folder the translations and get everything ready for your next update.
But enough talking, the best thing to do is using it isn’t it?
The proposal details about this workflow improvement are:
-
The Plone backend guys add i18n, generate / update the Gettext files (pot and po files).
-
Using the transifex client (like a git command) to push the pot files (source translation) or translations (po files) to the transifex project.
-
The Plone translators write his translations and later when the every Team language leader, example Spanish translation team leader, believes the translation is ready to use, then make a pull for translations made (po files) from transifex organizatation using transifex client into plone.app.locales package.
-
Add a new commit and pull request, for wait to the maintainer guys or owner plone.app.locales package, that for check out and merge the pull request.
Our Plone organization into Transifex.
At the moment for Open source projects Transifex only support a specific version for every project, for example:
-
Plone 5 CMS.
-
Plone 5 Documentation.
-
Plone 5 someting.
-
Plone 4 CMS.
-
Plone 4 Documentation.
-
Plone 4 someting.
Every Transifex project target to a specific github repository branch
The following requirements are needed for works with this workflow proposal:
-
A GitHub account.
-
The TX client installed.
-
A Git tool.
-
A update working copy of the plone.app.locales package from GitHub repository.
-
Update the pot and po files.
TODO.
Configure the TX client
TODO.
TODO.
Creates or updates the Gettext files (pot and po files) from the plone.app.locales package.
TODO.
Then push the Gettext files (pot and po files) to Transifex.
TODO.
Pulls translations (po files) from Transifex and creates the .mo files
TODO.
Display or erase Transifex resources / languages (translations) from Transifex.
TODO.