Logitech USB Keyboard и мультимедийные клавиши
atany 20 января, 2006 - 13:30
Если следующая клавиатура: Logitech Internet Navigator Keyboard Y-BF37,
и мышь, тоже Logitech. Обе подключены на USB.
Задача: заставить X'ы правильно реагировать на ВСЕ мультимедийные клавиши на клавиатуре.
Проблема заключается в том, что часть клавиш генерируют сканкод, а часть - нет и X'ы реагируют
на них как на кнопки мыши, что не очень-то приятно...
Может кто-нить знает в какую сторону копать (usb-hid драйвет или X win) и как с таким бороться?
Такое впечатление, что сканкоды у клавы и мыши "пересекаются", а usb-hid драйвер не различает от какого
типа устройства они приходят.
»
- Для комментирования войдите или зарегистрируйтесь
Нужно ставить
Нужно ставить скриптик photkeys. Он правда умеет только выполнять указанные команды принажатии клавиш. Кроме того надо посмотреть dmesg, может быть просто система не знает как превращать скан коды в коды клавиш.
У меня эта же
У меня эта же клавиатура.
В настоящий момент не работают не то 3, не то 4 клавиши. Остальные победил.
photkeys - не спасает отца русской демократии, в выводе - нули.
А к какому
А к какому файлы отец русской демакратии цепляет photkeys? Просто я методом тыка его подцепил к /dev/input/event1 и он мои 2 кривые кнопки ловит. Но у меня клава совсем другая.
После того как
После того как не получилось точечно - пришлось работать по областям :)
На всякий пожарный перебрал все input-устройства их у меня 5 штук...
лишь на одном скрипт начал выводить но только 0:0 (или 0:0:0 не помню, короче все нули).
может evdev
может evdev модуль выключен? хотя у меня его тоже нету, но несмотря на это photkeys таки ловит на /dev/intput/event2 почти все мультимедийные клавиши (кроме mute, которая и так в X-ах нормально работает :)
а на /dev/intput/event1 - стандартные клавиши.
таперь буду настраивать...
btw, а можно ли сделать так, чтобы photkeys "съедал" event'ы, на которые настроены события, т.е. чтобы те клавиши, которые определяются в X'ах как события от мыши обрабатывались только photkeys?
Скрипт там
Скрипт там очень простой. Читает из файла блок определенного размера, выкидывает время, оставляя только данные о клавише, а потом запускает пользовательскую финкцию.
Кстати, а от мыши такие же события приходят? Если да, то это технически невозможно. Т.е. либо с клавы либо с мыши.
ЗЫ А никто не знает, как сделать так, чтобы кнопки регуляции громкости не вызывали kmix?
Я имел ввиду
Я имел ввиду несколько другое - чтобы событие, пойманное photkeys не обрабатывалось дальше Х'ами. Кстати, проблема с kmix так тоже может решиться... (но что-то мне подсказывает, что 'unread' в устройство сделать нельзя, следовательно нужно копать в сторону X'ов)
По поводу мыши: на /dev/input/mice photkeys вываливается поскольку протокол другой, а даже если бы и были одинаковые, то различить от их элементарно - у них устройства разные :)
Про kmix - в KDE я почти не сижу, поэтому как там настраивать hotkeys не знаю, но есть 2 идеи как это обойти.
1. попробовать hotkeys (искать на freshmeat.net) - достаточно простая и удобная вещь. По крайней мере в gnome она автоматически перехватывает event'ы и не дает их обрабатывать дальше.
Т.е. я предлагаю совместить hotkeys (для тех клавиш, на которые есть scancode, в том числе и VolumeUp/Down) и photkeys (для остальных).
2. в файлах xkb переименовать scancode для X86VolumeUp/Down на что-нить другое (подробнее - в ICQ).
Я хотел
Я хотел сказать, что в photkeys я не видел кода, который бы убирал событие.
Про мышь я не совсем понял. Некоторые клавиши клавиатуры генерят события как от мышки?
А может просто в иксах не вешать события на нажатия клавишь, которые обрабатывает photkeys?
1) Да дело в том, что в настройках КДЕ нигде таких горячих клавишь не прописано. Скорее всего я просто этот kmix снесу, все равно не пользуюсь.
2) Я про это уже думал. Просто хотелось покрасивее сделать.
У меня тоже 3-4
У меня тоже 3-4 клавиши не работаю, а для остальных я сделал patch для xkb и hotkeys (без 'p') - могу скинуть, если интересно.
А по поводу photkeys нужно попробовать, жаль только не могу выкачать - все ссыл битые какие-то... может кто знает где его можно достать?
О, все выкачал -
О, все выкачал - битые ссылки на freshmeat.net были. На gentoo-wiki нормальные :)
Сегодня буду пробовать...
У нега на сайте
У нега на сайте что-то поменялос, сам несколько часов этот скрипт искал. А потом еще дебажил, пока не понял, что ему надо файл устройства скармливать.