ID가 변경된 wacom 태블릿에 대한 udev 규칙

ID가 변경된 wacom 태블릿에 대한 udev 규칙

Manjaro 설치 시 Wacom 태블릿의 버튼을 구성하는 데 많은 문제가 있습니다.

나는 결국 사용했다이 답변실제로 작동하는 것으로 확인되었지만 태블릿을 다시 연결하면 스타일러스와 펜 ID가 가끔 변경되기 때문에 일부 시간에만 작동합니다.

실제로 버튼 설정을 변경하는 쉘 스크립트의 내용은 다음과 같습니다.

#!/usr/bin/env bash

sleep 1
export XAUTHORITY=/home/mashpoe/.Xauthority
export DISPLAY=:0

# the IDs will randomly change so the next commands won't work

# sets button 3 for the stylus
xsetwacom set 15 Button 3 "key e"

# sets each button for the pad
xsetwacom set 16 Button 1 "key +ctrl z -ctrl"
xsetwacom set 16 Button 2 "key +ctrl +shift z -ctrl -shift"
xsetwacom set 16 Button 3 "key +ctrl - -ctrl"
xsetwacom set 16 Button 8 "key +ctrl +shift + -ctrl -shift"

답변1

미래의 독자들에게는 이것이 효과가 있습니다.

xsetwacom --set "Wacom One by Wacom M Pen stylus" TabletPCButton on

답변2

xsetwacom list devices마침내 올바른 ID를 얻기 위해 출력을 구문 분석하여 문제를 해결했습니다 .

#!/usr/bin/env bash

sleep 1
export XAUTHORITY=/home/mashpoe/.Xauthority
export DISPLAY=:0

parse_result(){
  local id

  while read line; do
    if [[ "${line}" =~ ([[:digit:]]+) ]]; then
      id="${BASH_REMATCH[1]}"
      if [[ "${line}" =~ STYLUS$ ]]; then
        # this runs if the ID is a stylus
        xsetwacom set "$id" Button 3 "key e"
      elif [[ "${line}" =~ PAD$ ]]; then
        # this runs if the ID is a pad
        xsetwacom set "$id" Button 1 "key +ctrl z -ctrl"
        xsetwacom set "$id" Button 2 "key +ctrl +shift z -ctrl -shift"
        xsetwacom set "$id" Button 3 "key +ctrl - -ctrl"
        xsetwacom set "$id" Button 8 "key +ctrl +shift + -ctrl -shift"
      fi
    fi
  done
}

parse_result < <(xsetwacom list devices)

관련 정보