Я хотел бы немного изменить раскладку клавиатуры. Как это лучше всего сделать?

Я хотел бы немного изменить раскладку клавиатуры. Как это лучше всего сделать?

Я использую клавиатуру Apple, которая имеет некоторые неудобства по сравнению с другими клавиатурами. А именно, клавиши Alt_L и Super_L поменяны местами, а клавиши bar и less поменяны местами ("|" и "<").

Я написал файл Xmodmap для обратной замены ключей:

keycode  49 = less greater less greater onehalf threequarters
keycode  64 = Super_L NoSymbol Super_L
keycode  94 = bar section bar section brokenbar paragraph
keycode 108 = Super_R NoSymbol Super_R
keycode 133 = Alt_L Meta_L Alt_L Meta_L
keycode 134 = Alt_R Meta_R Alt_R Meta_R

Я сделал это, определив клавиши с помощью xevmodmap по умолчанию xmodmap -pkeи поменяв коды клавиш. xevТеперь все мои клавиши определяются как правильные, что потрясающе! Я также могу использовать правильные клавиши для ввода символов bar и less than. (Я следовал этому ответу на askubuntu:https://askubuntu.com/q/24916/52719)

Но, похоже, изменение не очень глубокое. Например, клавиша Super теперь не работает в диспетчере настроек Compiz. Никакие сочетания клавиш с клавишей Super не работают (но клавиша Alt работает). Также диалоговое окно настроек дляГном Делайне учитывает изменения в xmodmap, и я не могу открытьГном Делайбольше не будет открываться окно, если я использую любую из переназначенных клавиш.

Итак, подведем итог: все сломалось.

Мне бы хотелось более глубокого способа сообщить Ubuntu (или любому другому дистрибутиву Linux), какие клавиши соответствуют каким на клавиатуре. Есть ли способ редактировать раскладку клавиатуры напрямую? Я использую раскладку клавиатуры Norwegian Bokmål. Она находится в файле, где я могу ее редактировать?

Любые комментарии, предыдущий опыт или соответствующие разрозненные мысли будут высоко оценены.

Спасибо

решение1

Я наконец-то добился того, что это заработало после нескольких часов попыток. Я нашел файл, в котором сканкоды evdev транслируются в коды клавиш xfree86 под X11, а именно /usr/share/X11/xkb/keycodes/evdev. Я открыл этот файл как root и переместил коды клавиш, используя настройки xmodmap по умолчанию в качестве справки ( xmodmap -pke). Мои окончательные правки были довольно простыми:

<LSGT> = 49; // This was 94
<TLDE> = 94; // This was 49
<LWIN> = 64; // This was 133
<LALT> = 133; // This was 64
<RWIN> = 108; // This was 134
<RALT> = 134; // This was 108

Связанный контент