Localize applications and manuals

Welcome! This guide will help you contribute to the translation of the resources required to produce a localized version of OmegaT, which includes the application itself, the manual, and the website.

The process takes place in OmegaT itself and requires little technical knowledge beyond some familiarity with the application.

Overview of Localization Projects

OmegaT localization is managed through the OmegaT L10N Project at https://github.com/orgs/OmegaT-L10N/repositories.

  • The OmegaT interface and menus are localized into 37 languages.

  • The documentation is translated into 36 languages.

  • The OmegaT website is available in 29 languages.

Not all of the translations are up to date. Application strings that have not been translated yet are left in English. Some manuals for older versions are still relevant and therefore kept available.

Why Help Translate OmegaT?

Contributing translations to OmegaT allows you to

  • help expand access to this useful tool to people in your language community,

  • help us provide up-to-date information about OmegaT,

  • improve your understanding of OmegaT, as well as your skills as a user of the application.

Getting Started

What You Need:

  1. a GitHub Account: Create one for free at github.com.

    Keep a note of the account name, as you will have to send it to the localization team, and will also need it to work on the localization team project.

  2. a GitHub personal access token: Follow the instructions at Creating a personal access token (classic)

    This personal access token is a secure replacement for your GitHub password when you want to access GitHub from anywhere other than the web, such as accessing it from OmegaT. For security reasons, this token is temporary. GitHub will inform you when you need to create a new one.

  3. the OmegaT Developer Version: Download OmegaT from OmegaT downloads page.

The localization project contains strings related to features that are not yet included in the standard version. Working with the developer version will help you understand how those features work. You can have any number of different versions of OmegaT installed and running on your machine.

Language projects are OmegaT team projects. OmegaT downloads them, you translate them in OmegaT and OmegaT regularly sends updates back to the GitHub repository where the development team handles the rest.

Good news! You don’t need prior experience with anything but OmegaT.

How to Start:

1. Join your language project

You need to join the project for the language you want to contribute to. To do so:

  • Contact the localization manager at l10n@omegat.org or info@omegat.org with:

    • The language you want to translate.

    • Your GitHub username.

  • Wait for the invitation to your language repository on GitHub, which is where the translation files are stored and managed.

  • Accept the GitHub invitation.

You will then become a member of the GitHub repository for your chosen language.

3. Download your language project

The GitHub repository page for your language has a prominent green Code button.

  • Click on that button

  • Copy the URL that is provided (the one that starts with https)

  • Open OmegaT → Click ProjectDownload Team Project.

  • Enter the URL that you copied above (e.g., https://github.com/OmegaT-L10N/hy.git for Armenian)

  • Save the project by accepting the location on your computer suggested by OmegaT or choosing a more appropriate location.

4. Translator Login

  • When prompted, enter your GitHub username and personal access token in OmegaT.

Translation Process

  1. Open the downloaded project in OmegaT.

  2. Translate the text strings in the files (e.g., menu labels, user documentation).

  3. Save your progress.

OmegaT will regularly upload your translation to GitHub and check for updates to ensure you work on the latest files.

Testing the Translations

Testing the user interface

Before formally submitting your translations, test how they look in OmegaT.

To do so, you will need to launch OmegaT from the command line and instruct OmegaT to use the translated interface file instead of the packaged one. Check the Command line launch chapter of the manual for more information.

  1. Create Target Files From OmegaT, click ProjectCreate Target Files. Your translated files will be stored in the Target Files folder.

  2. Locate the interface localization file In the Target folder it is Bundle_xx.properties (where xx should be replaced by your language code).

  3. Test the file in OmegaT Launch OmegaT with the --resource-bundle parameter pointing at the path to the Bundle_xx.properties file found above.

Testing the documentation

The documentation is a set of DocBook files. They need to be converted to HTML to be included in the OmegaT package.

You do not need to do the conversion on your side to test the documentation. You can use an XML editor to open the files and read them.

If you want to see how the manual looks in OmegaT, you will need to compile OmegaT with the newly translated set of files. See the Building OmegaT chapter in this developer manual. The run Gradle task should be enough for that purpose. If you just want to build the HTML files, use the manualHtmlXX Gradle task.

Finishing and Submitting Translations

  1. Write to the localization manager when your translations are complete. Include the names of the files you’ve translated.

  2. If partial translations (e.g., incomplete files) are not allowed for a release, wait until your files are finished before submission.

Note: Occasionally, the localization manager may connect you with other team members to coordinate efforts and minimize duplication.

License Information

OmegaT and all its localization files are distributed under the GPL v3 License. This ensures that the software and translations remain free and open for everyone. If at any point you have questions, problems, or need guidance, don’t hesitate to contact the localization manager or visit the OmegaT community forums.

Happy translating! 😊