An Open Source Translation Suite


Transolution hosting is now alive again and have now been moved Butbucket There is also a new windows build that probably works better on modern windows versions and has a TM GUI.
Transolution development on hold. As I've got a new job position I don't have the time to develop Transolution anymore (But I will continue watching the mail list and answer questions). If anyone would want to continue the development just send me an email and I'll help out with setting up SVN/Trac accounts. I'd like to thank everyone that have given their support.
Transolution 0.4b5 released. It fixes major bugs to be sure to upgrade. Get it here Official releases
Transolution 0.4b4 released. get it here Official releases
Filter Documentation added.
Transolution 0.4b3 released. get it here Official releases
There is now some Documentation!


Transolution is a Computer Aided Translation (CAT) suite supporting the XLIFF standard. It provides the open source community with features and concepts that have been used by commercial offerings for years to improve translation efficiency and quality. The suite is modular to make it flexible and provides a XLIFF Editor, translation memory engine and filters to convert different formats to and from XLIFF. The use of XLIFF means that almost any content can be localized as long as there is a filter for it (XML, SGML, PO, RTF,StarOffice/OpenOffice).

XLIFF Editor

A versatile translation editor for XLIFF files. It aims to provide translators with professional quality editor for both documentation and software. Features tag protection and interactive Translation Memory.


  • Versatile, can be used for both software and documentation
  • Sentence segmentation
  • Tag protection
  • Interactive Translation Memory
  • File format based on XLIFF standard
  • Platform independent
  • Open source (GPL License)

The XLIFF editor is especially useful when the content to be translated contains tags and placeholders. It aids the translator so tags are protected and only allow translatable content to be changed.


First of all you need have the transolution directory in your python path or you have to be in the directory containing the transolution folder. To start the editor:


See Translation Memory on how to setup the editor to use it.


You find XLIFF Editor documentation here XLIFF Editor documentation .

Screen shots

XLIFF Editor

shoot1 showing live translation memory lookup diff

shoot2 showing find/replace dialog.

shoot3 shown translating a XLIFF created with PO2XLIFF filter.

Translation Memory

The TM back end is loosely coupled using xml-rpc to enable different 3-party TM engines. The default TM engine is developed by Fredrik Estreen.


usage: [options] [tmxpath]

 -h, --help            show this help message and exit
 -s SLANG, --slang=SLANG
                       TM source language
 -t TLANG, --tlang=TLANG
                       TM target language
 -r, --recursive       Process files recursive.
 -f FMASK, --fmask=FMASK

                       File mask to use when running recursive.
 -p PORT, --port=PORT  Port to use.

You can specify tmx files to import on the command line if you want. Use -h to get help on the arguments. eg.

>python -s EN-US -t DE-DE ../tmx/test.tmx

This imports all the TMX test.tmx, the Source and Target Lang codes must be specified and be the same as in the TMX.


You can create TMX files from Translated XLIFF files with the script transolution/tmx/

When the TM server is up and running start the XLIFF editor.


Look at the TM->setup setting, it should be set to http://localhost:6315 by default. This is OK if you run the TM server on the same machine and the default port. Then check the TM->Active option. A dialog should popup saying that Transolution TM server v0.1 is connected. Then check TM->Automatic TM lookup. That should be it. Please report any problems.


The TM server is very basic/crude at the moment and only provide the most essential stuff. So don't expect anything fancy.

XLIFF Filters

Filter to convert from tagged formats such as HTML and XML to XLIFF and back. The filter is configurable using a ini-file so it can be adapted to a number of different formats.

  • - Script to convert to XLIFF
  • - Script to back convert XLIFF to original format

As of this moment ini files for the following formats exists in transolution/filters/filter_settings:

  • DOCBOOK (docbook.ini)
  • HTML (HTML.ini)
  • Staroffice/Openoffice content.xml files. (OOffice.ini)

The filter produces sentence segmented XLIFF files.

Here are some example XLIFF files created with the filter: example_xliffs

Filter Documentation

You find Filter documentation here SGML Filter documentation .


The Editor is ready for basic translation of XLIFF documents. At present it only supports a subset of the XLIFF standard and is not guaranteed to work with XLIFF's in the wild. However the vast majority of XLIFF documents out there should be supported. The major features missing are full XLIFF compliance, tag verification, spell check and overall polish.


Official releases

Download the latest official release at download. Official releases has a self contained Windows installer.

(Developers) Mercurial information

Mercurial (HG) repository info can be accessed at


For running from source:


  • Python >2.3
  • pygtk >2.4 (with py-glade)
  • (optional but recommended) 4suite XML >1.0a4


Ubuntu Linux has everything needed installed by default.



Transolution (eviltrans) development maillist info:


  • XLIFF Editor: Fredrik Corneliusson <fredrik.corneliusson |at|>
  • TM Engine: Fredrik Estreen <estreen |at|>
  • Logo: Tobias Einarsson <kapten |at|>

Similar projects

  • OmegaT - Project with similar goals implemented in Java.
  • XLIFF tools - The XLIFF Tools project aims to implement and improve XLIFF support in open source localisation.
  • Translate - Project to aid in the localization of software. Has Python tools to convert between XLIFF and po files
  • Rainbow - ENLASO Localization Tools Freeware that provides XLIFF filters for a number of formats.
  • Open language tools - Project similar to Transolution but implemented in Java.