wxWidgets/docs/tech/tn0002.txt
Vadim Zeitlin f077f5c39f technote about translations added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@6500 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2000-03-07 10:53:53 +00:00

68 lines
2.6 KiB
Plaintext

wxWindows translator guide
==========================
This note is addressed to wxWindows translators.
First of all, here is what you will need:
1. GNU gettext package version 0.10.35 or later (NB: earlier versions were
known to have serious bugs)
a) for Unix systems you can download gettext-0.10.tar.gz from any of GNU
mirrors (RPMs and DEBs are also available from the usual places)
b) for Windows you can grab the precompiled binaries from www.wxwindows.org
2. A way to run a program recursively on an entire directory from the command
line:
a) for Unix systems, this is done in locale/Makefile using standard find
command and xargs which is installed on almost all modern Unices, if you
are unhappy enough to not have it you can use -exec option of find
instead.
b) for Win32 systems this is less trivial: if you have 4DOS/4NT/bash, that's
fine, but you'd have to use some kind of "for /s" loop with the
command.com/cmd.exe.
3. (at least read) access to the cvs is not necessary strictly speaking, but
will make the things a lot easier for you and others.
Now a brief overview of the process of translations (please refer to GNU
gettext documentation for more details). It happens in several steps:
1. the strings to translate are extracted from the C++ sources using xgettext
program into a wxstd.po file which is a "text message catalog"
2. this new wxtd.po file (recreated each one some new text messages are added
to wxWindows) is merged with existing translations in another .po file (for
example, de.po) and replaces this file (this is done using the program
msgmerge)
3. the resulting .po file must be translated
4. finally, msgformat must be run to produce a .mo file: "binary message catalog"
How does it happen in practice? Under Unix there is a Makefile under "locale"
directory which will do almost everything (except translations) for you, i.e.
just type "make lang.po" to create or update the message catalog for 'lang'.
Then edit the resulting lang.po and make sure that there are no empty or fuzzy
translations left (empty translations are the one with msgstr "", fuzzy
translations are those which have the word "fuzzy" in a comment just above
them). Then type "make lang.mo" which will create the binary message catalog.
Under Windows, you should execute the commands manually, please have a look at
Makefile to see what must be done.
=== EOF ===
Author: VZ
Version: $Id$
$Log$
Revision 1.1 2000/03/07 10:53:53 VZ
technote about translations added