Alexandre Julliard | 4f8c37b | 1996-01-14 18:12:01 +0000 | [diff] [blame] | 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. |
| 4 | |
| 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 |
| 10 | hour. |
| 11 | |
| 12 | To add a new language to the list of languages that Wine can handle |
| 13 | you must... |
| 14 | |
| 15 | 1. Edit resources/Makefile.in variable "LANGUAGES" to include a new |
| 16 | abbreviation for the language. |
| 17 | |
| 18 | 2. Edit ./wine.man (search for -language) to show the new language |
| 19 | abbreviation. |
| 20 | |
Alexandre Julliard | 8bbf818 | 1996-09-13 16:50:47 +0000 | [diff] [blame^] | 21 | 3. 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 Julliard | 4f8c37b | 1996-01-14 18:12:01 +0000 | [diff] [blame] | 24 | |
| 25 | 4. Edit include/options.h enum "WINE_LANGUAGE" to have a member called |
| 26 | LANG_XX where XX is the new abbreviation. |
| 27 | |
| 28 | 5. 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 | |
| 32 | 6. 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 | |
| 37 | 7. 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 | |
| 49 | 8. Edit misc/ole2nls.c function "GetLocaleInfoA" to contain a case for |
| 50 | your language. |
| 51 | |
| 52 | 9. Re-configure, re-make dependencies, and re-make Wine. |
| 53 | |
| 54 | 10. 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 | |
| 59 | January 1996 |
| 60 | Morten Welinder |
| 61 | |
| 62 | [I hope I got all the places where changes are needed. If you see any |
| 63 | place missing from the above list, submit a patch to this file please. |
| 64 | Also note that re-organization of the source code might change the list |
| 65 | of places.] |