Некоторое время я использовал сочетания клавиш CODE, в которых вы используете Фн
клавиша в сочетании с Insert/Home/PgUp/Delete/End/PgDn для управления функциями мультимедиа. Я хотел бы сделать что-то подобное с моей старой моделью M (без медиа-клавиш, без мета-клавиши, без каких-либо причудливых вещей для настройки).
Моя первоначальная идея состояла в том, чтобы использовать AltGr для этих ярлыков. Я быстро понял, что сочетания клавиш Gnome не любят AltGr + Thing, я предполагаю, что это связано с тем, что комбинация ничего не запускает в раскладке, которую я использую (US International с AltGr Dead Keys).
После некоторого поиска в Google я предположил, что решением будет использовать Xmodmap и сделать что-то вроде следующего:
$ xmodmap -e "keycode 112 = Prior NoSymbol Prior NoSymbol XF86AudioRaiseVolume"
Но это ничего не делает. Я явно делаю что-то не так (полагаю, я неправильно понял некоторые вещи в документации или недостаточно внимательно их прочитал). Как я могу достичь своей цели?
Некоторая дополнительная информация об отладке, которая может быть полезна:
Результат ксев
при выполнении AltGr + PgUp происходит следующее:
Событие KeyPress, серийный номер 37, синтетический NO, окно 0x5000001,
корень 0x6cb, subw 0x0, время 16641710, (2129,943), корень: (2349,1147),
состояние 0x0, код клавиши 108 (символ клавиши 0xfe03, ISO_Level3_Shift), тот же_экран ДА,
XKeysymToKeycode возвращает код ключа: 92
XLookupString дает 0 байтов:
XmbLookupString дает 0 байтов:
XFilterEvent возвращает: False
Событие KeyPress, серийный номер 37, синтетический NO, окно 0x5000001,
корень 0x6cb, subw 0x0, время 16641743, (2129,943), корень: (2349,1147),
состояние 0x80, код клавиши 112 (keysym 0xff55, предыдущий), same_screen YES,
XLookupString дает 0 байтов:
XmbLookupString дает 0 байтов:
XFilterEvent возвращает: False
Я уже сделал это, чтобы убедиться, что ISO_Level3_Shift (также известный как AltGr) правильно определяется (и это так). Код ключа Prior (также известный как PgUp, номер 112) также правильно распознается. Я не знаю, работает ли Xmodmap неправильно или я что-то неправильно настроил.