Internationalization

 To add new language
  1. To translate OpenCPN into any language, download the opencpn.pot file here.
  2. Next rename this file using the ISO code for your language and changing the extension .pot to .po, e.g. opencpn_it_IT.po for Italian.
  3. Use Poedit, or edit the file manually by entering values for the translated terms into the Msgstr " " fields.
  4. Test the file in OpenCPN by selecting the appropriate language. On Linux, you may need to install further language libraries (locales) to be able to select all languages. Here's how to do so on Ubuntu based systems:
#To list already installed locales
locale -a
#To see a list of supported langs
less /usr/share/i18n/SUPPORTED
#To install a new locale
sudo locale-gen de_DE.UTF-8 #This is an example for German, Unicode...
#To update the list in the system
sudo update-locale

To improve or extend any existing translation (local)
  1. To improve or extend any existing translation, download the respective .po file, e.g. opencpn_it_IT.po for Italian.
  2. Use Poedit, or edit the file manually by entering values for the translated terms into the Msgstr " " fields.
  3. Test the file in OpenCPN by selecting the appropriate language. On Linux, you may need to install further language libraries to be able to select all languages.

To improve or extend (via Crowdin)



With version 3.3.1824 we would like to change the way OpenCPN's translations are managed.

There are a couple of reasons behind this decision:
  • Some of the translations lack considerably behind and simply miss a maintainer
  • A lot of the plug-ins lack the translations completely or almost completely
  • It is hard for more people to cooperate on a single language
  • It needs effort from people who would like to contribute their time and language skills to install Poedit, learn how to use it and get the current PO/POT files, so the less geeky types may feel that it's too much for them
  • It gets a bit messy at times to manage all the translations submitted through different channels and the time can be better spent on writing new code and fixing bugs

I have evaluated a couple of ways to improve the situation over the past weeks and ended up creating a project on Crowdin (Many thanks to these guys for generously supporting open source projects) to maintain the localizations. From now on all that you need to help us keep the translations up to date is a web browser and a bit of time.

Please join us by signing up at https://crowdin.net/project/opencpn/invite