As alterações acima mencionadas em / usr / share / X11 / xkb / symbols / us NÃO funcionam para mim:
Erro ao carregar a nova descrição do teclado
Mas, depois de analisar vários howtos contraditórios, encontrei uma solução, que mapeia a tecla super esquerda (tecla esquerda do Windows / Mod4) em combinação com o hjkl para esquerda, baixo, cima, direita. Essa é uma configuração para todo o sistema.
Adicione este bloco ao final da primeira seção (logo antes };
) do seu / usr / share / X11 / xkb / symbols / us :
//hjkl
//AltGr + hjkl
key <AC06> { [ h, H, Left ] };
key <AC07> { [ j, J, Down ] };
key <AC08> { [ k, K, Up ] };
key <AC09> { [ l, L, Right ] };
//Super_L -> Alt Gr
key <LWIN> { [ ISO_Level3_Shift ] }; //see below!
A primeira linha-chave mapeia AltGr + h para a esquerda.
A última linha da tecla faz com que a super tecla esquerda se comporte como AltGr.
Aqui está:
Super + h -> Esquerda
Super + j -> Abaixo
Super + k -> Acima
Super + l -> Direita
Para aplicar as novas configurações, execute setxkbmap ou reinicie o sistema.
Importante : Isso obviamente desativa a super chave, portanto, se você estiver realmente usando sua super chave para outros fins (por exemplo, mover uma janela para outra área de trabalho), não deverá remapear dessa maneira.
Para usar o Caps Lock em vez de Super, altere a última linha da tecla com:
key <CAPS> { [ ISO_Level3_Shift ] };
Aqui está a primeira seção completa do meu arquivo de configuração:
default
partial alphanumeric_keys modifier_keys
xkb_symbols "basic" {
name[Group1]= "English (US)";
// Alphanumeric section
key <TLDE> { [ grave, asciitilde ] };
key <AE01> { [ 1, exclam ] };
key <AE02> { [ 2, at ] };
key <AE03> { [ 3, numbersign ] };
key <AE04> { [ 4, dollar ] };
key <AE05> { [ 5, percent ] };
key <AE06> { [ 6, asciicircum ] };
key <AE07> { [ 7, ampersand ] };
key <AE08> { [ 8, asterisk ] };
key <AE09> { [ 9, parenleft ] };
key <AE10> { [ 0, parenright ] };
key <AE11> { [ minus, underscore ] };
key <AE12> { [ equal, plus ] };
key <AD01> { [ q, Q ] };
key <AD02> { [ w, W ] };
key <AD03> { [ e, E ] };
key <AD04> { [ r, R ] };
key <AD05> { [ t, T ] };
key <AD06> { [ y, Y ] };
key <AD07> { [ u, U ] };
key <AD08> { [ i, I ] };
key <AD09> { [ o, O ] };
key <AD10> { [ p, P ] };
key <AD11> { [ bracketleft, braceleft ] };
key <AD12> { [ bracketright, braceright ] };
key <AC01> { [ a, A ] };
key <AC02> { [ s, S ] };
key <AC03> { [ d, D ] };
key <AC04> { [ f, F ] };
key <AC05> { [ g, G ] };
key <AC06> { [ h, H ] };
key <AC07> { [ j, J ] };
key <AC08> { [ k, K ] };
key <AC09> { [ l, L ] };
key <AC10> { [ semicolon, colon ] };
key <AC11> { [ apostrophe, quotedbl ] };
key <AB01> { [ z, Z ] };
key <AB02> { [ x, X ] };
key <AB03> { [ c, C ] };
key <AB04> { [ v, V ] };
key <AB05> { [ b, B ] };
key <AB06> { [ n, N ] };
key <AB07> { [ m, M ] };
key <AB08> { [ comma, less ] };
key <AB09> { [ period, greater ] };
key <AB10> { [ slash, question ] };
key <BKSL> { [ backslash, bar ] };
// End alphanumeric section
//hjkl
//AltGr + hjkl
key <AC06> { [ h, H, Left ] };
key <AC07> { [ j, J, Down ] };
key <AC08> { [ k, K, Up ] };
key <AC09> { [ l, L, Right ] };
//Super_L -> Alt Gr
key <LWIN> { [ ISO_Level3_Shift ] };
};
Espero que isso ajude alguém lá fora ...
Se alguém tiver uma solução melhor, entre em contato.
Edit: Testado no Fedora.