Language localization instructions -- V4 to V5 upgrade
In order to support multiple platforms (Windows, Mac and eventually Linux), The Panorama Factory V5 was developed using wxWidgets, an open-source, cross-platform toolkit. WxWidgets uses a format for its language files that is different from the format used in The Panorama Factory V4. It uses the GNU gettext package for language localization.
The GNU gettext package allows The Panorama Factory to use a single method for storing translations on Windows and on Mac. It also allows The Panorama Factory to use the Unicode character set so that all characters can be displayed on any computer system. This is an improvement from V4 which could only display characters in the default Windows Code page.
Those of you who worked on the V4 translation may be surprised at how different the V5 system is.
In V4, you edited the translation files with a plain text editor. The translation files were stored using the Windows Code Page of your own computer system. This meant that The Panorama Factory could not correctly display your translations on a computer with a different Windows Code Page. For example, Cyrillic characters did not display properly on an English Windows system and perhaps certain characters from other translations did not display properly on a Russian Windows system.
The Panorama Factory V5 uses Unicode for all text information. This means that it can correctly display almost all translations on any Windows or Mac computer. Russian characters now display properly on an English Windows system.
This change requires the translation translation files to be stored differently. They are now stored in GNU gettext message catalogs. The message catalogs can be stored as plain text using UTF-8 encoding, but they must be converted into a binary format for use by The Panorama Factory. The plain text message catalogs are files with a .po extension. Binary message catalogs are files with a .mo file extension.
This means that it is still possible to use a plain text editor to edit the message catalogs. However, the text file format required by GNU gettext is not as convenient for editing by hand. Therefore, we provide an editor program for gettext message catalogs called poTree, a tree structured editor for gettext message catalogs stored in po files.
Also, in V4 the language files were all stored in the same folder. In V5, each language is stored in its own folder using the ISO code for the language. For example, the German language files are now stored in the following folder:
Menu commands are stored slightly differently in V5. In V4, each menu command had a single line that contained the name of the command, the (optional) shortcut and accelerator keys and the prompt string (tool tip or balloon help). In V5, the prompt string for the command is stored separately from the command name and shortcut. Refer to Translating menu commands for a complete description of the way menu commands are stored.
IMPORTANT NOTE 1: In V4 you were allowed to translate the names of the CTRL, ALT, etc. modifier keys when entering accelerator keys into the menu commands. For example, Ctrl+N (New project) could be translated to Strg+N for the German version. In V5, if you do this, you must also provide a translation for "ctrl" (for example, to "strg" in German), and the translation must be entered in lower case. You must type the translation of the modifier key in lower case. However, when you use it in a menu entry, case is not significant. For example, you may type “Strg+n” or “STRG+N”. On Mac, the CTRL modifier is automatically converted to the COMMAND modifier.
IMPORTANT NOTE 2: In V4 you were not allowed to translate the letter used for the accelerator. But in V5, you may select a letter that makes sense in your local language--you do not have to use the same letter as the English command. For example, you are allowed to translate "Ctrl+E" for "Example" to "Strg+B" for "Beispiel" in German.
IMPORTANT NOTE 3: In V4 you were allowed to translate the names of special keys such as Home, Left cursor arrow, etc. For example, "Right arrow" could be translated to "PfeilRechts" for the German version. Unfortunately, in V5 this is no longer possible. This is a restriction of wxWidgets for which I do not have a workaround (please tell me if this is important to fix and I will try). You must use the following names when referring to special keys in menu items:
Download and install the most recent release of The Panorama Factory V5 from the Download web page.
You may should use the Windows m32, Windows x64 or Mac Edition of The Panorama Factory. It's possible to use the Legacy Edition, but its support for Unicode is not as complete as the other Editions and may create problems for certain languages (e.g. Asian languages).
Download and install the poTree program.
I have converted the V4 translation files to the new V5 format. These files already contain the translated strings from V4, but only have placeholders for the new V5 strings.
Each ZIP file contains two files: pfactory.po and wxstd.po. Pfactory.po contains the translations that are specific to The Panorama Factory. The wxstd.po files were created by the wxWidgets developers. They contains translations for standard controls and messages like OK", "Cancel", etc. (Note, the wxWidgets developers did not provide a wxstd.po file for Slovak.)
You can store the files on your computer wherever you wish, but I think it will be most convenient to put them in The Panorama Factory's languages folder under the ISO language code.
Start poTree from the Windows Start Menu --> Program Files --> Smoky City Design. Use the open command (File menu) to open your pfactory.po file.
I recommend you begin by browsing the poTree online help. Read at least the Introduction sections. The section Using poTree for The Panorama Factory describes workflow specific to The Panorama Factory.
If you wish, you may enlarge the font size used in poTree from the Options dialog box (File menu). I recommend you do not change any other settings on the Options dialog box.
Before editing any strings, you should open the Header dialog box (File menu) in poTree and update the file header. Change the file header comment and the translator name and translator team name to list yourself as you wish.
Here are the glossaries from V4. I have not updated them for V5 and I would appreciate your help with this. When you see terms that are new to you, let me know and I will add them to the glossaries.
Then you can use these toolbar buttons to find strings that need to be translated or reviewed:
Work your way through the file, translating the lines.
You use this toolbar button to remove (or add) the fuzzy condition:
A summary of the number of completed lines, untranslated lines, lines with errors and fuzzy lines is available in the upper right corner of the Header dialog box (File menu).
These indicators on the toolbar tell what formatting rules apply to the string:
Refer to Formatting and string substitutions for more information about c-format and pf-format.
Other indicators on the toolbar tell about error conditions:
Whenever you want to test your translation, use the Save command (File menu) to save pfactory.po. It will automatically be compiled into the binary format used by The Panorama Factory. If you have stored pfactory.po in The Panorama Factory's languages folder, you can immediately load it using The Panorama Factory's Options dialog box.
Here are test sequences for The Panorama Factory V5. I have begun updating these, but I am sure they are not complete. If you see things that are missing, please let me know and I will add them:
Revised: February 01, 2008
© 1999-2008 Smoky City Design, LLC and John Strait