Как переназначить комбинации клавиш Fn?
Я хочу сделать некоторые расширенные сопоставления клавиш на моем Sony VAIO. Включает клавишу Fn. Вот что я хочу сделать:
Я хочу сделать инверсию клавиш Fn, т. Е. Переназначить: [ Fn + F2 до F7 ] на моей клавиатуре на программные клавиши [ F2 до F7 ] соответственно. После переназначения я хочу, чтобы другие комбинации клавиш, включающие функциональные клавиши, работали как обычно (например, Alt + F4), если это возможно.
Это пригодится, потому что я никогда не использую функциональные клавиши, кроме как в комбинации клавиш. Также я часто использую регуляторы громкости и яркости (Fn + F2 до F7).
Я погуглил и нашел это на другом вопросе о Ubuntu:
Клавиша Fn обычно не отправляет код клавиши; это обрабатывается BIOS, а не ОС. Иногда вы можете получить это как событие ACPI.
На данный момент я проверил BIOS, и я не могу изменить его оттуда.
Я обнаружил, что когда я нажимаю эти комбинации, это вызывает события ACPI. Вот вывод, когда я последовательно нажимаю Fn + F2 до F7:
Fn + F1 (Toggle TouchPad, not working) press down:
button/fnf1 FNF1 00000080 00000000 K
sony/hotkey SNY5001:00 00000001 0000000c
Fn + F1 release:
sony/hotkey SNY5001:00 00000001 0000003b
Fn + F2 press down:
button/mute MUTE 00000080 00000000 K
Fn + F3 press down:
button/volumedown VOLDN 00000080 00000000 K
Fn + F4 press down:
button/volumeup VOLUP 00000080 00000000 K
Fn + F5 press down:
video/brightnessdown BRTDN 00000087 00000000
Fn + F6 press down:
video/brightnessup BRTUP 00000086 00000000
Fn + F7 release:
video/switchmode VMOD 00000080 00000000 K
sony/hotkey SNY5001:00 00000001 00000012
Fn + F7 release:
sony/hotkey SNY5001:00 00000001 0000003b
Я заметил, что события ACPI запускаются только при нажатии специальных комбинаций клавиш, то есть никакое событие не генерируется, если я нажимаю Fn + A. Поэтому я не могу назначить комбинации клавиш типа Fn + A, но не могу ли я как-то манипулировать комбинациями клавиш, для которых запускаются события ACPI?
Изменить: я нашел отображение клавиатуры кодов сканирования в коды клавиш в /lib/udev/hwdb.d/60-keyboard.hwdb
, Это соответствующие разделы размещены здесь. Но конфигурация udev переопределяется чем-то другим, потому что я поменял местами клавиши увеличения и отключения, и это изменение не отразилось даже после перезагрузки.
Редактировать 2: Вывод события X каждой клавиши [Fn+ F2toF7], используя xev -event keyboard
,
1 ответ
Ваш вопрос немного сбивает с толку. Я предполагаю, что вы хотите изменить Fn + F# для регистрации в качестве F# для всех функциональных клавиш с F1 по F12.
Ваша информация по этому вопросу верна. Это не может быть сделано через ОС. Это должно быть сделано через BIOS. Пройдите все параметры в BIOS еще раз, я уверен, что вы сможете найти его. Если нет, то Google, как это сделать из BIOS и добавить свою версию BIOS в поиск.