OmegaT

OmegaT

OmegaT 1.6 under Mac OS X
Original author(s) Keith Godfrey
Developer(s) Didier Briel, Alex Buloichik, Zoltan Bartko, Tiago Saboga, etc...
Initial release November 28, 2002
Stable release 3.1.9 (March 9, 2015) [±]
Preview release 3.1.9_Beta (March 9, 2015) [±]
Operating system Cross-platform
Type Computer-assisted translation
License GPL
Website omegat.org

OmegaT is a computer-assisted translation tool written in the Java programming language. It is free software originally developed by Keith Godfrey in 2000, and is currently developed by a team led by Didier Briel.

OmegaT is intended for professional translators. Its features include customisable segmentation using regular expressions, translation memory with fuzzy matching and match propagation, glossary matching, dictionary matching, translation memory and reference material searching, and inline spell-checking using Hunspell spelling dictionaries.

OmegaT runs on Linux, Mac OS X and Microsoft Windows 98 SE or higher,[1] and requires Java 1.5. It is available in 27 languages. According to a survey in 2010[2] among 458 professional translators, OmegaT is used 1/3 as much as Wordfast, Déjà Vu and MemoQ, and 1/8 as much as the market leader Trados.

History

OmegaT was first developed by Keith Godfrey in 2000. It was originally written in C++.

The first public release in February 2001[3] was written in Java. This version used a proprietary translation memory format. It could translate unformatted text files, and HTML, and perform only block-level segmentation (i.e. paragraphs instead of sentences).

Development and software releases

The development of OmegaT is hosted on SourceForge. The development team is led by Didier Briel. As with many opensource projects, new versions of OmegaT are released frequently, usually with 2-3 bugfixes and feature updates each. There is a "standard" version, which always has a complete user manual and a "latest" version which includes features that are not yet documented in the user manual.[4] The updated sources are always available from the SourceForge code repository.[5]

How OmegaT works

OmegaT handles a translation job as a project, a hierarchy of folders with specific names. The user copies non-translated documents into one named /source/ (or subfolders thereof). The Editor pane displays the source documents as individual “segments” for translation one segment at a time. OmegaT, when directed, generates the (partially) translated versions in the /target/ subfolder.

Other named folders include ones for automatic consultation within the program: /tm/ for existing translation pairs in .tmx format, /tm/auto/ for automatic translation of 100% matches, /glossary/ for glossaries, /dictionary/ for StarDict (and .tbx) dictionaries.

When the user goes to translate a segment in the Editor pane, OmegaT automatically searches the .tmx files in the /tm/ hierarchy for previous translation pairs with similar source sentences and displays them in the Fuzzy Matches pane for insertion into the Editor pane with a keyboard shortcut. The Glossary and Dictionary panes provide similar automatic look-up functions for any glossaries and dictionaries in the corresponding named folders in the project. The optional Machine Translation pane shows machine translations from Google Translate and similar services.

When the user leaves a segment, OmegaT normally first adds the source-target pair to its database in memory. It subsequently saves that database to disk in Translation Memory eXchange (.tmx) format for use another day, in other projects, by other translators, and even with other CAT tools. No change, naturally enough, means no such update. Version 3.1 added a setting for blocking targets equal to their sources, a common slip, plus a keyboard shortcut for overriding it—numbers, source code in programming manuals, etc.

At any point, the user can create partially translated versions of the source files. Note that OmegaT copies source segments verbatim if they have yet to be translated. Before doing so, however, the user is advised to use the Validate menu command to check for tag and other errors. Version 3.1 added a menu command (and keyboard shortcut) for limiting operation to the current file—for partial delivery or quick update, for example.

Features of OmegaT

OmegaT shares many features with mainstream CAT tools. These include creating, importing and exporting translation memories, fuzzy matching from translation memories, glossary look-up, and reference and concordance searching.

OmegaT also has additional features that are not always available in other CAT tools. These include:

Document formats support

Several file types can be translated directly in OmegaT. OmegaT determines the file type by the file extension. The file extension handling and preferred encoding can be customised to override default settings.

OmegaT handles formatted documents by converting formatting to tags, similar to other commercial CAT tools.

Directly supported formats

OmegaT can translate the following formats directly:

File format File extension pattern
Documentation formats
plain text (any text format which Java can handle) encoded in a variety of encodings including Unicode .txt, .txt1, .txt2, .utf8
HTML/XHTML .html, .htm, .xhtml, .xht
OpenDocument (ODF),[6] used in LibreOffice, StarOffice, OpenOffice.org .sx?, .st?, .od?, .ot?
Microsoft Office Open XML .docx, .xlsx, .pptx
Help & Manual .xml, .hmxp
HTML Help Compiler .hhc, .hhk
LaTeX .tex, .latex
DokuWiki .txt
QuarkXPress CopyFlow Gold .tag, .xtg
DocBook .xml, .dbk
Localization resource formats
Android Resource .xml
Java properties .properties
TYPO3 Localization Manager (l10nmgr) .xml
Mozilla DTD .dtd
Windows Resource .rc
WiX Localization .wxl
ResX .resx
files with a “Key=Value” structure .ini, .lng
Multilingual localization formats
XLIFF .xlf, .sdlxliff
Portable Object (PO) .po, .pot
Other formats
SubRip Subtitles .srt
SVG Images .svg

Indirectly supported formats

There are two processes that allow OmegaT to handle unsupported formats:

Support for XLIFF

The program Rainbow from the Okapi Framework can convert certain file formats to an XLIFF format that OmegaT does support. Rainbow can also create complete OmegaT project folders from such documents, for easier handling in OmegaT.[7]

Support for Gettext PO

A number of file formats can be converted to Gettext Portable Object (PO) files, which can be translated in OmegaT. The Debian program po4a can convert formats such as LaTeX, TeX and POD to Gettext PO.[8] The Translate Toolkit can convert Mozilla .properties and dtd files, CSV files, certain Qt .ts files, and certain XLIFF files to Gettext PO.

Support for Office Open XML and ODF

Microsoft Word, Excel and PowerPoint documents from version 97 to 2003 can be converted to Office Open XML (Microsoft Office 2007/2010) or ODF (OpenOffice.org) format. Conversion is not entirely lossless and may lead to loss of formatting.

Support for Trados® .ttx files

Trados® .ttx files can be treated using the Okapi TTX Filter.

Supported memory and glossary formats

Translation memories in TMX format

OmegaT's internal translation memory format is not visible to the user, but every time it autosaves the translation project, all new or updated translation units are automatically exported and added to three external TMX memories: a native OmegaT TMX, a level 1 TMX and a level 2 TMX.

Exported level 2 files include OmegaT's internal tags encapsulated in TMX tags which allows such TMX files to generate matches in TMX level 2 supporting CAT tools. Tests have been positive in Trados and SDLX.

OmegaT can import TMX files up to version 1.4b level 1 as well as level 2. Level 2 files imported in OmegaT will generate matches of the same level since OmegaT converts the TMX level 2 tags of the foreign TMX. Here again, tests have been positive with TMX files created by Transit.

Glossaries

For glossaries, OmegaT mainly uses tab-delimited plain text files in UTF-8 encoding with the .txt extension. The structure of a glossary file is extremely simple: the first column contains the source language word, the second column contains the corresponding target language words, the third column (optional) can contain anything including comments on context etc. Such glossaries can easily be created in a text editor.

Similarly structured files in standard CSV format are also supported, as well as TBX files.

Involvement by community of users

The OmegaT Project

Users are encouraged to contribute tools written by themselves in response to translators' needs which are not yet addressed by the main OmegaT program itself.[9]

Localization of OmegaT

OmegaT's user interface and documentation have been translated into about 30 languages. Volunteer translators can translate either the user interface, the "Instant Start" short tutorial, or the entire user manual (or all three components). All the language files and all translations of the user manual are included in the standard distribution of OmegaT.

User-created programs

A characteristic of the OmegaT user community is that deficiencies in OmegaT often prompt users to create macros, scripts and programs that perform those functions, although sometimes those features later become available in OmegaT itself. When OmegaT offered only paragraph segmentation, a user created OpenOffice.org macros for segmenting by sentence. When automatic leveraging of TMs in OmegaT still required TMs to be merged, a user created a TMX merging script. When OmegaT offered no spell-checking support, several users created scripts or found solutions to provide spell-checking as part of an OmegaT based translation process.[10]

Other software built on OmegaT

Autshumato translation suite

Autshumato consists of a CAT tool, an aligner, a PDF extractor, a TMX editor, and a public TM based on crawled data. The finished version will include a terminology manager and a machine translator. The CAT tool element is built upon OmegaT, and requires OpenOffice.org to run. Development is funded by the South African government's Department of Arts and Culture.[11]

Benten

Benten is an Eclipse based XLIFF editor. It uses OmegaT code to handle the TM matching process. It is partly funded by the Japanese government.[12]

Boltran

Boltran is a web-based tool that mimicks the workflow of an OmegaT project. It is built upon the source code of OmegaT and can export OmegaT projects. [13]

OmegaT+

OmegaT+ is a CAT tool that was forked from OmegaT version 1.4.5 in 2005. OmegaT+ works in a way similar to OmegaT. It has developed its own features but projects are not compatible with OmegaT.[14]

See also

References

  1. http://www.java.com/en/download/help/5000011000.xml
  2. http://www.translationtribulations.com/2010/07/results-of-june-translation-tools.html
  3. http://accurapid.com/journal/23linux.htm
  4. OmegaT's "standard" and "latest" versions
  5. The latest source files are always available from the SourceForge code repository
  6. Open Document Format for Office Applications – ISO/IEC 26300:2006 format
  7. Okapi Framework – Text Extraction utility can create an OmegaT project folder tree
  8. po4a – A conversion utility to and from the Portable Object format, perl application packaged under Debian
  9. OmegaT Getting Involved – Translators are encouraged to write their own supplementary tools
  10. http://www.omegat.org/en/resources.html
  11. Autshumato
  12. Benten
  13. Boltran
  14. OmegaT+

External links

User group