Кто-нибудь знает, как отключить горячие клавиши ноутбука в Ubuntu?

У меня есть Thinkpad T460s с Kubuntu 20.04, и я использую клавиатуру Nacodex K680T, которая разделяет ряд номеров с функциональными клавишами, F [1- 12].

Функциональные клавиши выбираются нажатием клавиши «func» в правом нижнем углу клавиатуры.

К сожалению, я не могу использовать клавиши F [1-12], потому что каждый раз, когда я нажимаю «func» 'и клавиша в числовом ряду, она задействует горячие клавиши ноутбука: мультимедийные клавиши, яркость, громкость и т. д.

Кто-нибудь знает, как отключить горячие клавиши? Мне нужен F [1-12] больше, чем мне нужно для управления яркостью.

Обновление: у меня есть дополнительная информация - я установил screenkey и вижу, что запускается строка func + num XF86KbdBrightnessDown и т. Д. Надеюсь, эта информация будет полезна для тех, кто подскажет мне, как избавиться от этой проблемы.

Я попытался создать загрузочный USB-накопитель ESXi из KVM, и мне не удалось нажать F11, чтобы просмотреть подсказки, даже внутри виртуальной машины. , Таким образом, это выходит за рамки обновления веб-страницы или входа в инструменты разработчика Chrome с помощью одной клавиши. Это создает для меня серьезную проблему с удобством использования.

Я собираюсь попробовать проверить BIOS, чтобы увидеть, были ли перенаправлены клавиши, поскольку внутренняя клавиатура также не регистрирует F [1-12] - так что это приводит к мне кажется, что это настройка BIOS, которая каким-то образом изменилась (не помню, как это делалось, но никогда не знаешь ...)

О, и я пробовал комбинации [left / right] ctrl-func, alt- func, shift - func, shift- [alt / ctrl] -func - ни один из них не делает ничего, чтобы помочь.

left ctrl-func блокирует функциональные клавиши на K680T, но они не ведут себя по-другому (кроме удаления числовой строки без нажатия клавиши func).

1
задан 4 August 2020 в 23:21

2 ответа

Самое простое решение, которое я нашел для этого после:

  • Поиск в Интернете
  • Попытка модификаторов acpi_osi = , acpi_osi = Windows и acpi_osi = Linux в GRUB_CMDLINE_LINUX_DEFAULT
  • Включение / отключение параметра BIOS в качестве основной функции (который включил в моем BIOS, это означает, что он обрабатывается как обычная клавиша F [1-12], вопреки тому, что указано в справке службы поддержки Lenovo)
  • Метод проб и ошибок с X11 xkb , надеясь, что я смогу выяснить, какой ключ клавиша func (поскольку она не регистрируется в screenkey , но несколько XF86 ключей, которых не было в / usr / share / X11 / xkb / symbols / pc )

Было, когда я наткнулся на этот баребон командный сценарий xmodmap :

#!/bin/bash
# Script name: fix-fkeys.sh

# fix the common F keys
xmodmap -verbose -e 'keycode 232 = F1'
xmodmap -verbose -e 'keycode 233 = F2'
xmodmap -verbose -e 'keycode 128 = F3'
xmodmap -verbose -e 'keycode 212 = F4'
xmodmap -verbose -e 'keycode 237 = F5'
xmodmap -verbose -e 'keycode 238 = F6'
xmodmap -verbose -e 'keycode 173 = F7'
xmodmap -verbose -e 'keycode 172 = F8'
xmodmap -verbose -e 'keycode 171 = F9'
xmodmap -verbose -e 'keycode 121 = F10'
xmodmap -verbose -e 'keycode 122 = F11'
xmodmap -verbose -e 'keycode 123 = F12'

Ссылка: Как отключить мультимедийные клавиши целиком? 18.04 LTS

Коды клавиш xmodmap не соответствуют никаким ссылкам, которые я нашел в Интернете, или кодам, перечисленным в screenkey , xev или acpi_listen

Но я заметил, что вы можете распечатать текущее отображение с помощью xmodmap -pk - поэтому я использовал:

$ xmodmap -pk | grep Brightness

, чтобы найти F1 и F2, поскольку они отсутствовали в ответе AskUbuntu, упомянутом выше, но были сопоставлены с XF86BrightnessDown и XF86BrightnessUp соответственно. Это указывало мне на направление обучения, это были коды 232 и 233 ,

0
ответ дан 11 August 2020 в 20:12

У меня такая же клавиатура. Ваш скрипт хорошо работает под X11, но не под Wayland, поэтому я потратил на это еще немного времени. Получается, что клавиатура отчитывается перед системой как клавиатура Apple даже в режиме Windows. Запустите lsusb, и вы увидите Apple в качестве поставщика.

эхо 0 | sudo tee /sys/module/hid_apple/parameters/fnmode

Эта команда изменяет поведение функциональных клавиш K680T на ожидаемое. Это, конечно же, повлияет и на настоящие клавиатуры Apple.

Вы также можете добавить что-то в modprobe.d, чтобы автоматически обрабатывать это при загрузке. Создайте файл с именем /etc/modprobe.d/50-hid_apple.conf со следующим содержимым:

options hid_apple fnmode=0

Обновите ваши initramfs и все будет готово.

2
ответ дан 2 December 2020 в 19:18

Другие вопросы по тегам:

Похожие вопросы: