![]() |
AW: Hilfe beim Test eines GnuGetText Patches
Zitat:
Edit: Ich bin ein blinder Fisch! Delphi 6 war's. Also genau die Version, die am dringendsten getestet werden musste, weil der Code von mir angepasst wurde (Lübbe's code benutzte TStringBuilder). Danke nochmal! twm |
AW: Hilfe beim Test eines GnuGetText Patches
Zitat:
Aber nochmal zum eigentlichen Problem: Habe ich das richtig verstanden: Wenn Du diese Datei mit AddDomainForResourceString('system'); einbindest, werden die Shortcuts trotz Patch mit "Strg+ ..." etc. ausgegeben? Sind noch andere mo-Dateien eingebunden? Meine Vermutung ist, dass der Patch "Strg+" nach "Ctrl+" konvertiert, und es dann dafür keine Übersetzung gibt. Könntest Du bitte testen, ob eine zusätzliche Pseudo-Übersetzung "Ctrl+" -> "Ctrl+" das Problem behebt? Oder, wenn das nicht funktioniert "Ctrl+" -> "Control+" (damit die Übersetzung <> dem Original ist). twm |
AW: Hilfe beim Test eines GnuGetText Patches
Zitat:
Danke für das Angebot, aber der erfolgreiche Test von v2afrank mit Delphi 6DE reicht mir schon. Da brauche ich kein Delphi 7 mehr, weil sich diese beiden Versionen kaum unterscheiden. Compilefehler hatte ich schon durch meine englische Version ausgschlossen. Interessant wären noch Delphi 2005 bis XE. Bei neueren Versionen erwarte ich keine Probleme mehr. twm |
AW: Hilfe beim Test eines GnuGetText Patches
Zitat:
Deutsches Delphi 2009, das heißt mit deutschsprachiger IDE. Darin habe ich ein neues Projekt erstelt mit einem Hauptmenü mit zwei Menüpunkten, diese auch auf deutsch beschriftet. Dann habe ich für das Projekt eine normale default.po/mo erstellt mit Deutsch->Englisch-Übersetzungen. Im Ordner locale\en\LC_MESSAGES gibt es also die besagte system.mo und die projektspezfische default.mo. Der einzige echte Code im Projekt ist das erwähnte:
Delphi-Quellcode:
Mit der Zeile AddDomain... werden also zwei mo-Dateien benutzt: die default.mo für das normale Zeug auf dem Formular und die system.mo. In dem Fall funktioniert der Patch nicht. Kommentiere ich diese erste Zeile aus, so funktioniert der Patch.
procedure TForm2.FormCreate(Sender: TObject);
begin AddDomainForResourceString('system'); UseLanguage('en'); TranslateComponent(Self); end; Deine Lösungsvorschläge haben so nicht geholfen. In der system.po gibt es aber auch den Eintrag Strg+ -> Ctrl+. Entferne ich diesen Eintrag aus der system.po, so funktioniert der Patch auch bei aktivierter AddDomainForResourceString. Andererseits ist es auch so, dass auch mit aktivierter system.po und ohne Patch das Strg nicht korrekt nach Ctrl übersetzt wird, insofern bringt das ohne Patch eh nix. Fazit also: Durch den Patch wird es nicht schlechter als vorher, weil der Eintrag Strg+->Ctrl+ aus der system.po ohnehin keine sichtbare Wirkung hat. Man kann den Eintrag in der system.po aber entfernen, dann funktioniert auch der Patch. |
AW: Hilfe beim Test eines GnuGetText Patches
Ob das mit der system.po so mal funktioniert hat? Das scheint ja der ursprüngliche Ansatz gewesen zu sein, dieses Problem zu lösen. Meine erste Lösung, für mit deutscher IDE übersetze Anwendungen, hat, ohne Kenntnis der system.po, genau so funktioniert. Ich wollte aber die zweite .po Datei loswerden.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:13 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 by Thomas Breitkreuz