그래서 저는 트랙볼을 사용하고 있으며 트랙볼 스크롤을 위해 구성했습니다. 지금 내가 원하는 것은 원래 스크롤 휠을 다시 매핑하여 몇 가지 다른 기능에 사용하는 것입니다. 문제는 버튼이 다시 매핑될 때 트랙볼 스크롤도 버튼을 매핑한 기능에 다시 매핑된다는 것입니다.
내 이해로는 이런 일이 일어나서는 안 되며, 원래 버튼이 수행한 작업에 관계없이 키 이벤트 4 5 6 7을 보내야 합니다. 다시 매핑할 때 일반 마우스 버튼과 같습니다.
지금까지 시도한 것은 다른 버튼을 스크롤 휠의 원래 기능으로 다시 매핑하는 것입니다. 예를 들어 버튼 12는 이제 스크롤에 사용되고 5로 다시 매핑된 다음 트랙볼 스크롤 기능을 해당 버튼에 매핑하지만 그렇지 않습니다. 일도 안 해. libinput을 사용하여 트랙볼 스크롤 축을 다시 매핑하는 방법에 대한 정보를 찾을 수 없었기 때문에 evdev를 사용했습니다.
내가 시도한 구성:
Section "InputClass"
Identifier "ELECOM TrackBall Mouse HUGE TrackBall"
MatchProduct "ELECOM TrackBall Mouse HUGE TrackBall"
MatchIsPointer "on"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
Option "SendCoreEvents" "true"
Option "Buttons" "12"
Option "ButtonMapping" "1 10 3 11 12 0 0 0 4 5 6 7"
Option "EmulateWheel" "true"
Option "EmulateWheelButton" "3"
Option "YAxisMapping" "9 10"
Option "XAxisMapping" "11 12"
EndSection
내 구성을 다음과 같이 만들고 싶습니다.
Section "InputClass"
Identifier "ELECOM TrackBall Mouse HUGE TrackBall"
MatchProduct "ELECOM TrackBall Mouse HUGE TrackBall"
Driver "libinput"
Option "ButtonMapping" "1 12 3 14 15 9 8 18 19 10 11 2"
Option "Scrollmethod" "button"
Option "ScrollButton" "2"
EndSection
버튼은 이전에 매핑된 대로 작동해야 하지만 트랙볼의 스크롤 기능은 해당 기능이 있는 키가 원래 매핑된 것과 관계없이 스크롤을 위해 항상 키 4, 5, 6 및 7을 보내야 합니다.
제가 놓친 설정이 있거나 잊어버린 것이 있을 수 있지만 몇 시간 동안 시도해도 이와 관련된 내용을 찾을 수 없습니다.
올바른 소스에 대한 도움이나 조언을 주시면 감사하겠습니다.