X11: 키보드 키를 마우스 버튼으로 교체

X11: 키보드 키를 마우스 버튼으로 교체

키보드의 메뉴 키(키코드 135)가 마우스 오른쪽 버튼과 동일한 기능을 하도록 하고 싶습니다.

https://superuser.com/questions/336674/emlating-mouse-click-with-a-keyboard그렇게 하지만 키보드의 숫자 패드 영역이 희생되므로 이 키는 더 이상 정상적인 기능을 수행하지 않습니다. 나는 키패드를 사용하기 때문에 그것을 희생하는 데 관심이 없습니다.

그래서 나는 해결책을 찾고 있습니다.오직메뉴 버튼(키코드 135)을 터치합니다.

답변1

[주의: 분명히 의도적으로는 그렇지 않습니다."교환"마우스 버튼이 있는 키보드 키; 단지 키보드 키가 마우스 버튼처럼 작동하도록 할 뿐입니다. 그러나 마우스 버튼은 키보드 키처럼 작동하지 않습니다.]

xkbset m
xkbset exp =m  # keep the state unchanged after the AccessX timeout
xkbcomp "$DISPLAY" - |
  sed -e 's/ Menu / Pointer_Button3 /' -e '/interpret KP_/,/};/d' | 
  xkbcomp - "$DISPLAY"

다른 키 콤보를 바인딩하여 컨트롤을 전환할 수도 있습니다 MouseKeys. 예. 와 함께 Shift-Menu:

xkbcomp "$DISPLAY" - |
  sed -e 's/ Menu \| Pointer_Button3 / Pointer_Button3, MouseKeys_Enable /' -e '/interpret KP_/,/};/d' |
  xkbcomp - "$DISPLAY"

Menu이는 키가 아직 다른 것으로 리바운드되지 않았다고 가정합니다 .

xbksetand 대신 xkbcomp동일한 작업을 수행하는 작은 프로그램을 쉽게 작성할 수 있습니다(이들이 수행하는 모든 작업은 일반 X11 클라이언트에서 수행할 수 있습니다).

이것을 자신의 규칙에 따라 xkb 설정을 스스로 변경하는 까다로운 "데스크톱 환경"과 통합하는 방법은 독자에게 연습으로 남겨집니다.

관련 정보