Monthly Archives: August 2013

Switching translation in MyTrails

I realized I hadn’t written an post about this, so if you didn’t read the release notes, you might have missed this feature, introduced in MyTrails 1.3.17: the ability to switch MyTrails to a different language.

You’ll find this at the bottom of the Appearance preferences, and you can use it to force MyTrails to English if the default translation for your language is lacking, or to force a different language than the system language.

2013-08-28 08.48.06

The translator for the currently-used language is credited there as well.

New translation tool

Notice: the translation server is currently unavailable…

For many months I have been using a wobbly system for translation: a combination of the impressive android2po, which transforms Android string files (in xml format) to the ubiquitous .po format, and a translation server based on Drupal Localization server, which is barely maintained, and missing many features.

I had looked at several hosted services such as MyGengo String (promising, but flawed and now defunct), Crowdin (started out ugly and free, now less-ugly, full-featured but expensive), Get Localization (very nice and free, but never fixed the fatal flaws in their Android support) and took a quick look at other very expensive commercial solutions…

Finally, I settled on using Weblate. It’s pretty, it’s fast, it’s full-featured, its developer is friendly and responsive, it has good documentation, it’s very easy to integrate (if you’re using git for source control and you have your own server) and it fully supports Android. Because it directly uses git, I can keep an eye on all translation changes easily and fix anything that is amiss.

Instructions for translators

Whether you’ve already been contributing to MyTrails translations on the old server or whether you’re a new contributor, please connect to the new server and register (sorry, I haven’t been able to migrate accounts across). You will receive an activation email (if you don’t please contact me).

Once your account is activated, please let me know so I can accept you as part of the Translators group. If your language is not yet present in the interface, please specify it, so I can activate it.

If you don’t have a Save button on the translation page (just a Suggest button), you haven’t yet been accepted as a translator; you can start translating, but you’ll have to later approve each translation.

You can edit your profile to specify the language(s) you’re interested in translating (this adds shortcuts in the Weblate menus). You should also subscribe to Notifications on new strings to translate and Notification on new suggestion so you can stay on top of your translations.

Once you’re ready to start translating, navigate to your language and the relevant MyTrails subproject (at the moment, latest is the current active project) and click the Translate button to start translating untranslated strings.

1.3 @ Weblate 2013-08-27 17-50-21

In the translation interface, you will see the English version of the string (and of any other Secondary language you selected in your profile). Edit the translation and click Save (the next untranslated string will be loaded automatically).

You can use Google Translate in the Machine translation tab as a starting point by clicking the Copy button next to it.

1.3 - Italian @ Weblate 2013-08-27 17-56-02

In some cases, it may be useful to check the Nearby messages tab to get a bit of context. In some cases the Comments or Source tabs will have some guidance.

For more information, please see the full Weblate manual.

Suggesting translations

If you are not an official translator you can still easily suggest a translation, even without creating an account, if you find a typo or awkward translation. Simply navigate to the language you’re interested in, and in the Search tab, type the word as it is misspelled in the application, which will lead you to the offending entry.

1.3 - French @ Weblate 2013-08-28 09-06-08

There, you can simply fix the translation and click the Suggest button. The official translator will integrate your suggestion if they agree with it.

1.3 - Français @ Weblate 2013-08-28 09-08-27


Thank you all for your contributions!

Translation status

MyTrails 2: Stats

One of the major new features in MyTrails 2.0 (not yet released) is support for statistics.

In MyTrails, statistics are fully dynamic and they work with multiple tracks, so if you have multiple tracks loaded, you will be able to compare the stats for each of the tracks that supports that statistic. The first three statistics will be shown in the HUD.

Here’s the list of stats we’re currently planning to support:

  • Target
    • Heading to target
    • Distance to target
    • Time to target
    • Target altitude
    • Altitude Δ to target
  • Altitude
    • Min altitude
    • Max altitude
    • Current alt.
    • Altitude Δ
    • Cumulative climb
    • Cumulative descent
  • Speed
    • Current speed
    • Recent speed
    • Max speed
    • Average speed
  • Speed (computed)
    • Avg. speed (total)
    • Avg. speed (recording)
    • Avg. speed (moving)
    • Current speed (computed)
    • Recent speed (computed)
    • Max speed (computed)
  • Duration
    • Total duration
    • Recording duration
    • Moving duration
    • Start time
    • Current time
  • Distance
    • Distance
  • Vertical speed
    • Current vertical speed
    • Max vertical speed (+)
    • Max vertical speed (-)
    • Avg vertical speed
  • Slope
    • Current slope</string>
    • Maximum slope (+)
    • Maximum slope (-)
    • Average slope
  • Track points
    • # track points
    • # track waypoints
    • # pauses
  • GPS and compass
    • GPS Accuracy (horizontal)
    • GPS Accuracy (vertical)
    • GPS # satellites
    • Compass bearing
    • GPS bearing

If you think this list is missing something, please don’t hesitate to point it out in the comments!

A few screenshots…