• Willkommen im Geoclub - dem größten deutschsprachigen Geocaching-Forum. Registriere dich kostenlos, um alle Inhalte zu sehen und neue Beiträge zu erstellen.

Urwigo, Garmin und die Umlaute

Charlenni

Geomaster
Heute war hier nicht so das Traumwetter. Deshalb fiel die Wanderung mit 7 km etwas kürzer aus, dafür mehr am Computer gesessen. Hier das Ergebnis :)

Auf Wunsch einiger eine Bibliothek erstellt, die es erlaubt, Umlaute in Urwigo für den Garmin zu verwenden. Einfach das komplette Lua Author Script kopieren, Texte mit Umlauten anlegen und dann die UTF-8 Version der GWZ-Datei erstellen. Diese dann bei http://www.wherigo.com oder http://www.wherigofoundation.com kompilieren lassen. Fertig sind die Umlaute.

Was geht:
Eigentlich alles :). Namen, Beschreibungen, Eingaben und Kommandos. Auch die Rückgaben sind wieder richtig in UTF-8 und können ganz normal verglichen werden. Auch das Speichern sollte ohne Probleme gehen.

Da die Bibliothek nur auf Garmins initialisiert wird, sollte es keine Probleme mit den anderen Playern geben.

Was nicht geht:
Wenn man versucht über z.B. Item.Name wieder an den Namen des Items zu kommen, dann bekommt man den umgewandelten String zurück. In diesem Fall muss man Item:rawget("Name") verwenden, dann bekommt man den originalen UTF-8 String zurück.

Wiederholtes verwenden der selben MessageBox geht auch nicht. Dürfte aber sicher keiner benützen ;)

Was sonst noch enthalten ist:
Da ich schon am Garmin dran war, habe ich auch gleich noch Workarounds für folgende Garmin-Probleme eingebaut:
- ShowScreen Bug: Absturz bei ShowScreen auf Details
- Input Bug: Absturz bei abgebrochenen Inputs
- Timer Bug: Problem, dass Timer nicht in OnTick beendet werden können

Bedienung:
Einfach das Lua Author Script aus der beiliegenden Urwigo-Demo-Cartridge in die eigene Cartridge kopieren. Dann in OnStart den Lua benutzerdefinierten Code "Garmin.Init()" aufrufen. Das war es auch schon. Und dann, wie schon gesagt, beim Erzeugen der GWZ Datei die UTF-8 Option anwählen. Kompiliert wird über die Webseite (da Urwigo nur eine Kompilier-Funktion für normale GWZ Dateien anbietet).

Und am Rande: Umlaute im Emulator
Da ich sowieso gerade in der Thematik war, habe ich auch noch den Emulator so "umgebaut", dass er durchgängig UTF-8 (wie WhereYouGo, iPhone und WF.Player) kann. Nachteil: man muss eine DLL austauschen und man kann ihn nicht mehr direkt aus Urwigo starten. Ich habe aber mal mit dem Autor Kontakt aufgenommen, ob er uns eine entsprechende Start-Funktion einbauen kann. Sollte kein großer Aufwand sein. Damit kann man dort dann auch gleich die Umlaute sehen.

Auch hier wäre ich über Rückmeldungen dankbar.
 

Anhänge

  • GarminUTF8.zip
    20,6 KB · Aufrufe: 60
OP
C

Charlenni

Geomaster
Äh, so am Morgen nochmal durchgelesen, habe ich prompt eine Ungenauigkeit entdeckt. Man kann natürlich den angepassten Emulator weiterhin direkt aus Urwigo starten. Allerdings hat man dann keine Umlaute, da Urwigo diese in der bisherigen Weise herausfiltert. Erst wenn die temporäre GWC Datei für den Emulator aus der UTF-8 GWZ Datei erzeugt wird, dann kann man auch Umlaute im Emulator direkt in Urwigo haben.
 
OP
C

Charlenni

Geomaster
Das erste Update. Einige Fehler behoben.

Dabei habe ich noch ein Problem entdeckt: schaltet man in Urwigo "Encrypt answers" ein, dann klappt es bei der Überprüfung von Antworten bei der Eingabe nicht mehr mit Umlauten. Vermutlich ein Problem bei der erzeugung der Hash-Werte für die Antwort beim Erstellen der GWZ-Datei. "Obfuscate string" funktioniert aber.

Zusätzlich habe ich noch einige Items eingebaut, damit man die Garmin Workarounds testen kann.

Um das Testen ganz einfach zu machen, ist in der Zip-Datei wieder der Urwigo Quellcode, die GWZ-Datei und eine GWC-Datei für Garmins, mit der man gleich loslegen kann. Ganz einfach.

Ich würde mich wirklich über Rückmeldungen freuen. Es wird doch da draußen noch einige Leute geben, die Garmins benutzen :roll:
 

Anhänge

  • GarminUTF8-0.9.2.zip
    24,5 KB · Aufrufe: 46
OP
C

Charlenni

Geomaster
Bezüglich der "Encrypt answers" gibt es Neuigkeiten: Yourself hat mir gestern versprochen, dass der Fehler in der nächsten Version behoben ist. Damit wäre das dann auch geklärt.

Zusätzlich wird er vermutlich meine Anpassungen bezüglich des Urwigo-Emulators und UTF-8 in der nächsten Version einbauen, so dass auch hier volle UTF-8 Unterstützung geben ist. D.h. es können normal Umlaute verwendet werden und der über "Start" gestartete Emulator wird diese auch richtig anzeigen. Damit sind Umlaute im Emulator, iPhone und WhereYouGo möglich. Fehlt also nur noch der Garmin. Deshalb hat Yourself nachgefragt, ob die Bibliothek denn in Ordnung wäre und so übernommen werden könnte. Hier habe ich noch kein klares Statement abgegeben, da ich noch keinerlei Rückmeldung erhalten habe. Es wäre also nett, wenn sich die Leute, die sich die Democartridge heruntergeladen haben, kurz melden könnten, ob sie denn irgendwelche Probleme hatten. Das wäre sehr nett.
 
OP
C

Charlenni

Geomaster
So, und jetzt noch eine neue Version 0.9.3.

Änderungen von 0.9.2 zu 0.9.3:
- Es muss nichts mehr aufgerufen werden. Die Bibliothek ruft sich selbst beim Start auf.
- Es werden auch Objekte angepasst, die von "Hand" erzeugt werden. Wird also ein neues Object, z.B. ein Item mit "newItem = Wherigo.ZItem(cartridge)" angelegt, so hat dieses auch gleich die entsprechende Funktionalität.
- Alles ins Englische übersetzt, damit Yourself auch testen kann :)

Die ZIP-Datei enthält auch gleich die kompilierte Version, damit man diese direkt aufs Garmin (oder auch auf die anderen Geräte) kopieren kann.

Wie gesagt, für Rückmeldungen bin ich dankbar.
 

Anhänge

  • GarminUTF8-0.9.3.zip
    26,1 KB · Aufrufe: 59

keogarl

Geocacher
so, habs jetzt mal in mein momentanes Projekt eingebaut. Das ist zwar noch lange nicht fertig, aber zum Testen reichts.

Was soll ich sagen. es funzt einwandfrei auf meinem Samsung S4, Lollipop mit aktueller WYG.
Messages, Items, Input-choices, Buttons, alles süper :^^:

Das Oregon ist demnächst auch noch dran, da muss ich allerdings vor die Tür, weils ja kein fakeGPS hat :/

Danke für deine Mühen, wenns irgendwo hakelt geb ich Bescheid, wenn die Kiste online geht, gibts noch mehr Tester. (in meine laufenden WIGs wollt ichs jetzt nicht einbauen..)
k.
 
OP
C

Charlenni

Geomaster
Vielen Dank für die Rückmeldung!

Wenn Yourself die neue Urwigo Version freigibt, dann geht das mit dem Testen auch leichter. Dann kann auch der Emulator Umlaute und man kann gleich über eine Funktionstaste die UTF-8 Version starten.
 

rince2

Geocacher
Hallo!

Ich bekomme es leider nicht hin, eine Cartridge mit deutschen Umlauten zu erstellen - Hilfe!

Ich nutze Urwigo, Version 1.21.5528.18461. Auf dem iPhone Wherigo Version v324.

Von GIT habe ich Charlennis Garmin-UTF8 Bibliothek (https://github.com/WFoundation/WF.Tools/tree/master/Garmin-UTF8) und auch eingebunden. Auch die dort vorhanden Demo Cartridge habe ich versucht. Wenn ich es richtig verstanden habe, ist die Lib nur notwendig, damit die Umlaute auch auf Garmins laufen.

Ich sehe aber auch keine Umlaute auf iPhone und/oder (Urwigo-)Emulator - müsste das dort nicht "out-of-the-box" gehen?

Vermutlich verstehe ich etwas Grundsätzliches nicht...

In Urwigo kann ich das gwz File explizit als "default encoding" oder als "UTF8" bauen. Default ist "default encoding".
Was passiert bei "Compile Cartridge" - nimmt Urwigo das gerade erstellte gwz File als Input?
Was passiert bei "Run" genau? Kompiliert er für PocketPC das gwz File in gwc?
Wenn ich "Use online compiler" setze, kompiliert er ja ein gwz online nach gwc - für PocketPC?
Ist der online Compiler notwendig für die Umlaute?
Urwigo hat den Emulator ja eingebaut, kann ich dort auch die Umlaute testen? Wenn ja wie?
Hat das Target "All devices" einen Sinn?

Danke für erhellendes Feedback!

Rince2
 
OP
C

Charlenni

Geomaster
Dann versuche ich mal die Sache zu analysieren.

Wichtig bei der Bibliothek ist es, dass du die UTF-8 GWZ Datei erzeugtes. Ansonsten ersetzt Urwigo alle Umlaute durch einfache Zeichen. Diese Datei kann dann nur mit einem der angegebenen Kompiler übersetzt werden. Bisher kann Urwigo nur GWC Dateien erzeugen, bei denen vorher die Umlaute entfernt wurden. Auch der Emulator kann noch keine Umlaute. Ich habe diesen zwar schon angepasst, aber Yourself hatte wohl noch keine Zeit für eine neue Version. Ich hake nochmal nach.

Also UTF-8 GWZ Datei erzeugen und mit einem Online-Kompiler in eine GWC-Datei übersetzen. Diese kann dann auf WhereYouGo, iPhone und Garmin Umlaute. Nicht auf dem unmodifizierten Emulator.

Ich hoffe, dass es jetzt etwas klarer ist.
 

rince2

Geocacher
Hallo Charlenni,

danke für die Antwort. Über die Webseite kompiliertes UTF-8 GWZ funktioniert. Mir war nicht klar, dass Urwigo bei "Use online compiler" immer die Standard Encoding nimmt.

Aber es wäre natürlich schon schön, wenn man den Urwigo internen Emulator zum Testen nutzen könnte - wenn Du etwas Neues von Yourself hörst, bin ich sicher Du postes etwas hier.

Nochmals danke und schönen Gruß,
Rince2
 
OP
C

Charlenni

Geomaster
So, Yourself hat in seinem engen Terminkalender Zeit gefunden, um die neue Version online zu stellen.

Wie updaten?
Urwigo starten, beenden und wieder starten.

Was ist neu?
Man kann jetzt unter "Build"/"Erstellen" wählen, ob man den Emulator mit einer normalen oder einer UTF-8 Cartridge starten möchte. Damit kann dann auch der Emulator Umlaute. Für Garmins bitte noch die oben erwähnte Bibliothek einbauen. Dann klappt es auch dort mit den Umlauten. Zum Hochladen natürlich die GWZ-Datei mit UTF-8 erstellen. Diese dann ganz normal bei http://www.wherigo.com oder http://www.wherigofoundation.com hochladen.

Zum Testen habe ich mal meine Garmin-UTF-8 Testdatei angehängt.

Ich werde in nächster Zeit noch einen Workaround für den Emulator veröffentlichen. Mit diesem werden dann auch dort verschiedene Bugs behoben.
 

Anhänge

  • GarminUTF8Demo.zip
    7,2 KB · Aufrufe: 49

Max Muldental

Geonewbie
Hallo Charlenni,

ich wollte einfach nur mal Danke sagen für die Mühe die du dir hier machst.

Als ich vor einem Jahr meinen ersten wherigo mit urwigo gebastelt habe, was habe ich sie da verflucht, die Umlaute.
Hat damals ewig gedauert bis das alles so lief wie ich wollte.
Das ist ja jetzt alles so viel einfacher, da werd ich mich doch demnächst glatt mal an meinen zweiten wherigo wagen.

MfG der Max.
 
Oben