]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/tech/tn0002.txt
remove extraneous class scope qualifier
[wxWidgets.git] / docs / tech / tn0002.txt
index 29ef40af71a86393ecb8c1e25797d0e1155aca02..a0d2572126bfe09762321f1e15e9a86a9e187396 100644 (file)
@@ -1,7 +1,7 @@
-                          wxWindows translator guide
+                          wxWidgets translator guide
                           ==========================
 
-This note is addressed to wxWindows translators.
+This note is addressed to wxWidgets translators.
 
 First of all, here is what you will need:
 
@@ -12,7 +12,8 @@ First of all, here is what you will need:
       mirror (RPMs and DEBs are also available from the usual places)
 
    b) for Windows you can download the precompiled binaries from
-      www.wxwindows.org
+      www.wxwidgets.org or install PoEdit (poedit.sourceforge.net) and
+      add <installdir>/poEdit/bin to your path (so it can find xgettext).
 
 2. A way to run a program recursively on an entire directory from the command
    line:
@@ -22,22 +23,23 @@ First of all, here is what you will need:
       are unlucky enough to not have xargs, you can use the -exec option of find
       instead.
 
-   b) for Win32 systems this is less trivial: if you have 4DOS/4NT/bash, that's
+   b) for Win32 systems you can use either Cygwin or MinGW. If you don't have
+      those it 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.
+3. (at least read) access to the subversion is not necessary strictly speaking, but
+   will make 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"
+   program into a wxstd.pot file which is a "text message catalog"
 
-2. this new wxstd.po file (recreated each time some new text messages are added
-   to wxWindows) is merged with existing translations in another .po file (for
+2. this new wxstd.pot file (recreated each time some new text messages are added
+   to wxWidgets) is merged with existing translations in another .po file (for
    example, de.po) and replaces this file (this is done using the program
    msgmerge)
 
@@ -46,16 +48,31 @@ gettext documentation for more details). It happens in several steps:
 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 in the "locale"
-directory which will do almost everything (except translations) for you, i.e.
+How does it happen in practice? There is a Makefile in the "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 ones 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.
+Under Windows (If you don't have Cygwin or MinGW), you should execute the
+commands manually, please have a look at Makefile to see what must be done.
+
+For platform specific translations, .po files such as 'locale/msw/it.po' can be
+used to provide translations that override the usual ones in 'locale/it.po'.
+The generated .mo files are then installed under the names such as 'wxmsw.mo'
+alongside the generic 'wxstd.mo'.
+
+A new platform specific translation should be added to a section such as this
+in wx.bkl:
+
+    <gettext-catalogs id="locale_msw">
+        <srcdir>$(SRCDIR)/locale/msw</srcdir>
+        <catalog-name>wxmsw</catalog-name>
+        <linguas>it</linguas>
+        <install-to>$(LOCALEDIR)</install-to>
+    </gettext-catalogs>
 
 === EOF ===
 
@@ -63,6 +80,21 @@ Author:  VZ
 Version: $Id$
 
 $Log$
+Revision 1.7  2005/08/12 15:34:01  MW
+Typo
+
+Revision 1.6  2005/08/12 15:29:47  MW
+Translate '&Help' to '&' for italian Windows only
+
+Revision 1.5  2004/10/22 19:12:59  KH
+*** empty log message ***
+
+Revision 1.4  2004/05/04 08:26:58  JS
+Name change replacements
+
+Revision 1.3  2003/11/18 16:37:11  DS
+Updated translation technote to mention Makefile usage under Windows.
+
 Revision 1.2  2002/07/03 15:01:26  VZ
 typos and other doc corrections from Olly Betts (patch 573738)