Localization of the JVCL



All strings in JVCL that are displayed to the user have been grouped into JvResources.pas and are stored as resourcestrings. Even if you could use the Integrated Translation Environment that comes with Delphi, we do not recommend it as it is not easily maintainable and contains a few very annoying bugs. The only other localization method supported by the JVCL group is DxGettext, a port of the GNU Gettext library to Delphi done by Lars B. Dybdahl. It is available at this address: http://dybdahl.dk/dxgettext/

All you need to do is download and install DxGettext, compile the JVCL with USE_DXGETTEXT defined (this define is in \common\jvcl.inc) and the JVCL will be localized to the language your application chose to run in. We won't go into the details of the usage of DxGettext here, but the easiest way to have your forms localized is to make them inherit from TJvForm instead of TForm (the declaration of TJvForm can be found in \run\JvComponent, so you need to add JvComponent to the uses clause of your form). This ensures automatic localization of JVCL components and strings.

The following languages are currently distributed with the JVCL:

Language
Language code
Progress
Translators
JVCL
JVCL Installer
Bulgarian
bg
36%
63%
Georgi Panayotov
Dutch
nl
22%
64%
Wiebe Tijsma
French
fr
89%
100%
Lionel Reynaud, Olivier Sannier, nanotonne
German
de
59%
100% Andreas Hausladen
Italian
it
87%
90% Carmelo Viavattene, Stefano Pessina, peste1
Polish
pl
53%
63%
Grzegorz Skoczylas
Romanian
ro
35% 0% Anton Iulian
Russian
ru
0%
62% SHC
Spanish
es
75%
65% Enrique F. Becerra
Swedish
sv
30%
81% Peter Thornqvist

As you can see, there is still a lot of work to do on this side of the JVCL. If you want to help us, we recommend you download poEdit from http://www.poedit.org/ and edit the jvcl.po file for the language you want to work on.


If your language doesn't appear in this list, use the file jvcl.po located directly in the locale directory. Translate as much as you can, then send the file to us indicating the language on which you worked (ideally indicating the two letter code). You can contact us here.


Should you require any assistance, do not hesitate to contact us, but please keep in mind that most of the issues related to the use of DxGettext are covered by the documentation available on the DxGettext website.