Jak przypisać akcje „wstecz” i „do przodu” do poziomego kółka przewijania Logitech Anywhere Mouse MX?


11

Korzystam z Logitech Anywhere Mouse MX na moim Ubuntu. Mysz działa dobrze, ale nie mogę przypisać akcji do dodatkowych przycisków na niej dostępnych. Najbardziej tęsknię za działaniami „wstecz” i „do przodu” przypisanymi do kółka przewijania w lewo i w prawo.

Jak mogę aktywować te funkcje?

Odpowiedzi:


9

Używam xbindkeysw połączeniu z xdotool.

Utwórz .xbindkeysrcplik w swoim katalogu domowym. Musi zawierać:

# Mapping BACK to mousewheel left on old Logitech
"xdotool key Alt_L+Left"
m:0x0 + b:6

# Mapping FORWARD to mousewheel right on old Logitech
"xdotool key Alt_L+Right"
m:0x0 + b:7

Jednak w VMware nie musisz nic robić oprócz dodawania

mouse.vusb.enable = "TRUE"

do pliku .vmx w systemie hosta. Właśnie to otwiera VMware przy każdym uruchomieniu systemu gościa.


Dzięki. Przy następnym uruchomieniu systemu przetestuję linię vmx (nie zdarza się to zbyt często).
ysap

Właśnie spróbowałem włamać się do pliku vmx - i wydaje się, że nie działa. Widzę, że po ponownym uruchomieniu VMware usuwa właśnie dodany wiersz, tak jakby miał domyślny szablon pliku, który jest resetowany przy każdym uruchomieniu komputera.
ysap

ok, wygląda na to, że musiałem przejść całą drogę i wyłączyć maszynę, a nie tylko ponownie uruchomić. Teraz ustawienia są zachowane. Niestety, działając teraz zdalnie, kółko myszy wydaje się nieskuteczne (tak samo na komputerze hosta). Sprawdzę ponownie, gdy będę na zdalnej stronie, i przedstawię wyniki.
ysap

O tak - właśnie sprawdzone i działa!
ysap

Oczywiście musisz uruchomić xbindkeyspo instalacji.
HongboZhu,

18

Mam tę samą mysz i chciałem powiązać dwa przyciski z boku myszy, aby przewijać do przodu i do tyłu. Oto jak to rozwiązałem:

1) Użyj narzędzia „xev”, aby ustalić, jakie numery odpowiadają przyciskom, które chcesz zmienić przypisanie. Może być konieczne zainstalowanie tego pakietu za pomocą

sudo apt-get install xev  

Po zainstalowaniu xev wpisz „xev” do terminala, a pojawi się białe okno X z czarną skrzynką. Przesunięcie myszy do tego okna rozpocznie rejestrowanie zdarzeń na terminalu. Dokładne odczytanie danych wyjściowych powie ci liczby przycisków myszy. Na mojej myszy przechylanie lewej i prawej mapy odpowiednio do przycisków 6 i 7.

2) Teraz użyjemy narzędzia „xbindkeys” do zmiany przypisania przycisków myszy do naciśnięć klawiszy. Jeśli nie masz tego zainstalowanego, być może będziesz musiał go zainstalować

sudo apt-get install xbindkeys

3) Utwórz plik w katalogu domowym o nazwie „.xbindkeysrc”. Oto, co przeczytają klawisze xbindkeys, aby zobaczyć, co mapujesz. Zawartość mojego pliku .xbindkeysrc to:

 "/usr/bin/xvkbd -xsendevent -text "\[Alt_L]\[Left]""
   m:0x0 + b:8

 "/usr/bin/xvkbd -xsendevent -text "\[Alt_L]\[Right]""
  m:0x0 + b:9

To oznacza, że ​​mój komputer wysyła do klawiatury naciśnięcia klawiszy „Alt + lewy” lub „Alt + prawy” do systemu za pomocą wirtualnej klawiatury (xvkbd) za każdym razem, gdy zostanie naciśnięty przycisk 8 na myszy 0 lub przycisk 9 na myszy 0. Te klucze odpowiadają klawiszom do przodu i do tyłu w większości aplikacji. Działa to na przykład w Nautilus, chrome /

Uwaga : może być konieczne zainstalowanie, xvkbdjeśli nie jest jeszcze obecne w systemie.sudo apt-get install xvkbd


Dzięki. Korzystając z narzędzia xev, widzę wiele informacji, chociaż chociaż funkcje przewijania w górę i w dół są mapowane na klawisze 4 i 5, nie dostaję żadnego zdarzenia, gdy przechylam kółko przewijania ani nie klikam dwóch bocznych przycisków. Jakieś pomysły dlaczego?
ysap

Możliwe, że z jakiegoś powodu twój system nie rozpoznaje sygnałów wysyłanych z myszy. W takim przypadku powinieneś zobaczyć kody błędów w / var / log / messages lub w dmesg. Przeczytaj więcej o tym problemie i jak go naprawić pod tym adresem jveweb.net/en/archives/2011/01/… Jeśli to nie jest problem, będziemy musieli się nim bardziej przyjrzeć.
jarvisschultz

ok, spojrzałem na dziennik dmesg. to dość długa lista wiadomości. Czego dokładnie powinienem szukać?
ysap

BTW, nie wspomniałem o tym w pytaniu, ale może pomóc - używam Ubuntu jako systemu operacyjnego gościa w VMware Player na Windows 7. Z mojego doświadczenia z kilkoma urządzeniami emulacja jest całkiem dobra, czy Ubuntu zdecydowanie powinien zobaczyć wszystko wiadomości wysyłane za pomocą myszy.
ysap

1
Czy to możliwe, że sudo apt-get install xvkbdbrakuje tutaj?
c_korn

5

Oto co zrobiłem. Nie są potrzebne żadne sudopolecenia ani nowe pakiety:

  • Testowałem moje przyciski za pomocą xev-> wszystkie przyciski odpowiadają pewnej wartości, co oznacza, że ​​są rozpoznawane przez system
  • sprawdź urządzenia za pomocą xinput list-> mysz znajduje się na liście o numerze ID 9 w moim przypadku
  • xinput list-props 9 pokazuje bieżące mapowanie, a szczególnie mówi o etykietach przycisków -> wydaje się, że do przodu / do tyłu odpowiada przyciskom 8 i 9, których nie mam (pochylenie kół wynosi 6 i 7 i mapowane na przewijanie w poziomie)
  • ponowne mapowanie powiązań za pomocą xmodmapinterpretacji X jest dla mnie najwygodniejszym rozwiązaniem. Pierwszych pięciu przycisków nie należy zmieniać (lewy prawy środkowy przycisk i przewijanie w górę i w dół), ale te zgłaszające się jako przyciski 6 i 7 powinny nawigować do przodu / do tyłu
  • wykonywanie xmodmap -e "pointer = 1 2 3 4 5 8 9 6 7 10 11 12 13 14 15 16"w terminalu zamienia przyciski 6 i 7 na 8 i 9 (praktycznie)
  • jeśli to mapowanie nie działa, przywróć ustawienia domyślne xmodmap -e "pointer = default"i spróbuj innego mapowania
  • Teraz mam polecenie zamiany przycisków w moich aplikacjach startowych, które należy wykonać po zalogowaniu
  • wydaje się również możliwe zgodnie z man xmodmapzapisaniem tego polecenia w pliku o nazwie ~/.xmodmaprclub dołączeniem instrukcji do~/.bashrc

Pracował dla mnie. Mam nadzieję że to pomoże.


1
+1: To xmodmappodejście zadziałało dla mnie natychmiast, ale ... czy można zmodyfikować mapowanie dla konkretnej myszy?
MestreLion

4

Oto, co zadziałało dla mnie:

1) Zainstaluj xbindkeys

sudo apt-get install xbindkeys

2) Zainstaluj xautomation

sudo apt-get install xautomation

3) Utwórz plik .xbindkeysrc w katalogu domowym z następującym plikiem:

# History Back & Forward
"xte 'keydown Alt_L' 'key Left' 'keyup Alt_L' "
  b:6
"xte 'keydown Alt_L' 'key Right' 'keyup Alt_L' "
  b:7

4) Przejdź do aplikacji startowych i dodaj program za pomocą polecenia xbindkeys.

5) Wyloguj się i zaloguj

Źródło: Fora Ubuntu


Dzięki, B-Scan. Zakładam, że chciałeś umieścić plik w moim katalogu domowym. Umieściłem go tam i dodałem xbindkeyswpis do aplikacji startowych, wylogowałem się i zalogowałem i ... to nie działa :-(
ysap,

Tak, katalog domowy. Teraz zobaczyłem, że używasz VMware. Może może być z tym związany ?
B-Scan,

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.