Eintragsdetails ansehen

IDProjektKategorieSichtbarkeitZuletzt aktualisiert
0002262EresseaGeneralöffentlich2017-12-05 19:49
ReporterEnno Bearbeitung durchEnno  
PrioritätnormalSchweregradkleinerer FehlerReproduzierbarnicht getestet
Status geschlossenLösungaufgeschoben 
Produktversion3.10.2 
Zusammenfassung0002262: Umlautproblem: Wütende Ents
Beschreibung

Wir haben einige Ents (z.B. Einheit er2a) mit kaputtem Namen. \374 ist kein ü. name[1] ist -4.

Die Ents werden in ents.lua erzeugt, und bekommen dort den Namen "Wütende Ents" zugewiesen, mit Umlaut im Lua-Skript. Ich bin nicht sicher, in welchem Zeichensatz das geschieht? Umlaute im Source sind doof, und Deutsch im Source ist eh nicht gewollt. Das gehört in eine vom Encoding her gesicherte Konfiguration, glaube ich?

Schritte zur Reproduktion

unicode_utf8_trim("W\374tende Ents") gibt einen Fehlercode zurück, scheint aber den Fehler nicht zu beheben. Da sollte zumindest ein Fragezeichen statt des kaputten Buchstabens rein.

TagsKeine Tags zugeordnet.
Parteiii
SpielE2
Report1003

Eintrags-Beziehungen

verwandt mit 0002245 geschlossenEnno Non-printable characters 

Notizen / Dateien

Enno

Enno

2016-12-04 18:29

Administrator   ~0006847

Ich glaube, meine handgestrickten UTF-8 Routinen sind dem Problem der kaputten Strings einfach nicht mehr gewachsen, es ist an der Zeit, etwas richtiges zu benutzen.

Enno

Enno

2016-12-11 09:29

Administrator   ~0006848

Quick-Fix: Auf Vorschlag von @Xolgrim heissen neu entstandene Einheiten jetzt "Rasende Ents", damit ist der Umlaut aus dem Lua-Skript raus, und der Bug betrifft nur bestehende Einheiten.

Enno

Enno

2016-12-11 16:02

Administrator   ~0006861

utf8proc ist nicht sehr portabel (handgestrickter bool type), aber ich habe einen anderen Decoder gefunden, den ich evtl. klauen kann:

http://bjoern.hoehrmann.de/utf-8/decoder/dfa/

Enno

Enno

2016-12-18 17:00

Administrator   ~0006879

Noch eine UTF8-Library (aus der Liste von stb): https://github.com/sheredom/utf8.h

Enno

Enno

2017-01-15 17:07

Administrator   ~0006899

Ich habe im Datenfile 1009 einfach mal allen Ent-Einheiten neue Namen gegeben. Der Code hat immer noch Fehler, aber ohne neue Unicode-Funktionen ist da nichts zu machen.

Eintrags-Historie

Änderungsdatum Benutzername Feld Änderung
2016-12-04 12:24 Enno Neuer Eintrag
2016-12-04 12:24 Enno Status neu => zugewiesen
2016-12-04 12:24 Enno Bearbeitung durch => Enno
2016-12-04 18:29 Enno Notiz hinzugefügt: 0006847
2016-12-05 10:15 Enno Beziehung hinzugefügt verwandt mit 0002245
2016-12-11 09:29 Enno Notiz hinzugefügt: 0006848
2016-12-11 16:02 Enno Notiz hinzugefügt: 0006861
2016-12-18 17:00 Enno Notiz hinzugefügt: 0006879
2017-01-15 17:07 Enno Notiz hinzugefügt: 0006899
2017-01-15 17:07 Enno Status zugewiesen => erledigt
2017-01-15 17:07 Enno Lösung offen => aufgeschoben
2017-12-05 19:49 Enno Status erledigt => geschlossen