Moving navigation keys to main row (again)

For me it's easier to navigate using ralt + jikl than by arrows. It's like in vim but with additional modificator, in my case - right alt.

To move (duplicate) navigation keys to some other keys it's sufficient to add an overlay in /usr/share/X11/xkb/symbols/us.

For example, to add UP key as an overlay for i button change

key <AD08> {    [   i,  I   ]   };


key <AD08> {    [   i,  I   ], overlay1 = <UP>  };

And the following code configures right alt as overlay trigger:

replace key <RALT> {
  [ISO_Level5_Shift, ISO_Level5_Shift],

modifier_map none { Alt_R };

ISO_Level5_Shift does nothing, so normally it would be VoidSymbol, but Chrome for some reason still interprets VoidSymbol as alt until it is assigned to some do-nothing-symbol.

Overlay done this way work much more reliably than type-based ones. And do not need to be added in each layout.

Cheers and happy speed coding for all ]


free hit counters