Шаг первый. Определение кодов кнопок
Первым делом, чтобы настроить какие-либо действия на дополнительные кнопки, мы должны определить их коды. Для этого воспользуемся утилитой
Открываем терминал, запускаем утилиту и наблюдаем появление небольшого окна.
Поместите курсор в квадрат и нажмите любую кнопку мыши. В терминале появится что-то подобное:
ButtonRelease event, serial 30, synthetic NO, window 0x4800001,
root 0x25a, subw 0x4800002, time 10436481, (43,39), root:(211,849),
state 0x110, button 1, same_screen YES
Нас будет интересовать только последняя строка, а точнее "button 1". Это и есть код левой кнопки мыши. Таким образом нам требуется определить коды всех кнопок. У меня получилось так:
Левая КМ: 1
Нажатие на колесико: 2
Правая КМ: 3
Колесико вверх: 4
Колесико вниз: 5
Колесико влево: 6
Колесико вправо: 7
Назад: 8
Вперед: 9
Специальная: 10
Zoom: 13
Шаг второй. Установка xbindkeys
Теперь нам нужно настроить действия на каждую кнопку. Для этого воспользуемся утилитой
xbindkeys
Для установки на debian-подобные дистрибутивы достаточно ввести команду
sudo apt-get install xbindkeys
Если же у Вас другой дистрибутив или любая иная причина, по которой Вы не можете воспользоваться утилитой apt-get для установки, соберите программу из исходников.
Настройка кнопок будет производиться путем изменения конфигурационного файла. Для его создания пропишите в терминале следующую строку:
xbindkeys --defaults > $HOME/.xbindkeysrc
Шаг третий. Назначение кнопок
Откроем конфигурационный файл для редактирования командой
gedit $HOME/.xbindkeysrc
Весь смысл состоит в том, чтобы при нажатии на какую-либо кнопку на мышке, эмулировалось нажатие комбинации клавиш на клавиатуре. Соответственно, Вам нужно, чтобы все то, что вы хотите делать с помощью кнопок мышки, можно было бы сделать с помощью клавиатуры.
Добавляем в файл конфигурационные строки, подобные следующим:
# specify a mouse button
"xterm"
control + b:2
#"xterm -geom 50x20+20+20"
# Shift+Mod2+alt + s
#
## set directly keycode (here control+alt+mod2 + f with my keyboard)
#"xterm"
# alt + c:0x29 + m:4 + mod2
#
## Control+Shift+a release event starts rxvt
#"rxvt"
# release+control+shift + a
#
## Control + mouse button 2 release event starts rxvt
#"rxvt"
# Control + b:2 + Release
# Back
"xte 'keydown Alt_L' 'key Left' 'keyup Alt_L'"
b:9
# Forward
"xte 'keydown Alt_L' 'key Right' 'keyup Alt_L'"
b:8
# Present desktops
"xte 'keydown Control_L' 'key F8' 'keyup Control_L'"
b:13
# Present windows
"xte 'keydown Control_L' 'key F10' 'keyup Control_L'"
b:10
"xte" в начале строки с комбинацией указывает, что для эмуляции клавиш успользуется утилита xte (xautomation).
Шаг четвертый. Установка xte
Для установки введите команду
sudo apt-get install xautomation
Или соберите из исходников.
Если теперь Вы введете в терминале, например, команду
xte 'keydown Alt_L' 'key F4' 'keyup Alt_L'
то будет эмулирована комбинация Alt+F4.
Шаг пятый. Автозапуск
Теперь все что нам осталось сделать, это добавить xbindkeys в автозапуск.
Для каждого дистрибутива это операция индивидуальна, в мое случае добавление программы в автозапуск происходит следующим образом:
/usr/bin/xbindkeys
Вот впринципе и все. Теперь все дополнительные клавиши должны работать так, как Вы их настроили. Приятного использования!
При написании статьи был использован этот материал
http://forums.logitech.com/t5/Mice-and-Pointing-Devices/Guide-for-setup-Performance-MX-mouse-on-Linux-with-KDE/td-p/517167