-
Notifications
You must be signed in to change notification settings - Fork 407
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
Transifex integration (translation management) #479
Conversation
1d71d46
to
edc4ab9
Compare
rebased against current master with german translation |
I joined the Transifex. Yes, this is good to keep message in different languages to be synchronized. I'm actually surprised by the fact that quite a few new messages have not been translated yet. On Transifex, I translated some of them. Will do more. |
My two cents : until there is full integration between GitHub/mvn and Transifex, using the latter seems to bring more problems than benefits. A few comments on my experience writing the Italian translation:
|
just in case someone wants to commit its personal `.transifexrc` file with login credentials to transifex.com
extracted from jing-20120724.0.0.jar
as they're already part of the Jing Library (jar)
edc4ab9
to
e2796b2
Compare
Rebased this branch on current |
accidentally deleted in 8659d75
Even though there's still no fully automated GitHub <-> Transifex workflow, @rdeltour and I decided to merge this first step of the Transifex integration to master in 4.0.1 I wrote a bash script wich solves issues with special char escaping and multi-line messages (for details see first post on the top) which works on top of the Transifex Commandline Client. Also I set up a wiki page about contributing translations: https://github.com/IDPF/epubcheck/wiki/Translating I'm going to add some information soon on how to pull translations from Transifex and push to GitHub. |
To run this script you need to have a Transifex account and install the Transifex Commandline Client! Instructions: http://docs.transifex.com/client/ You need to run this script from the repository's root directory! e.g. ./src/build/transifex-pull.sh --all usage: transifex-pull.sh [--all | <2-digit-country-code>] examples: transifex-pull.sh --all transifex-pull.sh de Note: tested on Mac OS X only!
With f3c67b4 I added a bash script to pull and normalize Transifex translations as described in my last comment. To run this script you need to have a Transifex account and install the Transifex Commandline Client! Instructions: http://docs.transifex.com/client/ You need to run this script from the repository's root directory!
Note: tested on Mac OS X only! |
@rdeltour ready to merge! Once this is done, I'm going to perform a
and will replace them with the default comments from the original Message properties file
This is how Transifex handles comments in source files: it just copies them over to the translated file. no chance to get custom comments through the process. |
Merges unmerged commits from PR #479
argh. maybe I forgot to pull before rebasing? Sorry for the hassle, let me know if I can help. |
@rdeltour no worries. Seems to be merged fine now. Double commit's though, but it works... |
Hey guys,
as I've been translating the rest of the messages to german a couple of weeks ago, I've been wondering whether we could improve the translation workflow somehow.
I'm fearing the situation when translations are drifting apart because their maintainers doesn't watch changes to the english master message files...
I remembered that I once signed up for Transifex (though never used it until now), which offers free translation management for Open-Source projects, and created an IDPF organization and an EpubCheck project:
https://www.transifex.com/projects/p/epubcheck/
I added all current translations to the transifex project and set up the transifex commandline integration (http://docs.transifex.com/developer/client/) with this PullRequest.
This is how translating messages in Transifex looks like (if you signed up):
https://www.transifex.com/projects/p/epubcheck/translate/#fr/ErrorsWarnings/35761294
I think, Transifex makes translation management a bit easier, as it automatically keeps the english message files up to date with the github repo and translators can easily see when new messages need to be translated.
However, it doesn't (automatically) syncs itself with GitHub – this has to be done by hand at the moment (but: there exists tools for syncing – see below). A manual workflow for this could look like the following:
tx pull -a
tx push -s -t
If you want to test the transifex integration, sign up at transifex for free and @rdeltour or me will add you as a contributor to the project.
Next steps include:
python
andpip
(http://pip.readthedocs.org/en/latest/installing.html)sudo pip install --upgrade transifex-client
~/.transifexrc
file with your transifex login credentials (http://docs.transifex.com/developer/client/setup#transifexrc)tx pull -a
Wanna give it a try and tell me what you think?
TODOs
The transifex integration is just a first draft for this task. There are still a few issues to solve:
file_not_found=Fichier introuvable : '%1$s'
file_not_found=Fichier introuvable \: '%1$s'
argument_needed=Es wird mindestens ein Parameter erwartet!
argument_needed=Es wird mindestens ein Parameter erwartet\!
I'm open for suggestions and your opinions regarding this topic.
Cheers,
Tobias