Я попытался использовать это руководство для работы переключателя прокрутки на Microsoft Natural Ergonomic Keyboard 4000. Но я столкнулся со следующей ошибкой:
sudo: /lib/udev/keymap: command not found
У меня есть версия udev 204-5ubuntu20.2
(версия, найденная в Trusty)
Я заметил, что эта версия не включает в себя keymap
инструмент. Но я замечаю, что более поздние udev
версии (например, доступные для Debian ) включают этот инструмент.
Может ли кто-нибудь объяснить мне эту разницу? =) А что мне делать в этом случае - установить пакет из репозитория Debian?
keymap
утилита?Ответы:
Если вы посмотрите на это,
/lib/udev/rules.d/60-keyboard.rules
то увидите, что с ним все перепутано. Это всего лишь часть слияния udev с systemd, которое произошло.Все аппаратные правила скомпилированы в двоичную аппаратную базу данных. Они следуют за действительно странным форматом. Существующие правила для клавиатур, которые поставляются с Udev, живут в
/lib/udev/hwdb.d/60-keyboard.hwdb
. Посмотрите на это, но не редактируйте его (обновления, вероятно, перезапишут его).Чтобы добавить свои собственные правила, мы создадим новый файл
/etc/udev/hwdb.d/
, запустивsudoedit /etc/udev/hwdb.d/61-keyboard-local.hwdb
. Все, что вам нужно сделать, это вставить в следующем -Если вы используете модель 4000:
Если вы используете модель 7000:
Это адаптировано из учебника, который вы опубликовали, поэтому вам может понадобиться настроить его на основе клавиатуры. Посмотрите
lsusb
и убедитесь, чтоvendor:product
код выше (какv####p####
) является правильным. Это не сработает, если они не совпадают.Как только вы закончите редактирование, перекомпилируйте то,
hwdb
что использует udev:И тогда вам может понадобиться повторно подключить. Если это клавиатура PS / 2, вам может потребоваться перезагрузка. В некоторых случаях вам также необходимо перезагрузить компьютер.
источник
hwdb.d
реж пусто,rules.d
содержит только 3 файлы (70-persistent-cd.rules
,70-persistent-net.rules
,README
). Итак, вы имели в виду, что я должен создать новый файл? Или я должен иметь некоторые для редактирования?/lib/udev/hwdb.d/60-keyboard.hwdb
но изменения к ним будут потеряны после обновлений udev.udevadm trigger /dev/input/by-id/usb-Microsoft-*
для запуска обновленияUbuntu 15.10 : у меня не было успеха с предыдущими ответами.
Я успешно использовал подход, аналогичный предыдущим - инструкции были упомянуты в
/lib/udev/hwdb.d/60-keyboard.hwdb
.Я создал новый файл hwdb, используя
sudo nano /etc/udev/hwdb.d/70-keyboard.hwdb
:после этого я бегу
и переподключил клавиатуру и все заработало.
Для модели 7000 используйте
evdev:input:b003v045Ep071D*
источник
keyboard:
определения больше не работают в Ubuntu 1604, и это должно бытьevdev:
. Существует даже сопоставление по умолчанию/lib/udev/hwdb.d/60-keyboard.hwdb
для модели 4000, которая сопоставляет их сzoomin
/zoomout
- однако X полностью игнорирует события (xev ничего не показывает), поэтому вам все еще нужно изменить конфигурацию, подобную этой.b0003
внешнем виде , как это шинно-специфичный (так что он может работать только в некоторых портах USB). Если что-то вродеb*v045Ep071D*
работает, это может быть лучше.evdev:input:XXX
вместоkeyboard:usb:YYY
). Вы также можете использовать другое отображение вместоpageup
/pagedown
. Например, я используюscrollup
иscrolldown
сделать реальную прокрутку.Исходное решение, опубликованное Оли, не работает для меня, но оно работает после того, как я изменил номера клавиш
"0c022d"
и"0c022e"
на"c022d"
и"c022e"
. Я использую модель 4000, поэтому я не могу проверить, нужно ли такое же изменение для модели 7000.Чтобы повторить ответ Оли, вот что я сделал: создать новый файл, запустив
sudo nano /etc/udev/hwdb.d/61-keyboard-local.hwdb
. Вставьте в файл следующие строки (для модели 4000):После редактирования файла перекомпилируйте hwdb, который использует udev:
Затем подключите клавиатуру.
источник
В добавление к ответу Оли, если вы хотите прокрутить строку, как на мыши, вы можете изменить pageup / pagedown на up / down в вашем пользовательском правиле. Подобно:
источник
Хорошее решение здесь , и я могу только добавить, что вы можете сопоставить ключи с неиспользованными ключами X следующим образом:
Собственные имена для использования вместо
katakana
можно найти здесь .После перезагрузки ;-) вы можете проверить, что
zoomin
иzoomout
ключи успешно сопоставлены, а также узнать правильные имена ключей (например, для использования вrc.xml
OpenBox WM), используяxev
:Теперь вы можете подключить новые ключи к совершенно произвольным действиям. В моем случае оконного менеджера OpenBox я использовал что-то вроде этого:
источник