activityworkshop / GpsPrune

GpsPrune is a map-based application for viewing, editing and converting coordinate data from GPS systems.
GNU General Public License v2.0
67 stars 22 forks source link

macOS region/locale/preferred language setting affecting timestamps in GPX export #79

Closed sanketgarade closed 11 months ago

sanketgarade commented 1 year ago

In the below screenshot you can see that my macos is set to region = India and preferred language = Marathi, but numbering system is set to 123 instead of १२३.

On the right side are 3 gpx files -

In the bottom one, the issue is that the timestamps <time> change from english numbers (123) to Devanagari numbers (१२३) and hence the GPX file become unreadable by other software.

Could you please fix this such that all timestamps continue to be in English (123 system)?

Screenshot 2023-06-28 at 8 24 08 AM

activityworkshop commented 1 year ago

Thanks for the bug report. It looks like the java timestamp formatting is actually doing too good a job of localizing the formatting according to your system settings. I haven't seen this issue before so thanks for pointing it out.

I guess that the fix will just be to specify a Locale to use for the formatting (and I guess that using a "US" Locale would be sufficient) instead of just letting it use the default system Locale. This seems pretty minor so it can come easily with version 23.1. It would be great if you could test this for me when it's ready.

sanketgarade commented 1 year ago

Thanks. Yes sure, I can help test it.

activityworkshop commented 1 year ago

I'm curious what happens with altitudes, is the same problem there too? If a GPX file has a point with an altitude of 123 metres, and you edit this altitude (either with the "edit point" function or with the "add altitude offset" function), does the new altitude get written with 123 numbers or Devanagari numbers?

sanketgarade commented 1 year ago

changed only the altitude via the Edit point tool and (in the exported gpx file) the altitude remains in 123 format while the time changes to Devanagari format.

Snaps and exported gpx text for reference -

before image

after image

<trkpt lat="18.601697999999995" lon="73.70981799999997"><ele>699.811</ele><time>2023-06-17T00:49:35Z</time></trkpt>
<trkpt lat="18.601715999999996" lon="73.70976799999997"><ele>710</ele><time>२०२३-०६-१७T००:४९:४२Z</time></trkpt>
<trkpt lat="18.601741999999994" lon="73.70971699999997"><ele>700.727</ele><time>2023-06-17T00:49:48Z</time></trkpt>
activityworkshop commented 11 months ago

Could you please try with this jar? https://gpsprune.activityworkshop.net/gpsprune_23.1_test.jar Thanks!

sanketgarade commented 11 months ago

works as expected! thanks for the fix 😃

And a good thing about this is that display in the GUI remains in Devanagari numerals but the raw data is in Latin numerals.

activityworkshop commented 11 months ago

Yes, exactly. Thanks for testing, I'll get this all wrapped up into a new 23.1.

activityworkshop commented 11 months ago

Fixed with 23.1