Вищезазначені зміни в / usr / share / X11 / xkb / символах / для мене НЕ працюють:
Помилка завантаження нового опису клавіатури
Але переглянувши безліч суперечливих хаутов, я придумав рішення, яке відображає ліву супер-клавішу (ліва клавіша Windows / Mod4) у поєднанні з hjkl вліво, вниз, вгору, вправо. Це загальносистемне налаштування.
Додайте цей блок до кінця першого розділу (прямо перед };
) вашого / usr / share / X11 / xkb / символів / 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!
Перший ключовий рядок відображає AltGr + h вліво.
Останній ключовий рядок змушує ліву супер-клавішу вести себе як AltGr.
Ось вам:
Супер + h -> Вліво
Супер + j -> Вниз
Супер + k -> Вгору
Супер + l -> Вправо
Щоб застосувати нові налаштування, запустіть setxkbmap або перезавантажте систему.
Важливо : Це, очевидно, вимикає супер ключ, тому якщо ви дійсно використовуєте свій супер ключ для інших цілей (тобто переміщення вікна в іншу робочу область), не слід перезавантажувати його так.
Щоб використовувати Caps Lock замість Super, змініть останній ключовий рядок на:
key <CAPS> { [ ISO_Level3_Shift ] };
Ось повний перший розділ мого конфігураційного файлу:
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 ] };
};
Я сподіваюся, що це комусь допоможе ...
Якщо у когось є краще рішення, будь ласка, дайте мені знати.
Редагувати: Тестовано на Fedora.