1 Updating translations using Launchpad
2 =====================================
4 This document describes how to update the translations in an Evergreen branch
5 by pulling them from Launchpad, as well as update the files to be translated
6 in Launchpad by updating the POT files in the Evergreen master branch.
10 You must install all of the Python prerequisites required for building
12 http://evergreen-ils.org/dokuwiki/doku.php?id=evergreen-admin:customizations:i18n
14 * https://bitbucket.org/izi/polib/wiki/Home[polib]
15 * http://translate.sourceforge.net[translate-toolkit]
16 * http://pypi.python.org/pypi/python-Levenshtein/[levenshtein]
17 * http://pypi.python.org/pypi/setuptools[setuptools]
18 * http://pypi.python.org/pypi/simplejson/[simplejson]
19 * http://lxml.de/[lxml]
21 Updating the translations
22 -------------------------
24 . Check out the latest translations from Launchpad by branching the Bazaar
28 ------------------------------------------------------------------------------
29 bzr branch lp:~denials/evergreen/translation-export
30 ------------------------------------------------------------------------------
32 This creates a directory called "translation-export".
34 . Ensure you have an updated Evergreen release branch.
35 . Run the `build/i18n/scripts/update_pofiles` script to copy the translations
36 into the right place and avoid any updates that are purely metadata (dates
38 . Commit the lot! And backport to whatever release branches need the updates.
39 . Build updated POT files:
42 ------------------------------------------------------------------------------
45 ------------------------------------------------------------------------------
47 This will extract all of the strings from the latest version of the files in
50 . (This part needs automation): Then, via the magic of `git diff` and `git add`,
51 go through all of the changed files and determine which ones actually have
52 string changes. Recommended approach is to re-run `git diff` after each
54 . Commit the updated POT files and backport to the pertinent release branches.