Seite 1 von 1

GTK und Unicode

Verfasst: 25.08.2014 11:52
von Makke
Hallo zusammen,

ich habe jetzt schon oft bemerkt, dass GTK Befehle sofern sie einen String (nicht Pointer) benötigen diesen im ASCII Format haben wollen. Unter Linux ist aber Unicode eigentlich Standart, also muss (ich) alle Befehle entweder extra mit Pseudotypen importieren oder den String halt umwandeln.

Insgesamt finde ich das sehr nervig, dass zum einen die Hilfedatei nicht einen Hinweis darauf gibt (beim ersten Mal mit dieser Konstellation habe ich mir einen Heißen gesucht) und zum anderen die Befehle nicht direkt "richtig" importiert werden.

Gibt es da in Zukunft Besserung oder Abhilfe ? Oder bin ich der einzige den das stört/beschäftigt ?

Wäre nett wenn Ihr mal Eure Meinung dazu postet. Danke.

Re: GTK und Unicode

Verfasst: 25.08.2014 12:27
von ts-soft
GTK erfordert UTF-8 und nicht ASCII! Und UTF-8 ist auch Unicode.

Ansonsten sollte es doch kein Problem sein, die Funktionen mit Pseudotype p-utf8 zu importieren.
Ansonsten werden Strings als Pointer übergeben, das geht nicht anders. Deine Feststellung unter-
liegt also einem Irrtum. Der Pseudotype wandelt den String also in einen UTF-8 Buffer um und übergibt der
API.

Fast alle APIs in Linux erfordern UTF-8 und nur ganz selten was anderes.


Gruß
Thomas

Re: GTK und Unicode

Verfasst: 26.08.2014 18:03
von Makke
Hi,

danke für die Aufklärung. Ich bin davon ausgegangen, dass bei PB intern im Unicode Modus alle Strings als UTF-8 verwaltet werden. Aber das gilt, habe es jetzt nochmals genauer nachgelesen nur für Strings die in Dateien gespeichert werden.

Aber das befriedigt mein Gesamtanliegen ja nicht wirklich.

Sobald ich bei GTK Befehlen einen String übergeben muss, muss dieser umgewandelt werden (gibt wie oben erwähnt mehrere Möglichkeiten). Das kann ja so eigentlich nicht im Sinne des Erfinders (von PB) sein. Da dort zwar (fast) alle Befehle zur Verfügung gestellt werden, aber bei Strings die Befehle im Unicode Modus nicht "out-of-the-box" funktionieren.

Wenn PB im Unicode Modus die Strings in zu speichernden Dateien automatisch in UTF-8 umwandelt, sollte die doch bei den GTK Befehlen auch funktionieren, oder ?

Re: GTK und Unicode

Verfasst: 26.08.2014 18:23
von ts-soft
Die API wird automatisch Importiert, wobei alle Parameter als Integer interpretiert werden. Die importierte
API weiß nicht, das dort Text erwartet wird und in welchem Format. PB nutzt dort keine Prototypes.

Es liegt also an Dir, richtige Buffer zur Verfügung zu stellen, wie dokumentiert. Um es Dir ein wenig leichter zu
machen, kannst Du die Funktionen nochmals Importieren und dabei die richtigen Prototypes nutzen.

Unter Windows ist es dasselbe, nur das dort dieselbe API meist in einer ....U oder ....A Version existiert und
somit automatisch ausgewählt wird.

Wenn Du mehr Unterstützung bei der API wünscht, dann im englischem Forum unter Feature Request.
Ich glaube aber kaum, das da was passieren wird :mrgreen: , wäre auch viel zu aufwendig.

Re: GTK und Unicode

Verfasst: 27.08.2014 16:56
von edel
Die API Dateien unter Linux sind oft nicht zu gebrauchen. Mit dem Subsystem GTK3 ist es noch schlimmer, da funktioniert gleich gar nichts. Da braucht man nichts unter "Feature Request" zu posten, das gehoert in das Bugforum.