xdotool 및 xbindkeys

xdotool 및 xbindkeys

Control+plus에서는 확대/축소되지 않고 Control+acute에서는 확대/축소되는 Acrobat 리더가 있습니다(Control+plus는 귀찮게 문서를 회전합니다).

xbindkeys와 xdotool을 사용하여 이 문제를 해결하고 싶지만 다른 응용 프로그램에서도 Control-plus를 사용한다는 것이 문제입니다.

따라서 Control-plus를 가로채서 Acrobat이 활성 창인지 확인하는 것이 아이디어입니다. 그렇다면 Control-acute를 Acrobat으로 보내고, 그렇지 않으면 Control-plus를 보냅니다.

다음은 Control+plus에서 실행된 xbindkeys 스크립트에 대한 현재 시도입니다.

WM_CLASS=$(xprop -id `xdotool getactivewindow` WM_CLASS |awk '{print $4}')

if [ "$WM_CLASS" = "\"Acroread"\" ];
then
   sleep 0.1s;
   xdotool key --clearmodifiers ctrl+acute
else
   killall xbindkeys
   xdotool key --clearmodifiers ctrl+plus
   xbindkeys
fi

이것은 실제로 작동하지만 문제는 xbindkeys를 종료하지 않으면 ctrl-plus를 보내는 xdotool이 xbindkeys를 다시 트리거한다는 것입니다.

그러나 물론 이는 Acrobat이 아닌 창에서 Ctrl+Plus를 누를 때마다 xbindkeys를 종료하고 다시 시작해야 함을 의미합니다.

더 좋은 방법이 있나요?

매우 감사합니다!

답변1

기반으로이 답변Ask Ubuntu에서는 xbindkeys를 종료한 다음 다시 시작할 필요가 없는 것 같습니다.

관련 정보