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
5 To add a new language you need to be able to translate the relatively
6 few texts, of course. You will need very little knowledge of
7 programming, so you have almost no excuses for not adding your language,
8 right? We should easily be able to support 20 languages within a few
9 months, get going! Apart from re-compilation it'll take you about an
12 To add a new language to the list of languages that Wine can handle
15 1. Edit resources/Makefile.in variable "LANGUAGES" to include a new
16 abbreviation for the language.
18 2. Edit ./wine.man (search for -language) to show the new language
21 3. Edit misc/main.c variable "langNames" to contain the new language
22 abbreviation. Also edit macro "USAGE" to show the new abbreviation.
24 4. Edit include/options.h enum "WINE_LANGUAGE" to have a member called
25 LANG_XX where XX is the new abbreviation.
27 5. Edit misc/ole2nls.c function "GetUserDefaultLCID" to contain an
28 extra case for your language. The correct return values seem to
29 be a mystery, but don't worry.
31 6. Edit resources/sysrec.c to include "sysres_XX.h" where XX is the
32 abbreviation for your language. (That file will be produced auto-
33 matically.) Edit variable "SYSRES_Resources" to contain an entry
36 7. Create a new file, resources/sysres_XX.rc, where XX is the
37 abbreviation that you chose. Your best bet is to copy one of the
38 other *.rc files and start translating. [Warning: the author of
39 this file does not know the details of the structure of these
40 files. There seems to be no need to, however.]
42 In menus, the character "&" means that the next character will
43 be highlighted and that pressing that letter will select the item.
44 You should place these "&"s suitably for your language, not just
45 copy the positions from (say) English. In particular, items within
46 one menu should have different highlighted letters.
48 8. Edit misc/ole2nls.c function "GetLocaleInfoA" to contain a case for
51 9. Re-configure, re-make dependencies, and re-make Wine.
53 10. Check your new menus and forms; when they're ok, submit patches
54 for inclusion in the next Wine release, see file ./ANNOUNCE for
55 details about where to submit.
61 [I hope I got all the places where changes are needed. If you see any
62 place missing from the above list, submit a patch to this file please.
63 Also note that re-organization of the source code might change the list