Puncte:1

xbindkeys numărare dublă apăsări de taste (fără diferențierea între apăsare și eliberare)

drapel us

Am un mouse Logitech g502 Proteus și vreau să folosesc butoanele mouse-ului „Înapoi” și „Înainte” (utilizate de obicei cu browser).

am verificat cu xev că apăsările butonului mouse-ului sunt detectate. am instalat xbindkeys și folosind diverse configurații de referințe online .xbindkeysrc pentru a mapa butoanele mouse-ului (6 și 7) pentru a apăsa o serie de taste pentru a emula comportamentul corect.

"xte 'key t'"
     b:6 + Eliberare

"xte 'keydown Alt_L' 'keydown Right' 'keyup Right' 'keydown Alt_L'"
     b:7 + Eliberare

Problema, remaparea se execută de două ori, o dată la presare și o dată la eliberare. Am crezut că modificatorul „Release” va rezolva acest lucru, dar este încă în desfășurare. Am verificat acest lucru introducând o remap la litera 't', ținând apăsat butonul mouse-ului și văzând unul 't' introdus, urmat de altul 't' la eliberare când am dat drumul.

Am ucis toate procesele xbindkeys înainte de a testa, de asemenea. alergare xbindkeys --verbose --nodaemon prezintă un comportament neobișnuit, prin aceea că a presa și eliberare ambele sunt înregistrate când apăs pe un buton al mouse-ului, în ciuda faptului că nu eliberez butonul mouse-ului apăsat. Următoarele arată că am apăsat și eliberat butonul de două ori, dar a fost o singură dată:

bucla de pornire...
Apăsați butonul!
e.xbutton.button=6
e.xbutton.state=16
Buton de eliberare!
e.xbutton.button=6
e.xbutton.state=16
"xte 'key t'"
    Eliberare + m:0x0 + b:6 (mouse)
am ecranul 0 pentru fereastra 510
Porniți programul cu apelul fork+exec

Apăsați butonul!
e.xbutton.button=6
e.xbutton.state=16
Buton de eliberare!
e.xbutton.button=6
e.xbutton.state=16
"xte 'key t'"
    Eliberare + m:0x0 + b:6 (mouse)
am ecranul 0 pentru fereastra 510

Liniile xte în sine de pe linia de comandă imprimă doar un „t”. Aveți idei despre cum să remediați/rezolvați acest lucru?

Puncte:0
drapel us

Ei bine, se pare că aceasta nu este o problemă cu Ubuntu sau xbindkeys, ci cu driverul mouse-ului xrdp. Folosesc o mașină virtuală MS Hyper-V care rulează Ubuntu 20.04.2 și am întâlnit următoarea problemă pe github în care cineva raportează problema mea exact, un „clic (apăsare+eliberare) pe un mouse Logitech MX Vertical pe butonul 6 și 7 (butoane înainte/înapoi) sunt trimise două evenimente ButtonPress și ButtonRelease."

xrdpmouse: eveniment ButtonPress/ButtonRelease trimis de două ori

Deci, se pare că nu există o soluție ușoară, ceea ce este regretabil.

Puncte:0
drapel ru

eu folosesc xbindkeys într-un mod similar pe un PC cu comutarea spațiului de lucru cu butoanele laterale ale mouse-ului. Privind configurația mea, văd că am & la sfârşitul meu xte linii de configurare care cred că rulează xte in fundal. Poate ai nevoie de asta? Nu sunt la acel computer să verific ce se întâmplă dacă elimin tha & din configurația mea:

        # Butonul mouse-ului 8 (butonul lateral „înapoi”)
        # Re-mapează la super+page-down (mută în spațiul de lucru în jos)
        "xte 'keydown Super_L' 'key Page_Down' 'keyup Super_L' &"
          b:8

        # Butonul mouse-ului 9 (butonul lateral „înainte”)
        # Re-mapează la super+page-up (mută la spațiul de lucru în sus)
        „xte „keydown Super_L” „key Page_Up” „keyup Super_L” &”
          b:9
traycerb avatar
drapel us
mulțumesc pentru răspuns, am încercat asta și a dat o eroare `sh: 1: amp: not found`, așa că încă caut o explicație. Fac acest lucru într-un VM Hyper-V, dar nicio altă cheie, mouse-ul sau de altă natură, nu are acest comportament. Am încercat să înlocuiesc `b:6` (butonul mouse-ului înapoi) cu `b:1` (clic stânga al mouse-ului) și funcționează conform intenției. Ținând apăsat clic stânga, primesc doar starea „Apăsați butonul”, până când îl eliberez.
traycerb avatar
drapel us
EDITARE: Examinând ieșirea `xev` arată că butoanele 6 și 7 sunt înregistrate ca apăsare ȘI eliberare chiar și atunci când sunt doar apăsate. Deci, poate că `xkeybind` se comportă așa cum era de așteptat, dar de ce mouse-ul are acest comportament?

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.