Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Delphi Bibleothek mehrsprachig (https://www.delphipraxis.net/193669-bibleothek-mehrsprachig.html)

Ghostwalker 28. Aug 2017 08:26

Bibleothek mehrsprachig
 
Moinmoin,

ich bastel derzeit an einer recht umfangreichen Bibleothek (keine Komponenten) und bin am überlegen, wie ich hier die Mehrsprachigkeit umsetze. Bei Anwendungen verwende ich gnugettext, was auch wunderbar funktioniert.

Bei einer Bibleothek ist das aber etwas anderes, insbesondere da ich sie veröffentlichen will. Übersetzt müssten verschieden kurze Bezeichnungen und auch Format-Angaben...

Was meint ihr ? Auch hier gnuggettext oder doch lieber was eigenes ?

TigerLilly 28. Aug 2017 08:47

AW: Bibleothek mehrsprachig
 
Wenn du gnugettext verwendest, zwingst du ja die Nutzer deiner Bibliothek dazu, gnugettext auch zu verwenden. Wenn die aber was anderes verwenden wollen, wird das problematisch.

Du könntest
- alle übersetzbaren Strings als Typisierte Konstante auslagern
- eine Basisklasse nur für die Übersetzung machen + die ersetzbar gestalten (per DI oder Ableitung)

Je nach Struktur deiner Bibliothek kann man das ja noch verfeinern.

Sherlock 28. Aug 2017 09:54

AW: Bibleothek mehrsprachig
 
Im Prinzip kannst Du es machen wie Du willst, Du musst halt den Anwendern Deiner Bibliothek mitteilen, wie sie zu übersetzen haben. Freilich ist gnugettext möglich, und wird auch oft verwendet, wenn Du aber sauber mit Resourcestrings arbeitest, dürfte es ziemlich egal sein, was am Ende zum Lokalisieren verwendet wird. Vor allem bei größeren, kommerziellen Projekten trifft man eher auf Kaliber wie Multilizer, Sisulizer, und die setzen voll auf Resourcestrings.

Sherlock


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:55 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