Skip to content

How to translate Open GPX Tracker into my language

merlos edited this page May 21, 2022 · 5 revisions

Since v1.7.0, thanks to @nitricware Open GPX tracker supports internationalization (i18n), that is, the interface is translated into different languages.

The current list of languages and the last time they were translated:

Language Version First translated by Maintained by
English 1.7.2 (latest) default language development team
Chinese 1.7.2 (latest) @vincentneo @vincentneo
Finnish 1.7.2 (latest) @Phiilman
French 1.7.2 (latest) @m-hefti
German 1.7.2 (latest) @nitricware @nitricware
Russian 1.7.2 (latest) @NeoFusion
Spanish 1.7.2 (latest) @merlos @merlos
Ukrainian 1.7.2 (latest) @onix
Italian 1.7.2 (latest) Paolo Fehlmann

If the application is not translated into your language, feel free to help us! It does not require any technical skill, only a couple of hours of your time, and you just need a simple text editor such as Notepad (Windows) or TextEdit (OSX).

Process to translate the application

  1. Download the files:

    Additionally, you can translate the description we use in the App Store. It will help people to know information about the app before downloading it.

  2. Open each file with a text editor and translate the text into your language. Files have the following format:

    "NO_LOCATION" = "Not getting location";
    "START_TRACKING" = "Start Tracking";
    "PAUSE" = "Pause";
    "RESUME" = "Resume";
    "SAVE" = "Save";
    "RESET" = "Reset";
    

    You have to translate the text after the =. For example the translated version in Spanish would be:

    "NO_LOCATION" = "Localización desconocida";
    "START_TRACKING" = "Comenzar";
    "PAUSE" = "Pausar";
    "RESUME" = "Reanudar";
    "SAVE" = "Guardar";
    "RESET" = "Reiniciar";
    

    DO NOT REMOVE THE QUOTES surounding the texts and keep each translation in one line

    The file Interface.strings may look a bit weird. This is because it is generated automatically:

    /* Class = "WKInterfaceLabel"; text = "signal"; ObjectID = "036-aK-7ie"; */
    "036-aK-7ie.text" = "signal";
    
    /* Class = "WKInterfaceLabel"; text = "File Name"; ObjectID = "19n-8m-sC5"; */
    "19n-8m-sC5.text" = "File Name";
    

    Again, you have to translate the text after the =, but only in the lines that do not start with /*, that is "036-aK-7ie.text" = "signal"; and "19n-8m-sC5.text" = "File Name";. The Spanish translation of example above is:

    ...
    /* Class = "WKInterfaceLabel"; text = "signal"; ObjectID = "036-aK-7ie"; */
    "036-aK-7ie.text" = "señal";
    
    /* Class = "WKInterfaceLabel"; text = "File Name"; ObjectID = "19n-8m-sC5"; */
    "19n-8m-sC5.text" = "Nombre del archivo";
    
  3. Once all strings in all files are translated open a new issue in github issues page with the title "Translation into "language" and attach the modified files with your translations. Note that you will need a GitHub account, but it is free.

  4. Additionally, in your submissions, please mention if you want to maintain the translations. The app changes from time to time, if the translation into your language is not maintained, users will see some texts in English.

Recommendations for translating files

  1. Try to find the text you are translating in the app. While translating the texts, keep the app open and try to find where the text appears. Sometimes, depending on the context you may use one word or another.

  2. Be consistent, that is always use the same translation for the same word. For example, if you translated "Stop" with the word "X", then if "stop" appears again in other sentence, use the same "X" translation. By using the same word makes the user to understand it better.

When will the the translation available in the app?

In the source code will be relatively fast (1 week or so) but in the app store it may take a little bit more. We typically publish a new version every 4 to 6 months.

I have doubts, how can I solve them?

If you have any doubt about the process, go to the issues page and create a New issue (green button on the left) with the title "Translation into "language" and your question.