All patches and comments are welcome. Please squash your changes to logical
commits before using git-format-patch and git-send-email to
patches@git.madduck.net.
If you'd read over the Git project's submission guidelines and adhered to them,
I'd be especially grateful.
2 ! don't make anything but Control_[LR] generate control
4 add Control = Control_L
6 !add Control = Control_R
13 ! we kill caps lock once and for all and make it generate mod5
16 keycode 0x42 = Caps_Lock
21 ! now for what had me so long baffled. any keycode can generate eight keysyms,
22 ! but only the first four are used. and the way to index into them is by using
23 ! Shift and Mode_switch. my keyboard had no Mode_switch, so I am using that
27 ! now we assign the Mode_switch keysym to both Windoze keys
28 keycode 0x73 = Mode_switch
29 keycode 0x74 = Mode_switch
31 keycode 0x71 = Mode_switch
33 ! ... and tell the Mode_switch keysym to generate the mod4 modifier.
35 add Mod5 = Mode_switch
37 ! assign Super_R to the Menu key
38 keycode 0x75 = Super_R
39 !right control on lapse
40 keycode 0x6d = Super_R
42 ! ... and make it generate the mod3 modifier
47 ! and now all we need to do is add what we would like to the keys.
48 ! if this approach doesn't work, you'll need to go via keycodes, e.g.:
50 ! keycode 0x26 = a A adiaeresis Adiaeresis
52 ! however, you'll have to check which keycode is generated by which keypress.
53 ! use xev(1) for that.
55 keysym backslash = backslash bar aring Aring
56 keysym bracketleft = bracketleft braceleft ae AE
57 keysym bracketright = bracketright braceright oslash Ooblique
58 keysym comma = comma less cedilla guillemotleft
59 keysym equal = equal plus plusminus plusminus
60 keysym grave = grave asciitilde degree degree
61 keysym minus = minus underscore division notsign
62 keysym period = period greater periodcentered guillemotright
63 keysym slash = slash question exclamdown questiondown
64 keysym 0 = 0 parenright oacute Oacute
65 keysym 1 = 1 exclam onesuperior onequarter
66 keysym 2 = 2 at twosuperior onehalf
67 keysym 3 = 3 numbersign threesuperior threequarters
68 keysym 4 = 4 dollar eacute Eacute
69 keysym 5 = 5 percent EuroSign cent
70 keysym 6 = 6 asciicircum copyright registered
71 keysym 7 = 7 ampersand yacute Yacute
72 keysym 8 = 8 asterisk uacute Uacute
73 keysym 9 = 9 parenleft iacute Iacute
74 keysym a = a A adiaeresis Adiaeresis
75 keysym b = b B otilde Otilde
76 keysym c = c C ccedilla Ccedilla
77 keysym d = d D egrave Egrave
78 keysym e = e E ediaeresis Ediaeresis
79 keysym f = f F eth Eth
80 keysym g = g G thorn Thorn
81 keysym h = h H ucircumflex Ucircumflex
82 keysym i = i I idiaeresis Idiaeresis
83 keysym j = j J ugrave Ugrave
84 keysym k = k K igrave Igrave
85 keysym l = l L ograve Ograve
87 keysym n = n N ntilde Ntilde
88 keysym o = o O odiaeresis Odiaeresis
89 keysym p = p P ocircumflex Ocircumflex
90 keysym q = q Q acircumflex Acircumflex
91 keysym r = r R ecircumflex Ecircumflex
92 keysym s = s S ssharp section
93 keysym t = t T icircumflex Icircumflex
94 keysym u = u U udiaeresis Udiaeresis
95 keysym v = v V atilde Atilde
96 keysym w = w W aacute Aacute
97 keysym x = x X multiply multiply
98 keysym y = y Y ydiaeresis ydiaeresis
99 keysym z = z Z agrave Agrave
102 ! http://www.thinkwiki.org/wiki/Installing_OpenSUSE_10.0_on_a_ThinkPad_X41#Numlock_and_Browse_keys
103 keycode 77 = Num_Lock
104 keycode 233 = XF86Forward
105 keycode 234 = XF86Back
108 keycode 159 = XF86Excel