мультимедиа клавишb на usb-клаве FreeBSD 8
/usr/ports/sysutils/uhidd
make install clean && rehash
uhidd -o /dev/ugenX.X
«-о» обслуживать демон будет только
мультимедиа-клавиши, а номера в ugen должны ссылаться на клавиатуру.
usbconfig
и смотрим вывод
После запуска последовательно нажимаем все мультимедиа кнопки.
получим файл
/var/run/uhidd.ugenX.X/cc_keymap
следующего вида
0x046d:0xc30e={
cc_keymap={
Play/Pause=»0x5A»
Mute=»0x5F»
Volume_Increment=»0x62″
Volume_Decrement=»0x63″
AL_Consumer_Control_Configuration=»0x71″
AC_Home=»0x66″
}
}
Далее создаем файл /usr/local/etc/uhidd.conf
default={
mouse_attach=»NO»
kbd_attach=»NO»
vhid_attach=»NO»
cc_attach=»YES»
}
повторяющий ту же опцию «-o», которую указывали при запуске вручную
теперь
cat /var/run/uhidd.ugenX.X/cc_keymap >> /usr/local/etc/uhidd.conf
и делаем
/usr/local/etc/rc.d/uhidd start /dev/ugenX.X
в случае, если window manager не поддерживает назначения произвольных сканкодов
на нажатия, а обрабатывает только стандартные, тогда надо использовать
xmodmap .Xmodmap
где в .Xmodmap
keycode 170 = XF86AudioRaiseVolume
keycode 184 = XF86AudioLowerVolume
keycode 190 = XF86AudioMute
……
Ссылки на использованные материалы:
* http://wiki.freebsd.org/uhidd#head-629d89bc56c27990a707d46a32462dcdbdd3ccf7
* man uhidd
* man uhidd.conf