Changing non-printing keys in keyboard layout
Dirk Wallenstein
halsmit at t-online.de
Mon May 9 08:19:58 PDT 2011
On Mon, May 09, 2011 at 05:56:42PM +0300, Dotan Cohen wrote:
> On Mon, May 9, 2011 at 17:26, Dirk Wallenstein <halsmit at t-online.de> wrote:
> > On Mon, May 09, 2011 at 02:56:03PM +0300, Dotan Cohen wrote:
> >> I seem to have a problem with the modifier keys affecting other
> >> layouts. For instance, in ~/symbols/pc I have added these lines to the
> >> bottom:
> >>
> >> partial modifier_keys
> >> xkb_symbols "noah" {
> >> modifier_map Lock { <AB05> };
> >> };
> >>
> >> However, now the B key is Caps Lock in the standard US keyboard layout
> >> as well! How can I restrict this change only to the Noah variant?
> >> Would I be better off making Noah not a variant of US but rather it's
> >> own separate layout?
> > Do you include the "noah" symbols from somewhere else?
> > Isn't it simply this?:
> >
> > xkb_symbols "noah" {
> > include "us"
> > modifier_map Lock { <AB05> };
> > };
> >
>
> I'm sorry, I'm not sure that I follow you. From where else should I
> have included the "noah" symbols? This is what I have done (the
> unshown parts of the files have not been touched):
>
> ✈demios:~$ tail /usr/share/X11/xkb/symbols/us -n 68
> xkb_symbols "noah" {
> name[Group1]= "USA - Noah Ergonomic";
> include "pc(noah)"
> key <TLDE> { [ 5, percent ] };
> key <AE01> { [ 4, dollar ] };
> key <AE02> { [ 3, numbersign ] };
> key <AE03> { [ 2, at ] };
> key <AE04> { [ 1, exclam ] };
> key <AE05> { [ Escape ] };
> key <AE06> { [ grave, asciitilde ] };
> key <AE07> { [ minus, underscore ] };
> key <AE08> { [ equal, plus ] };
> key <AE09> { [ 6, asciicircum ] };
> key <AE10> { [ 7, ampersand ] };
> key <AE11> { [ 8, asterisk ] };
> key <AE12> { [ 9, parenleft ] };
> key <BKSP> { [ 0, parenright ] };
>
> key <TAB> { [ q, Q ] };
> key <AD01> { [ w, W ] };
> key <AD02> { [ e, E ] };
> key <AD03> { [ r, R ] };
> key <AD04> { [ t, T ] };
> key <AD05> { [ Tab, Tab ] };
> key <AD06> { [ bracketleft, braceleft ] };
> key <AD07> { [ bracketright, braceright ] };
> key <AD08> { [ y, Y ] };
> key <AD09> { [ u, U ] };
> key <AD10> { [ i, I ] };
> key <AD11> { [ o, O ] };
> key <AD12> { [ p, P ] };
> key <BKSL> { [ slash, question ] };
>
> key <CAPS> { [ a, A ] };
> key <AC01> { [ s, S ] };
> key <AC02> { [ d, D ] };
> key <AC03> { [ f, F ] };
> key <AC04> { [ g, G ] };
> key <AC05> { [ Return ] };
> key <AC06> { [ apostrophe, quotedbl ] };
> key <AC07> { [ Return ] };
> key <AC08> { [ h, H ] };
> key <AC09> { [ j, J ] };
> key <AC10> { [ k, K ] };
> key <AC11> { [ l, L ] };
> key <RTRN> { [ semicolon, colon ] };
>
> key <LFSH> { [ z, Z ] };
> key <AB01> { [ x, X ] };
> key <AB02> { [ c, C ] };
> key <AB03> { [ v, V ] };
> key <AB04> { [ b, B ] };
> key <AB05> { [ Backspace, Caps_Lock ] };
> key <AB06> { [ Super_L, Super_R ] };//test these
> key <AB07> { [ backslash, bar ] };
> key <AB08> { [ n, N ] };
> key <AB09> { [ m, M ] };
> key <AB10> { [ comma, less ] };
> key <RTSH> { [ period, greater ] };
>
> key <LCTL> { [ Control_L ] };
> key <LWIN> { [ Alt_L ] };
> key <LALT> { [ Shift_L ] };
> key <SPCE> { [ space ] };
> key <RALT> { [ Shift_R ] };
> key <RWIN> { [ Alt_R ] };//test this
> key <RCTL> { [ Control_R ] };
> };
> ✈demios:~$
> ✈demios:~$ tail /usr/share/X11/xkb/symbols/pc -n 4
> partial modifier_keys
> xkb_symbols "noah" {
> modifier_map Lock { <AB05> };
> };
> ✈demios:~$
I have some holes concerning how a final keymap gets assembled, I'm
afraid. Are you aware of the registration in the *.dir files and such?
Maybe add hints to the us additions:
partial alphanumeric_keys modifier_keys
If that doesn't help I would recommend the xkeyboard-config mailing
list:
http://listserv.bat.ru/xkb/List.html
--
Cheers,
Dirk
More information about the xorg
mailing list