Adding a new keyboard layout

All development related issues welcome

Moderator: Moderator Team

Post Reply
RomanH
Posts: 83
Joined: Fri Nov 26, 2004 11:14 pm
Location: Switzerland

Adding a new keyboard layout

Post by RomanH »

Hello everybody,

I now have a working build environment and would like to add a keyboad layout.

I've read http://reactos.com/wiki/index.php/HOWTO ... ard_layout and have found the other keyboard layouts in the source (\lib\kbd*)

My plan is to copy \lib\kbdgr\ to \lib\kbdsg\ (sg=swiss german) and modify the necessary files.

my questions:
- What is the best way to test my changes? (e.g. how can I make my layout the standard layout when creating a livecd?)
- what makefiles / etc. outside that folder need to be changed? I assume that the main makefile in the root directory needs the followin addition:
# Keyboard layout libraries
DLLS_KBD = kbdda kbddv kbdes kbdfr kbdgr kbdse kbduk kbdus kbdsg

thanks!
RomanH
GvG
Posts: 499
Joined: Mon Nov 22, 2004 10:50 pm
Location: The Netherlands

Post by GvG »

I haven't done this before (I'm perfectly happy with the standard US keyboard), so please don't get angry at me when I forget something :)
You need to add entries for your new layout in bootdata/hivesys.inf. Search for "Keyboard Layouts" and add an entry for your new layout. As for the number you need there (like "0x409" for US), I think it's 0x807 (LANG_GERMAN with SUBLANG_GERMAN_SWISS).
You probably need to add an entry below "NLS Language settings" too, no idea what that does, I'd just copy an existing entry and adjust. Then change "Default" and "InstallLanguage" to 0807.
Last change to the registry files: in bootdata/hivedef.sys, near the top, "Control Panel\International", "Locale" change "0409" to "0807".

You are right about the main Makefile. There's one other place you need to change something: bootdata/packages/reactos.dff. Just follow the example of the other lib/kbd* stuff in there.

When you get this to work, could you add a description of what you needed to do to the Wiki page you referenced?
RomanH
Posts: 83
Joined: Fri Nov 26, 2004 11:14 pm
Location: Switzerland

Post by RomanH »

just tried what you suggested and it works perfectly. I succesfully created a clone of the German layout with the keys "A" and "F" switched. :D

once I've done the keyboard layout I'll of course write a "how-to".
RomanH
RomanH
Posts: 83
Joined: Fri Nov 26, 2004 11:14 pm
Location: Switzerland

Post by RomanH »

just as an information: I'm still working on my keyboard layout. Tedious kinda job this is... :)

But I'll keep at it and I will write a comprehensive howto in the end. (maybe thursday or friday... if all goes well)
RomanH
LOst
Posts: 27
Joined: Sat Feb 12, 2005 9:33 pm

Post by LOst »

RomanH wrote:just as an information: I'm still working on my keyboard layout. Tedious kinda job this is... :)
Yea, think how funny it is to program you own operating system alone! Then this keyboard layout is nothing compared to everything you have to do from scratch just to see it not work on another computer! Love the PC!
Post Reply

Who is online

Users browsing this forum: No registered users and 7 guests