]> git.saurik.com Git - wxWidgets.git/blame - docs/tech/tn0002.txt
Weekly OS/2 updtaes
[wxWidgets.git] / docs / tech / tn0002.txt
CommitLineData
f077f5c3
VZ
1 wxWindows translator guide
2 ==========================
3
4This note is addressed to wxWindows translators.
5
6First of all, here is what you will need:
7
81. GNU gettext package version 0.10.35 or later (NB: earlier versions were
9 known to have serious bugs)
10
552861bf
VZ
11 a) for Unix systems you can download gettext-0.10.tar.gz from any GNU
12 mirror (RPMs and DEBs are also available from the usual places)
f077f5c3 13
552861bf
VZ
14 b) for Windows you can download the precompiled binaries from
15 www.wxwindows.org
f077f5c3
VZ
16
172. A way to run a program recursively on an entire directory from the command
18 line:
19
552861bf
VZ
20 a) for Unix systems, this is done in locale/Makefile using the standard find
21 command and xargs which is installed on almost all modern Unices. If you
22 are unlucky enough to not have xargs, you can use the -exec option of find
f077f5c3
VZ
23 instead.
24
25 b) for Win32 systems this is less trivial: if you have 4DOS/4NT/bash, that's
26 fine, but you'd have to use some kind of "for /s" loop with the
27 command.com/cmd.exe.
28
293. (at least read) access to the cvs is not necessary strictly speaking, but
30 will make the things a lot easier for you and others.
31
32
33Now a brief overview of the process of translations (please refer to GNU
34gettext documentation for more details). It happens in several steps:
35
361. the strings to translate are extracted from the C++ sources using xgettext
37 program into a wxstd.po file which is a "text message catalog"
38
552861bf 392. this new wxstd.po file (recreated each time some new text messages are added
f077f5c3
VZ
40 to wxWindows) is merged with existing translations in another .po file (for
41 example, de.po) and replaces this file (this is done using the program
42 msgmerge)
43
443. the resulting .po file must be translated
45
464. finally, msgformat must be run to produce a .mo file: "binary message catalog"
47
48
552861bf 49How does it happen in practice? Under Unix there is a Makefile in the "locale"
f077f5c3
VZ
50directory which will do almost everything (except translations) for you, i.e.
51just type "make lang.po" to create or update the message catalog for 'lang'.
52Then edit the resulting lang.po and make sure that there are no empty or fuzzy
552861bf 53translations left (empty translations are the ones with msgstr "", fuzzy
f077f5c3
VZ
54translations are those which have the word "fuzzy" in a comment just above
55them). Then type "make lang.mo" which will create the binary message catalog.
56
57Under Windows, you should execute the commands manually, please have a look at
58Makefile to see what must be done.
59
60=== EOF ===
61
62Author: VZ
63Version: $Id$
64
65$Log$
552861bf
VZ
66Revision 1.2 2002/07/03 15:01:26 VZ
67typos and other doc corrections from Olly Betts (patch 573738)
68
f077f5c3
VZ
69Revision 1.1 2000/03/07 10:53:53 VZ
70technote about translations added
71