How To Contribute To Plone Core Translations¶
Introduction¶
You might want to have write access to https://github.com/collective/plone.app.locales to be able to commit your translation directly.
For that, join the collective GitHub organization.
You can fork the repository and work from there (more about it below).
Updating Translations¶
If you want to test your latest translation with unreleased packages containing i18n fixes, get the buildout like this:
cd ~/buildouts # or wherever you want to put things
git clone -b 5.2 https://github.com/plone/buildout.coredev ./plone5devel
cd plone5devel
./bootstrap.sh
bin/buildout -c experimental/i18n.cfg
bin/instance fg
To update the buildout later:
git pull
bin/buildout -c experimental/i18n.cfg
To update your translation, you can go there:
cd src/plone.app.locales/plone/app/locales/
Here you have the following directories:
locales
used for core Plone translations.locales-addons
used for some add-ons packages.
Open the po file with poedit, kbabel or any other i18n tool.
For example for French:
poedit locales/fr/LC_MESSAGES/plone.po
Please do a git pull
before editing a po file to be sure you have the latest version.
Committing Directly¶
You can commit your translation from this locales directory:
git commit -a -m "Updated French translation"
git push
Creating A Pull Request¶
If you do not have commit access on GitHub collective group, you can do the following:
Login to GitHub.
Go to GitHub plone.app.locales
Press Fork. Now GitHub creates a copy of
plone.app.locales
package for you.Then on your computer in
plone.app.locales
do a special git push to your own repository:git push git@github.com:YOURUSERNAMEHERE/plone.app.locales.git
Go to GitHub
https://github.com/YOURUSERNAME/plone.app.locales
Press Create Pull request. Fill it in.
The request will appear for plone.app.locales authors.
If it does not get merged in timely manner, ask on Plone forums.
Resyncing translations¶
When an i18n fix is done in the code, you need to regenerate the pot file and resync the po files from this pot file.
There is a bin/i18n command to resync the po files for the different i18n domains. `Read more on this doc how to use it < https://github.com/collective/plone.app.locales/blob/master/utils/README.txt>`_.
To release a new plone.app.locales version, please read this doc
Support¶
Please ask questions on the Plone Community Forum category Translations and i18n/l10.