Jak skonfigurować dodatkowe przyciski w myszy Logitech


64

Czy ktoś może mi powiedzieć, jak skonfigurować wszystkie przyciski myszy Logitech MX 620 w systemie Ubuntu 12.04?

W szczególności chciałbym, aby jeden z nich był tylko Ctrlkluczem (do kontrolowania klikania stron internetowych), a drugi Ctrl+ Wdo zamykania kart. Zwykle wykonuję stronę kółka przewijania w dół dla każdego kliknięcia (w przeciwnym razie bardzo boli mnie przewijanie ramion). Robię pchanie koła w lewo = przewijanie strony i pchanie w prawo = strona do przodu.

Szukałem innych odpowiedzi na to pytanie i znalazłem tutaj coś związanego

Ale kiedy opublikowałem post w celu rozwiązania problemu, nikt nie odpowiedział - być może popełniłem błąd, odpowiadając na pytanie, które zostało „rozwiązane”. Nie jestem pewien, jak mam ponownie otworzyć pytanie, które dotyczy mojego pytania, ale nie do końca rozwiązuje moje.


1
Myślę, że to najłatwiejszy sposób, aby mysz działała z pełną funkcjonalnością: ralf-oechsner.de/opensource/page/logitech_performance_mx
Edward Kennedy

Odpowiedzi:


70

Będziesz potrzebował do tego kilku aplikacji, aby je zainstalować

sudo apt-get install xbindkeys xautomation xev

lub

sudo apt-get install xbindkeys xautomation x11-utils

edit: xev został scalony do x11utils, począwszy od Ubuntu 14.04 lub nowszego.

Krok 1

Musisz znaleźć numery przycisków dla myszy. Uruchom xev. Zobaczysz małe białe okna, włóż do nich mysz i naciśnij przyciski myszy (najlepiej zrobić to jeden przycisk na raz). Powinieneś otrzymać takie wyjście dla każdego przycisku:

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

(uwaga: xevprzechwytuj ruch myszy, więc może być konieczne przesiewanie zdarzeń ruchu myszy, aby znaleźć zdarzenia przycisków; np . xev -event mouse | grep Button --before-context=1 --after-context=2:)

To, co jest ważne z tego wyjścia: button 1. To mówi nam, że dany przycisk jest przyciskiem pierwszym. Na razie przechowałbym to w .txtpliku.

Krok 2

Utwórz xbindkeysplik konfiguracyjny, używając:

xbindkeys --defaults > $HOME/.xbindkeysrc  

Następnie musimy dodać powiązania klucza / przycisku do pliku konfiguracyjnego. Możesz otworzyć ten plik za pomocą gedit $HOME/.xbindkeysrc. Tu zaczyna się zabawa. Będziemy używać xtedo ustawiania powiązań z naszymi przyciskami.

Aby przycisk działał tak Ctrl, jak byśmy dodali:

"xte 'key Control_L'"
b:1  

Powiąże Ctrlto pierwszy przycisk myszy.

Jeśli powiesz mi numery przycisków i co chcesz zrobić, napiszę dla ciebie skrypt.


@seth: Chciałbym skonfigurować przyciski 8 i 9 tak, aby były odpowiednio „wstecz” i „do przodu”. Jeszcze lepiej, gdybym wymyślił, gdzie mam podpowiedzieć polecenia, które mogę skonfigurować za pomocą xbindkeys, byłoby świetnie. Dzięki, Dan
dbbd

11
Najprostszym sposobem na zmniejszenie obłęd wyjścia xev jest uruchomienie wyjście poprzez grep: xev | grep -A2 ButtonPress; pozostawi to wszystkie zdarzenia ruchu myszy, zdarzenia skupienia itp. i po prostu pokażą ButtonPresszdarzenia.
Lambart

@dbbd Najwyraźniej jakoś przegapiłem twoją wiadomość. Zajrzę do tego i skontaktuję się z tobą.
Seth

2
Moja mysz to także G300 i nie mogę tego uruchomić. Przyciski są niepoprawnie zmapowane, a dwa przyciski są zmapowane na ten sam przycisk Control_L i nie mam pojęcia, jak je zmapować, ponieważ po naciśnięciu nie identyfikują się.
Inoki,

6
„xbindkeys -p”, aby zastosować zmiany
Alex Fedulov

12

Postępowałem zgodnie z instrukcjami @ Setha , ale wiązanie, którego chciałem, dotyczyło przycisku kciuka i M705 CTRL + Left-click(do otwierania łączy w nowej karcie w przeglądarce Chrome). Wiązanie, które musiałem dodać, to:

"xte 'keydown Control_L' 'mouseclick 1' 'keyup Control_L'"
    b:10 + Release

Czeka na zwolnienie przycisku kciuka, a następnie naciska klawisz sterujący, wykonuje kliknięcie myszą, a następnie zwalnia klawisz sterujący.


To rozwiązanie, a nie powyższe, działało jak urok na Ubuntu Mate 16.04 z myszą Logitech M705. Użyłem go, aby przypisać kopiowanie i wklejanie do bocznych przycisków, więc moje ustawienia wyglądały następująco: klawisz „xte” klawisz Control_L „klawisz c” klawisz klawisz Control_L „” b: 9 klawisz „xte” klawisz Control_L ”klawisz v” Control_L '"b: 8
Draco

2
„xbindkeys -p”, aby zastosować zmiany.
user3616725,

8

Dla każdego, kto chce powiązać operacje kopiowania i wklejania z przyciskami myszy:

  1. Postępuj zgodnie z odpowiedzią Setha (ten z krokiem 1, krokiem 2 i sudo apt-get install xbindkeys xautomation xev)
  2. Umieść w swoim .xbindkeysrcpliku następujące wiersze :

To jest do kopiowania:

"xte 'keydown Control_L' 'key c' 'keyup Control_L'"
b:9

To jest do wklejania:

"xte 'keydown Control_L' 'key v' 'keyup Control_L'"
b:8

* b:9oznacza przycisk 9 na myszy (sprawdź numery przycisków za pomocą xev)

  1. To nie zadziała od razu, musisz najpierw załadować ponownie .xbindkeysrclub ponownie uruchomić komputer.

och wow, to zadziałało dla mnie idealnie. próbuje skonfigurować te klucze przez ostatnie 4 lata i dopiero teraz jest w stanie to zrobić. Dziękuję Ci! przy okazji bardzo ważne jest, aby wiedzieć, jakie to przyciski, dla mnie były 16 i 17 na mojej myszy ..
Tio TROM

UWAGA: b: 9 itd. MUSZĄ BYĆ w nowej linii w pliku konfiguracyjnym. Położyłem je na tej samej linii i nie mogłem zrozumieć, dlaczego to nie działa.
user3616725,

To działało dla mnie w GUI, ale nie działa w terminalu Bash. Czy jest jakiś sposób, aby kopiowanie / wklejanie działało ZARÓWNO dla GUI i powłoki z tymi samymi przyciskami?
JoeMjr2,

@ JoeMjr2 W terminalu Bash najprawdopodobniej wkleisz za pomocą Ctrl + Shift + V i skopiujesz naciskając Ctrl + Shift + C. Potrzebny byłby więc sposób użycia mapowania specyficznego dla aplikacji. Nie jestem jednak pewien, jak to zrobić. Być może możesz użyć emulatora terminala i skonfigurować klawisze skrótu do kopiowania wklejania w standardowy sposób - wtedy przyciski myszy do wklejania powinny działać.
zwolin

5

Należy zainstalować Solaar, narzędzie Linux, które pozwala zarządzać myszami i klawiaturami Logitech Unifying Receiver, wyposażonymi zarówno w interfejs GUI, jak i interfejs wiersza poleceń. W tym celu dodaj następujące repozytorium i zainstaluj, wykonując następujące polecenia:

sudo add-apt-repository ppa:daniel.pavel/solaar

sudo apt-get update

sudo apt-get install solaar

Pozwoli ci to zwiększyć i zmaksymalizować DPI myszy, monitorować baterię, umożliwić płynne przewijanie i przewijanie boczne. Aby uruchomić okno z wieloma oknami i przycisk powiększania, możesz odwiedzić tę stronę, która przeprowadzi cię przez proste kroki, aby uzyskać pożądaną funkcjonalność:

http://www.ralf-oechsner.de/opensource/page/logitech_performance_mx


Zrobiłem to na moim C720 / crouton. Kiedy uruchomiłem solaar, awaria z powrotem do ekranu startowego. Musiałem zrestartować (i zorientowałem się, że polecenie to sudo startxfce4) i usunąłem solaar.
marty cohen

Solaar był dla mnie bardzo niespokojny 14.04 i ostatecznie po prostu w ogóle nie chciałem biec. Zdaję sobie sprawę, że pierwotne pytanie dotyczyło 12.04, ale pomyślałem, że warto o tym wspomnieć. Może zaoszczędzić komuś trochę czasu.
mech

12
-1. Ta odpowiedź nie odpowiada na pytanie. solaar nie wykonuje mapowania przycisków myszy.
Twifty

też nie działało dla mnie.
Woeitg

3

Powinieneś już mieć je tak, jak powinny być dostarczane z Ubuntu, ale uruchom to na wszelki wypadek.

sudo apt-get install libdaemon-dev libglade2-dev libgtk2.0-dev 

Teraz pobierz i zainstaluj

  1. btnx-config
  2. btnx W tej kolejności.

Żeby zainstalować:

Rozpakuj i cddo każdego z tych folderów.

W każdym z nich uruchom:

./configure
make
sudo make install

Po zainstalowaniu obu z nich uruchom

sudo btnx-config

W zakładce Konfiguracje kliknij Wykryj mysz i przyciski

wprowadź opis zdjęcia tutaj

W zakładce Przyciski przypisz klawiszowi myszy klawisz lub funkcję. Upewnij się, że ☑ znacznik wyboru jest włączony .

wprowadź opis zdjęcia tutaj

Na koniec w zakładce Konfiguracje kliknij przycisk Uruchom ponownie btx, aby zmiany zostały wprowadzone.

wprowadź opis zdjęcia tutaj


Działa dobrze na dyskotece Ubuntu. Jedna korekta: Powinno być po prostu ./configurenie ./configure make. Poza tym nie potrzebujesz sudo z marką.
panta82

@ panta82 Wziąłem je bezpośrednio z pliku README.md
nr Sssweat

Wiem. W pliku README jest błąd :)
panta82

2

Ja też mam mysz do gier g700s. Dobrą wiadomością jest to, że był drogi (jak na mysz), a producent faktycznie zbudował go w wysokim standardzie. Funkcje myszy są przechowywane w myszy. Złą wiadomością jest to, że do prawidłowej konfiguracji musisz użyć oprogramowania Logitech, które działa tylko w systemie Windows.

Więc ... w zasadzie musisz podłączyć mysz do okna systemu Windows i skonfigurować go dokładnie tak, jak chcesz . Polecam korzystanie z funkcji przełączania profili, aby można było ustawić ją jako dobrą do normalnego użytkowania, tj .: uruchamianie pulpitu Linuksa, funkcje compizu (przełączanie aplikacji, przełączanie przestrzeni roboczych, przełączanie maksymalizacji itp.), A następnie utworzenie innego profilu do gier ( ewentualnie z inną częstotliwością odświeżania) i przyciskami gier. Jeśli chodzi o compiz, rozważ ustawienie 4 bocznych przycisków kciuka na alt, ctl, shift, superkey, ponieważ ułatwi to przełączanie za pomocą kółka przewijania. Alt + kółko przewijania w górę zmienia się w przycisk kciuka 1 + kółko przewijania w górę.

Mój schemat:

przycisk kciuka 1 (do przodu w dół) = alt

przycisk kciuka 2 (góra do przodu) = shift

przycisk kciuka 3 (tylny dolny) = ctrl

przycisk kciuka 4 (tylny górny) = superklucz (klawisz Windows)

środkowy przycisk palca wskazującego = ctrl + alt + numpad 5

palec wskazujący bliżej Ciebie = karta

palec wskazujący dalej od ciebie = alt-f4 (aplikacja compiz / linux / winX close)

Domyślne ustawienia compiz:

przełącz obszar roboczy = alt + ctl + przeciągnij myszą = opuść 2 przyciski kciuka razem + kliknij i przeciągnij myszą; brzmi skomplikowanie po wpisaniu, ale jest bardzo wydajny w użyciu.

przełączanie aplikacji = alt + tab = dolny przycisk przewijania kciukiem + przycisk zbliżania palca wskazującego (pamiętaj, że to działa dobrze, musisz przytrzymać przycisk kciuka, aby móc przełączyć się z poprzedniej 1 aplikacji)

zanikanie okna (przezroczystość) = alt + kółko przewijania = kciuk w dół przycisk do przodu + kółko przewijania

Następnie przenieś go z powrotem do swojego Linux-a i działa idealnie.

Opisane powyżej powiązania klawiszy działają świetnie, ale uważam, że Battlefield 4 ma również okropny czas na rozpoznanie myszy jako myszy z 10 przyciskami, dlatego musiałem zmapować 4 przyciski kciuka na =, \ i;. Ale oczywiście w Linuksie jest to głupie, a ponowne przypisanie klawisza = do „następnej aplikacji” jest lekcją daremności, szczególnie przy kodowaniu hahahaha.

DUŻO POTRZEBNYCH LINKÓW JEŚLI UŻYWASZ VIRTUALBOX DO URUCHAMIANIA WINDOWS 7:

https://stackoverflow.com/questions/20021300/usb-devices-are-not-recognized-in-virtualbox-linux-host

https://www.youtube.com/watch?v=-0OyrvbZNwo



1

Mam Logitech MX 500 i chciałem zmapować klucze boczne za pomocą operacji Kopiuj i Wklej (jest to bardzo przydatne).

Skorzystałem z tego przewodnika, aby zrozumieć, jak skonfigurować plik xbindkeysrc i móc mapować klucze.


2
Wiesz, że przesuwanie wskaźnika myszy na początek / koniec tekstu, który chcesz skopiować, a następnie naciśnij lewy przycisk i przytrzymaj go, aż dojdziesz do końca / początku tego, co chcesz skopiować, i zostanie skopiowane. Aby wkleić, naciśnij środkowy przycisk (jeśli masz tylko mysz z dwoma przyciskami, naciśnij jednocześnie lewy i prawy przycisk) i wklej tekst. Nie trzeba niczego konfigurować, jest to gotowe do użycia na wszystkich maszynach Unix i Linux z systemem XWindows. Pamiętaj, że nie używamy pozbawionego funkcji produktu Microsoft, ale GNU / Linux

@ user350566 Ten rodzaj kopiowania i wklejania ma pewne ograniczenia. Czasami chcesz inny schowek aka Ctrl + C / + V. Tylko mówię.
donquixote

1

Stworzyłem rozwiązanie, które działa z Waylandem.

Jest tutaj https://github.com/mathportillo/wayland-mouse-mapper

Używa evemu do wysyłania powiadomienia o zdarzeniu urządzenia do jądra, więc Wayland nie ogranicza tego

Poniżej znajduje się podsumowany skrypt bash, który pokazuje, jak to działa (większość poleceń wymaga uprawnień roota)

znajdź swoje urządzenie:

libinput list-devices

aby bezpośrednio znaleźć nazwę urządzenia wskaźnika, użyj:

libinput list-devices | grep pointer -B3 | grep -o '/dev/input/event[1-9]*'

aby wyświetlić listę zdarzeń urządzenia (zmień event5 na nazwę urządzenia wskaźnika):

libinput debug-events --device /dev/input/event5

aby powiązać polecenia ze zdarzeniami urządzenia, użyj:

while read line; do
    echo ${line} # line represents a command
    # your code goes here
done < <(stdbuf -oL libinput debug-events --device /dev/input/event5 & )

aby wywołać zdarzenie myszy, użyj:

evemu-event /dev/input/event5 --sync --type EV_KEY --code KEY_PAGEUP --value 1

typ może być inny niż naciśnięcie klawisza, a kod może być inny niż PageUp, wartość wynosi 1 dla naciśnięcia i 0 dla zwolnionego tak, twoja mysz może wyzwalać naciśnięcia klawiszy, system zinterpretuje to tak samo jak klawiatury, wszystkie zdarzenia z urządzeń zdarzeń.

Skrypt, który łączy wszystkie powyższe koncepcje na działającym maperze, który działa na Wayland i może być skonfigurowany jako usługa do uruchamiania przy starcie systemu, można znaleźć w powyższym repozytorium git.


0

w Debianie masz xbindkeys-configpakiet, który pomoże ci skonfigurować powiązania klawiszy / przycisków. Więc zrób:

sudo apt-get install xbindkeys-config

2
Ten program po prostu ulega awarii, gdy próbuję cokolwiek zrobić z moim G300.
Inoki,


0

Używam mojej wydajności MX na moim komputerze z Ubuntu od około 6 miesięcy. Większość przycisków pozostawiłem domyślnie, ale zdecydowałem, że przycisk kciuka będzie klawiszem Super, co jest wygodniejsze niż przejście do lewego górnego rogu ekranu w gnome. I zmieniłem przycisk zoomu w przycisk sterujący. Ale jest ustawiony, aby włączyć CTRL i wyłączyć CTRL osobnymi kliknięciami. To naprawdę pomaga, ponieważ mam jeden ekran 4K i jeden 1080, więc mogę raz kliknąć przycisk powiększenia, przewinąć kółko, aby powiększać i pomniejszać strony internetowe, a kiedy mam skalowaną stronę internetową tak, jak chcę, klikam powiększenie jeszcze raz. Oto moje ustawienia 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

To nie wydaje się odpowiadać na zadane pytanie.
TheWanderer

0

btnxmoże być prostym rozwiązaniem do zmiany przypisania przycisków za pomocą myszy Logitech, ponieważ powinno współpracować ze wszystkimi markami. Ma łatwy interfejs graficzny i może dowiedzieć się o dostępnych przyciskach. btnx był częścią standardowych repozytoriów wiele lat temu, ale został usunięty. Obecnie jest dostępny tutaj: https://launchpad.net/~oliverstar/+archive/ubuntu/ppa


0

Przewiń w górę i w dół za pomocą myszy do przodu i do tyłu

Najpierw zainstaluj wymagane pakiety:

$ sudo apt install x11-utils xbindkeys xautomation

Następnie użyj xevpodanego przez, x11-utilsaby wykryć dokładne numery przycisków wstecz i do przodu myszy.

$ xev |grep -A2 ButtonPress

W przypadku mojej przewodowej pionowej myszy Anker , wstecz i do przodu to odpowiednio przyciski 8 i 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

przewodowa pionowa mysz Anker

Kontynuuj, tworząc ukryty plik o nazwie .xbindkeysrcw katalogu domowym o następującej zawartości:

"xte 'keydown Down'"
b:8

"xte 'keyup Down'"
b:8 + Release

"xte 'keydown Up'"
b:9

"xte 'keyup Up'"
b:9 + Release

xteKomenda jest przez xautomationpakiet.

Na koniec wyloguj się i zaloguj ponownie z pulpitu, aby zmiany zostały wprowadzone. Możesz teraz przewijać w górę iw dół w przeglądarkach i innych programach, naciskając i przytrzymując przycisk myszy do tyłu i do przodu.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.