Deutsche Umlaute mit Urwigo

Aus Das Wherigo-Handbuch
Wechseln zu: Navigation, Suche

Urwigo unterstützt ja per se keine deutschen Umlaute, während andere Builder wie Earwigo dies implementieren.

Durch unterschiedliche Untersuchungen wurde ermittelt, wie man auch unter Urwigo deutsche Umlaute in einer Cartridge implementieren kann.

Grundsätzlich ist die Vorgehensweise folgende:

  • Umlaute werden in allen Texten (Message-Boxen, Dialoge, Wherigo-Objekten wie Zonen, Items, Tasks etc.)"maskiert" mit ~a für ä, ~u für ü, ~s für ß etc.
  • für Texte in Message- und Dialogboxen muß eine LUA-Funktion aufgerufen werden, die zur Laufzeit "maskierte" Umlaute in die echten Umlaute ersetzt
  • für alle Namen und Beschreibungen (.Name und .Description) von Objekten wird nach dem Start der Cartridge eine mächtige LUA-Funktion aufgerufen, die maskierte Umlaute mit den echten Umlauten ersetzt
  • Noch nicht abschliessend geklärt ist das Verhalten bei Inputs (Fragetexte, Multiple-Choice, Antworten..) und bei Kommandos der verschiedenen Player. Hier ist damit zu rechnen, dass nicht alles auf allen Playern geht, was dazu führen kann, dass man auf Umlaute in Kommandos und/oder Eingaben verzichten muss. Es gibt zumindest bei Kommandos auch Abstürze auf manchen Playern, die zwar reproduzierbar aber nicht nachvollziehbar sind.


Die folgende Cartridge enthält immer die aktuelle Version für das Ersetzen von Umlauten - im Moment ist noch Testcode enthalten, der auch der Fehlersuche dient: Datei:Umlaute.zip


Wenn ihr das in eurer Cartridge anwendet, müsst ihr:

  • den benutzerdefinierten LUA-Code bei euch reinnehmen
  • der Cartridge dieselbe Kennung vergeben, die im LUA-Code benutzt wird
  • Umlaute in der genannten Notation maskieren

Viel Spass

Player-Erfahrungen (bitte ergänzen)

  • Emulator (Urwigo): Umlaute werden nicht unterstützt, erstaunlicherweise funktionieren sie aber bei Multiple-Choice-Inputs (???), daher wird im Test-Code alles wieder zurückgewandelt, ä nach ae usw...
  • OpenWig/Whereyougo: alles was in der Cartridge implementiert wurde geht inklusive Kommandos und Inputs, auch nach dem Laden einer gespeicherten Cartridge passt alles.
  • Garmin: zuerst mal gabs nur einen Unexpected Error. Den Fehler konnte ich auf Änderung von Kommandos eingrenzen - wenn ich das auskommentiert hab, hat es auf Garmin perfekt funktioniert --> unter Garmin sind Namen von Kommandos wahrscheinlich nicht änderbar. Dagegen funktionieren auch Inputs / Multiple Choice mit Umlauten
  • I-Phone: läuft
  • Pocket-PC: Direkt nach dem Start OOPS! .... lua.605: Cannot set the Text property on a Reziprocal command

OK, das ist dasselbe Verhalten wie beim Emulator, Kommandos gehen dann beim Pocket-PC nicht und müssen ausgeschlossen werden, das kriegt man hin, nächste Version ist online bodenseepingu

Meine Werkzeuge
Namensräume
Varianten
Aktionen
Navigation
Werkzeuge