Как настроить дополнительные кнопки в Logitech Mouse
Может кто-нибудь сказать мне, как настроить все кнопки мыши Logitech MX 620 ( http://www.logitech.com/en-us/support/mice/2987) под Ubuntu 12.04?
В частности, мне нравится делать одну из них просто клавишей ctrl (для управления щелчком веб-страниц), а другую - ctrl+w, чтобы закрывать вкладки. Я также обычно делаю страницу с колесом прокрутки вниз для каждого клика (в противном случае мои руки будут сильно болтаться при прокрутке). Я делаю толкание колеса влево = обратная страница и толчок вправо = страница вперед.
Я искал другие ответы на это и нашел что-то связанное здесь: http://ubuntuforums.org/showthread.php?t=1789807
Но когда я разместил сообщение для решения проблемы, никто не ответил - возможно, я допустил ошибку, отправив вопрос, который был "решен". Я не уверен, как я должен снова открыть вопрос, который имеет отношение к моему вопросу, но не совсем решает мой.
Спасибо за любую помощь.
17 ответов
Для этого вам понадобится несколько приложений, чтобы установить их
sudo apt-get install xbindkeys xautomation xev
или же
sudo apt-get install xbindkeys xautomation x11-utils
edit: xev был объединен с x11utils, начиная с Ubuntu 14.04 или выше.
Шаг 1
Вам нужно найти номера кнопок для кнопок мыши. Бежать xev
, Вы увидите маленькие белые окна, наведите на них мышку и нажмите кнопки мыши (лучше всего делать это по одной кнопке за раз). Вы должны получить вывод, как это для каждой кнопки:
ButtonRelease event, serial 41, synthetic NO, window 0x4c00001,
root 0x2e9, subw 0x4c00002, time 25804905, (31,28), root:(821,80),
state 0x110, button 1, same_screen YES
(нота: xev
также фиксируйте движение мыши, так что вам может понадобиться просеивать события движения мыши, чтобы найти события кнопки; например: xev -event mouse | grep Button --before-context=1 --after-context=2
)
Вот что важно из этого вывода: button 1
, Это говорит нам о том, что конкретная кнопка - кнопка первая. Я бы сохранил это в .txt
файл на данный момент.
Шаг 2
Создать xbindkeys
Конфигурационный файл с использованием:
xbindkeys --defaults > $HOME/.xbindkeysrc
Далее нам нужно добавить привязки клавиш / кнопок к файлу конфигурации. Вы можете открыть этот файл с gedit $HOME/.xbindkeysrc
, Здесь начинается самое интересное. Мы собираемся использовать xte
установить привязки к нашим кнопкам.
Чтобы кнопка действовала как Ctrl, мы добавили бы:
"xte 'key Control_L'"
b:1
Это связало бы Ctrl с первой кнопкой мыши.
Если вы скажете мне номера кнопок ваших кнопок и то, что вы хотите, чтобы каждая из них сделала, я напишу сценарий для вас.
Лучший ответ в 2021 году — утилита Key Mapper:
https://github.com/sezanzeb/key-mapper .
Больше никаких взломов не требуется.
Я следовал инструкциям @Seth, но привязка, которую я хотел, чтобы кнопка большого пальца и M705 делали CTRL + Left-click
(для открытия ссылок в новой вкладке браузера Chrome). Связывание, которое мне нужно было добавить, было таким:
"xte 'keydown Control_L' 'mouseclick 1' 'keyup Control_L'"
b:10 + Release
Он ожидает отпускания кнопки большого пальца, затем нажимает управляющую клавишу, выполняет щелчок мышью, а затем отпускает управляющую клавишу.
Для тех, кто хочет привязать действия копирования и вставки к кнопкам мыши:
- Следуйте ответу Сета (тот, что с шагом 1, шагом 2 и
sudo apt-get install xbindkeys xautomation xev
) - Вставьте следующие строки в ваш
.xbindkeysrc
файл:
Это для копирования:
"xte 'keydown Control_L' 'key c' 'keyup Control_L'"
b:9
Это для вставки:
"xte 'keydown Control_L' 'key v' 'keyup Control_L'"
b:8
*b:9
означает кнопку 9 на мыши (проверьте номера кнопок с помощью xev
)
- Это не будет работать сразу, вы должны перезагрузить
.xbindkeysrc
сначала или перезагрузите машину.
Вам следует установить Solaar, инструмент Linux, который позволяет вам управлять мышью и клавиатурой Logitech Unifying Receiver, которая поставляется как с графическим интерфейсом, так и с интерфейсом командной строки. Для этого добавьте следующий репозиторий и установите его, выполнив следующие команды:
sudo add-apt-repository ppa:daniel.pavel/solaar
sudo apt-get update
sudo apt-get install solaar
Это позволит вам увеличить и увеличить DPI мыши, контролировать заряд батареи, включить плавную прокрутку и боковую прокрутку. Чтобы заставить работать мультиокно и кнопку масштабирования, вы можете посетить этот сайт, который проведет вас через простые шаги, чтобы получить требуемую функциональность:
http://www.ralf-oechsner.de/opensource/page/logitech_performance_mx
У вас уже должно быть это, как и в Ubuntu, но запустите это на всякий случай.
sudo apt-get install libdaemon-dev libglade2-dev libgtk2.0-dev
Теперь загрузите и установите
1) btnx-config 2) btnx В этом порядке.
Установить:
Разархивировать и cd
в каждую из этих папок.
В каждом из них запускаются:
./configure make
sudo make
sudo make install
Как только они оба установлены, запустите
sudo btnx-config
На вкладке "Конфигурации" нажмите "Обнаружить мышь и кнопки".
На вкладке "Кнопки" назначьте кнопке мыши клавишу или функцию. Убедитесь, что вы отметили галочкой.
Наконец, на вкладке "Конфигурации" нажмите кнопку "Перезагрузить btx", чтобы изменения вступили в силу.
У меня тоже есть игровая мышь G700s. Хорошей новостью является то, что это было дорого (для мыши), и производство действительно построило его на высоком уровне. Функции для мыши хранятся в мышке. Плохая новость заключается в том, что для правильной настройки вам необходимо использовать программное обеспечение Logitech, которое работает только в Windows.
Итак... восновном вам нужно подключить мышь в окно Windows, и настроить его именно так, как вы хотите. Я бы порекомендовал использовать функцию профилей коммутатора, чтобы вы могли настроить ее на нормальное использование: запуск рабочего стола linux, функции compiz (переключение приложений, переключение рабочих областей, переключение максимизации и т. Д.), А затем создать другой профиль для игр (возможно с другой частотой обновления) и игровыми кнопками. Что касается compiz, рассмотрите возможность установки 4-х боковых кнопок "большие пальцы" на alt, ctl, shift, superkey, поскольку это упростит переключение с помощью колеса прокрутки. alt + колесико прокрутки вверх становится кнопкой большого пальца 1 + колесико прокрутки вверх.
Моя схема:
кнопка большого пальца 1 (вперед-вниз) = alt
кнопка большого пальца 2 (вперед вперед) = смещение
кнопка большого пальца 3 (задний нижний) = Ctrl
большой палец 4 (задний верхний) = суперключ (клавиша windows)
средняя кнопка указательного пальца = ctrl + alt + numpad 5
указательный палец ближе к вам = вкладка
указательный палец подальше от вас = alt-f4 (приложение для compiz/linux/winX close)
Compiz по умолчанию:
переключение рабочей области = alt + ctl + перетаскивание мышью = нижние 2 кнопки большого пальца вместе + щелчок мыши и перетаскивание; звучит сложно, когда набираешь текст, но его очень эффективно использовать.
переключение приложений = alt + tab = нижняя кнопка большого пальца вперед + кнопка указательного пальца (помните, чтобы это работало хорошо, вам нужно держать нажатой кнопку большого пальца, чтобы вы могли переключаться между 1 приложением)
исчезновение окна (прозрачность) = alt + колесо прокрутки = большой палец, нижняя кнопка вперед + колесо прокрутки
Затем верните его обратно в свой Linux-пакет, и он отлично работает.
Описанные выше сочетания клавиш прекрасно работают, но, учитывая, что Battlefield 4 также ужасно долго распознает мышь как мышь с 10 кнопками, для этого мне пришлось сопоставить мои 4 кнопки большого пальца с =, \ и; Но очевидно, что в Linux это глупо, и повторная привязка клавиши = к "следующему приложению" - урок бесполезности, особенно при кодировании хахахаха.
НАМ НУЖНЫ ССЫЛКИ, ЕСЛИ ИСПОЛЬЗОВАТЬ VIRTUALBOX ДЛЯ РАБОТЫ В WINDOWS 7:
https://stackoverflow.com/questions/20021300/usb-devices-are-not-recognized-in-virtualbox-linux-host
Я думаю , что https://github.com/sezanzeb/key-mapper , скорее всего, сможет это сделать в этом случае.
Я сделал решение, которое работает с Wayland.
Его здесь https://github.com/mathportillo/wayland-mouse-mapper
Он использует evemu для отправки уведомления о событии устройства ядру, поэтому он не ограничен Wayland
Ниже приведен обобщенный скрипт bash, который показывает, как он работает (большинство команд требуют привилегий root).
найти ваше устройство:
libinput list-devices
чтобы напрямую найти указатель имени устройства, используйте:
libinput list-devices | grep pointer -B3 | grep -o '/dev/input/event[1-9]*'
для вывода списка событий вашего устройства используйте (измените event5 на ваше указательное имя устройства):
libinput debug-events --device /dev/input/event5
чтобы привязать команды к вашему устройству, используйте события:
while read line; do
echo ${line} # line represents a command
# your code goes here
done < <(stdbuf -oL libinput debug-events --device /dev/input/event5 & )
чтобы вызвать событие мыши, используйте:
evemu-event /dev/input/event5 --sync --type EV_KEY --code KEY_PAGEUP --value 1
тип может отличаться от нажатия клавиши, а код может отличаться от PageUp, значение равно 1 для нажатой и 0 для отпущенного значения да, ваша мышь может вызывать нажатия клавиш, система будет интерпретировать ее так же, как клавиатуры, все это только события от устройств событий.
Сценарий, который объединяет все вышеперечисленные понятия в рабочем маппере, который работает в Wayland и может быть настроен как служба для запуска при запуске системы, можно найти в приведенном выше репозитории git.
Я пытался сделать что-то подобное, и я наткнулся на эту страницу: http://ubuntuforums.org/showthread.php?t=65471
Надеюсь, это работает и для mx 620.
У меня есть Logitech MX 500 и я хотел сопоставить боковые клавиши с помощью действий Копировать и Вставить (это очень полезно).
Я использовал это руководство, чтобы понять, как настроить файл xbindkeysrc и уметь сопоставлять ключи.
Прокручивайте вверх и вниз с помощью кнопок мыши вперед и назад
Сначала установите необходимые пакеты:
$ sudo apt install x11-utils xbindkeys xautomation
Далее используйте xev
предоставлено x11-utils
определить точное количество кнопок кнопок "назад" и "вперед" мыши.
$ xev |grep -A2 ButtonPress
Для моей проводной вертикальной мыши Anker назад и вперед находятся соответственно кнопки 8 и 9.
ButtonPress event, serial 37, synthetic NO, window 0x3600001,
root 0x1da, subw 0x0, time 1708382, (68,54), root:(939,498),
state 0x10, button 8, same_screen YES
--
ButtonPress event, serial 37, synthetic NO, window 0x3600001,
root 0x1da, subw 0x0, time 1711030, (69,48), root:(940,492),
state 0x10, button 9, same_screen YES
Продолжите, создав скрытый файл с именем .xbindkeysrc
в вашем домашнем каталоге со следующим содержанием:
"xte 'keydown Down'"
b:8
"xte 'keyup Down'"
b:8 + Release
"xte 'keydown Up'"
b:9
"xte 'keyup Up'"
b:9 + Release
xte
Команда предоставляется xautomation
пакет.
Наконец, выйдите и снова с рабочего стола, чтобы эти изменения вступили в силу. Теперь вы можете прокручивать вверх и вниз в браузерах и других программах, нажимая и удерживая кнопки "назад" и "вперед".
btnx
может быть простым решением для переназначения кнопок с мышами Logitech, так как оно должно работать со всеми брендами. Он имеет простой графический интерфейс и может узнать о доступных кнопках. btnx был частью стандартных репозиториев много лет назад, но был удален. В настоящее время он доступен здесь: https://launchpad.net/~oliverstar/+archive/ubuntu/ppa
Если вы хотите добавить CTRL+Home и CTRL+End , добавьте следующие строки:
#CTRL + Home (Go to top of the page)
"xte 'keydown Control_R' 'key Home' 'keyup Control_R'"
b:6
#CTRL + End (Go to down of the page)
"xte 'keydown Control_R' 'key End' 'keyup Control_R'"
b:7
PS:
чтобы найти код клавиши мыши:
xev | grep button
чтобы проверить ваш ярлык:
killall xbindkeys && xbindkeys -n -v
В Debian у вас есть xbindkeys-config
пакет, который поможет вам настроить привязки клавиш / кнопок. Ну действуй:
sudo apt-get install xbindkeys-config
Lomoco входит в Ubuntu Software Center и специально предназначен для работы с индивидуальными настройками Logitech Mouse. Это может возможно выполнить некоторые из вещей, которые вы пытаетесь сделать.
http://manpages.ubuntu.com/manpages/trusty/man1/lomoco.1.html
Так что я использую свою производительность MX на моей машине с Ubuntu около 6 месяцев. Я оставил большинство кнопок по умолчанию, но я сделал кнопку "большой палец" супер-клавишей, что удобнее, чем переход в верхний левый угол экрана в gnome. И я сделал кнопку зума кнопкой управления. Но он настроен на включение CTRL и выключение CTRL с помощью отдельных кликов. Это действительно помогает, поскольку у меня один дисплей 4K и один 1080, поэтому я могу один раз нажать кнопку масштабирования, прокрутить колесико, чтобы увеличивать и уменьшать масштаб веб-страниц, и когда веб-страница масштабируется так, как я хочу, я нажимаю кнопку масштабирования. снова. Вот мои настройки xbindkeysrc:
"/usr/bin/xte 'keydown Control_L' &"
b:13
"/usr/bin/xte 'keyup Control_L' &"
Control + b:13
"/usr/bin/xte 'key Super_L'"
b:10 + release