40 | | * Once a day, a script '''build_pos''' is run as a cron job. |
41 | | This script generates a template for each component, |
42 | | leaving the .pot file in the component directory. |
43 | | It then compares the .pot file with the one in '''locale/templates'''. |
44 | | If they differ (not counting comments) it sends an email to Rom and David. |
45 | | * On receiving this email, Rom and/or David examines the new template file. |
| 41 | * Templates are updated as needed, Rom and/or David generate a new template file. |
50 | | Twice daily a cron job (~boincam/pootle/update.sh) pulls modified templates from |
51 | | the BOINC repo and adds them to the Pootle database. |
52 | | |
53 | | Various [http://docs.translatehouse.org/projects/pootle/en/stable-2.5.0/server/commands.html Pootle Commands]. |
54 | | |
55 | | update.sh should perform the following functions for each supported pootle project (boinctrunk, setiweb): |
56 | | 1. Commit to VCS all existing changes to PO files. (pootle command: commit_to_vcs) |
57 | | 2. Update from VCS all templates for each project. (pootle command: update_from_vcs) |
58 | | 3. Apply template changes to all projects/languages. (pootle command: update_against_templates) |
59 | | 4. Compile all catalogs used by the client software into MO files. (Execute: boinc/locale/updatetrans.sh) |
60 | | 5. Commit to VCS all existing changes to MO files. (git command: commit) |
61 | | |
62 | | All pootle operations are limited to just the boinc/locale directory structure. Projects are expected to |
63 | | have a similar structure. |
64 | | |
65 | | 'boinc/locale/updatetrans.sh' compiles BOINC-Manager.po, BOINC-Client.po, BOINC-Web.po, and BOINC-Setup.po if |
66 | | the datestamps on the po and mo file are different. After completing the compilation process it touches both |
67 | | files. |
68 | | |
69 | | == Post Translation Updates == |
70 | | |
71 | | Converting the Android PO file back into the native Android localization system XML files involves executing: |
72 | | {{{ |
73 | | a2po export -v |
74 | | }}} |
| 46 | Translation is handled via the Transifex web portal. Using the TransifexGithub bridge software, |
| 47 | templates and completed translations are kept in sync between Transifex and Github. |