У меня есть ThinkPad W540. На его клавиатуре над цифровой клавиатурой расположены четыре мультимедийные клавиши. Два из этих ключей генерируют коды клавиш (и, видимо, коды сканирования), которые соответствуют комбинации клавиш Win_L+ Lи Win_L+ E. Другими словами, для ключа, который генерирует Win_L+ L,
showkey --scancodes
возвращает это:
0xe0 0x5b 0x26 0xa6 0xe0 0xdb
setkeycodes
Команда требует ни один байт Unescaped или убежали два байта последовательностей обозначают коды сканирования, и showkey
дает мне намного больше , чем это, так что я могу не совсем повторно карту , что ключ к одной из свободных кодов клавиш в моей системе с проста setkeycodes <scancode> <keycode>
.
Я был бы очень признателен за любые подсказки о том, как переназначить эту клавишу на что-то еще, что не просто дублирует одну из существующих комбинаций клавиш на моей клавиатуре.
/etc/acpi/events
которые есть вacpid
пакете, и просто определив действие при нажатии этих функциональных клавиш.Ответы:
Вы можете сделать это в два этапа:
Вы можете использовать
xchainkeys
для 1. и[xdotool][2]
для 2 .:Для того, чтобы создать имитацию новый ключ
xdotool
, вариант--clearmodifiers
изkey
может быть важно , чтобы нейтрализовать оригинальную имитацию модификатора нажмите:Это должно ввести капитал
A
в качестве теста.В конфигурации
xchainkeys
in~/.config/xchainkeys/xchainkeys.conf
мы можем привязать команду к комбинации клавиш:Теперь комбинация клавиш
Win
иl
(Win
влево или вправо делают то же самое), а также клавиша, генерирующая Win_L + L, должны создать заглавную буквуA
.(Есть много других программ, доступных для обеих частей. Во-первых, можно использовать конфигурацию горячих клавиш в среде рабочего стола, но я предпочитаю сохранять ее независимой от DE.)
источник
Win-Shift-l
Но вы также можете сопоставить цепочки сочетаний клавиш с командой. ВродеWin-a
и после этогоb
. С внеWin-a
,b
ведет себя нормально. Это, безусловно, самая полезная особенностьxchainkeys
, и, я думаю, довольно уникальная.Это то, что я сделал на своем Thinkpad Yoga, чтобы привязать ключ обратной косой черты / трубы к правильному ключу. Потому что по какой-то причине в каждой виртуальной машине Linux она интерпретирует ключ обратной косой черты \ pipe (\ |) как ключ меньше (<).
Сначала выполните команду:
xev
Нажмите нужную клавишу, чтобы получить код для клавиши, которую вы хотите повторно привязать:
В этом примере ключевой код равен 94, а действие «меньше», но мы хотим, чтобы оно имело действие обратной косой черты и бара, называемого «труба»
Переназначить код 94 на обратную косую черту и барный ключ, также известный как «pipe»:
Теперь давайте сделаем это постоянным:
Возвращает следующее в файл
~/.Xmodmap
:Затем вы должны создать следующий файл, чтобы сделать его постоянным:
источник