다음과 같이 Wacom 장치에 버튼을 바인딩했습니다.
xsetwacom --set "Wacom Cintiq 13HD touch Pad pad" button 8 key "]"
버튼을 누르고 있으면 키 이벤트만 생성됩니다. 어떻게 해결할 수 있나요?
답변1
긴 이야기 짧게
죄송합니다. 아직 해당 항목이 없습니다. 여기에서 수정 사항을 제안하실 수 있습니다.
xsetwacom
이는 제공한 키를 구문 분석하는 방법과 관련이 있습니다. 눌림( +
) 또는 놓음( ) 을 지정하지 않고 -
바인딩한 키가 수정자 키가 아닌 경우 해당 키를 한 번만 누르려는 것으로 간주됩니다. 바인딩을 설정한 후 장치 속성을 조사하면 이를 확인할 수 있습니다. 우리는 이것을 로 볼 수 있습니다 xsetwacom -s --get "Wacom Cintiq 13HD touch Pad pad"
. 다음과 같은 출력이 생성됩니다.
Property 'Wacom Tablet Area' does not exist on device.
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "Button" "1" "key +XF86Finance -XF86Finance "
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "Button" "2" "+XF86WWW -XF86WWW "
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "Button" "3" "+Control_L +s -s "
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "Button" "8" "+bracketright -bracketright "
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "Button" "9" "+bracketleft "
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "Button" "10" "+Control_L +y -y "
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "Button" "11" "+KP_Add -KP_Add "
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "Button" "12" "+Control_L +z -z "
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "Button" "13" "+KP_Subtract -KP_Subtract "
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "ToolDebugLevel" "0"
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "TabletDebugLevel" "0"
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "Suppress" "2"
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "RawSample" "4"
Property 'Wacom Pressurecurve' does not exist on device.
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "Mode" "Absolute"
Property 'Wacom Hover Click' does not exist on device.
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "Touch" "off"
Property 'Wacom Hardware Touch Switch' does not exist on device.
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "Gesture" "off"
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "ZoomDistance" "0"
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "ScrollDistance" "0"
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "TapTime" "250"
Property 'Wacom Proximity Threshold' does not exist on device.
Property 'Wacom Rotation' does not exist on device.
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "RelWheelUp" "1" "button +5 "
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "RelWheelDown" "2" "+4 "
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "AbsWheelUp" "3" "+4 "
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "AbsWheelDown" "4" "+5 "
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "AbsWheel2Up" "5" "+4 "
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "AbsWheel2Down" "6" "+5 "
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "StripLeftUp" "1" "+4 "
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "StripLeftDown" "2" "+5 "
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "StripRightUp" "3" "+4 "
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "StripRightDown" "4" "+5 "
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "Threshold" "0"
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "BindToSerial" "0"
Property 'Wacom Pressure Recalibration' does not exist on device.
해당 행을 살펴보면
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "Button" "8" "+bracketright -bracketright "
버튼이 단일 키에 바인딩되어 있음을 알 수 있지만, 버튼 12(이전에 "key ctrl z" 값으로 바인딩했음)를 보면 다음과 같습니다.
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "Button" "12" "+Control_L +z -z "
수정자에는 더하기 기호만 있는 것을 볼 수 있습니다. 출력에서 set key 식별자를 사용하고 다음과 같이 원하는 키로 이 작업을 수행하는 명령을 누르는 경우:
xsetwacom set "Wacom Cintiq 13HD touch Pad pad" "Button" "8" "key +bracketright "
버튼을 누르고 있으면 키가 계속 누르고 있습니다.
노트:
장치 이름 대신 xinput id를 전달할 수 있습니다. xsetwacom --list devices
ID가 제공되지만 다음에 시스템을 부팅할 때 번호가 달라질 수 있다는 점을 염두에 두십시오.
echo 명령 -s
은 bash 명령을 출력하여 속성을 현재 값으로 설정하기 위한 것입니다. 그렇지 않은 경우 명령은 속성을 현재 값으로 설정하기 위해 파일에 입력해야 하는 내용을 -s
제공하며 분명히 버튼 바인딩은 해당 파일과 함께 나열될 수 없습니다.xorg.conf