On Monday 25 August 2003 9:57, Andreas Wüst wrote: > But hey, thank you very much!! I've now lost a bit track, testing all > the new laptop keymap versions and its patches. But from my point of > view, this seems to lead to the right solution.
I've attached a patch here that should apply to the Debian sid version of xlibs (4.2.1-10). If it applies cleanly, you should be able to configure the laptop keymap by putting this in your XF86Config-4: Section "InputDevice" Identifier "Generic Keyboard" Driver "keyboard" Option "CoreKeyboard" Option "XkbRules" "xfree86" Option "XkbModel" "macintosh" Option "XkbLayout" "de_CH" Option "XkbVariant" "laptop" EndSection Then you can do your Mode_switch with the Enter key next to the spacebar. Let me know how it works. > Problems seems to be that Apple likes to change its keyboard layout > every now and then, and also being inconsistent across the various > country variants. It's more that they haven't made up their mind about which mod keys should be where. Plus the fact that in Mac OS, the option/alt key is the Mode_switch key, but on PC keyboards it's just the right alt (AltGr). On laptops, they gave both Alt keys to the same scancode. > So if you need any information about the swiss german keyboard layout or > the key labels, feel free to contact me! Well, if you could try the patch and let me know what works and what doesn't. I'm most interested in if you can use the keys defined in the `apple` file, but also any problems in the de_CH file, so please try to generate all the symbols engraved on your keyboard. Frank
--- symbols.dir.dist 2003-02-26 09:39:56.000000000 +0100 +++ symbols.dir 2003-08-24 12:00:07.000000000 +0200 @@ -6,7 +6,10 @@ --p----- -m------ altwin(super_win) --p----- -m------ altwin(hyper_win) --p----- -m------ altwin(menu) +--p----- -m------ altwin(macos_alt) -dp----- a------- am(basic) +-dp----- -m------ apple(extended) +--p----- -m------ apple(laptop) -dp----- a------- ar(basic) --p----- a------- ar(qwerty) --p----- a------- ar(azerty) --- rules/xfree86.dpkg-dist 2003-02-26 09:39:56.000000000 +0100 +++ rules/xfree86 2003-08-24 11:54:28.000000000 +0200 @@ -56,6 +56,7 @@ pc105 nodeadkeys = en_US(pc105%_v)+%l%(v) microsoft nodeadkeys = en_US(pc104%_v)+%l%(v) macintosh nodeadkeys = macintosh/us(extended)+macintosh/%l%(v) + macintosh laptop = macintosh/us(extended)+apple%(v) powerpcps2 nodeadkeys = en_US(pc104%_v)+%l%(v) * nodeadkeys = en_US(pc101%_v)+%l%(v) --- /dev/null 2003-03-05 13:03:56.000000000 +0100 +++ symbols/apple 2003-08-24 12:09:30.000000000 +0200 @@ -0,0 +1,39 @@ +// +// Keyboard modification for Apple keyboards +// +// $Xfree86: $ + +partial default modifier_keys +xkb_symbols "extended" { + +// Keypad equal is buggy on XFree 4.3. +// key <KPEQ> { [ KP_Equal ] }; + key <INS> { [ Help, Insert ] }; +// The keys next to F12, labeled F13, F14, & F15 generate codes that XFree86 +// claims not to generate. I think they should be equivalent to the PC keys +// Print Screen / SysRq, Scroll Lock, and Pause, but there may be a kernel bug. +// key <PRSC> { [ F13 ] }; // keycode 93 +// key <SCLK> { [ F14 ] }; // keycode 123 +// key <PAUS> { [ F15 ] }; // keycode 127 +}; + +partial modifier_keys +xkb_symbols "laptop" { + + include "apple(extended)" + + // The real numlock key on the iBook (shared with F5) works internally to + // the keyboard. It illuminates the Num_Lock led and locks the fn-key to + // type only the keypad keys on the letter keys (U=4, I=5, O=6, P=*, etc.). + // The key in the Num_lock position is engraved with Clear. + override key <NMLK> { [ Clear ] }; + // The key engraved Delete sends BKSP. To get Delete, use Shift-Delete + override key <BKSP> { [ BackSpace, Delete ] }; + // These keyboards only generate a <RALT> when pressing fn+Alt. This makes + // it impossible to get to the third shift level on keys that are on + // the fn-keypad, so use the Enter key (right of <SPC>) for Mode_switch, + // and use fn+Enter (Apple's code for Menu) for KP_Enter. + replace key <KPEN> { [ Mode_switch ] }; + // kernel bug with Menu on macs means this doesn't work yet +// replace key <MENU> { [ KP_Enter ] }; // should be keycode 117 +}; --- symbols/macintosh/us.dpkg-dist 2003-08-20 11:22:11.000000000 +0200 +++ symbols/macintosh/us 2003-08-05 20:24:56.000000000 +0200 @@ -1,5 +1,5 @@ // $XConsortium: macintosh /main/10 1996/01/29 19:54:54 kaleb $ -// $XFree86: xc/programs/xkbcomp/symbols/macintosh/us,v 1.6 2001/10/03 07:44:23 alanh Exp $ +// $XFree86: xc/programs/xkbcomp/symbols/macintosh/us,v 1.8 2003/08/04 10:32:31 eich Exp $ // symbols definition for a Macintosh "Extended" keyboard @@ -129,19 +129,19 @@ key <RTSH> { [ Shift_R ] }; key <LCTL> { [ Control_L ] }; key <RCTL> { [ Control_R ] }; - key <LALT> { [ Alt_L ] }; - key <RALT> { [ Alt_R ] }; - key <LWIN> { [ Meta_L ] }; - key <WWIN> { [ Meta_R ] }; + key <LALT> { [ Alt_L, Meta_L ] }; + key <RALT> { [ Alt_R, Meta_R ] }; + key <LWIN> { [ Super_L ] }; + key <RWIN> { [ Super_R ] }; // End "Modifier" section // begin modifier mappings modifier_map Shift { Shift_L , Shift_R }; modifier_map Lock { Caps_Lock }; modifier_map Control{ Control_L, Control_R }; - modifier_map Mod1 { Alt_L, Alt_R }; + modifier_map Mod1 { Alt_L, Alt_R, Meta_L, Meta_R }; modifier_map Mod2 { Num_Lock }; - modifier_map Mod4 { Meta_L, Meta_R }; + modifier_map Mod4 { Super_L, Super_R }; modifier_map Mod5 { Scroll_Lock }; // end modifier mappings