Buttontexte von Dialogen eindeutschen

Für alles, was in den übrigen Lazarusthemen keinen Platz, aber mit Lazarus zutun hat.
Reveng
Beiträge: 8
Registriert: Fr 4. Apr 2008, 22:33
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit

Buttontexte von Dialogen eindeutschen

Beitrag von Reveng »

Hallo Leute,

ich habe folgendes Problem, zu dem es hier im Forum noch keine Lösung zu geben scheint.
Ich schreibe eine GUI für einen Compiler für die Uni. Einen Schönheitsfehler konnte ich bisher noch nicht beseitigen:

In den Dialogen (MessageDlg) sind die Buttons englisch beschriftet (Yes, No, Cancel, Ignore,...), obwohl ich meine Lazarus IDE schon auf deutsch eingestellt habe (in den Umgebungseinstellungen).

Wie bekomme ich es hin, dass dort die entsprechenden deutschen Texte stehen?

Viele Grüße,
Reveng

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6857
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Beitrag von af0815 »

Betriebsystemdialoge ? Die hängen von der Sprache des BS ab.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

ulhau
Beiträge: 65
Registriert: Sa 27. Okt 2007, 13:27
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Seebergen

Beitrag von ulhau »

Moin Reveng!

Meinst du etwa das?
The lcl/languages directory contains all the stuff for internationalization of
the lcl.

All text and messages used in the lcl should be placed into the unit
lcl/lclstrconsts.pas. This unit uses a resourcestring section, so that the
compiler will create the lcl/units/lclstrconsts.rst file.
Since this is a fpc-only format it must be converted with the rstconv program:

cd lcl/languages
rstconv -i ../units/lclstrconsts.rst -o lcl.po

This will create the file lcl.po, which should be translated in all required
languages to a lcl.xx.po file. For the xx see the gettext unit in the procedure
TranslateResourceStrings.

german: lcl.de.po


After the translation, the lcl.xx.po file is converted to an .mo file with the
msgfmt program:

msgfmt -v -o lcl.xx.mo lcl.xx.po

where xx is the language id.
Ich kann dir jetzt aber nur sagen wo das in der Windowsversion zu finden ist. Die nötigen Sprachdateien liegen im Lazarusinstallationsverzeichnis\lcl\languages. Wie das bei Linux ist kann ich dir jetzt nicht ohne laufendes Linux sagen aber das ist sicherlich ähnlich.

Tschüsss!

monta
Lazarusforum e. V.
Beiträge: 2809
Registriert: Sa 9. Sep 2006, 18:05
OS, Lazarus, FPC: Linux (L trunk FPC trunk)
CPU-Target: 64Bit
Wohnort: Dresden
Kontaktdaten:

Beitrag von monta »

Die Übersetzungsdateien gibts doch schon...

Einfach die Übersetzung einbinden:

Code: Alles auswählen

uses ..., Translations;
 
//und ins OnCreate der Hauptform:
  //----Übersetzung der Dialoge
  TranslateUnitResourceStrings('LCLStrConsts', 'E:\lazarus\lcl\languages\lclstrconsts.de.po');
Natürlich den Pfad anpassen.

im übrigen:
http://www.lazarusforum.de/viewtopic.ph ... lg+deutsch" onclick="window.open(this.href);return false;
Johannes

Reveng
Beiträge: 8
Registriert: Fr 4. Apr 2008, 22:33
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit

Beitrag von Reveng »

Ganz herzlichen Dank, monta!
Die Übersetzungsdateien hatte ich gefunden (indem ich nach Stichwörtern gesucht hab), aber das Wichtigere war zu wissen, das man solch einen Übersetzungsteil explizit einbinden muss. Bei Delphi etwa läuft das ja glaube ich anders.
Danke nochmal!

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Beitrag von Christian »

Delphi benutzt auch die system dialoge da die aber nicht in der selben art und weise plattformunabhängig verfügbar sind benutzt lazarus eigene dialoge.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

ulhau
Beiträge: 65
Registriert: Sa 27. Okt 2007, 13:27
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Seebergen

Beitrag von ulhau »

@ Monta,
das ist doch aber jetzt die Version wo die Sprachdatei mitgegeben werden muss. Oder? So werden die Sprachstrings erst zur Laufzeit eingebunden. Wenn die nicht dabei ist, werden die normal beim Kompilieren Eingebundenen Englischen Sprachstrings verwendet. Oder wie war das noch gleich?

monta
Lazarusforum e. V.
Beiträge: 2809
Registriert: Sa 9. Sep 2006, 18:05
OS, Lazarus, FPC: Linux (L trunk FPC trunk)
CPU-Target: 64Bit
Wohnort: Dresden
Kontaktdaten:

Beitrag von monta »

Genau.
Johannes

ulhau
Beiträge: 65
Registriert: Sa 27. Okt 2007, 13:27
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Seebergen

Beitrag von ulhau »

Hallo, noch mal!

So, ich hab's jetzt gemacht. :wink:

Ich habe die Datei lclstrconsts.pas in's deutsche übersetzt und in das Lazarusinstallationsverzeichnis\lcl\ kopiert (natürlich die originaldatei vorher umbenannt).

Weil diese Datei ein Teil von Lazarus ist muß Lazarus natürlich neu erzeugt werden (Menü --> Wekzeuge --> Lazarus erstellen).

Von nun an beglückt Lazarus mit deutschen Meldungen, jedenfall's mit denen die in der lclstrconsts.pas eingebunden sind. 8)

Tschüsss!

MmVisual
Beiträge: 1582
Registriert: Fr 10. Okt 2008, 23:54
OS, Lazarus, FPC: Winuxarm (L 4 FPC 3.2.2)
CPU-Target: 32/64Bit

Re: Buttontexte von Dialogen eindeutschen

Beitrag von MmVisual »

Zur Datei "lclstrconsts.de.po"

Der Hinweis wäre vieleicht nützlich:

Diese Datei solle bei einer Kunden Appliaktion mit installiert werden, denn ansonsten sind die Buttons nicht deutsch !!!
EleLa - Elektronik Lagerverwaltung - www.elela.de

DiBo33
Beiträge: 334
Registriert: Do 11. Okt 2007, 18:01

Re:

Beitrag von DiBo33 »

ulhau hat geschrieben: Ich habe die Datei lclstrconsts.pas in's deutsche übersetzt und in das Lazarusinstallationsverzeichnis\lcl\ kopiert (natürlich die originaldatei vorher umbenannt).
Magst du die übersetzte Datei auch anderen zur Verfügung zu stellen?

Kuster Peter
Beiträge: 205
Registriert: So 2. Dez 2007, 20:47
OS, Lazarus, FPC: Windows XP Lazarus immer neueste Version
CPU-Target: xxBit
Wohnort: Schweiz

Re: Buttontexte von Dialogen eindeutschen

Beitrag von Kuster Peter »

Hallo Reveng

Da Du die Datei schon angepasst hast, wäre doch nett, diese hier anderen zur Verfügung zu stellen? Wir sind hier alle in einem Boot, oder nicht?

Ich danke Dir im voraus für die zur Verfügungstellung.

Peter

MacWomble
Lazarusforum e. V.
Beiträge: 999
Registriert: Do 17. Apr 2008, 01:59
OS, Lazarus, FPC: Mint 21.1 Cinnamon / FPC 3.2.2/Lazarus 2.2.4
CPU-Target: Intel i7-10750 64Bit
Wohnort: Freiburg

Re: Buttontexte von Dialogen eindeutschen

Beitrag von MacWomble »

Bei Codetyphon sind einige Sprachen bereits mit an Board, u.a. Deutsch !

Insgesamt finde ich Codetyphon - gerade auch für Lazarus-Neulinge - eine ideale Sache. Alle wesentlichen Komponenten werden gleich mit installiert.
(Das auch als Hinweis auf den Einsatz in Schulen aus einem anderen Thread in diesem Forum.)

Ich habe den kompletten languages-Ordner einfach mal gezippt, da die anderen Sprachen evtl ebenfalls relevant sind.

Gruß Klaus
Dateianhänge
languages.tar.gz
po-Dateien für Europa
(66.79 KiB) 116-mal heruntergeladen
Zuletzt geändert von MacWomble am So 10. Mai 2009, 23:30, insgesamt 2-mal geändert.
Alle sagten, dass es unmöglich sei - bis einer kam und es einfach gemacht hat.

monta
Lazarusforum e. V.
Beiträge: 2809
Registriert: Sa 9. Sep 2006, 18:05
OS, Lazarus, FPC: Linux (L trunk FPC trunk)
CPU-Target: 64Bit
Wohnort: Dresden
Kontaktdaten:

Re: Buttontexte von Dialogen eindeutschen

Beitrag von monta »

Es spricht nichts dagegen, die hier anzuhängen.

Ich würde dich daher der Einfachheit wegen bitten, die hier direkt anzuhängen, dann muss man sich nicht Irgendwelche Pakete runter laden, so mal man ja nur eine Datei braucht ;)
Johannes

MacWomble
Lazarusforum e. V.
Beiträge: 999
Registriert: Do 17. Apr 2008, 01:59
OS, Lazarus, FPC: Mint 21.1 Cinnamon / FPC 3.2.2/Lazarus 2.2.4
CPU-Target: Intel i7-10750 64Bit
Wohnort: Freiburg

Re: Buttontexte von Dialogen eindeutschen

Beitrag von MacWomble »

... siehe vorletzten Eintrag
Alle sagten, dass es unmöglich sei - bis einer kam und es einfach gemacht hat.

Antworten