바인딩할 수 없는 키를 바인딩할 수 있는 키로 바꾸는 방법은 무엇입니까?

바인딩할 수 없는 키를 바인딩할 수 있는 키로 바꾸는 방법은 무엇입니까?

(키코드 = 135)(일명 마우스 오른쪽 버튼 클릭) 에 대해 말하는 것입니다 Menu. 사용하지 않습니다.

그래서 비활성화했어요상황에 맞는 메뉴Xmodmap 도구로 작업하면 이제 메뉴가 열리지 않고 키보드 단축키로 계속 작동합니다*

또한 반복 자체가 비활성화되었습니다 xset -r 135(이와 같은 키는 Ctrl 눌러도 자체적으로 반복되지 않기 때문입니다).

* 하지만 문제는 How CtrlShiftdoes 와 같은 다른 키와 결합할 수 없다는 것입니다 Alt.

Shift예를 들어 + 같은 Alt단축키를 만들 수 있지만 +somekey로는 비슷한 작업을 S수행할 수 없으며 Menu다른 키에 바인딩되어 있지 않습니다. 나는 키의 "코드"를 만들 수 있지만 그것은 내가 찾고 있는 것이 아닙니다.

Xmodmap으로는 이 작업을 수행할 수 없는 것 같습니다./

와 같은 키에 어떤 일이 일어나는지 xev -event keyboard확인할 수 있습니다 Ctrl.ShiftAltstate에서 비롯되는 가치state 0x0누르면,state 0x4( 의 경우 Ctrl L) 해제된 경우. 이는 키 및 기타 바인딩할 수 없는 키에서는 발생하지 않으며 Menu모든 키는 그대로 유지됩니다.state 0x0, 어쩌면 그게 문제일까요?

이 문제를 어떻게 해결할 수 있나요?

감사해요

답변1

수정자 키를 잘못 이해하셨습니다.

수정자가 무엇을 사용하고 있는지 확인할 수 있습니다 xmodmap.

Menu기본적으로 수정자는 아니지만 일부 상황에 맞는 메뉴를 실행할 수 있습니다 F10(사용하는 소프트웨어에 따라 다름).

state 0x0의 출력에서 ​​볼 때 xev수정자와 효과적으로 관련되어 있으며 동시에 여러 수정자를 누르면 그 합계가 표시됩니다.

효과적이라고 해서 xmodmap원하는 것을 만들 수는 없습니다. 이제 Menu유효한 수정자 이름을 사용하여 수정자 맵에 효과적으로 추가하고 xkb맵을 수정하여 여전히 키 기호를 전송하는지 확인할 수 있습니다. 하지만 이는 우아한 작업이 아닙니다.

xcapeHyper_R대신 다른 키와 함께 누르거나Menu 단독으로 누를 때(예: 모드 맵에 추가한다고 가정) 이 키에 대한 수정자를 시뮬레이션하기 위해 (Wayland와 호환되는 다른 소프트웨어가 있음)라는 소프트웨어를 사용하는 것이 좋습니다 .

문서에서는 xcape이러한 수정을 매우 간단하게 만듭니다.

관련 정보