Настройте мышь Logitech с xbindkeys

У меня есть мышь Logitech Performance MX, которую я хочу настроить для Ubuntu 14.10 с помощью xbindkeys. Мне удалось установить xbindkeys и xautomation после этого сообщения, однако, кнопки все еще не работают.

Вот мой xbindkeysrc файл:

# For the benefit of emacs users: -*- shell-script -*-
###########################
# xbindkeys configuration #
###########################
#
# Version: 1.8.6
#
# If you edit this file, do not forget to uncomment any lines
# that you change.
# The pound(#) symbol may be used anywhere for comments.
#
# To specify a key, you can use 'xbindkeys --key' or
# 'xbindkeys --multikey' and put one of the two lines in this file.
#
# The format of a command line is:
#    "command to start"
#       associated key
#
#
# A list of keys is in /usr/include/X11/keysym.h and in
# /usr/include/X11/keysymdef.h
# The XK_ is not needed.
#
# List of modifier:
#   Release, Control, Shift, Mod1 (Alt), Mod2 (NumLock),
#   Mod3 (CapsLock), Mod4, Mod5 (Scroll).
#

# The release modifier is not a standard X modifier, but you can
# use it if you want to catch release events instead of press events

# By defaults, xbindkeys does not pay attention with the modifiers
# NumLock, CapsLock and ScrollLock.
# Uncomment the lines above if you want to pay attention to them.

#keystate_numlock = enable
#keystate_capslock = enable
#keystate_scrolllock= enable

# Examples of commands:

"xbindkeys_show" 
  control+shift + q

# set directly keycode (here control + f with my keyboard)
#"xterm"
#  c:41 + m:0x4

# 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

"xte 'key Control_L'"
b:10 

##################################
# End of xbindkeys configuration #
##################################

Спасибо.

2
задан 13 April 2017 в 15:25

5 ответов

Я знаю это, вопросами является год, но это все еще, кажется, является оставшимся без ответа.

я думаю, что Ваша проблема состоит в том, что Вы просто инициировали xte 'key Control_L', который просто "коснется" Вашей клавиши CTRL, означая, что нажатие клавиши только эмулировано в течение очень короткого срока, и затем клавиша отпускается. Вам нужно к событию выпуска a keydown, когда Вы начинаете нажимать кнопку мыши и стреляете keyup событие при отпускании кнопки мыши. Ваш .xbindkeysrc должен быть похожим на это:

"xte 'keydown Control_L'"
    b:8

"xte 'keyup Control_L'"
    b:8 + Release
2
ответ дан 2 December 2019 в 02:00

Я нашел, что xte является хлопьевидным. Моя последовательность для отображения кнопка ползунка моего logitech 518 для 'управления W' для закрытия вкладок и окон никогда не работала хорошо с xte, не упорядочивающим правильно. Например, это перестало работать:

"xte 'keydown Control_L' 'w' 'keyup Control_L'"
 b:8

также, как и это:

"xte 'keydown Control_L' 'w' 'keyup Control_L'"
 b:8 + release

я также заметил, что xte был медленным. Я попробовал xvkbd, и он работает хорошо.

, конечно, необходимо получить xvkbd с этим:

sudo apt-get install xvkbd

Помещенный это в Ваш .xbindkeysrc файл в Вашем корневом каталоге

"xvkbd  -text '\C\[w]'"
m:0x0 + b:8

и xbindkeys

pkill -f xbindkeys && xbindkeys
перезапуска
2
ответ дан 2 December 2019 в 02:00

Я имею Logitech M705 и просто прошел это.

Кнопка 8 отображается на вперед/назад кнопка на стороне:

###########################
# xbindkeys configuration #
###########################
# Workspace Left
 "xte 'keydown Control_L' 'keydown Alt_L' 'key Left' 'keyup Alt_L' 'keyup Control_L'"
  b:8
##################################
# End of xbindkeys configuration #
##################################
1
ответ дан 2 December 2019 в 02:00

Должен быть то, потому что ключевое управление отдельно не делает многого.

Попытка это:

xte 'keydown Super_L' 'keydown Right' 'keyup Super_L' 'keyup Right'

Это в основном Super[windows key]+Right_Arrow, который должен взять любое открытое окно к правильной половине части Вашего экрана.

Это - просто пример, можно автоматизировать любую комбинацию ключей.

0
ответ дан 2 December 2019 в 02:00

У меня тоже были проблемы с отображением кнопок мыши. Ни один из существующих здесь ответов не затронул суть проблемы.

TL; DR: добавьте ассоциацию + release в сопоставление (см. Последний фрагмент кода).

В качестве примера я хотел показать обзор окна, который я пытался сделать с помощью этого:

"/usr/bin/dbus-send --session --print-reply --type=method_call --dest=org.gnome.Shell /org/gnome/Shell org.gnome.Shell.Eval string:'Main.overview.toggle();'"
  b:8

Я добавил запись, чтобы подтвердить, что xbindkeys собирает нажатия, а это было:

"echo 'b:8 pressed' > /tmp/.xbindkeys.log 2>&1"
  b:8

Итак, учитывая, что нажатия клавиш работали, я знал, что проблема не в том, что xbindkeys подбирает нажатия, а в другом месте. Я пробовал имитировать нажатие клавиш с помощью xte , но это тоже не сработало. Однако я заметил, что что-то странное происходило с фокусом окон на экране, когда я это делал.

"/usr/bin/xte 'keydown Super_L' 'key s' 'keyup Super_L' >> /tmp/.xbindkeys.log 2>&1"
  b:8

В качестве удара в темноте я добавил к команде ассоциацию + release , которая устранила проблему:

"/usr/bin/xte 'keydown Super_L' 'key s' 'keyup Super_L' >> /tmp/.xbindkeys.log 2>&1"
  b:8 + release

Заданные назначения клавиш могут измениться, использование xte не надежное решение, поэтому я хотел вернуться к команде dbus-send . Итак, поменяв местами команды и включив ассоциацию + release , все работало правильно:

"/usr/bin/dbus-send --session --print-reply --type=method_call --dest=org.gnome.Shell /org/gnome/Shell org.gnome.Shell.Eval string:'Main.overview.toggle();'"
  b:8 + release

Оглядываясь назад, я нашел ссылку на это решение в Arch wiki . Может ли кто-нибудь пролить свет на то, зачем нужен + релиз в комментариях?

0
ответ дан 25 February 2020 в 11:53

Другие вопросы по тегам:

Похожие вопросы: