왼쪽 마우스(입력 장치)의 토글 버튼만

왼쪽 마우스(입력 장치)의 토글 버튼만

Debian 12 Gnome 44 시스템에 두 개의 Logitech M650 마우스가 연결되어 있습니다. 하나는 "왼손잡이" 마우스입니다. 검지를 기본 클릭으로 사용할 수 있도록 마우스 왼쪽 버튼의 버튼만 바꾸고 싶습니다. 오른쪽 클릭은 변경되지 않은 상태로 유지되어야 합니다.

내가 cat /proc/bus/input/devices여기에 왔을 때 결과는 다음과 같습니다.

I: Bus=0005 Vendor=046d Product=b02a Version=0013
N: Name="Logitech Signature M650 L Mouse"
P: Phys=4c:1d:96:47:de:e2
S: Sysfs=/devices/virtual/misc/uhid/0005:046D:B02A.0022/input/input46
U: Uniq=d5:55:b1:dd:b7:7f
H: Handlers=mouse3 event15 
B: PROP=0
B: EV=17
B: KEY=1f0000 0 0 0 0
B: REL=1943
B: MSC=10

I: Bus=0005 Vendor=046d Product=b02a Version=0013
N: Name="Logitech Signature M650 L Left-Handed Mouse"
P: Phys=4c:1d:96:47:de:e2
S: Sysfs=/devices/virtual/misc/uhid/0005:046D:B02A.0023/input/input47
U: Uniq=de:9d:c9:d8:74:fc
H: Handlers=mouse4 event16 
B: PROP=0
B: EV=17
B: KEY=1f0000 0 0 0 0
B: REL=1943
B: MSC=10

누구든지 올바른 방향으로 나를 가리킬 수 있습니까? 감사해요!

답변1

비슷한 설정이 있습니다. Logitech 왼쪽 및 오른쪽 마우스: "M650 L" 및 "M650 L Left". 내 시스템에서는 "M650 L Left"가 왼손잡이 마우스로 인식되지 않아 다음과 같이 했습니다.

$HOME/.xsession 파일에 다음 두 줄을 배치했습니다.

lefty=$(xinput | grep "Logitech.*Mouse" | grep -n pointer | grep ^2 | sed 's/^.*id=\([0-9]*\)[ \t].*$/\1/')
[[ $lefty ]] && xinput set-button-map $lefty 3 2 1 4 5 6 7 2 2

내 시스템에서는 왼쪽 마우스가 항상 목록에서 두 번째이기 때문에 이것이 작동합니다. 다른 시스템에서는 "grep ^2"를 "grep ^1"로 바꿔야 할 수도 있습니다.

누구든지 더 깨끗한 솔루션을 가지고 있다면 관심이 있을 것입니다.

답변2

다음은 마우스 버튼을 확인하고 다시 매핑하는 예입니다.

$ xinput get-button-map 10  #10 is the id of the pointer device
1 2 3 4 5 6 7

왼쪽 버튼 1개, 가운데 버튼 2개, 오른쪽 버튼 3개 등 가운데 버튼을 비활성화하는 기능(2에 해당)

$ xinput set-button-map 10 1 0

(숫자 7을 설정하려면 앞의 6을 입력해야 합니다)

확인하다:

$ xinput get-button-map 10
1 0 3 4 5 6 7

복원하려면:

$ xinput set-button-map 10 1 2

관련 정보