ich habe mal ein wenig Zeit gehabt und ein Programm geschrieben, welches die lclstrconsts.pas auf die beliebige Sprache übersetzt.
Vorher sollte man eine Kopie der Datei erstellen.
Die Benutzung ist relativ einfach:
1. Einlesen der lclstrconsts.pas aus dem lcl-Verzeichnis
2. Einlesen der jeweiligen *.po Datei aus dem lcl/languages Verzeichnis.
3. In der ersten Spalte des Grids können 2 Fehlermeldungen erscheinen ('> 255', 'leer')
'> 255' => die Ersetzung hat mehr als 255 Zeichen, diese muss gekürzt werden
'leer' => Hierfür existiert keine Ersetzung es wird das Original verwendet.
4. Jetzt geht man das Stringgrid durch und kann durch Doppelklick die Ersetzung ändern.
5. Mit Übersetzung wird ein Dokument erstellt welches dann nur noch über "Speichern" abgespeichert wird.
6. Lazarus neu kompilieren, fertig.
EDIT: in unit3 solltet ihr vor dem Compilieren noch die Konstante LclDir anpassen!
Nochmal EDIT: in unit1 die Zeile 181 muss noch geändert werden
Code: Alles auswählen
//vorher
Form3.Edit.Lines.Add('unit MyStrConsts;');
//nachher
Form3.Edit.Lines.Add('unit lclstrconsts;');