The Translate Toolkit is a localization and translation toolkit. It provides a set of tools for working with
localization file formats and files that might need localization. The toolkit also provides an API on which to develop other localization tools.
The toolkit is written in the
Python programming language
Python is a high-level, general-purpose programming language. Its design philosophy emphasizes code readability with the use of significant indentation.
Python is dynamically-typed and garbage-collected. It supports multiple programming par ...
. It is
free software
Free software or libre software is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions. Free software is a matter of liberty, ...
originally developed and released by
Translate.org.za in 2002 and is now maintained by Translate.org.za and community developers.
Translate Toolkit uses
Enchant as spellchecker.
History
The toolkit was originally developed as the mozpotools by David Fraser for Translate.org.za. Translate.org.za had focused on translating KDE which used
Gettext PO files for localization. With an internal change to focus on end-user, cross-platform, OSS software, the organisation decided to localize the
Mozilla Suite
The Mozilla Application Suite (originally known as Mozilla, marketed as the Mozilla Suite) is a discontinued cross-platform integrated Internet suite. Its development was initiated by Netscape Communications Corporation, before their acquisitio ...
. This required using new tools and new formats that were not as rich as Gettext PO. Thus mozpotools was created to convert the Mozilla DTD and .properties files to Gettext PO.
Various tools were developed as needed, including , a tool to count source text words to allow correct estimations for work, , to search through translations, and , to check for various quality issues.
When Translate.org.za began translating OpenOffice.org it was only natural that the Translate Toolkit would be adapted to handle the OpenOffice.org internal file format. Translating OpenOffice.org using PO files is now the default translation method.
As part of the WordForge project the work received a major boost and the toolkit was further extended to manage XLIFF files alongside PO files. Further funded development has added other features including the ability to convert
Open Document Format to XLIFF and the management of placeholders (Variables, acronyms, terminology, etc.).
Design goals
The main aim of the toolkit is to increase the quality of localisation and translation. This is achieved by firstly, focusing on good localisation formats thus the toolkit makes use of the PO and XLIFF localisation formats. This has the benefit that it stops the proliferation of localization formats and allows localizers to work with one good localization tool. For the toolkit this means building converters that can transform files to be translated into these two basic formats.
Secondly, to build tools that allow localizers to increase the general quality of their localization. These tools allow for the extraction of terminology and for checking for the consistent use of terminology. The tools allow for checking for various technical errors such as the correct use of variables.
Lastly, the toolkit provides a powerful localisation API that acts as a base on which to build other localization related tools.
Users
Many translators use the toolkit directly, to do quality checks and to transform files for translation. Further there are and have been several indirect users of the Translate Toolkit API:
*
Pootle - an online translation tool
open-tran- providing translation memory lookup (was shut down on January 31, 2014.)
Wordforge (old name Pootling)- an offline translation tool for Windows and Linux
Rosetta- free translation web service offered by LaunchPad. It is used mainly by the Ubuntu community translation tool. See it in action i
Launchpad Translations*
LibreOffice
LibreOffice () is a free and open-source office productivity software suite, a project of The Document Foundation (TDF). It was forked in 2010 from OpenOffice.org, an open-sourced version of the earlier StarOffice. The LibreOffice suite consi ...
/
OpenOffice.org - most community localization is done through PO files produced by the toolkit
*
Virtaal - a localisation and translation tool
*
translatewiki.net (now discontinued due to new terms)
*
Weblate - web based translation tool with tight Git integration
Supported document formats
* Primary Localization Formats
**
Gettext PO
**
XLIFF (Normal and PO representations)
* Other Localization Related Formats
**
TBX
TermBase eXchange (TBX) is an international standard (ISO 30042:2019) for the representation of structured concept-oriented terminological data, copublished by ISO and the Localization Industry Standards Association (LISA).ISO 30042:2008: System ...
** Java
.properties
.properties is a file extension for files mainly used in Java-related technologies to store the configurable parameters of an application. They can also be used for storing strings for Internationalization and localization; these are known as P ...
**
Qt .ts, .qm and .qph (Qt Phrase Book)
**
Gettext .mo
**
OmegaT glossaries
**
Haiku
is a type of short form poetry originally from Japan. Traditional Japanese haiku consist of three phrases that contain a ''kireji'', or "cutting word", 17 ''On (Japanese prosody), on'' (phonetic units similar to syllables) in a 5, 7, 5 pattern, ...
catkeys files
* Other Formats
**
OpenDocument Format
** Plain Text
** Wiki:
DokuWiki
DokuWiki is a wiki application licensed under GPLv2 and written in the PHP programming language. It works on plain text files and thus does not need a database. Its syntax is similar to the one used by MediaWiki. It is often recommended as a mor ...
and
MediaWiki
MediaWiki is a Free and open-source software, free and open-source wiki software. It is used on Wikipedia and almost all other Wikimedia movement, Wikimedia Website, websites, including Wiktionary, Wikimedia Commons and Wikidata; these sit ...
syntax
** Mozilla DTD
** OpenOffice.org SDF
** PHP strings
**
.NET Resource files (.resx)
**
OS X
macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac computers. Within the market of desktop and la ...
strings
**
Adobe Flex
Apache Flex, formerly Adobe Flex, is a software development kit (SDK) for the development and deployment of cross-platform rich web applications based on the Adobe Flash platform. Initially developed by Macromedia and then acquired by Adobe Sy ...
files
**
INI file
** Windows / Wine .rc files
**
iCalendar
The Internet Calendaring and Scheduling Core Object Specification (iCalendar) is a media type which allows users to store and exchange calendaring and scheduling information such as events, to-dos, journal entries, and free/busy information, a ...
**
Symbian
Symbian is a discontinued mobile operating system (OS) and computing platform designed for smartphones. It was originally developed as a proprietary software OS for personal digital assistants in 1998 by the Symbian Ltd. consortium. Symbian ...
localization files
** Subtitles
* Translation Memory Formats
**
TMX
**
Wordfast TM
OpenDocument Format support
Work was started in June 2008 to incorporate
OpenDocument Format support. This work is funded by the
NLnet
The NLnet Foundation supports organizations and people that contribute to an open information society. It was influential in spreading the Internet throughout Europe in the 1980s. In 1997, the foundation sold off its commercial networking operat ...
Foundation and is a collaboration between Translate.org.za and
Itaapy
See also
*
Computer-assisted Translation
Computer-aided translation (CAT), also referred to as computer-assisted translation or computer-aided human translation (CAHT), is the use of software to assist a human translator in the translation process. The translation is created by a huma ...
*
Translation Memory A translation memory (TM) is a database that stores "segments", which can be sentences, paragraphs or sentence-like units (headings, titles or elements in a list) that have previously been translated, in order to aid human translators. The translati ...
References
External links
Translate Toolkit home page*
Python package index* {{SourceForge, translate, Translate Toolkit
Software-localization tools
Free software programmed in Python
Internationalization and localization
Computer-assisted translation software for Linux