4
Translations for the Calculator app happen in [Launchpad Translations](https://translations.launchpad.net/ubuntu-calculator-app) and are automatically committed daily on the trunk branch in the po/ folder.
6
They are then built and installed as part of the package build, so that
7
developers don't really need to worry about them.
9
However, there is one task that needs to be taken care of: exposing new
10
translatable messages to translators. So whenever you add new translatable
11
messages in the code, make sure to follow these steps:
13
1. Run click-buddy retaining the build directory:
14
$ click-buddy --dir . --no-clean
15
2. Copy the .pot file from the <build dir> mentioned in the output to your
17
$ cp <build dir>/po/*.pot po/
18
3. Commit the generated .pot file:
19
$ bzr commit -m"Updated translation template"
20
4. Push the branch and send a merge proposal as usual
22
And that's it, once the branch lands Launchpad should take care of all the rest!
27
Behind the scenes, whenever the po/*.pot file (also known as translations template)
28
is committed to trunk Launchpad reads it and updates the translatable strings
29
exposed in the web UI. This will enable translators to work on the new strings.
30
The translations template contains all translatable strings that have been
31
extracted from the source code files.
33
Launchpad will then store translations in its database and will commit them daily
34
in the form of textual po/*.po files to trunk. The PO files are also usually
35
referred to as the translations files. You'll find a translation file for each
36
language the app has got at least a translated message available for.
38
Translations for core apps follow the standard [gettext format](https://www.gnu.org/software/gettext/).
40
[Launchpad Translations](https://translations.launchpad.net/ubuntu-calculator-app)
41
[gettext format](https://www.gnu.org/software/gettext/)