blob: c1391a4a61d8e1bab6315cd6360d65fc6df8adbc [file] [log] [blame]
Alexandre Julliard4f8c37b1996-01-14 18:12:01 +00001This file documents the necessary procedure for adding a new language
2to the list of languages that Wine can display system menus and forms
3in.
4
5To add a new language you need to be able to translate the relatively
6few texts, of course. You will need very little knowledge of
7programming, so you have almost no excuses for not adding your language,
8right? We should easily be able to support 20 languages within a few
9months, get going! Apart from re-compilation it'll take you about an
10hour.
11
12To add a new language to the list of languages that Wine can handle
13you must...
14
151. Edit resources/Makefile.in variable "LANGUAGES" to include a new
16 abbreviation for the language.
17
182. Edit ./wine.man (search for -language) to show the new language
19 abbreviation.
20
Alexandre Julliard8bbf8181996-09-13 16:50:47 +0000213. Edit misc/main.c variable "Languages" to contain the new language
22 abbreviation and language ID. Also edit macro "USAGE" to show the
23 new abbreviation.
Alexandre Julliard4f8c37b1996-01-14 18:12:01 +000024
254. Edit include/options.h enum "WINE_LANGUAGE" to have a member called
26 LANG_XX where XX is the new abbreviation.
27
285. Edit misc/ole2nls.c function "GetUserDefaultLCID" to contain an
29 extra case for your language. The correct return values seem to
30 be a mystery, but don't worry.
31
326. Edit resources/sysrec.c to include "sysres_XX.h" where XX is the
33 abbreviation for your language. (That file will be produced auto-
34 matically.) Edit variable "SYSRES_Resources" to contain an entry
35 for your language.
36
377. Create a new file, resources/sysres_XX.rc, where XX is the
38 abbreviation that you chose. Your best bet is to copy one of the
39 other *.rc files and start translating. [Warning: the author of
40 this file does not know the details of the structure of these
41 files. There seems to be no need to, however.]
42
43 In menus, the character "&" means that the next character will
44 be highlighted and that pressing that letter will select the item.
45 You should place these "&"s suitably for your language, not just
46 copy the positions from (say) English. In particular, items within
47 one menu should have different highlighted letters.
48
498. Edit misc/ole2nls.c function "GetLocaleInfoA" to contain a case for
50 your language.
51
529. Re-configure, re-make dependencies, and re-make Wine.
53
5410. Check your new menus and forms; when they're ok, submit patches
55 for inclusion in the next Wine release, see file ./ANNOUNCE for
56 details about where to submit.
57
58
59January 1996
60Morten Welinder
61
62[I hope I got all the places where changes are needed. If you see any
63place missing from the above list, submit a patch to this file please.
64Also note that re-organization of the source code might change the list
65of places.]