LINUX.ORG.RU

Забиндить определённые действия на доп кнопки мыши

 , , ,


2

5

Взял новую мышку. Сбоку есть 2 кнопки дополнительные и сверху одна, хочу забиндить следующие действия в LXDE:

  • Боковая верхняя - переключить на следующее окно
  • Боковая нижняя - на прошлое окно
  • Клик по колёсику - запустить терминал guake (так он по F12)
  • Клик по кнопке ниже - запустить диалог запуска программ Run...

P.S. и напомните плиз, как сделать, чтобы при переключении языка, по центру экрана появлялся большой флаг страны на 1 секунду, раньше видел где-то...

★★★★★

В конфиг openbox-а(который в lxde идёт, разумеется) приблизительно следующее:

<mouse>
  <context name="Client">   
    <mousebind button="Left" action="Click">
      <action name="NextWindow"/>
    </mousebind>
    <mousebind button="Right" action="Click">
      <action name="PreviousWindow"/>
    </mousebind>
  </context>
</mouse>

Ну и на колёсико аналогично действия биндить, только вместо Left/Right Middle.

P.S: ответ приблизительный, т.к. openbox стоит только у девушки, девушка в Ставрополе, а отдельно себе ставить и проверять неохота. Надеюсь разберёшься

raven_cler ★★
()
Ответ на: комментарий от raven_cler

Ага, всё сделал, спс, только немного через одно место, но всё работает. Несколько человек за темой следили, вечером конфиг выложу свой - счас убегаю.

fehhner ★★★★★
() автор топика

Использовал утилиты xev (для определения названия кнопок мыши), xbindkeys (чтобы забиндить на кнопки мыши выполнение нужной программы) и xte (чтобы эмулировать нажатие нужных кнопок клавиатуры).

$sudo pacman -S xbindkeys xorg-xev xautomation
$xev
#mouse down - button 8; up -button 9; wheel - 2
$nano $HOME/.xbindkeysrc
Содержимое:
"xte 'keydown Control_L' 'keydown Super_L' 'keydown n' 'usleep 150000' 'keyup n' 'keyup Super_L' 'keyup Control_L'"
 b:9  
  
"xte 'keydown Control_L' 'keydown Super_L' 'keydown p' 'usleep 150000' 'keyup p' 'keyup Super_L' 'keyup Control_L'"
 b:8
 
 "xte 'keydown Super_L' 'keydown F12' 'usleep 150000' 'keyup F12' 'keyup Super_L'"
 b:2
Далее в папку ~/.config/openbox, файл lxde-rc.xml со всеми конфигами опенбокса у меня уже был туда скопирован. Добавил в подходящую секцию
<!-- SCROLL WINDOWS -->
<keybind key="C-W-n">
  <action name="NextWindow">
    <dialog>none</dialog>  
    <interactive>yes</interactive>
    <linear>yes</linear>
    <finalactions>
      <action name="Focus"/>
      <action name="Raise"/>
      <action name="Unshade"/>
    </finalactions>
  </action>
</keybind>

<keybind key="C-W-p">
  <action name="PreviousWindow">
    <dialog>none</dialog>  
    <interactive>yes</interactive>
    <linear>yes</linear>
    <finalactions>
      <action name="Focus"/>
      <action name="Raise"/>
      <action name="Unshade"/>
    </finalactions>
  </action>
</keybind>
Инфу по конфигу взял из замечательного вики опенбокса http://openbox.org/wiki/Help:Actions#NextWindow
Ну и в настройках выпадающего терминала поменял хоткей на Super+F12 (что соответствует средней кнопке мышки в моём конфиге).

fehhner ★★★★★
() автор топика
Последнее исправление: fehhner (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.