![]() |
Ist das ein Fehler in dxGetText?
Das viel genutzte
![]() Folgender Testcode:
Delphi-Quellcode:
Das Ergebnis ist leider
unit __langTest;
interface uses gnuGetText; procedure justLanguageThings(); implementation procedure justLanguageThings(); resourcestring sMessage = 'Hello'; var italian, spanish: TGnuGettextInstance; begin italian := nil; spanish := nil; try italian := TGnuGettextInstance.Create(); italian.UseLanguage('IT'); spanish := TGnuGettextInstance.Create(); spanish.UseLanguage('ES'); Write('Italian: '); WriteLn( italian.LoadResString(@sMessage) ); Write('Spanish: '); WriteLn( spanish.LoadResString(@sMessage) ); readln; finally italian.Free(); spanish.Free(); end; end; end.
Code:
Der Fehler liegt in der gnugettext.pas. Und zwar die letzte Zeile von
Italian: Hello
Spanish: Hello
Delphi-Quellcode:
Warum steht da
function TGnuGettextInstance.LoadResString(
ResStringRec: PResStringRec): UnicodeString;
Delphi-Quellcode:
?
Result:=ResourceStringGettext(Result);
Delphi-Quellcode:
ist eine global herumschlabbernde Routine welche immer auf die globale
ResourceStringGettext
Delphi-Quellcode:
eines
DefaultInstance
Delphi-Quellcode:
geht, sich also nicht darum kümmert, welche Sprache ich vorgegeben habe. Ich hätte mir meine Instanzen
TGnuGettextInstance
Delphi-Quellcode:
und
italian
Delphi-Quellcode:
also gleich sparen könnnen.
spanish
Damit es so funktioniert wie es soll müsste die obige Zeile so ersetzt werden:
Delphi-Quellcode:
Result:= //ResourceStringGettext(Result);
gettext(Result); Wer kann mir das ausreden? Die aktuelle Version ist hier, richtig? ![]() |
AW: Ist das ein Fehler in dxGetText?
Zitat:
Es kann durchaus sein, dass deshalb an anderen Versionen nichts mehr gemacht wird, bin aber am Handy und kann nicht nachschauen. //edit: Zumindest die Versionsangabe ist gleich: ![]() Es gibt also wohl nichts Neueres... |
AW: Ist das ein Fehler in dxGetText?
Ich hatte anfangs bei dxGetText sowieso so gezögert da sich das Projekt anscheinend balkanisiert. Die
![]() Ich würde viel ruhiger schlafen, wenn irgendeine bekannte Persönlichkeit das unter ihre Schutzherrschaft nehmen und pflegen würden. Das, was Uwe Raabe und Roman Kassebaum mit den ![]() |
AW: Ist das ein Fehler in dxGetText?
Ich kann nachvollziehen, dass du etwas skeptisch bist. Manchmal bereue ich auch, dass ich mich für ein Produkt vor 8 Jahren für dxgettext entschieden habe, weil es eben keine zuverlässige, zentrale Wartung mehr gibt. Andererseits läuft das Kernstück, die gnugettext.pas, auch unter Seattle eigentlich noch problemlos und die Tools, die es um Gnugettext herum gibt (allen voran z.B. poEdit) machen die Benutzung schon sehr komfortabel. Gerade auch, wenn man irgendeinen ausländischen Partner mal eben etwas übersetzen lassen will. Insofern möchte ich es eigentlich auch nicht missen.
Mein Traum wäre eigentlich, mit ein paar Leuten dafür zu sorgen, dass das Projekt wieder ordentlich gepflegt wird, eine vernünftige Homepage mit guter Dokumentation, einem aktuellen und funktionierenden Toolset drumherum (denn die Tools, die beim dxGettext-Download mitgeliefert werden, funktionieren unter Windows 10 teilweise nicht mehr, weil sie eine völlig veraltete Cygwin-Version benutzen). Ich würde mich da sicherlich auch gerne einbringen, so gut ich kann, alleine starten würde ich so etwas aber auch nicht. Teilweise fehlt mir da auch das Know-how, was von den bisherigen Tools man mit welcher Lizenz einfach weiter benutzen darf, wann man Lars (den früheren, jetzt offenbar inaktiven Autor) fragen muss und wann nicht. In den letzten Jahren hat sich Thomas W. Mueller ( ![]() Bis denn Bommel |
AW: Ist das ein Fehler in dxGetText?
Ja, nichts gegen das Kernstück gnugettext.pas. Es ist an sich hervorragend. :thumb:
Ich kann alles was du meinst 1:1 unterschreiben. Ich würde auch gerne daran irgendwie mitwirken. Ich mache mich als erstes einmal über die Lizenz schlau, dann triggere ich ![]() |
AW: Ist das ein Fehler in dxGetText?
Köln, Königswinter und (falls dummzeuch die Zeit hat, ohne ihn da vereinnahmen zu wollen) Essen - falls wir da etwas auf die Beine stellen wollen, könnte man sich auf jeden Fall ja auch mal hier in der Region treffen, um das Projekt zu starten. Nur schon mal so als Gedanke...
|
AW: Ist das ein Fehler in dxGetText?
Also ich nehme immer die Default-Instance, deswegen ist mir das noch nicht aufgefallen.
Bei mir klappt zwar alles unter windows 10, auch mit den Tools. Allerdings müsste da doch mal etwas aufgeräumt werden, schonmal die Verzeichnisstruktur ist verwirrend. //Edit Ich seh grad, poEdit ist ja noch aktiv ![]() ![]() Sehr schön |
AW: Ist das ein Fehler in dxGetText?
Klar, poEdit ist eins von vielen Tools für das po/mo-Format (auch mein Favorit) und wird aktiv gepflegt. Das Format gibt es ja schon lange und ist ja keine Erfindung von dxGetText oder Delphi 😉
|
AW: Ist das ein Fehler in dxGetText?
Hallo,
Zitat:
![]() Sie tut im wesentlichen das, was dxgettext von Lars Dybdahl täte. Doku ist auf der Sourceforge-Seite im Repo enthalten. Viele Grüße Boris |
AW: Ist das ein Fehler in dxGetText?
Zitat:
Warum? Das DxGettext Tool funktioniert doch problemlos. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:53 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz