DevTools:JSword/Internationalization

From CrossWire Bible Society
Revision as of 21:04, 24 October 2010 by Dmsmith (talk | contribs) (New page)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Internationalization (i18n)

This page is a placeholder.

JSword's and BibleDesktop's mechanism for i18n uses one Java property file per Java project for strings and another for UI controls. In order to translate BibleDesktop into another language, each of these needs to be translated. These files lack comments, and they are an ASCII representation of UTF-8. For a user to translate BibleDesktop, these files have to be converted into UTF-8, modified and then converted back. Together this has resulted in BibleDesktop being translated into very few languages.

The request of translators is to:

  • co-locate the files
  • use as few files as possible
  • have the files in UTF-8
  • comment each string that needs to be translated
  • use a format and tooling familiar to translators

Chosen mechanism

GNU's GetText

Marking text for i18n

Marking strings needing translation

Marking Comments

Creating a POT file

Updating a POT file

Creating PO files per language

Converting POT and PO files into Java property files