ウィンドウフォーカス/フォーカス解除時にコマンドを実行するには?

ウィンドウフォーカス/フォーカス解除時にコマンドを実行するには?

xinput disable bcm5974Gnome Terminal(および他のアプリケーション)がフォーカスを取得したときとxinput enable bcm5974フォーカスを失ったときに実行したいと思います。

これは、libinputと私のMacBookのタッチパッドが友達ではなく、libinputのファーム対策機能がほとんど機能しないため、Vimでコードを編集するときに本当に不便で予期せずスクロールしたり、端末にコマンドを入力したときに狂っているためです。

libinput 1.1.4-1
xf86-input-libinput 0.16.0-1
ArchLinux

ベストアンサー1

次のコマンドは、集中したアプリケーションの名前を提供します。

xdotool getwindowfocus getwindowname

これを使用して、目標を達成するためのラッパースクリプトを作成できます。

例えば

while [ true ]
do
  FocusApp=`xdotool getwindowfocus getwindowname`
  if [ "xTerminal" -eq "x$FocusApp" ]; then
          xinput disable bcm5974
  else
          xinput enable bcm5974
  fi
done

上記のコードはチェックフォーカスアプリケーションを永遠に実行します。期待した結果が出たら実行if条件それ以外の場合は実行それ以外の条件。

必要に応じてこのスクリプトを細かく調整できます。

おすすめ記事