Skip to content

Translations

David Sangrey edited this page Jun 3, 2024 · 3 revisions

Translations

The application supports translations for most of the text you will see in its UI.

The translations process is all handled on OneSkyApp, in the EDMarketConnector Miscellaneous project. If you'd like to contribute then please sign in or make an account there. If you're at all likely to interact here on GitHub then it's probably best to just sign into OneSkyApp using your GitHub account.

See Issue: Translations welcome for prior discussion about how translations are performed and handled.

Updating Translations

We do not accept GitHub Pull Requests for any changes to translations. This would then require us to ensure no-one else had suggested different un-merged edits on OneSkyApp, reconcile the differences and then upload your new file. It's much easier to just handle it all on OneSkyApp.

By default you can only add to, or suggestion changes for, one of the already supported languages.

Some of the phrases might be in 'Finalized' state which means you won't be able to edit them. If you're certain there's an error in such a phrase then please open an issue to get access to correct it.

Translating a New Language

If you feel able to contribute a full translation for an additional language then please open an issue to request the language be added.

Guidelines

There are a number of things about the phrases on OneSkyApp that might seem confusing at first.

  1. The 'Language name' phrase should have 'English' changed to the word for the target language in that language. This should not be the word for 'English' in the target language. e.g. for the German translation this is "Deutsch" not "Englisch".

  2. Any text of the form {THING}, i.e. curly braces around a word, should be left as is in the translation. These words are not translated, but have the fixed text substituted in by the application.

    As part of this {CR} becomes a newline, i.e. text continues on the next line.

    An example of this is the phrase About {APP} which should have 'About' translated, but keep the '{APP}' intact as it would be replaced with the text 'E:D Market Connector' to make the entire phrase "About E:D Market Connector" in the original English.

  3. In addition to the previous point there's at least one instance of the string %H:%M:%S which should be left as-is, not translated. The comment on the relevant phrase calls this out, so in general pay attention to those comments.

  4. Any phrase that matches an in-game name should be left as it shows in-game. If the game has a translation for your language then do use the in-game translation for this. Examples include:

    1. The name of any rank category, e.g. "Combat", "CQC", "Powerplay".
    2. Combat Ranks, e.g. "Harmless".
    3. Trade Ranks.
    4. Exploration Ranks.
    5. CQC Ranks.
    6. Ranks with the Superpowers (Empire and Federation).

    If we're on the ball we'll have Finalized these phrases when we added the language.

Testing Changes

Whether it be for a new language, an additional phrase in an existing translation, or changing a translation the only way to test the changes is to obtain the corresponding <lang>.strings file and copy it into the L10n\ folder in your install of EDMC.

If you are comfortable with running from source then that is probably easiest. Just replace the appropriate file.

If you want to test with the currently installed application then you'll need to find its install folder (default C:\Program Files x(86)\EDMarketConnector) and replace the appropriate file in the L10n sub-folder.

If your changes have been commited to GitHub then you should be able to find the updated strings file in the L10n folder of the develop branch. Click into the appropriate file then:

  1. Right click Raw button top-right of the file contents.
  2. Save Link As... from the context menu.

NB: This is correct for Firefox, the menu entry and method might vary in other browsers. If all else fails click into Raw then select all the text and paste into a file.

You'll need to restart the application to be sure it's entirely picked up the new translations.

If your changes are not yet in the develop branch then ask a maintainer to create a new, temporary, branch with your changes so you can access them from there.