GPSBabel / gpsbabel

GPSBabel: convert, manipulate, and transfer data from GPS programs or GPS receivers. Open Source and supported on MacOS, Windows, Linux, and more. Pointy clicky GUI or a command line version...
https://www.gpsbabel.org
GNU General Public License v2.0
475 stars 126 forks source link

No cyrillic characters in garmin gpi output #43

Closed squromiv closed 4 years ago

squromiv commented 8 years ago

The problem, which is described there, is still not solved.

globalbus commented 7 years ago

It's because support for codepages was very small right now. There is only support for ASCII, UTF8 and CP1252 codepages. In older versions there is much more codepages, but they are not exists in this repository.

You need to copy codepages from here https://github.com/twpayne/gpsbabel-flytec/tree/master/cet and patch cet_util.cc to add other codepages (you're probably looking for cp1251 support). Everything else still working well with "writecodec" parameter. Only custom encoding for category string need patching in garmin_gpi.cc

Anyway, this issue is still alive? I can do fork and patch this things. I already add suport for cp1250 for my own.

robertlipe commented 7 years ago

The 'writecodec' option was added to the Garmin GPI writer in 2014 to address this for that format.

The direction of GPSBabel is away from doing our own encoding transformations. We got some mileage out of the original implementation, but our direction now is that everything uses a consistent character set (UTF) internally and that we convert on output if we must.

I think the Russian "cp1251" encoding is probably spelled "Windows-1251" according to http://doc.qt.io/qt-5/qtextcodec.html

WIthout specifics (a GPX input file, the precise command issued, the details of what's reading that GPI file, a GPI file written by something else for that same GPX file that behaves "right", the version of everything involved, etc.) this won't get very far. Debugging character set encoding issues - especially on reverse-engineered formats is a very meticulous exercise. That's likely why a one liner "it's still broken" that quoted a two year old conversation that went cold - but had the suggestion from the final post implemented anyway - didn't get much traction.

RJL

On Wed, Dec 21, 2016 at 7:56 PM, Jan Filipski notifications@github.com wrote:

It's because support for codepages was very small right now. There is only support for ASCII, UTF8 and CP1252 codepages. In older versions there is much more codepages, but they are not exists in this repository.

You need to copy codepages from here https://github.com/twpayne/ gpsbabel-flytec/tree/master/cet and patch cet_util.cc to add other codepages (you're probably looking for cp1251 support). Everything else still working well with "writecodec" parameter. Only custom encoding for category string need patching in garmin_gpi.cc

Anyway, this issue is still alive? I can do fork and patch this things. I already add suport for cp1250 for my own.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/gpsbabel/gpsbabel/issues/43#issuecomment-268698305, or mute the thread https://github.com/notifications/unsubscribe-auth/AIUh74_yfB1yH14VKMXnwuEnfDNJvz29ks5rKdjTgaJpZM4IDGxr .

globalbus commented 7 years ago

GPI format is still widely used in all Garmin devices. It's mouch more faster than GPX, small devices with slow processors have a slow XML parsing. I can make a patch, I already made it for own usage. How to participate? Fork and pull request to master?

robertlipe commented 7 years ago

Well engineered patches that are consistent with our direction (we're OUT of the encoding business) are usually welcome. This conversation is hard to follow since it's been fragmented over four years, but we're not putting CET infrastructure back in.

On Tue, Jan 17, 2017 at 2:53 PM, Jan Filipski notifications@github.com wrote:

GPI format is still widely used in all Garmin devices. It's mouch more faster than GPX, small devices with slow processors have a slow XML parsing. I can make a patch, I already made it for own usage. How to participate? Fork and pull request to master?

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/gpsbabel/gpsbabel/issues/43#issuecomment-273296169, or mute the thread https://github.com/notifications/unsubscribe-auth/AIUh7_iDU-jkCWSGbTA8NV7Fh84v7cTqks5rTSpDgaJpZM4IDGxr .

iget-master commented 7 years ago

Hi, I'm having problems to set category name using accents:

gpsbabel -i gpx -f Vinícolas.gpx -o garmin_gpi,category="Vinícolas" -F "Roteiro.gpi"

This create a category with wrong encoding on the gps: Vinï½colas

How can I fix it?