Mapping Left Control to Hyper using xkb

How can I map left Ctrl to behave as hyper (left hyper) using xkb? Look at this in keycodes/evdev:

// Fake keycodes for virtual keys
<LVL3> =   92;
<MDSW> =   203;
<ALT>  =   204;
<META> =   205;
<SUPR> =   206;
<HYPR> =   37;

Why these are fake? I set <HYPR> to 37 to do the mapping but now left Ctrl keysym (using xev) is keysym 0x0, NoSymbol. I guess it's related to the comment above these lines. Any ideas? (I can do it with xmodmap, but I want it with xkb.)

Answers 1

  • This is how I did so: Edited evdev to:

    ...
    <CAPS> = 37;
    ...
    <LCTL> = 66;
    ...
    

    <LCTL> = 66 was already there as I wanted caps to be left control. I just made left control produce caps with <CAPS> = 37 and then edited symbols/pc to:

    ...
    key <CAPS> {    [ Hyper_L       ]   };
    ...
    

    Now I wonder if I can do these changes in a dotfile in my home directory.


Related Questions