This internationalization editor is used by the JSettlers project, so its "home" is here:
in the net.nand.util.i18n and net.nand.util.i18n.gui packages.
The editor is work in progress. Right now it can't create or copy new .properties files; you'll need to do that on your own and then use the editor on the new file.
Java i18n localization strings are typically kept in properties files named with the language and country/region, falling back to a base language file if the user's language, country, or region aren't found:
This editor makes translation maintenance a bit easier, including side-by-side comparison.
There are other properties editors out there, I wanted to see what writing one would be like. Thank you for trying our i18n editor.
- Jeremy D Monin <jeremy@nand.net>
The editor shows any two such "source" and "destination" files side by side by key for comparison and translation. "Source" is the file with a less specific locale, "destination" is more specific.
Start net.nand.util.i18n.gui.PTEMain, then browse to the files you want to edit, or choose one "destination" file to edit, with its "source" file automatically picked based on the filename. This editor has unicode support and color hilighting, and will save files in the required ISO-8859-1 encoding (with unicode escapes) automatically.
Keys can be added by right-clicking. Ctrl-F finds text in the source and destination files. Click the main window's Help button for more info.
"Open Destination + Source" Dialogs:
Main Window:
When starting the editor this message is harmless, because preferences are stored per-user:
Dec 6, 2013 3:59:16 PM java.util.prefs.WindowsPreferences <init>
WARNING: Could not open/create prefs root node Software\JavaSoft\Prefs at root 0x80000002. Windows RegCreateKeyEx(...) returned error code 5.
To build PTE.jar, use: gradle i18neditorJar
See the PropertiesTranslatorEditor javadoc for current limitations and TODO items.
Patches can be sent by email or by pull request; if emailing, use diff -u format. Please make sure your patch follows the project coding style (see /doc/Readme.developer.md).