Portál AbcLinuxu, 3. května 2025 11:21
Podpora: | kompletní |
Ovladač: | v jádře |
/proc/bus/input/devices: I: Bus=0003 Vendor=045e Product=00e1 Version=0111 N: Name="Microsoft Microsoft Wireless Optical Mouse� 1.00" P: Phys=usb-0000:00:1d.7-5.5/input0 S: Sysfs=/class/input/input6 U: Uniq= H: Handlers=mouse1 event6 B: EV=7 B: KEY=1f0000 0 0 0 0 0 0 0 0 B: REL=1c3
Section "InputDevice" Identifier "Mouse0" Driver "evdev" Option "CorePointer" Option "Device" "/dev/input/event6" Option "Buttons" "9" Option "ZAxisMapping" "4 5" Option "DialRelativeAxisButtons" "7 6" EndSectiona do sekce"ServerLayout"
InputDevice "Mouse0" "CorePointer"případně
InputDevice "Mouse0" "SendCoreEvents"pokud je jako druhá myš u notebooku (nesmí tam být 2 "CorePointer")
Option "Device" "/dev/input/event6"Event musí být nastavený podle "cat /proc/bus/input/devices", ale je problém při připojení myši do jiného usb. Mělo by to jít vyřešit pomocí "udev", to se mi ale nepovedlo. Naštěstí OpenSuse vytváří odkaz na příslušný event v /dev/input/by-id/usb-jméno-zařízen. V mém příadě konkrétně /dev/input/by-id/usb-Microsoft_Microsoft_Wireless_Optical_Mouse_1.00-event-mouse ukazuje na /dev/input/event6 Problém je, že němůžu zapsat ten odkaz do xorg.conf, nebere ho to. Udělal sem tedy odkaz na /dev/input/by-id/usb-Microsoft_Microsoft_Wireless_Optical_Mouse_1.00-event-mouse v /dev/input/event30 - musí se to jmenovat "event"+"číslo" ale event99 to nebralo. Tohle je potřeba udělat při každém startu, takže do init skriprů (u mě konkrétně na konec "/etc/init.d/boot" před "rc_restart") přidáme
if [ -L /dev/input/by-id/usb-Microsoft_Microsoft_Wireless_Optical_Mouse_1.00-event-mouse ] then ln -s /dev/input/by-id/usb-Microsoft_Microsoft_Wireless_Optical_Mouse_1.00-event-mouse /dev/input/event30 fiJe to hodně kostrbatý, ale funkční. Jestli se někomu povede najít jednodušší a čistější řešení, budu rád. Konečný zápis v xorg.conf tedy u mě vypadá takto:
Section "InputDevice" Identifier "Mouse0" Driver "evdev" Option "CorePointer" Option "Device" "/dev/input/event30" Option "Buttons" "9" Option "ZAxisMapping" "4 5" Option "DialRelativeAxisButtons" "7 6" EndSectionBoční dvě tlačítka se hlásí jako Button8 a 9, s tím aplikace neumějí pracovat, ale nesnažil sem se je ani přmapovat, protže jsou stejně dost blbě dostupný. Vertikální scrollování funguje, ale zároveň se to hlásí jako stisk Button6 a 7. V Opeře (pravděpodobně i FF) je Button6 a 7 defaultně nastavenej pro pohyb zpět a vpřed historií, takže nefunguje scrollování, místo toho to chodí historií. V nastavení Opery to jde změnit, ale mě to takhle celkem vyhovuje. Ještě mi připadal pohyb kurzoru moc rychlý, zpomalit se to dá příkazem
xset m 2/3 1Funguje jen když je nastaveno jako "CorePointer". První číslo udává zrychlení/zpomalení - pro čísla menší než jedna se musí zadávat jako zlomek, druhé je práh - hodnota 1 zajišťuje použití vždy. Mě vyhovuje zpomalení 2/3. Je nutné zajistit spuštění tohoto příkazu při startu X. Více viz xset manual page. Na druhou stranu mi to zrychlilo scrollování, což není moc příjemné.
Dokument vytvořil: Beda0, 4.9.2007 10:13 | Poslední úprava: Beda0, 27.2.2011 15:09 | Historie změn | Zobrazeno: 1326×
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.