일부 앱은 이상하거나 불편한 사용자 상호 작용을 사용하므로 편집할 수 없습니다. 키보드 및 마우스 이벤트 조합을 다른 키보드 및 마우스 이벤트 조합으로 다시 매핑하고 싶습니다.
ctrl
정확히 말하면 지정된 애플리케이션(DaVinci Resolve)에 포커스가 있을 때 이러한 매핑 + wheel up
-> alt
+가 활성화되기를 원합니다.wheel up
가지다바퀴이 작업을 해결하는 유틸리티입니다. 하지만 그 유틸리티는 매우 구식이고 X11에만 국한되어 있으므로 Wayland 솔루션을 찾고 있습니다. 참고로, 현재 사용 사례에서는 이를 허용하지만(davinci 구문 분석은 현재 Xwayland를 통해서만 실행되므로) 잘 작동하지 않습니다. 때로는 일부 이벤트가 "변환"되지 않아 원치 않는 효과가 발생할 수 있습니다. 새로운 Wayland 지원 유틸리티에는 이러한 문제가 발생하지 않기를 바랍니다.
아주 찾았어요유제, 그러나 두 마리의 쥐에 대해서는 명확한 답이 없었습니다.
유틸리티를 찾았습니다(evdevremapkeys의 Pronobis 포크또는에버리투)는 N:N 매핑을 허용하므로 이 작업을 수행할 수 있습니다. 그러나 그들의 프로필은 (적어도 이 글을 쓰는 시점에는) 하나의 장치만 사용합니다.여기.
이제 키보드와 마우스에서 가상 evdev 입력 장치를 만들고(즉, 병합) 이를 유틸리티 구성에 사용하는 아이디어가 생겼습니다. 가능합니까?
나는 이것이 가능할 수도 있다는 강한 느낌을 가지고 있습니다파이썬-evdev또는효과적인. 그런데 이런 가상 입력 장치를 만들려면 정확히 어떻게 해야 하는지 모르겠습니다.
답변1
다음 명령을 사용하여 병합된 장치를 성공적으로 만들었습니다.문서):
$ evsieve --input /dev/input/event8 grab --input /dev/input/event5 grab --output
/dev/input/event8
내 키보드는 어디에 있고, /dev/input/event5
마우스는 어디에 있나요? /dev/input/event3
이름으로 생성 되었습니다 Evsieve Virtual Device
.
ctrl
+ 를 + wheel
로 , +를 + 로 실제로 다시 매핑하려면 명령을 다음과 같이 변경할 수 있습니다.alt
wheel
alt
wheel
ctrl
wheel
여기):
sudo evsieve --input /dev/input/event8 grab --input /dev/input/event5 grab \
--hook key:leftalt:1 toggle=alt:2 \
--hook key:leftalt:0 toggle=alt:1 \
--hook key:leftctrl:1 toggle=ctrl:2 \
--hook key:leftctrl:0 toggle=ctrl:1 \
--toggle rel:wheel @alt-up @alt-down id=alt \
--map yield rel:wheel@alt-down key:leftalt:0 key:leftctrl:1 key:leftctrl:2 rel:wheel key:leftctrl:0 key:leftalt:1 \
--toggle rel:wheel @ctrl-up @ctrl-down id=ctrl \
--map yield rel:wheel@ctrl-down key:leftctrl:0 key:leftalt:1 key:leftalt:2 rel:wheel key:leftalt:0 key:leftctrl:1 \
--block rel:wheel_hi_res \
--print @alt-down @alt-up @ctrl-down @ctrl-up \
--output create-link=/dev/input/by-id/merged-virtual-KM name="merged virtual KM"
evremap을 사용하려면 다음 구성을 사용할 수 있습니다.
device_name = "Evsieve Virtual Device"
[[remap]]
input = ["KEY_LEFTALT", "BTN_RIGHT"]
output = ["KEY_PAGEUP"]
Alt + 마우스 오른쪽 버튼을 눌러 커서를 위로 이동하여 PgUp을 생성합니다. 하지만 매핑된 휠 이벤트는지금불가능한.