Mercurial > libervia-backend
annotate README4TRANSLATORS @ 2109:85f3e12e984d
core (memory/cache): file caching handling, first draft:
instead of having file caching handled individually by plugins, a generic module has been added in memory.
- Cache can be global or associated to a profile. In the later case, client.cache can be used.
- Cache are managed with unique ids (which can be any unique unicode, hash uuid, or something else).
- To know if a file is in cache, getFilePath is used: if the file is in cache, its absolute path is returned, else None is returned.
- To cache a file, cacheData is used with at list the source of cache (most of time plugin import name), and unique id. The method return file opened in binary writing mode (so cacheData can - and should - be used with "with" statement).
- 2 files will be created: a metadata file (named after the unique id), and the actual file.
- each file has a end of life time, after it, the cache is invalidated and the file must be requested again.
author | Goffi <goffi@goffi.org> |
---|---|
date | Thu, 05 Jan 2017 20:23:38 +0100 |
parents | 0db0013c59dd |
children | 5e72efd2f95d |
rev | line source |
---|---|
69 | 1 First of all, thank you for helping translating SàT :) |
2 | |
223 | 3 NOTE: *.po files are in i18n directory |
4 | |
69 | 5 To translate a file, you can use a dedicated tool as the excellent gtranslator: |
771 | 6 |
862
ca7a2bf4fb40
i18n: updated the translation files
souliane <souliane@mailoo.org>
parents:
845
diff
changeset
|
7 - use the template .po file (e.g. sat.po) and name it to your translated language (e.g. fr.po for french); you can preferably generate a new template directly from the source with the following command (eventually adapted, the following command use zsh's globbing syntax), launched from root sat dir after having emptied the build directory: |
1291
0db0013c59dd
remove remaining references to Wix
souliane <souliane@mailoo.org>
parents:
862
diff
changeset
|
8 > xgettext -L python -d sat --keyword=D_ -p i18n **/*(.py|.tac|primitivus)(.) **/jp(.) |
771 | 9 |
10 - then to start a new translation, copy i18n/sat.po to your language file, e.g. cd i18n; cp sat.po fr.po | |
69 | 11 |
12 - use the choosed tool (a simple text editor can be sufficient) to edit the file: e.g. gtranslator fr.po | |
13 | |
14 - once you translation is finished (or partly finished: the english sentences are used if there is no translation), you can test them by generating a binary and moving it to the right place with the following commands: | |
862
ca7a2bf4fb40
i18n: updated the translation files
souliane <souliane@mailoo.org>
parents:
845
diff
changeset
|
15 > msgfmt -o sat.mo fr.po |
69 | 16 > mv sat.mo i18n/fr/LC_MESSAGES/sat.mo |
17 | |
18 - if you have already a translation, and want to update it (new translations to do, some sentences have changed), you can use the following commands: | |
19 > msgmerge fr.po sat.po > fr2.po | |
20 and if everything is allright | |
21 > mv fr2.po fr.po | |
22 | |
771 | 23 Don't forget that you can (and should !) use the version-control system (mercurial, the "hg" command) to keep history of you translations. |
69 | 24 |
25 You can check the fr.po file to see how it's done and to know what to put while you set up you translation tool. | |
26 | |
862
ca7a2bf4fb40
i18n: updated the translation files
souliane <souliane@mailoo.org>
parents:
845
diff
changeset
|
27 Thank you again for you help, don't forget to give me your name and contact email so I can credit you, and don't hesitate to contact me if you need help (goffi@goffi.org, or the sat XMPP room at sat@chat.jabberfr.org). |
69 | 28 |