Clone wiki

gtkPyglot / Home


Flattr This application

With gtkPyglot you can check for existing translation from other projects. The application supports working on online and offline mode. See the Screenshots

Get more information about the planned features in the Planned Feateures page.

See the provided packages for download.

Online mode

When working in online mode, gtkPyglot uses the xml-rpc service from to search for available translations. This mode has some limitation, since the service doesn't support showing the original strings (msgid) and is slow, but supports more projects.

Searching in google translate is also part of the online mode, but as you know google translate is note perfect in translating.

The Offline mode

In offline mode, gtkPyglot needs a sqlite database, generated from the translations at The generation of the database is still not automated, so you will need to use the generated database with stand 04.03.2011 available from the following link: Download langs.db (349MB)

I am still working on the option to autogenerate the database and perhaps to select which languages to use, insteaded of generating a database for the all 55 languages supported by

If you want to generate your own database, you should use the sourcecode:

1. Download the pylyglot source code from github:

git clone

2. Install the dependences:

3. Copy the conf/99-devel.conf.sample file and rename it to 99-devel.conf.

By default sqlite is configured to be the engine with a new development.db file. This file is used by gtkPyglot too, but stripped from the django relevant tables.

4. Create a po/ directory in the root directory of your checkout. In this directory you will have to put all the .po files for all languages. All files in this directory without separete directories per language. The .po files must have the following format:


To download all translations for a language from the gnome project visit the and download the languages you need the links look like: for the french package, but you can put the following script in the po directory to download only the supported languages by pylyglot:

#!/usr/bin/env python

import xmlrpclib
from urllib import urlretrieve

server = xmlrpclib.Server(SERVER_URL)
lang_raw = server.get_languages()
langs = []
for lang in lang_raw:
    urlretrieve("" % lang['short_name'], "%s.tar.gz" % lang['short_name'])

5. Run the followin commands from the root pylyglot directory to generate the database:

First sync the database:

python syncdb

And then populate the database:

python populatedb

After that you can point gtkPyglot to the develop.db to use it for the translations.