[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: swiss german keyboard config needed (xev results)



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
 

Reply to: