Talk:Pootle
Preliminary
The Goal is to manage SME translations with Pootle hosted on contribs.org. The current method excellent as it is makes it hard to find missing strings and to easily replace them.
Test pootle site: http://translate.unixlan.com.ar/
Once we have everything worked out how to interact with pootle and the formmagick stuff then I'll get something up on contribs.org that everyone can use. It would be really nice if we could automate the extraction/import of files that need to be translated into pootle but first things first.
Slords 18:23, 24 January 2008 (MST)
xml2po
we are using http://linux.die.net/man/1/xml2po to convert the xml lexicons to .po files and back
You can download from http://mirror.contribs.org/smeserver/contribs/nhall/sme7/contribs/pootle/rpm/gnome-doc-utils-0.12.0-1.noarch.rpm
To create .po and export xml files, we have written a few shell scripts and added a translation file smetrans.py
we'll release these later for contribs authors
bugs
Bugs related to Pootle based translations are linked here
revision control using CVS/SVN
Today I had a quick look at the pootle pages and found a wiki as well, which has some valuable information like for instance revision control using CVS/SVN: http://translate.sourceforge.net/wiki/pootle/version_control - Cactus 03:26, 25 January 2008 (MST)
A few links for future implementation:
- http://subversion.tigris.org/tools_contrib.html#po_update_sh
- http://subversion.tigris.org/tools_contrib.html#verify_po_py
- http://subversion.tigris.org/tools_contrib.html#svnmerge_py
- http://subversion.tigris.org/tools_contrib.html#svnmerge_sh
Translation Workflow
Draft suggestions ...
.po files
- gettext strings are in various files in cvs
- we use xgettext to creates .po files from the original files to by extracting gettext strings [1]
- we load these into pootle as .pot template files and update other languages from these
- .po files have been converted to UTF-8, they will be converted back to ISO-8859-1 when patching SME
- changes to original files, ie changed gettext strings, have to be tracked as usual in the bug tracker
- these are imported into the templates and other languages by above method
- at some point we diff updated po files against cvs po files, the patch is checked and applied.
FormMagick files
- these are XML files with a <base> and <trans> pair of strings
- we create .po files from the english versions [2]
- we load these into pootle as .pot template files and update other languages from these
- changes to original files, have to be tracked as usual in the bug tracker
- new <base> strings only have to be added (or removed) to the cvs xml file for english
- at some point we apply the new translation back to the xml file [2]
then diff against cvs, make patch, check and apply
[1] smeserver-locale smefetchpo (added) [2] smeserver-locale smefetchxml, smexml* smereload (to be added)
Please use common packages and default package names (where possible)
A lot of the RPM's are in the DAG repository, no use of packaging them yourself or sharing them by copying them from the providing website and sharing them under a different name.
Please point users to download python-kid (replacing you kid RPM), python-lxml (replacing your lxml RPM), python-sqllite (replacing pysqlite RPM), python_Levenshtein and python-elementtree (which you called elementtree) which is also available in the DAG repository and AFAIK is already installed on SME Server by default.
On top of that not everything is required to install Pootle, only requirements AFAIK could find on the Pootle site are listed here and because of the jToolkit requiring pythonabi-2.4 you have problems installing against pythonabi-2.3 which is installed on SME Server 7.3, perhaps you can find an older jToolkit, or recompile jToolkit from source and see if it will also work with pythonabi-2.3, this would drop the hack you have to do to make it work on SME Server 7.x.
- Cactus 14:09, 19 February 2008 (MST)