1 This file documents the necessary procedure for adding a new language
2 to the list of languages that Wine can display system menus and forms
3 in. Currently at least the following languages are still missing:
4 Bulgarian, Chinese, Greek, Icelandic, Japanese, Dutch, Polish, Portuguese,
5 Romanian, Russian, Croatian, Slovak, Turkish, and Slovanian.
7 To add a new language you need to be able to translate the relatively
8 few texts, of course. You will need very little knowledge of
9 programming, so you have almost no excuses for not adding your language,
10 right? We should easily be able to support 20 languages within a few
11 months, get going! Apart from re-compilation it'll take you about an
14 To add a new language to the list of languages that Wine can handle
17 1. Edit ./wine.man (search for -language) to show the new language
20 2. Edit misc/main.c variable "Languages" to contain the new language
21 abbreviation and language ID. Also edit macro "USAGE" to show the
24 3. Edit include/options.h enum "WINE_LANGUAGE" to have a member called
25 LANG_XX where XX is the new abbreviation.
27 4. Edit ole/ole2nls.c function "GetUserDefaultLCID" to contain a
28 case for your language by uncommenting the return value of it.
30 5. Edit resources/sysrec.c to include "sysres_XX.h" where XX is the
31 abbreviation for your language. (That file will be produced auto-
32 matically.) Edit variable "SYSRES_Resources" to contain an entry
35 6. Create a new file, resources/sysres_XX.rc, where XX is the
36 abbreviation that you chose. Your best bet is to copy one of the
37 other *.rc files and start translating. [Warning: the author of
38 this file does not know the details of the structure of these
39 files. There seems to be no need to, however.]
41 In menus, the character "&" means that the next character will
42 be highlighted and that pressing that letter will select the item.
43 You should place these "&"s suitably for your language, not just
44 copy the positions from (say) English. In particular, items within
45 one menu should have different highlighted letters.
47 7. Edit resources/Makefile.in to add the name of the new file to the
50 8. Edit ole/ole2nls.c function "GetLocaleInfoA" to contain a case for
53 9. Re-configure, re-make dependencies, and re-make Wine.
55 10. Check your new menus and forms; when they're ok, submit patches
56 for inclusion in the next Wine release, see file ./ANNOUNCE for
57 details about where to submit.
63 [I hope I got all the places where changes are needed. If you see any
64 place missing from the above list, submit a patch to this file please.
65 Also note that re-organization of the source code might change the list