AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Ist das ein Fehler in dxGetText?

Offene Frage von "dummzeuch"
Ein Thema von Der schöne Günther · begonnen am 22. Mär 2016 · letzter Beitrag vom 3. Jan 2018
Antwort Antwort
Seite 1 von 3  1 23      
Der schöne Günther

Registriert seit: 6. Mär 2013
6.176 Beiträge
 
Delphi 10 Seattle Enterprise
 
#1

Ist das ein Fehler in dxGetText?

  Alt 22. Mär 2016, 19:59
Das viel genutzte dxGetText. Ich finde, da ist ein Fehler. Aber der kann doch noch nicht noch niemandem aufgefallen sein. Wo stehe ich auf dem Schlauch?

Folgender Testcode:
Delphi-Quellcode:
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.
Das Ergebnis ist leider
Code:
Italian: Hello
Spanish: Hello
Der Fehler liegt in der gnugettext.pas. Und zwar die letzte Zeile von
Delphi-Quellcode:
function TGnuGettextInstance.LoadResString(
  ResStringRec: PResStringRec): UnicodeString;
Warum steht da Result:=ResourceStringGettext(Result); ? ResourceStringGettext ist eine global herumschlabbernde Routine welche immer auf die globale DefaultInstance eines TGnuGettextInstance geht, sich also nicht darum kümmert, welche Sprache ich vorgegeben habe. Ich hätte mir meine Instanzen italian und spanish also gleich sparen könnnen.

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?
https://svn.code.sf.net/p/dxgettext/...gnugettext.pas
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.651 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Ist das ein Fehler in dxGetText?

  Alt 23. Mär 2016, 03:58
In den JEDIs (JVCL glaube ich) ist die JvGnuGetText drin. Die ist glaube ich neuer.
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:
https://github.com/project-jedi/jvcl...Gnugettext.pas
Es gibt also wohl nichts Neueres...
Sebastian Jänicke
AppCentral

Geändert von jaenicke (23. Mär 2016 um 04:03 Uhr)
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.176 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

AW: Ist das ein Fehler in dxGetText?

  Alt 23. Mär 2016, 10:52
Ich hatte anfangs bei dxGetText sowieso so gezögert da sich das Projekt anscheinend balkanisiert. Die zentrale Homepage hat den letzten Eintrag von 2008 und die ersten Seiten fehlen schon. Parallel findet man in mehreren Repos Kopien von gnuGetText, teilweise mit eigenen Änderungen (z.B. IFDEFs für neuere Delphi-Versionen).

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 PngComponents gemacht haben, wenn ich es richtig verstanden habe.
  Mit Zitat antworten Zitat
Bbommel

Registriert seit: 27. Jun 2007
Ort: Köln
659 Beiträge
 
Delphi 12 Athens
 
#4

AW: Ist das ein Fehler in dxGetText?

  Alt 23. Mär 2016, 13:24
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 (http://blog.dummzeuch.de/) übrigens immer recht zuverlässig um die Aktualisierung und Fixes der gnugettext.pas im letzten offiziellen Repository (das, was du auch verlinkt hattest) gekümmert. Keine Ahnung, ob er hier im Forum mitliest und wenn ja, unter welchem Namen. Er wäre aber im Moment wahrscheinlich der beste Ansprechpartner für deine ursprüngliche Frage.

Bis denn
Bommel
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.176 Beiträge
 
Delphi 10 Seattle Enterprise
 
#5

AW: Ist das ein Fehler in dxGetText?

  Alt 23. Mär 2016, 13:38
Ja, nichts gegen das Kernstück gnugettext.pas. Es ist an sich hervorragend.

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 dummzeuch mal an, dann sehen wir weiter
  Mit Zitat antworten Zitat
Bbommel

Registriert seit: 27. Jun 2007
Ort: Köln
659 Beiträge
 
Delphi 12 Athens
 
#6

AW: Ist das ein Fehler in dxGetText?

  Alt 23. Mär 2016, 13:52
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...
  Mit Zitat antworten Zitat
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.664 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: Ist das ein Fehler in dxGetText?

  Alt 23. Mär 2016, 14:30
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
https://poedit.net/download
https://github.com/vslavik/poedit

Sehr schön
Sven Harazim
--

Geändert von sh17 (23. Mär 2016 um 14:36 Uhr)
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.176 Beiträge
 
Delphi 10 Seattle Enterprise
 
#8

AW: Ist das ein Fehler in dxGetText?

  Alt 23. Mär 2016, 14:48
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 😉
  Mit Zitat antworten Zitat
neubert

Registriert seit: 17. Okt 2012
32 Beiträge
 
#9

AW: Ist das ein Fehler in dxGetText?

  Alt 12. Jun 2016, 16:25
Hallo,

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.
ich habe eine komplett neue Version von dxgettext in Perl zusammengehackt und auf Sourceforge zur Verfügung gestellt.

https://sourceforge.net/projects/dxgettext-perl/

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
  Mit Zitat antworten Zitat
Benutzerbild von dummzeuch
dummzeuch

Registriert seit: 11. Aug 2012
Ort: Essen
1.629 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#10

AW: Ist das ein Fehler in dxGetText?

  Alt 12. Jun 2016, 19:22

ich habe eine komplett neue Version von dxgettext in Perl zusammengehackt und auf Sourceforge zur Verfügung gestellt.

https://sourceforge.net/projects/dxgettext-perl/

Sie tut im wesentlichen das, was dxgettext von Lars Dybdahl täte. Doku ist auf der Sourceforge-Seite im Repo enthalten.
Ohne jetzt Deine Leistung in Frage stellen zu wollen:
Warum? Das DxGettext Tool funktioniert doch problemlos.
Thomas Mueller
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:14 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz