Translations: Difference between revisions
Jump to navigation
Jump to search
(Instructions on how to mark Jinja2 and Python code for translation) |
|||
Line 6: | Line 6: | ||
= For developers = |
= For developers = |
||
== Marking strings for translation == |
|||
=== In Jinja2 === |
|||
See: http://jinja.pocoo.org/docs/templates/#i18n |
|||
Mostly like Django template i18n support, if you have any experience with that. |
|||
=== In python code === |
|||
<code lang="python"> |
|||
from mediagoblin.util import pass_to_ugettext as _ |
|||
def some_func(something): |
|||
return _(u'This string would tooootally be translatable now.') |
|||
</code> |
|||
== Extracting translations == |
== Extracting translations == |
||
Revision as of 14:30, 9 August 2011
For translators
You can translate our tools at Transifex:
https://www.transifex.net/projects/p/mediagoblin/resource/mediagoblin/
For developers
Marking strings for translation
In Jinja2
See: http://jinja.pocoo.org/docs/templates/#i18n
Mostly like Django template i18n support, if you have any experience with that.
In python code
from mediagoblin.util import pass_to_ugettext as _
def some_func(something):
return _(u'This string would tooootally be translatable now.')
Extracting translations
If you run buildout it should create a script called 'pybabel'. Use it to extract translations like so:
./bin/pybabel extract -F babel.ini -o mediagoblin/i18n/en/LC_MESSAGES/mediagoblin.po .
Compiling translations
./bin/pybabel compile -D mediagoblin -d mediagoblin/i18n/
Pulling translations from Transifex
Unfortunately until the next release of transifex-client which has been patched to have proper entry points, you have to run transifex-client from a virtualenv or from site-packages. But assuming that's done, pulling translations is easy:
tx pull -a
Pushing new translations to Transifex
tx push -s