Настройка многокнопочных мышей
Материал из Bryansk Linux Users Group.
Содержание |
Продвинутая настройка мыши Logitech
Из этого HOWTO вы узнаете, как заставить работать дополнительные кнопки мыши, как повысить разрешение оптического сенсора и как увеличить скорость опроса мыши для более точного и удобного контроля.
Для начала убедитесь, что мышь подключена через USB, т.к. изложенное не будет работать для PS/2-мыши.
Чтобы использовать ваш любимый редактор, установите соответствуещее значение переменной $EDITOR: export EDITOR=gedit Настройка дополнительных клавиш
Установка Evdev
Обычно пакет evdev устанавливается по умолчанию, но на всякий случай выполните эту команду: sudo apt-get install xserver-xorg-input-evdev Создание правила Udev
Было замечено, что в Dapper иногда меняется номер устройста, ссылающегося на мышь. Поэтому нужно создать специальное правило Udev.
Для начала необходимо узнать наименование мыши в системе. Для этого выполните следующую команду:
cat /proc/bus/input/devices
Вот фрагмент моего вывода:
I: Bus=0003 Vendor=046d Product=c01b Version=1800 N: Name="Logitech USB-PS/2 Optical Mouse" P: Phys=usb-0000:00:1d.0-1/input0 S: Sysfs=/class/input/input2 H: Handlers=mouse0 event2 B: EV=7 B: KEY=3f0000 0 0 0 0 0 0 0 0 B: REL=103
Как видно, в системе моя мышь видна под именем Logitech USB-PS/2 Optical Mouse.
Теперь откройте конфиг Udev:
sudoedit /etc/udev/rules.d/19-local.rules
И вставьте туда следующее, не забыв поменять название мыши:
KERNEL=="event[0-9]*", SYSFS{../name}=="Logitech USB-PS/2 Optical Mouse", NAME="input/event9"
Теперь все устройства ввода с номерами от 1 до 9 и с именем Logitech USB-PS/2 Optical Mouse будут ссылаться на одно устройство event9.
Настройка Xorg
Откройте конфиг графического сервера:
sudo gedit /etc/X11/xorg.conf
Добавьте новую секцию, описывающую мышь:
Section "InputDevice"
Identifier "evdev mouse"
Driver "evdev"
Option "CorePointer"
Option "Device" "/dev/input/event9"
EndSection
В секции ServerLayout на всякий случай закомментируйте "старую" (Configured Mouse) мышь, добавив в начале строки #, и добавьте запись о "новой" (evdev mouse):
EndSection Section "ServerLayout" Identifier "Default Layout" Screen 0 "aticonfig-Screen[0]" 0 0 InputDevice "Generic Keyboard" InputDevice "evdev mouse" # InputDevice "Configured Mouse" EndSection
Теперь перезагружайте компьютер и переходите к следующей части.
Примечание: если после перезагрузки X-сервер не запустился, то переключитесь на первую консоль (Alt + 1), войдите в систему и откройте конфиг Иксов:
sudo gedit /etc/X11/xorg.conf
В секции Server Layout раскомментируйте "старую" мышь и удалите запись о evdev mouse.
Xmodmap
Теперь скорее всего нужно переназначить номера клавиш мыши. Выполните в терминале следующую команду, чтобы проверить их соответствие:
xev
Покликайте в появившемся окошке всеми кнопками. В консоли должны выводиться номера нажатых клавиш. Левая кнопка должна быть первой, средняя — второй, правая — третьей, колесо вперед — четвертой, колесо назад — пятой, боковая клавиша "назад" — шестой, боковая "вперед" — седьмой.
Так как номера клавиш скорее всего не совпадают, придется переназначить их с помощью утилиты Xmodmap.
Откройте конфиг Xmodmap и пропишите номера клавиш:
gedit ~/.Xmodmap
Для большинства мышей Logitech (MX310—700) подходит такой порядок:
pointer = 1 3 2 4 5 8 9 6 7 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
Для старших моделей (например, MX1000) — такой:
pointer = 1 2 3 6 7 8 9 10 11 12 4 5
Для A4tech BW-5
pointer = 1 2 3 6 7 8 9 10
Выполните следующую команду, чтобы настройки вступили в силу:
xmodmap ~/.Xmodmap
При следующем запуске Gnome вас спросят, хотите ли вы добавить новый конфиг Xmodmap в список автоматически загружаемых. Добавьте и нажмите OK.
Теперь все клавиши должны работать корректно. Firefox, например, должен по нажатии боковых клавиш переходить вперед-назад. Назначение клавишам произвольных действий
Для назначения произвольных действий дополнительным клавишам понадобятся утилиты Xvkbd (виртуальная клавиатура) и XBindKeys ("назначатель" действий):
sudo apt-get install xvkbd xbindkeys
Путь к Xvkbd
Xvkbd устанавливается в директорию /usr/X11R6/bin, но в Dapper этот путь не прописан в переменной-перечне путей к бинарникам PATH. Это надо исправить. Откройте конфиг окружения:
sudoedit /etc/environment
И добавьте в PATH путь /usr/X11R6/bin, чтобы в результате получилось примерно следующее:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/X11R6/bin/"
Эти настройки вступят в силу при следующем входе в систему. Настройка XBindKeys
Теперь, после того как вы снова вошли в систему, создайте конфиг XBindKeys:
gedit ~/.xbindkeysrc
Вставьте следующие строки:
"xvkbd -xsendevent -text "\[Alt_L]\[Left]"" m:0x0 + b:6 "xvkbd -xsendevent -text "\[Alt_L]\[Right]"" m:0x0 + b:7
Этим вы назначили на боковые кнопки имитацию нажатий Alt + ← и Alt + →, что является комбинацией для перехода назад и вперед в Nautilus, Konqeror и других браузерах.
Вы, конечно-же, можете назначить на клавиши или на сочетания клавиш и любые другие действия. Например, так можно назначить на одновременное нажатие Alt и одной из дополнительных клавиш мыши вызов xterm:
"xterm" alt + m:0x0 + b:10
Чтобы команда выполнилась только после того, как клавиши будут отпущены, нужно добавить параметр release:
"xterm" alt + m:0x0 + b:10 + release
После окончания настройки не забудьте добавить xbindkeys в автозагрузку (Система → Параметры → Сессии...). Улучшение чувствительности мыши Повышение разрешения
Многие мыши Logitech имеют переключаемые оптические сенсоры на 400 и 800 cpi, причем по умолчанию используется сенсор на 400 cpi. Для переключения на более мощный сенсор подойдет утилита Logitech Applet. Скачайте и установите пакет:
wget http://b-k-b.nm.ru/ubuntu/debs/logitech-applet-0.4test1.deb sudo dpkg -i logitech-applet-0.4test1.deb
Теперь по команде logitech_applet -s 800 разрешение мыши должно возрасти до 800cpi.
Чтобы разрешение выставлялось автоматически при входе в систему, добавьте Logitech Applet в автозагрузку Гнома:
cp /usr/share/doc/logitech_applet/logitech_applet.desktop ~/.config/autostart
Эта команда сработает только если вы установили LA из моего пакета, иначе воспользуйтесь инструментом "Сессии".
Повышение частоты опроса мыши
По стандарту мышь, подключенная через порт USB, должна опрашиваться один раз в 10 миллисекунд, из-за чего курсор мыши перемещается не так плавно, как если бы она была подключена через порт PS/2, где частота опроса выше. К счастью, в новых версиях ядра существует возможно произвольно менять частоту опроса. Для этого нужно передать модулю usbhid параметр mousepoll с соответствующим значением.
Откройте конфиг modprobe, в котором можно назначить параметры, автоматически передаваемые модулям при загрузке:
sudoedit /etc/modprobe.d/options
Для того, чтобы мышь опрашивалась с частотой один раз в 2 мс, укажите, что модуль usbhid нужно загружать с параметром mousepoll=2:
options usbhid mousepoll=2
После перезагрузки вы заметите, что курсор стал гораздо плавнее откликается на перемещение.
Заключение
И так, если вы успешно выполнили вышеизложенные инструкции, то теперь вы — счастливый обладатель полностью функциональной, настроенной под ваши нужды мыши :)
Данная статья основана на HOWTO Configuring Logitech mice in Ubuntu 6.06, написанном detyabozhye и Get all mouse buttons working за авторством Andreas 'GlaDiaC' Schneider.

