For some languages you will need to create a keyboard. For many Latin languages this is not that difficult for others it can get quite elaborate and time consuming. Its easy if you are simply capturing the keyboard operation from an existing platform eg migrating a Microsoft based keyboard to Linux. However, if you are creating a whole new keyboard then you have a number of issues such as acceptance of the keyboard and standardisation processes.
This will only work on Windows 2000 and XP. It WILL NOT work on Windows 95, 98, ME or NT 4
Firstly load an existing keyboard layout if you simply want to extend and existing layout.
You will notice that you can define keys for for each of the shift states and for the other modified state (usualy AltGr). For dead keys you must define one of the states as being a dead key and then define each of the combinations. Quite easy but tedious.
Once you are happy with your keyboard then select ‘Project - Test Keyboard Layout...’ you will see a text entry field and can type and test the keyboard. If all works well then select ‘Project - Validate Layout’, this will give you a report about any problems that were detected in your keyboard.
Want a picture of your new keyboard? ‘File - Save As Image’ - they’re ugly but they get the message across.
The last step is to build your keyboard for that select ‘Project - Build DLL and Setup Package’. This will create and MSI installer and a keyboard DLL, see the section below for steps on how to actually make the installer work.
The MSKLC creates .msi files that don’t contain the dll (they put it in a separate file).
In the keyboards/za module in CVS there is an example of how to rebuild these files correctly (for the South African keyboards). You need to run Make xx-xx.msi (and have the WiX binaries installed, see below) to rebuild the msi file for a language. You will probably need cygwin to run Make (it requires sed as well).
Manual way to fix this:
/path/to/wix/dark.exe -x . path/to/us-za.msi us-za.wxs
/path/to/wix/candle.exe us-za.wxs
/path/to/wix/light.exe us-za.wixobj
You should see that the built installer has increased in size.
Edit the .wxs file before the candle and light commands:
It’s nasty using a GUI tool
http://lists.sharif.edu/pipermail/persiancomputing/2004-June/001425.html seems to be an approach to making it command-line...
This will only work for Windows 95, 98 and ME.
Please note that if your languages characters are not in any Microsoft codepages then you will not be able to create a keyboard with those characters. Michael Kaplan (the Microsoft localisation guru) explains why not in this blog entry (look at the second one). Essentially Windows 95 is an old product which MS has stopped supporting and they’d rather you move to something new, they’re both technical and marketing considerations.
various pointers
This prooves rather harder than expected. These pages will give you some pointers that are hopefully helpfull.
This project is trying to bring the kyman keyboard mapings to Linux it is/will be GPL‘d
The various Linux distros have different configuration applications for setting things like keyboard. These few notes give a quick guide as to what files you need to change and where you need to look.
The application system-config-keyboard
sets the keyboard for your setup. It is simply a configuration tool for the normal X keyboard mappings. The file keyboard_models.py
which is part of rhpl needs to be edited to add your keyboard.
SIL has created a nice tools called Ukelele designed to create the XML files needed by the Macs keyboard system.