Resources

Localization programs

You need a localization program to translate the Gettext files (pot and po-ending files). Below are a few locally installable, open source-based programs.

  • Gtranslator is an enhanced gettext po file editor for the GNOME desktop environment. It handles all forms of gettext po files and includes very useful features like find/replace, translation memory, different translator profiles, messages table (for having an overview of the translations/messages in the po file), easy navigation and editing of translation messages and comments of the translation where accurate.
  • Lokalize is the localization tool for KDE software and other free and open source software. It is also a general computer-aided translation system (CAT) with which you can translate OpenDocument files (*.odt). Translate-Toolkit is used internally to extract text for translation from .odt to .xliff files and to merge translation back into .odt file.
  • Poedit is a shareware and cross-platform gettext catalog (.po file) editor to aid in the process of language localisation.

Translation platforms

There are several translation services online that lower the threshold for translators to participate in translation work compared to using a localization program and version control, and translation platforms also provide developers with automated workflows.

Open translation platforms

Open translation platforms are, in principle, available for free open source projects.

Proprietary translation platforms

Closed translation platforms are proprietary, and their use can even cost for open source projects, depending on, for example, the number of messages to be translated, languages and the number of translators.

Tools and scripts

Below are some tools that make the translation work easier to find typos, among other things.

Original site

The original website of Lokalisointi.org has been lost for years, but it is still available through the archive.org service.

Mailing lists

Different translation teams have their own email lists for communication. For more information about previous mailing lists, see the wiki.

Publications

An investigation into the state of Finnish and Swedish translations and other matters related to localisation in Finland. This material is available only in Finnish.

Instructions for translation and quality control

There are a lot of translation instructions and vocabularies done on a project-by-project basis. One translation instruction is on the Ubuntu Finnish wiki.

Jukka Korpela has produced a lot of material related to Finnish language and quality control. This is recommended reading for translators.

Proofreading services

  • Oikofix - Oikofix is a free proofreading service that allows you to check texts written in Finnish, English, and Northern Sámi for spelling errors. Oikofix is based on the Voikko software.

CAT Software (Computer Assisted Translation)

  • OmegaT - OmegaT is a translation memory application, a tool intended for professional translators. It does not translate for you! (Software that does this is called "machine translation". OmegaT can interface to some machine translation programs or Internet services)
  • Matecat - Matecat is a free and open source online CAT tool. It's free for translation companies, translators and enterprise users.

MT Engines (Machine Translation)

  • DeepL Translator - DeepL Translator is a neural machine translation service. It initially offered translations between seven European languages and has since gradually expanded to support 37 languages.
  • LibreTranslate - Free and Open Source Machine Translation API. Its translation engine is powered by the open source Argos Translate library.

Automation tools

  • Mojito - An open source automation platform that enables continuous localization for software development
  • Okapi Framework - The Okapi Framework is a cross-platform and free open-source set of components and applications that offer extensive support for localizing and translating documentation and software.

Development/internationalization (i18n)

Internationalization with GNU gettext

GNU gettext is a library for internationalizing and localizing applications. It is a popular method for making software translatable. When using gettext, translatable strings in the source code are marked with the gettext() function (or its shorthand _()), and a .pot file containing the original strings is generated from the source code.

Translators use the .pot file as a basis for creating translations into different languages. Eventually, a language-specific .po file containing the translations is created from the .pot file, typically stored in a version control system. As part of the build process, this .po file is compiled into a binary .mo file and saved in a directory where the application looks for translation files. During runtime, the application replaces the original strings with the translations found in the .mo file.

Internationalization with Qt

Internationalization with Qt - Qt provides powerful tools and documentation for translation work. Translatable strings are marked in the source code using the tr() function. Translations are stored in .ts files, which are then compiled into binary .qm files. During the execution of a Qt application, translations are loaded from these .qm files. The Qt Linguist tool is used for translating Qt-based software.

Internationalization with i18next

i18next is a popular library used for internationalizing JavaScript and TypeScript applications. The translation function t('key') marks a string for translation. The finalized translation file is typically a clear-text (human-readable) .json file.